Pristine Ack-5.5
[Ack-5.5.git] / util / ceg / EM_parser / as_EM_pars / em_decl.h
1 #define SEGBSS          0
2 #define SEGHOL          1
3 #define SEGCON          2
4 #define SEGROM          3
5 #define SEGTXT          4
6 #define NOSEG           5
7 #define UNKNOWN         (-1)
8
9
10 #define TRUE            1
11 #define FALSE           0
12
13
14 #define STRING          0
15 #define LABEL           1
16 #define ARITH           2
17 #define INT             3
18
19
20 #define MAX_ARGS        4
21
22 #define NO_ARGS         0
23 #define C_ARG           1
24 #define D_ARG           2
25 #define F_ARG           3
26 #define L_ARG           4
27 #define N_ARG           5
28 #define O_ARG           6
29 #define R_ARG           7
30 #define S_ARG           8
31 #define Z_ARG           9
32 #define W_ARG           10
33 #define EXTERNAL        11
34 #define EXTERNAL_DNAM   12
35 #define EXTERNAL_DLB    13
36 #define P_ARG           14
37 #define B_ARG           15
38 #define STRING_ARITH    16
39 #define BSS_EXT_DNAM    17
40 #define BSS_EXT_DLB     18
41 #define BSS_STR_AR      19
42 #define BSS_W_ARG       20
43 #define BSS_PNAM        21
44 #define BSS_ILB         22
45 #define ID_N_ARG        23
46 #define ARITH_ARITH     24
47 #define EXT_DNAM        25
48 #define EXT_DLB         26
49 #define ONE_INT         27
50 #define _STRING         28
51
52
53 typedef struct {
54                 char *header;
55                 int arg_type[MAX_ARGS];         /* Zoals ze eruit gaan!! */
56                 char *arg_id[MAX_ARGS], *arg_conv[MAX_ARGS];
57         } t_C_info;
58
59 typedef struct {
60                 char *lexeme;
61                 int C_instr_type;
62         } t_token;
63
64
65 extern t_C_info C_info[], *C_instr_info;
66 extern int storage_default[4][3], segment;