9 typedef struct {void *p, *sp, *ep;} ptr_t;
14 typedef long long eic_llong;
16 typedef long eic_llong;
21 char cval; /* char value */
23 short sval; /* short integer val */
25 int ival; /* integer value */
27 long lval; /* long integer */
30 /* long longs are not yet supported by ANSI C*/
32 eic_llong llval; /* long long value */
34 float fval; /* float value */
35 double dval; /* double float value */
37 ptr_t p; /* safe pointer */
38 void *up; /* unsafe pointer */
43 int (*func)(); /* function pointer */
46 struct symentry_t * sym;/* pointer into symbol table */
48 pid_t pid; /* process ID value */
49 size_t szval; /* generic size value */
50 ssize_t sszval; /* POSIX.1 byte count value */
52 mode_t mval; /* mode_t value */
54 long offval; /* file offset position */
56 off_t offval; /* file offset position */
60 typedef union VaL val_t;
63 typedef struct Label_t {
64 char *name; /* label name */
65 int loc; /* label location */
66 struct Label_t *nxt; /* link to next label in list */
78 unsigned int nextinst; /* next instruction */
79 unsigned int binst; /* physical size */
80 InsT_t * inst; /* instructions */
81 char * Filename; /* file with source code */
84 void * parent; /* used for callbacks */
85 void * prev; /* used for chaining during reentry and callbacks*/
88 /* methods for code */
89 #define opcode(C,i) ((C)->inst[i].opcode)
90 #define setopcode(C,i,y) (opcode(C,i) = y)
91 #define ivalcode(C,i) ((C)->inst[i].val.ival)
92 #define pvalcode(C,i) ((C)->inst[i].val.p.p)
93 #define nextinst(C) ((C)->nextinst)
94 #define instline(C,i) ((C)->inst[i].line)
95 #define codeName(C) (C)->Filename
105 typedef struct AR_t {