comparison src/expr.h @ 91:718998b673ee

Added incomplete references to object output and added support for section base terms in expression handler
author lost
date Sat, 17 Jan 2009 05:56:40 +0000
parents 2fe5fd7d65a3
children
comparison
equal deleted inserted replaced
90:6097cb1486f8 91:718998b673ee
34 // term types 34 // term types
35 #define LWASM_TERM_NONE 0 35 #define LWASM_TERM_NONE 0
36 #define LWASM_TERM_OPER 1 // an operator 36 #define LWASM_TERM_OPER 1 // an operator
37 #define LWASM_TERM_INT 2 // 32 bit signed integer 37 #define LWASM_TERM_INT 2 // 32 bit signed integer
38 #define LWASM_TERM_SYM 3 // symbol reference 38 #define LWASM_TERM_SYM 3 // symbol reference
39 #define LWASM_TERM_SECBASE 4 // section base reference
39 40
40 // operator types 41 // operator types
41 #define LWASM_OPER_NONE 0 42 #define LWASM_OPER_NONE 0
42 #define LWASM_OPER_PLUS 1 // + 43 #define LWASM_OPER_PLUS 1 // +
43 #define LWASM_OPER_MINUS 2 // - 44 #define LWASM_OPER_MINUS 2 // -
79 80
80 __expr_E__ void lwasm_expr_term_free(lwasm_expr_term_t *t); 81 __expr_E__ void lwasm_expr_term_free(lwasm_expr_term_t *t);
81 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_create_oper(int oper); 82 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_create_oper(int oper);
82 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_create_sym(char *sym); 83 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_create_sym(char *sym);
83 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_create_int(int val); 84 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_create_int(int val);
85 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_create_secbase(void);
84 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_dup(lwasm_expr_term_t *t); 86 __expr_E__ lwasm_expr_term_t *lwasm_expr_term_dup(lwasm_expr_term_t *t);
85 87
86 __expr_E__ void lwasm_expr_stack_free(lwasm_expr_stack_t *s); 88 __expr_E__ void lwasm_expr_stack_free(lwasm_expr_stack_t *s);
87 __expr_E__ lwasm_expr_stack_t *lwasm_expr_stack_create(void); 89 __expr_E__ lwasm_expr_stack_t *lwasm_expr_stack_create(void);
88 90