comparison lwasm/instab.c @ 55:bad2ee25acdd

Added string comparison pseudo ops
author lost@l-w.ca
date Tue, 05 Apr 2011 23:59:41 -0600
parents 2c24602be78f
children 9960e05cbe3a
comparison
equal deleted inserted replaced
54:2077b755b8b4 55:bad2ee25acdd
216 #define pseudo_emit_ifdef NULL 216 #define pseudo_emit_ifdef NULL
217 217
218 extern PARSEFUNC(pseudo_parse_ifndef); 218 extern PARSEFUNC(pseudo_parse_ifndef);
219 #define pseudo_resolve_ifndef NULL 219 #define pseudo_resolve_ifndef NULL
220 #define pseudo_emit_ifndef NULL 220 #define pseudo_emit_ifndef NULL
221
222 extern PARSEFUNC(pseudo_parse_ifstr);
223 #define pseudo_resolve_ifstr NULL
224 #define pseudo_emit_ifstr NULL
221 225
222 extern PARSEFUNC(pseudo_parse_endc); 226 extern PARSEFUNC(pseudo_parse_endc);
223 #define pseudo_resolve_endc NULL 227 #define pseudo_resolve_endc NULL
224 #define pseudo_emit_endc NULL 228 #define pseudo_emit_endc NULL
225 229
606 { "endc", { -1, -1, -1, -1}, pseudo_parse_endc, pseudo_resolve_endc, pseudo_emit_endc, lwasm_insn_cond}, 610 { "endc", { -1, -1, -1, -1}, pseudo_parse_endc, pseudo_resolve_endc, pseudo_emit_endc, lwasm_insn_cond},
607 { "else", { -1, -1, -1, -1}, pseudo_parse_else, pseudo_resolve_else, pseudo_emit_else, lwasm_insn_cond}, 611 { "else", { -1, -1, -1, -1}, pseudo_parse_else, pseudo_resolve_else, pseudo_emit_else, lwasm_insn_cond},
608 { "ifdef", { -1, -1, -1, -1}, pseudo_parse_ifdef, pseudo_resolve_ifdef, pseudo_emit_ifdef, lwasm_insn_cond}, 612 { "ifdef", { -1, -1, -1, -1}, pseudo_parse_ifdef, pseudo_resolve_ifdef, pseudo_emit_ifdef, lwasm_insn_cond},
609 { "ifndef", { -1, -1, -1, -1}, pseudo_parse_ifndef, pseudo_resolve_ifndef, pseudo_emit_ifndef, lwasm_insn_cond}, 613 { "ifndef", { -1, -1, -1, -1}, pseudo_parse_ifndef, pseudo_resolve_ifndef, pseudo_emit_ifndef, lwasm_insn_cond},
610 614
615 // string operations, mostly useful in macros
616 { "ifstr", { -1, -1, -1, -1}, pseudo_parse_ifstr, pseudo_resolve_ifstr, pseudo_emit_ifstr, lwasm_insn_cond},
617
611 { "macro", { -1, -1, -1, -1}, pseudo_parse_macro, pseudo_resolve_macro, pseudo_emit_macro, lwasm_insn_cond | lwasm_insn_setsym}, 618 { "macro", { -1, -1, -1, -1}, pseudo_parse_macro, pseudo_resolve_macro, pseudo_emit_macro, lwasm_insn_cond | lwasm_insn_setsym},
612 { "endm", { -1, -1, -1, -1}, pseudo_parse_endm, pseudo_resolve_endm, pseudo_emit_endm, lwasm_insn_cond | lwasm_insn_setsym | lwasm_insn_endm}, 619 { "endm", { -1, -1, -1, -1}, pseudo_parse_endm, pseudo_resolve_endm, pseudo_emit_endm, lwasm_insn_cond | lwasm_insn_setsym | lwasm_insn_endm},
613 620
614 { "setdp", { -1, -1, -1, -1}, pseudo_parse_setdp, pseudo_resolve_setdp, pseudo_emit_setdp, lwasm_insn_normal}, 621 { "setdp", { -1, -1, -1, -1}, pseudo_parse_setdp, pseudo_resolve_setdp, pseudo_emit_setdp, lwasm_insn_normal},
615 { "set", { -1, -1, -1, -1}, pseudo_parse_set, pseudo_resolve_set, pseudo_emit_set, lwasm_insn_setsym}, 622 { "set", { -1, -1, -1, -1}, pseudo_parse_set, pseudo_resolve_set, pseudo_emit_set, lwasm_insn_setsym},