Revamp macro arg system

This should significantly improve performance: on pokecrystal builds, perf
reported as much CPU time spent on `yyparse` as on `sym_UseNewMacroArgs`
Measurements show ~6 seconds of improvement on that codebase.

This also fixes #321, as a bonus, due to saner management!
This commit is contained in:
ISSOtm
2020-03-14 14:43:09 +01:00
parent 61897d8b52
commit 2f466c2939
15 changed files with 213 additions and 187 deletions

15
test/asm/unique-id.asm Normal file
View File

@@ -0,0 +1,15 @@
print EQUS "WARN \"\\@\""
m: macro
print
REPT 2
print
ENDR
print
endm
; TODO: Ideally we'd test now as well, but it'd cause a fatal error
;print
m
;print
m
print