feat(v4): the ROM's slot packer, word for word with asm.c
(OP) (LIT) (BRANCH) (BRANCH>) (RESOLVE) (LABEL), entries 6-11: the code generator of any language built on the machine (MACHINE.md 2.1). asm.c's layout rules with text.c's branch placement; 400 random sequences agree word for word with asm.c at both widths, memory-full and out-of-reach are refused on both sides, and a ref with no branch is refused, not looped on. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
07911dcf91
commit
c233cb6536
@@ -49,6 +49,18 @@ int main(void)
|
||||
constant("ERR-BAD-NAME", (long)ROM_ERR_BAD_NAME);
|
||||
constant("ERR-DEFINED", (long)ROM_ERR_DEFINED);
|
||||
constant("ERR-NAMES", (long)ROM_ERR_NAMES);
|
||||
constant("(HERE)", (long)ROM_HERE);
|
||||
constant("(CUR)", (long)ROM_CUR);
|
||||
constant("(SLOT)", (long)ROM_SLOT);
|
||||
constant("(NLIT)", (long)ROM_NLIT);
|
||||
constant("(LITS)", (long)ROM_LITS);
|
||||
constant("(PI)", (long)ROM_PI);
|
||||
constant("(RS)", (long)ROM_RS);
|
||||
constant("(RN)", (long)ROM_RN);
|
||||
constant("RAM-WORDS", (long)V4_NODE_WORDS);
|
||||
constant("ADDR-TOP", (long)ROM_ADDR_TOP);
|
||||
constant("ERR-FIT", (long)ROM_ERR_FIT);
|
||||
constant("ERR-OPCODE", (long)ROM_ERR_OPCODE);
|
||||
/* the cell width's constants (NUMBER) needs, written as signed cells */
|
||||
constant("MSB", (long)(v4_cell)V4_MSB);
|
||||
constant("DEC-LIMIT", (long)(v4_cell)(~(v4_ucell)0 / 10u));
|
||||
|
||||
Reference in New Issue
Block a user