summaryrefslogtreecommitdiff
path: root/opcodes.inc.m4
diff options
context:
space:
mode:
authorDuncan Smith2010-11-12 22:34:36 -0800
committerDuncan Smith2010-11-12 22:34:36 -0800
commitdd0e4224c93c1b94b7b9fd06e9ab08105e19845f (patch)
tree6912aebda42970c0e3130cc6d2f16c5353c79d57 /opcodes.inc.m4
parent2164cc7b99ab44b9efe03d5f4dc2392fc34791f3 (diff)
Added support for local labels in opcodes
I tried to use A68k's local label support, but I believe it was broken. Now I can use it, finally. :)
Diffstat (limited to 'opcodes.inc.m4')
-rw-r--r--opcodes.inc.m44
1 files changed, 4 insertions, 0 deletions
diff --git a/opcodes.inc.m4 b/opcodes.inc.m4
index d7343e8..cbaafb9 100644
--- a/opcodes.inc.m4
+++ b/opcodes.inc.m4
@@ -2,6 +2,10 @@ dnl # change the comments to match the assembler. Prevents/reduces
dnl # confusion, since m4 likes to use ' as a quoting character.
changecom(;)dnl
define(`OPCODE',` START
+dnl # This little bit of trickery lets me define a local label.
+dnl # Calling local(end) inside of OPCODE(10, ...) will expand to
+dnl # end_10, and is undefined everywhere else.
+define(`local',$`'1_``$1'')dnl
`emu_op_'$1`:'
$2
TIME $3