1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #include "em_parser.h"
- #define NOSEG 5
- #define UNKNOWN (-1)
- #define TRUE 1
- #define FALSE 0
- #define MAX_ARGS 4
- /* All the different types of C_INSTR's, based on types of the arguments. */
- #define NO_ARGS 0
- #define C_ARG 1
- #define D_ARG 2
- #define F_ARG 3
- #define L_ARG 4
- #define N_ARG 5
- #define O_ARG 6
- #define R_ARG 7
- #define S_ARG 8
- #define Z_ARG 9
- #define W_ARG 10
- #define EXTERNAL 11
- #define EXTERNAL_DNAM 12
- #define EXTERNAL_DLB 13
- #define P_ARG 14
- #define B_ARG 15
- #define STRING_ARITH 16
- #define BSS_EXT_DNAM 17
- #define BSS_EXT_DLB 18
- #define BSS_STR_AR 19
- #define BSS_W_ARG 20
- #define BSS_PNAM 21
- #define BSS_ILB 22
- #define ID_N_ARG 23
- #define ARITH_ARITH 24
- #define EXT_DNAM 25
- #define EXT_DLB 26
- #define ONE_INT 27
- #define _STRING 28
- typedef struct {
- char *header; /* The declaration of parameters for
- * each type of C_INSTR.
- */
- int arg_type[MAX_ARGS]; /* Type of the $i's after the
- * conversions ( extnd_name(), etc.).
- */
- char *arg_id[MAX_ARGS], /* Names of the parameters, to be used
- * left of the '==>' sign.
- */
- *arg_conv[MAX_ARGS];/* Names of the parameters, to be used
- * right of the '==>' sign.
- */
- } t_C_info;
- typedef struct {
- char *lexeme;
- int C_instr_type;
- } t_token;
- extern t_C_info C_info[], *C_instr_info;
- extern int storage_default[4][3], segment;
|