From 676a35f76f93dfe18678a832fa63d8b684c34c45 Mon Sep 17 00:00:00 2001 From: Rangi Date: Thu, 9 Jul 2020 12:43:26 -0400 Subject: Eliminate enum: use const instead, with case-by-case parallel const implementations --- macros/const.asm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 macros/const.asm (limited to 'macros/const.asm') diff --git a/macros/const.asm b/macros/const.asm new file mode 100644 index 00000000..e0d9fbb8 --- /dev/null +++ b/macros/const.asm @@ -0,0 +1,24 @@ +; Enumerate constants + +const_def: MACRO +IF _NARG >= 1 +const_value = \1 +ELSE +const_value = 0 +ENDC +IF _NARG >= 2 +const_inc = \2 +ELSE +const_inc = 1 +ENDC +ENDM + +const: MACRO +\1 EQU const_value +const_value = const_value + const_inc +ENDM + +shift_const: MACRO +\1 EQU (1 << const_value) +const_value = const_value + const_inc +ENDM -- cgit v1.3.1-sl0p