diff options
author | Aryadev Chavali <aryadev@aryadevchavali.com> | 2023-11-08 18:15:26 +0000 |
---|---|---|
committer | Aryadev Chavali <aryadev@aryadevchavali.com> | 2023-11-08 18:15:26 +0000 |
commit | cb2416554bc4afd76257dfd4cbd420f2d8e03789 (patch) | |
tree | b9e0ca0cf92682b20fea49a71003fe10d0c015e2 /vm/runtime.h | |
parent | 253bebb4674e5fe8e600fd9fcb9c79d6705759a6 (diff) | |
download | ovm-cb2416554bc4afd76257dfd4cbd420f2d8e03789.tar.gz ovm-cb2416554bc4afd76257dfd4cbd420f2d8e03789.tar.bz2 ovm-cb2416554bc4afd76257dfd4cbd420f2d8e03789.zip |
Added a preprocessing routine in assembler
Preprocessor handles macros and macro blocks by working at the token
level, not doing any high level parsing or instruction making.
Essentially every macro is recorded in a registry, recording the name
and the tokens assigned to it. Then for every caller it just inserts
the tokens inline, creating a new stream and freeing the old one. It
leaves actual high level parsing to `parse_next` and
`process_presults`.
Diffstat (limited to 'vm/runtime.h')
0 files changed, 0 insertions, 0 deletions