It seems that referencing the same code table in different macros causes huff compiler to repeatedly append the code table to the end of the bytecode: ``` #define table CODETABLE { 0x00abcd00 } #define macro MAIN() = takes(0) returns(0) { __tablestart(CODETABLE) FOO() } #define macro FOO() = takes(0) returns(0) { __tablestart(CODETABLE) } ``` ``` $ huffc tmp.huff -r ⠙ Compiling... 61000a61000a00abcd0000abcd00 ``` But the code table addresses are same: ``` $ cast da 61000a61000a00abcd0000abcd00 00000000: PUSH2 0xa 00000003: PUSH2 0xa 00000006: STOP 00000007: INVALID 00000008: INVALID 00000009: STOP 0000000a: STOP 0000000b: INVALID 0000000c: INVALID 0000000d: STOP ``` @clabby
It seems that referencing the same code table in different macros causes huff compiler to repeatedly append the code table to the end of the bytecode:
But the code table addresses are same:
@clabby