~ This file is a commented hexadecimal representation of a compiled ~ program, the output of Evocation's hex transform. The comments are ~ intended to allow a human reader to audit it. You can convert it to a ~ runnable executable by piping it through the program named 'hex' and ~ chmodding the output 755. The difference between a source and a binary ~ is comments! Enjoy. :) ~ This particular program is 'evoke', the compiler. If you already have ~ a binary copy of 'hex', run this file through it and you'll have a ~ working compiler. Pretty sweet, right? ~ ~ If you're auditing this by hand, first off, thank you for doing that. ~ You may wish to pull up the source code side-by-side with the hex dump; ~ there's a lot of structural stuff in the actual source that aids in ~ readability but isn't easily reproduced in this form, though every ~ effort has been made. ~ ELF file header ~ * denotes mandatory fields according to breadbox 7f 45 4c 46 ~ *magic number 02 ~ 64-bit 01 ~ little-endian 01 ~ ELF header format v1 03 ~ Linux ABI 00 00 00 00 00 00 00 00 ~ (padding) 02 00 ~ *executable 3e 00 ~ *Intel x86-64 01 00 00 00 ~ ELF format version 78 00 00 08 00 00 00 00 ~ *entry point 40 00 00 00 00 00 00 00 ~ *program header offset 00 00 00 00 00 00 00 00 ~ section header offset 00 00 00 00 ~ processor flags 40 00 ~ ELF header size 38 00 ~ *program header entry size 01 00 ~ *number of program header entries 00 00 ~ section header entry size 00 00 ~ number of section header entries 00 00 ~ section name string table index ~ ELF program header ~ label elf-program-header at offset 0x0000000000000040 is here. 01 00 00 00 ~ *"loadable" segment type 05 00 00 00 ~ *read+execute permission 00 00 00 00 00 00 00 00 ~ *offset in file 00 00 00 08 00 00 00 00 ~ *virtual address 00 00 00 00 00 00 00 00 ~ physical address (ignored) 78 c2 0a 00 00 00 00 00 ~ *size in file 78 c2 0a 00 00 00 00 00 ~ *size in memory 00 00 00 00 00 00 00 00 ~ segment alignment ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ This is the start of the cold-start routine, which is the first code ~ of any kind the executable runs. It has the responsibility of creating ~ the Forth execution environment, then invoking the warm-start routine, ~ which is defined below. ~ label cold-start at offset 0x0000000000000078 is here. fc ~ cld 48 b8 09 00 00 00 00 00 00 00 ~ 0x9 :rax mov-reg64-imm64 ~ mmap() 48 bf 00 00 00 00 10 00 00 00 ~ 0x1000000000 :rdi mov-reg64-imm64 ~ address (very arbitrary) 48 be 00 00 00 01 00 00 00 00 ~ 0x1000000 :rsi mov-reg64-imm64 ~ size (one meg) 48 ba 07 00 00 00 00 00 00 00 ~ 0x7 :rdx mov-reg64-imm64 ~ protection (read+write+exec) 49 ba 22 00 00 00 00 00 00 00 ~ 0x22 :r10 mov-extrareg64-imm64 ~ flags (private+anonymous) 49 b8 00 00 00 00 00 00 00 00 ~ 0x0 :r8 mov-extrareg64-imm64 ~ file descriptor (ignored) 49 b9 00 00 00 00 00 00 00 00 ~ 0x0 :r9 mov-extrareg64-imm64 ~ offset (ignored) 0f 05 ~ syscall 48 89 c7 ~ :rax :rdi mov-reg64-reg64 48 8d af 00 00 01 00 ~ :rdi 0x00010000 :rbp lea-reg64-disp32-reg64 48 89 bf 00 00 01 00 ~ :rdi 0x00010000 :rdi mov-reg64-disp32-reg64 48 89 a7 08 00 01 00 ~ :rsp 0x00010008 :rdi mov-reg64-disp32-reg64 48 89 af 10 00 01 00 ~ :rbp 0x00010010 :rdi mov-reg64-disp32-reg64 48 b8 00 00 00 00 00 00 00 00 ~ 0x0 :rax mov-reg64-imm64 48 89 87 18 00 01 00 ~ :rax 0x00010018 :rdi mov-reg64-disp32-reg64 48 8d 87 28 00 01 00 ~ :rdi 0x00010028 :rax lea-reg64-disp32-reg64 48 89 87 20 00 01 00 ~ :rax 0x00010020 :rdi mov-reg64-disp32-reg64 57 ~ :rdi push-reg64 48 be 10 01 00 08 00 00 00 00 ~ 0x8000110 :rsi mov-reg64-imm64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ This is the start of the warm-start routine, which is the first Forth ~ code the executable runs, after the cold-start routine has created the ~ Forth execution environment. ~ ~ It does some initial setup here at the top; then the vast bulk of it ~ is actually the log-load routine, directly included; then finally there ~ is a small amount of finishing work done at the tail end of the ~ warm-start routine. ~ ~ The routine's body is interpreted Forth code, meaning that it is an ~ an array of pointers to the codewords of Forth words, occasionally ~ interspersed with literal values. ~ ~ The codeword pointers were located by using the label system, which ~ means the labels they reference must have been defined somewhere else, ~ normally by the label transform. The label-transformed code normally ~ occurs after the warm-start routine in the executable, which means these ~ are forward references to words defined far below. 00 00 ~ (alignment padding) ~ label warm-start at offset 0x0000000000000110 is here. 48 4e 05 08 00 00 00 00 ~ log-load-log (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log" (string literal with null) 6c 6f 67 00 00 00 00 00 ~ (alignment padding) 90 55 05 08 00 00 00 00 ~ log-load-variable (codeword pointer) 88 4e 05 08 00 00 00 00 ~ log-load-s0 (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "s0" (string literal with null) 73 30 00 00 00 00 00 00 ~ (alignment padding) 90 55 05 08 00 00 00 00 ~ log-load-variable (codeword pointer) e0 4e 05 08 00 00 00 00 ~ log-load-r0 (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "r0" (string literal with null) 72 30 00 00 00 00 00 00 ~ (alignment padding) 90 55 05 08 00 00 00 00 ~ log-load-variable (codeword pointer) 58 4f 05 08 00 00 00 00 ~ log-load-latest (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) 90 55 05 08 00 00 00 00 ~ log-load-variable (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) 90 55 05 08 00 00 00 00 ~ log-load-variable (codeword pointer) ~ This is the start of the log-load routine, which is a long block of ~ code that has been processed by the log-load transform. It is part of ~ the warm-start routine, which does other things before and after it. ~ For clarity's sake, to avoid weird nesting, the section header above ~ calls this the warm-start section of the executable, but in a sense it ~ might be more accurate to call it the log-load section. ~ ~ The routine is interpreted Forth code, just as the warm-start routine ~ as a whole is; see above. ~ ~ The job of the log-load routine is to create runnable code in the ~ dynamic log, at runtime. The normal way to create a Forth executable ~ is to use label-transformed code to implement a minimal set of ~ functionality needed for the log-load routine to run, then invoke the ~ log-load routine to copy a more complete set of functionality into ~ memory. ~ ~ The log-load routine is super important, but also extremely verbose, ~ which necessarily makes it hard to read. If you're skimming this file ~ for the first time to get a sense of what it contains, you might want ~ to search for the words "label transform" to get to the stuff that makes ~ better introductory reading. ~ (alignment padding) ~ This is the actual docol routine, the interpreter which is pointed to by ~ the codeword of every interpreted word. It does not itself have an entry ~ in the dictionary; the word "docol" will return a pointer to this routine. ~ The word's entry follows immediately after the routine. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 10 4d 05 08 00 00 00 00 ~ pack-pushcontrol (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 68 3d 05 08 00 00 00 00 ~ add-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 78 4c 05 08 00 00 00 00 ~ pack-next (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 78 cb 04 08 00 00 00 00 ~ packalign (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) ~ This is the dictionary entry for docol. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) ~ create 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) a8 53 05 08 00 00 00 00 ~ log-load-self-codeword ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c0 1e 05 08 00 00 00 00 ~ mov-reg64-imm64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 78 4c 05 08 00 00 00 00 ~ pack-next (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 78 cb 04 08 00 00 00 00 ~ packalign (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) ~ exit is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 98 4d 05 08 00 00 00 00 ~ pack-popcontrol (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ swap is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ drop is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 2drop is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2drop" (string literal with null) 32 64 72 6f 70 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ roll is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) f0 41 05 08 00 00 00 00 ~ dec-reg64 (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 23 05 08 00 00 00 00 ~ mov-reg64-indexed-reg64 ~ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 80 1c 05 08 00 00 00 00 ~ lea-reg64-indexed-reg64 ~ (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 40 1d 05 08 00 00 00 00 ~ lea-reg64-disp8-indexed-reg64 ~ (codeword pointer) a8 18 05 08 00 00 00 00 ~ std (codeword pointer) 18 2e 05 08 00 00 00 00 ~ rep-movs64 (codeword pointer) 70 18 05 08 00 00 00 00 ~ cld (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 38 20 05 08 00 00 00 00 ~ mov-indirect-reg64-reg64 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ unroll is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) f0 41 05 08 00 00 00 00 ~ dec-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 60 21 05 08 00 00 00 00 ~ mov-reg64-indirect-reg64 ~ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 40 1b 05 08 00 00 00 00 ~ lea-reg64-disp8-reg64 ~ (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 40 1b 05 08 00 00 00 00 ~ lea-reg64-disp8-reg64 ~ (codeword pointer) 18 2e 05 08 00 00 00 00 ~ rep-movs64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) e8 23 05 08 00 00 00 00 ~ mov-indexed-reg64-reg64 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 3roll is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 3unroll is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ dup is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 2dup is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ + is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e0 3b 05 08 00 00 00 00 ~ add-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ - is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) f8 3d 05 08 00 00 00 00 ~ sub-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ * is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 10 40 05 08 00 00 00 00 ~ mul-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ /% is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 88 40 05 08 00 00 00 00 ~ divmod-reg64 (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 1+ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1+" (string literal with null) 31 2b 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 41 05 08 00 00 00 00 ~ inc-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 1- is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1-" (string literal with null) 31 2d 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) f0 41 05 08 00 00 00 00 ~ dec-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ = is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) b0 ef 04 08 00 00 00 00 ~ :cc-equal (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ != is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) e0 ef 04 08 00 00 00 00 ~ :cc-not-equal (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ > is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) d8 f1 04 08 00 00 00 00 ~ :cc-greater (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ < is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<" (string literal with null) 3c 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) 38 f1 04 08 00 00 00 00 ~ :cc-less (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ >= is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=" (string literal with null) 3e 3d 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) 70 f1 04 08 00 00 00 00 ~ :cc-greater-equal (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ <= is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=" (string literal with null) 3c 3d 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) a8 f1 04 08 00 00 00 00 ~ :cc-less-equal (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ >unsigned is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">unsigned" (string literal with null) 3e 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) 48 f0 04 08 00 00 00 00 ~ :cc-above (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ =unsigned is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=unsigned" (string literal with null) 3e 3d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) 80 ef 04 08 00 00 00 00 ~ :cc-above-equal (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ <=unsigned is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=unsigned" (string literal with null) 3c 3d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) 18 f0 04 08 00 00 00 00 ~ :cc-below-equal (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ & is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 70 42 05 08 00 00 00 00 ~ and-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ | is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 43 05 08 00 00 00 00 ~ or-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ xor is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "xor" (string literal with null) 78 6f 72 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ invert is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "invert" (string literal with null) 69 6e 76 65 72 74 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) e8 44 05 08 00 00 00 00 ~ not-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ lit is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 48 2f 05 08 00 00 00 00 ~ lods64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ litstring is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) e8 44 05 08 00 00 00 00 ~ not-reg64 (codeword pointer) 58 3a 05 08 00 00 00 00 ~ repnz-scas8 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 68 3d 05 08 00 00 00 00 ~ add-reg64-imm8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 48 c1 04 08 00 00 00 00 ~ invert (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) e8 42 05 08 00 00 00 00 ~ and-reg64-imm8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ ! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 38 20 05 08 00 00 00 00 ~ mov-indirect-reg64-reg64 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ @ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 60 21 05 08 00 00 00 00 ~ mov-reg64-indirect-reg64 ~ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ +! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+!" (string literal with null) 2b 21 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 68 3c 05 08 00 00 00 00 ~ add-indirect-reg64-reg64 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ -! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-!" (string literal with null) 2d 21 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 3e 05 08 00 00 00 00 ~ sub-indirect-reg64-reg64 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 8! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "8!" (string literal with null) 38 21 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 60 29 05 08 00 00 00 00 ~ mov-indirect-reg64-reg8 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 8@ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "8@" (string literal with null) 38 40 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 78 2a 05 08 00 00 00 00 ~ mov-reg8-indirect-reg64 ~ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 16! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "16!" (string literal with null) 31 36 21 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 58 ec 04 08 00 00 00 00 ~ :ax (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) e0 26 05 08 00 00 00 00 ~ mov-indirect-reg64-reg16 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 16@ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "16@" (string literal with null) 31 36 40 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 58 ec 04 08 00 00 00 00 ~ :ax (codeword pointer) 28 28 05 08 00 00 00 00 ~ mov-reg16-indirect-reg64 ~ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 32! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "32!" (string literal with null) 33 32 21 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 18 eb 04 08 00 00 00 00 ~ :eax (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) c0 24 05 08 00 00 00 00 ~ mov-indirect-reg64-reg32 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ 32@ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "32@" (string literal with null) 33 32 40 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 18 eb 04 08 00 00 00 00 ~ :eax (codeword pointer) d8 25 05 08 00 00 00 00 ~ mov-reg32-indirect-reg64 ~ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ control! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control!" (string literal with null) 63 6f 6e 74 72 6f 6c 21 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ control@ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control@" (string literal with null) 63 6f 6e 74 72 6f 6c 40 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ value! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value!" (string literal with null) 76 61 6c 75 65 21 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ value@ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ memcopy is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memcopy" (string literal with null) 6d 65 6d 63 6f 70 79 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) f8 2c 05 08 00 00 00 00 ~ rep-movs8 (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ memmove is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 88 47 05 08 00 00 00 00 ~ cmp-reg64-reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 48 ef 04 08 00 00 00 00 ~ :cc-below (codeword pointer) c0 49 05 08 00 00 00 00 ~ jmp-cc-rel-imm8 (codeword pointer) f8 2c 05 08 00 00 00 00 ~ rep-movs8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 30 4b 05 08 00 00 00 00 ~ jmp-rel-imm8 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) e0 3b 05 08 00 00 00 00 ~ add-reg64-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) f0 41 05 08 00 00 00 00 ~ dec-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) e0 3b 05 08 00 00 00 00 ~ add-reg64-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) f0 41 05 08 00 00 00 00 ~ dec-reg64 (codeword pointer) a8 18 05 08 00 00 00 00 ~ std (codeword pointer) f8 2c 05 08 00 00 00 00 ~ rep-movs8 (codeword pointer) 70 18 05 08 00 00 00 00 ~ cld (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ stringlen is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) e8 44 05 08 00 00 00 00 ~ not-reg64 (codeword pointer) 58 3a 05 08 00 00 00 00 ~ repnz-scas8 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) f8 3d 05 08 00 00 00 00 ~ sub-reg64-reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) f8 3e 05 08 00 00 00 00 ~ sub-reg64-imm8 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ reverse-stringlen is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reverse-stringlen" (string literal with null) 72 65 76 65 72 73 65 2d 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) e8 44 05 08 00 00 00 00 ~ not-reg64 (codeword pointer) a8 18 05 08 00 00 00 00 ~ std (codeword pointer) 58 3a 05 08 00 00 00 00 ~ repnz-scas8 (codeword pointer) 70 18 05 08 00 00 00 00 ~ cld (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) f8 3d 05 08 00 00 00 00 ~ sub-reg64-reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) f8 3e 05 08 00 00 00 00 ~ sub-reg64-imm8 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ reverse-padding-len is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reverse-padding-len" (string literal with null) 72 65 76 65 72 73 65 2d 70 61 64 64 69 6e 67 2d 6c 65 6e 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 30 1e 05 08 00 00 00 00 ~ mov-reg64-imm32 (codeword pointer) a8 18 05 08 00 00 00 00 ~ std (codeword pointer) d8 38 05 08 00 00 00 00 ~ repz-scas8 (codeword pointer) 70 18 05 08 00 00 00 00 ~ cld (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) f8 3d 05 08 00 00 00 00 ~ sub-reg64-reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) f8 3e 05 08 00 00 00 00 ~ sub-reg64-imm8 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ stringcmp is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringcmp" (string literal with null) 73 74 72 69 6e 67 63 6d 70 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 44 05 08 00 00 00 00 ~ xor-reg64-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) 60 21 05 08 00 00 00 00 ~ mov-reg64-indirect-reg64 ~ (codeword pointer) c0 ed 04 08 00 00 00 00 ~ :cl (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) 70 2b 05 08 00 00 00 00 ~ mov-reg8-reg8 (codeword pointer) a0 33 05 08 00 00 00 00 ~ cmps8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) b0 ef 04 08 00 00 00 00 ~ :cc-equal (codeword pointer) c0 49 05 08 00 00 00 00 ~ jmp-cc-rel-imm8 (codeword pointer) 48 f0 04 08 00 00 00 00 ~ :cc-above (codeword pointer) 10 ee 04 08 00 00 00 00 ~ :bl (codeword pointer) 08 49 05 08 00 00 00 00 ~ set-reg8-cc (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 88 3f 05 08 00 00 00 00 ~ sbb-reg64-imm8 (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 78 4c 05 08 00 00 00 00 ~ pack-next (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 90 48 05 08 00 00 00 00 ~ test-reg64-reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) e4 ff ff ff ff ff ff ff ~ 0xffffffffffffffe4 (integer literal) e0 ef 04 08 00 00 00 00 ~ :cc-not-equal (codeword pointer) c0 49 05 08 00 00 00 00 ~ jmp-cc-rel-imm8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) e0 1a 05 08 00 00 00 00 ~ push-imm32-extended64 ~ (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ branch is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) f0 3c 05 08 00 00 00 00 ~ add-reg64-indirect-reg64 ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ 0branch is defined here via the log-load transform. 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 90 48 05 08 00 00 00 00 ~ test-reg64-reg64 (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) b0 ef 04 08 00 00 00 00 ~ :cc-equal (codeword pointer) c0 49 05 08 00 00 00 00 ~ jmp-cc-rel-imm8 (codeword pointer) 48 2f 05 08 00 00 00 00 ~ lods64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ execute is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "execute" (string literal with null) 65 78 65 63 75 74 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c0 4a 05 08 00 00 00 00 ~ jmp-abs-indirect-reg64 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ entry-to-execution-token is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "invert" (string literal with null) 69 6e 76 65 72 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ execution-token-to-entry is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "execution-token-to-entry" (string literal with null) 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 2d 74 6f 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reverse-padding-len" (string literal with null) 72 65 76 65 72 73 65 2d 70 61 64 64 69 6e 67 2d 6c 65 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reverse-stringlen" (string literal with null) 72 65 76 65 72 73 65 2d 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ entry-flags@ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ entry-flags! is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags!" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 21 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 ff ff ff ff ff ff ff ~ 0xffffffffffffff00 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ entry-to-name is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-name" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack32" (string literal with null) 70 61 63 6b 33 32 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "32!" (string literal with null) 33 32 21 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack16" (string literal with null) 70 61 63 6b 31 36 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "16!" (string literal with null) 31 36 21 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "8!" (string literal with null) 38 21 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ packstring is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packstring" (string literal with null) 70 61 63 6b 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memcopy" (string literal with null) 6d 65 6d 63 6f 70 79 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-raw-string is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-raw-string" (string literal with null) 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memcopy" (string literal with null) 6d 65 6d 63 6f 70 79 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ packalign is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ unpack64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack64" (string literal with null) 75 6e 70 61 63 6b 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ unpack32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack32" (string literal with null) 75 6e 70 61 63 6b 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "32@" (string literal with null) 33 32 40 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ unpack16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack16" (string literal with null) 75 6e 70 61 63 6b 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "16@" (string literal with null) 31 36 40 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ unpack8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack8" (string literal with null) 75 6e 70 61 63 6b 38 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "8@" (string literal with null) 38 40 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ align-size is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "align-size" (string literal with null) 61 6c 69 67 6e 2d 73 69 7a 65 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ unpackalign is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpackalign" (string literal with null) 75 6e 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "align-size" (string literal with null) 61 6c 69 67 6e 2d 73 69 7a 65 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ crash is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "crash" (string literal with null) 63 72 61 73 68 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 38 19 05 08 00 00 00 00 ~ hlt (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ max is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "max" (string literal with null) 6d 61 78 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=" (string literal with null) 3e 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ min is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "min" (string literal with null) 6d 69 6e 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=" (string literal with null) 3c 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ over is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pick is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ ndrop is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ndrop" (string literal with null) 6e 64 72 6f 70 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1-" (string literal with null) 31 2d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ ndup is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ndup" (string literal with null) 6e 64 75 70 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1+" (string literal with null) 31 2b 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1-" (string literal with null) 31 2d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2drop" (string literal with null) 32 64 72 6f 70 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ 3drop is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3drop" (string literal with null) 33 64 72 6f 70 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ 3dup is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3dup" (string literal with null) 33 64 75 70 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ && is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&&" (string literal with null) 26 26 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ || is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "||" (string literal with null) 7c 7c 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ not is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "not" (string literal with null) 6e 6f 74 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ negate is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "negate" (string literal with null) 6e 65 67 61 74 65 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ align-floor is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "align-floor" (string literal with null) 61 6c 69 67 6e 2d 66 6c 6f 6f 72 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ find-in is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find-in" (string literal with null) 66 69 6e 64 2d 69 6e 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringcmp" (string literal with null) 73 74 72 69 6e 67 63 6d 70 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ syscall-0 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-0" (string literal with null) 73 79 73 63 61 6c 6c 2d 30 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) e8 18 05 08 00 00 00 00 ~ syscall (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ syscall-1 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-1" (string literal with null) 73 79 73 63 61 6c 6c 2d 31 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) e8 18 05 08 00 00 00 00 ~ syscall (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ syscall-2 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-2" (string literal with null) 73 79 73 63 61 6c 6c 2d 32 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) e8 18 05 08 00 00 00 00 ~ syscall (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ syscall-3 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-3" (string literal with null) 73 79 73 63 61 6c 6c 2d 33 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) e8 18 05 08 00 00 00 00 ~ syscall (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ syscall-4 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-4" (string literal with null) 73 79 73 63 61 6c 6c 2d 34 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 28 ea 04 08 00 00 00 00 ~ :r10 (codeword pointer) 78 1a 05 08 00 00 00 00 ~ pop-extrareg64 (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) e8 18 05 08 00 00 00 00 ~ syscall (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ syscall-5 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-5" (string literal with null) 73 79 73 63 61 6c 6c 2d 35 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) d8 e9 04 08 00 00 00 00 ~ :r8 (codeword pointer) 78 1a 05 08 00 00 00 00 ~ pop-extrareg64 (codeword pointer) 28 ea 04 08 00 00 00 00 ~ :r10 (codeword pointer) 78 1a 05 08 00 00 00 00 ~ pop-extrareg64 (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) e8 18 05 08 00 00 00 00 ~ syscall (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ syscall-6 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-6" (string literal with null) 73 79 73 63 61 6c 6c 2d 36 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 00 ea 04 08 00 00 00 00 ~ :r9 (codeword pointer) 78 1a 05 08 00 00 00 00 ~ pop-extrareg64 (codeword pointer) d8 e9 04 08 00 00 00 00 ~ :r8 (codeword pointer) 78 1a 05 08 00 00 00 00 ~ pop-extrareg64 (codeword pointer) 28 ea 04 08 00 00 00 00 ~ :r10 (codeword pointer) 78 1a 05 08 00 00 00 00 ~ pop-extrareg64 (codeword pointer) e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) 28 1a 05 08 00 00 00 00 ~ pop-reg64 (codeword pointer) e8 18 05 08 00 00 00 00 ~ syscall (codeword pointer) 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) b0 1f 05 08 00 00 00 00 ~ mov-reg64-reg64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ sys-exit is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 3c 00 00 00 00 00 00 00 ~ 0x3c (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-1" (string literal with null) 73 79 73 63 61 6c 6c 2d 31 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "crash" (string literal with null) 63 72 61 73 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sys-write is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-write" (string literal with null) 73 79 73 2d 77 72 69 74 65 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-3" (string literal with null) 73 79 73 63 61 6c 6c 2d 33 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sys-read is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-read" (string literal with null) 73 79 73 2d 72 65 61 64 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-3" (string literal with null) 73 79 73 63 61 6c 6c 2d 33 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sys-open is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-open" (string literal with null) 73 79 73 2d 6f 70 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-3" (string literal with null) 73 79 73 63 61 6c 6c 2d 33 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sys-close is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-close" (string literal with null) 73 79 73 2d 63 6c 6f 73 65 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-1" (string literal with null) 73 79 73 63 61 6c 6c 2d 31 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ emitstring is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-write" (string literal with null) 73 79 73 2d 77 72 69 74 65 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ space is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 20 00 00 00 00 00 00 00 ~ 0x20 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ newline is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pow is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pow" (string literal with null) 70 6f 77 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ logfloor is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "logfloor" (string literal with null) 6c 6f 67 66 6c 6f 6f 72 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">unsigned" (string literal with null) 3e 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<" (string literal with null) 3c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ logceil is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "logceil" (string literal with null) 6c 6f 67 63 65 69 6c 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=unsigned" (string literal with null) 3e 3d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<" (string literal with null) 3c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ .base-unsigned is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "logfloor" (string literal with null) 6c 6f 67 66 6c 6f 6f 72 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pow" (string literal with null) 70 6f 77 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 61 00 00 00 00 00 00 00 ~ 0x61 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ .base is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base" (string literal with null) 2e 62 61 73 65 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ . is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base" (string literal with null) 2e 62 61 73 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ .hex is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex" (string literal with null) 2e 68 65 78 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ .hex8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex8" (string literal with null) 2e 68 65 78 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ .hex16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex16" (string literal with null) 2e 68 65 78 31 36 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ .hex32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex32" (string literal with null) 2e 68 65 78 33 32 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ .hex64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex64" (string literal with null) 2e 68 65 78 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ .hexn is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hexn" (string literal with null) 2e 68 65 78 6e 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-base-unsigned is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base-unsigned" (string literal with null) 70 61 63 6b 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "logfloor" (string literal with null) 6c 6f 67 66 6c 6f 6f 72 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pow" (string literal with null) 70 6f 77 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 61 00 00 00 00 00 00 00 ~ 0x61 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-base is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base" (string literal with null) 70 61 63 6b 2d 62 61 73 65 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packstring" (string literal with null) 70 61 63 6b 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".base-unsigned" (string literal with null) 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-decimal is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-decimal" (string literal with null) 70 61 63 6b 2d 64 65 63 69 6d 61 6c 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base" (string literal with null) 70 61 63 6b 2d 62 61 73 65 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-hex is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-hex" (string literal with null) 70 61 63 6b 2d 68 65 78 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base-unsigned" (string literal with null) 70 61 63 6b 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-hex8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-hex8" (string literal with null) 70 61 63 6b 2d 68 65 78 38 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base-unsigned" (string literal with null) 70 61 63 6b 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-hex16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-hex16" (string literal with null) 70 61 63 6b 2d 68 65 78 31 36 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base-unsigned" (string literal with null) 70 61 63 6b 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-hex32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-hex32" (string literal with null) 70 61 63 6b 2d 68 65 78 33 32 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base-unsigned" (string literal with null) 70 61 63 6b 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-hex64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-hex64" (string literal with null) 70 61 63 6b 2d 68 65 78 36 34 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base-unsigned" (string literal with null) 70 61 63 6b 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-hexn is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-hexn" (string literal with null) 70 61 63 6b 2d 68 65 78 6e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-base-unsigned" (string literal with null) 70 61 63 6b 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rcx" (string literal with null) 3a 72 63 78 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rdx" (string literal with null) 3a 72 64 78 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbx" (string literal with null) 3a 72 62 78 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsp" (string literal with null) 3a 72 73 70 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsi" (string literal with null) 3a 72 73 69 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rdi" (string literal with null) 3a 72 64 69 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r8" (string literal with null) 3a 72 38 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r9" (string literal with null) 3a 72 39 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r10" (string literal with null) 3a 72 31 30 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r11" (string literal with null) 3a 72 31 31 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r12" (string literal with null) 3a 72 31 32 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r13" (string literal with null) 3a 72 31 33 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r14" (string literal with null) 3a 72 31 34 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r15" (string literal with null) 3a 72 31 35 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":eax" (string literal with null) 3a 65 61 78 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ecx" (string literal with null) 3a 65 63 78 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":edx" (string literal with null) 3a 65 64 78 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ebx" (string literal with null) 3a 65 62 78 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":esp" (string literal with null) 3a 65 73 70 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ebp" (string literal with null) 3a 65 62 70 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":esi" (string literal with null) 3a 65 73 69 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":edi" (string literal with null) 3a 65 64 69 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ax" (string literal with null) 3a 61 78 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cx" (string literal with null) 3a 63 78 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":dx" (string literal with null) 3a 64 78 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":bx" (string literal with null) 3a 62 78 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":sp" (string literal with null) 3a 73 70 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":bp" (string literal with null) 3a 62 70 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":si" (string literal with null) 3a 73 69 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":di" (string literal with null) 3a 64 69 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":al" (string literal with null) 3a 61 6c 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cl" (string literal with null) 3a 63 6c 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":dl" (string literal with null) 3a 64 6c 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":bl" (string literal with null) 3a 62 6c 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ah" (string literal with null) 3a 61 68 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ch" (string literal with null) 3a 63 68 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":dh" (string literal with null) 3a 64 68 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":bh" (string literal with null) 3a 62 68 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-overflow" (string literal with null) 3a 63 63 2d 6f 76 65 72 66 6c 6f 77 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-no-overflow" (string literal with null) 3a 63 63 2d 6e 6f 2d 6f 76 65 72 66 6c 6f 77 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-below" (string literal with null) 3a 63 63 2d 62 65 6c 6f 77 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-above-equal" (string literal with null) 3a 63 63 2d 61 62 6f 76 65 2d 65 71 75 61 6c 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-equal" (string literal with null) 3a 63 63 2d 65 71 75 61 6c 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-not-equal" (string literal with null) 3a 63 63 2d 6e 6f 74 2d 65 71 75 61 6c 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-below-equal" (string literal with null) 3a 63 63 2d 62 65 6c 6f 77 2d 65 71 75 61 6c 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-above" (string literal with null) 3a 63 63 2d 61 62 6f 76 65 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-sign" (string literal with null) 3a 63 63 2d 73 69 67 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-not-sign" (string literal with null) 3a 63 63 2d 6e 6f 74 2d 73 69 67 6e 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-even" (string literal with null) 3a 63 63 2d 65 76 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-odd" (string literal with null) 3a 63 63 2d 6f 64 64 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-less" (string literal with null) 3a 63 63 2d 6c 65 73 73 00 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-greater-equal" (string literal with null) 3a 63 63 2d 67 72 65 61 74 65 72 2d 65 71 75 61 6c 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-less-equal" (string literal with null) 3a 63 63 2d 6c 65 73 73 2d 65 71 75 61 6c 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-greater" (string literal with null) 3a 63 63 2d 67 72 65 61 74 65 72 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 80 56 05 08 00 00 00 00 ~ log-load-keyword (codeword pointer) ~ reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rcx" (string literal with null) 3a 72 63 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rdx" (string literal with null) 3a 72 64 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbx" (string literal with null) 3a 72 62 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsp" (string literal with null) 3a 72 73 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsi" (string literal with null) 3a 72 73 69 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rdi" (string literal with null) 3a 72 64 69 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to reg64 is not a reg64." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 72 65 67 36 34 20 69 73 20 6e 6f 74 20 61 20 72 65 67 36 34 2e 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ extrareg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "extrareg64" (string literal with null) 65 78 74 72 61 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r8" (string literal with null) 3a 72 38 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r9" (string literal with null) 3a 72 39 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r10" (string literal with null) 3a 72 31 30 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r11" (string literal with null) 3a 72 31 31 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r12" (string literal with null) 3a 72 31 32 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r13" (string literal with null) 3a 72 31 33 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r14" (string literal with null) 3a 72 31 34 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":r15" (string literal with null) 3a 72 31 35 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to extrareg64 is not an extrareg64." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 65 78 74 72 61 72 65 67 36 34 20 69 73 20 6e 6f 74 20 61 6e 20 65 78 74 72 61 72 65 67 36 34 2e 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ reg32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg32" (string literal with null) 72 65 67 33 32 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":eax" (string literal with null) 3a 65 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ecx" (string literal with null) 3a 65 63 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":edx" (string literal with null) 3a 65 64 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ebx" (string literal with null) 3a 65 62 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":esp" (string literal with null) 3a 65 73 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ebp" (string literal with null) 3a 65 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":esi" (string literal with null) 3a 65 73 69 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":edi" (string literal with null) 3a 65 64 69 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to reg32 is not a reg32." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 72 65 67 33 32 20 69 73 20 6e 6f 74 20 61 20 72 65 67 33 32 2e 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ reg16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg16" (string literal with null) 72 65 67 31 36 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ax" (string literal with null) 3a 61 78 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cx" (string literal with null) 3a 63 78 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":dx" (string literal with null) 3a 64 78 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":bx" (string literal with null) 3a 62 78 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":sp" (string literal with null) 3a 73 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":bp" (string literal with null) 3a 62 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":si" (string literal with null) 3a 73 69 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":di" (string literal with null) 3a 64 69 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to reg16 is not a reg16." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 72 65 67 31 36 20 69 73 20 6e 6f 74 20 61 20 72 65 67 31 36 2e 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ reg8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg8" (string literal with null) 72 65 67 38 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":al" (string literal with null) 3a 61 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cl" (string literal with null) 3a 63 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":dl" (string literal with null) 3a 64 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":bl" (string literal with null) 3a 62 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ah" (string literal with null) 3a 61 68 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":ch" (string literal with null) 3a 63 68 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":dh" (string literal with null) 3a 64 68 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":bh" (string literal with null) 3a 62 68 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to reg8 is not a reg8." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 72 65 67 38 20 69 73 20 6e 6f 74 20 61 20 72 65 67 38 2e 00 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ scalefield is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "scalefield" (string literal with null) 73 63 61 6c 65 66 69 65 6c 64 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to scalefield is not 1, 2, 4, or 8." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 73 63 61 6c 65 66 69 65 6c 64 20 69 73 20 6e 6f 74 20 31 2c 20 32 2c 20 34 2c 20 6f 72 20 38 2e 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ condition-code is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "condition-code" (string literal with null) 63 6f 6e 64 69 74 69 6f 6e 2d 63 6f 64 65 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-overflow" (string literal with null) 3a 63 63 2d 6f 76 65 72 66 6c 6f 77 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-no-overflow" (string literal with null) 3a 63 63 2d 6e 6f 2d 6f 76 65 72 66 6c 6f 77 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-below" (string literal with null) 3a 63 63 2d 62 65 6c 6f 77 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-above-equal" (string literal with null) 3a 63 63 2d 61 62 6f 76 65 2d 65 71 75 61 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-equal" (string literal with null) 3a 63 63 2d 65 71 75 61 6c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-not-equal" (string literal with null) 3a 63 63 2d 6e 6f 74 2d 65 71 75 61 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-below-equal" (string literal with null) 3a 63 63 2d 62 65 6c 6f 77 2d 65 71 75 61 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-above" (string literal with null) 3a 63 63 2d 61 62 6f 76 65 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-sign" (string literal with null) 3a 63 63 2d 73 69 67 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-not-sign" (string literal with null) 3a 63 63 2d 6e 6f 74 2d 73 69 67 6e 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-even" (string literal with null) 3a 63 63 2d 65 76 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-odd" (string literal with null) 3a 63 63 2d 6f 64 64 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0b 00 00 00 00 00 00 00 ~ 0xb (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-less" (string literal with null) 3a 63 63 2d 6c 65 73 73 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0c 00 00 00 00 00 00 00 ~ 0xc (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-greater-equal" (string literal with null) 3a 63 63 2d 67 72 65 61 74 65 72 2d 65 71 75 61 6c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0d 00 00 00 00 00 00 00 ~ 0xd (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-less-equal" (string literal with null) 3a 63 63 2d 6c 65 73 73 2d 65 71 75 61 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0e 00 00 00 00 00 00 00 ~ 0xe (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":cc-greater" (string literal with null) 3a 63 63 2d 67 72 65 61 74 65 72 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to condition-code is not a condition code." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 6f 64 65 20 69 73 20 6e 6f 74 20 61 20 63 6f 6e 64 69 74 69 6f 6e 20 63 6f 64 65 2e 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-0 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-0" (string literal with null) 72 65 78 2d 30 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-w is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 48 00 00 00 00 00 00 00 ~ 0x48 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-r is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-r" (string literal with null) 72 65 78 2d 72 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 44 00 00 00 00 00 00 00 ~ 0x44 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-x is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-x" (string literal with null) 72 65 78 2d 78 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 42 00 00 00 00 00 00 00 ~ 0x42 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-b is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-b" (string literal with null) 72 65 78 2d 62 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 41 00 00 00 00 00 00 00 ~ 0x41 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-wr is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-wr" (string literal with null) 72 65 78 2d 77 72 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4c 00 00 00 00 00 00 00 ~ 0x4c (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-wx is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-wx" (string literal with null) 72 65 78 2d 77 78 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4a 00 00 00 00 00 00 00 ~ 0x4a (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-wb is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-wb" (string literal with null) 72 65 78 2d 77 62 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 49 00 00 00 00 00 00 00 ~ 0x49 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-rx is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-rx" (string literal with null) 72 65 78 2d 72 78 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 46 00 00 00 00 00 00 00 ~ 0x46 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-rb is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-rb" (string literal with null) 72 65 78 2d 72 62 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 45 00 00 00 00 00 00 00 ~ 0x45 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-xb is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-xb" (string literal with null) 72 65 78 2d 78 62 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 43 00 00 00 00 00 00 00 ~ 0x43 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-wrx is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-wrx" (string literal with null) 72 65 78 2d 77 72 78 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4e 00 00 00 00 00 00 00 ~ 0x4e (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-wrb is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-wrb" (string literal with null) 72 65 78 2d 77 72 62 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4d 00 00 00 00 00 00 00 ~ 0x4d (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-wxb is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-wxb" (string literal with null) 72 65 78 2d 77 78 62 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4b 00 00 00 00 00 00 00 ~ 0x4b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-rxb is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-rxb" (string literal with null) 72 65 78 2d 72 78 62 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 47 00 00 00 00 00 00 00 ~ 0x47 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rex-wrxb is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-wrxb" (string literal with null) 72 65 78 2d 77 72 78 62 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4f 00 00 00 00 00 00 00 ~ 0x4f (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ opcodereg is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodereg" (string literal with null) 6f 70 63 6f 64 65 72 65 67 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ opcodecc is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodecc" (string literal with null) 6f 70 63 6f 64 65 63 63 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ modrm is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sib is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sib" (string literal with null) 73 69 62 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ addressing-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ addressing-reg8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg8" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 38 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg8" (string literal with null) 72 65 67 38 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ addressing-indirect-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsp" (string literal with null) 3a 72 73 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsp" (string literal with null) 3a 72 73 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sib" (string literal with null) 73 69 62 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "R/M parameter to addressing-indirect-reg64 is :rbp." (string literal with null) 52 2f 4d 20 70 61 72 61 6d 65 74 65 72 20 74 6f 20 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 20 69 73 20 3a 72 62 70 2e 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ addressing-disp8-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsp" (string literal with null) 3a 72 73 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsp" (string literal with null) 3a 72 73 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sib" (string literal with null) 73 69 62 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ addressing-disp32-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp32-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 33 32 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsp" (string literal with null) 3a 72 73 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsp" (string literal with null) 3a 72 73 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sib" (string literal with null) 73 69 62 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack32" (string literal with null) 70 61 63 6b 33 32 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ addressing-indexed-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indexed-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "scalefield" (string literal with null) 73 63 61 6c 65 66 69 65 6c 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sib" (string literal with null) 73 69 62 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Base parameter to addressing-indexed-reg64 is :rbp." (string literal with null) 42 61 73 65 20 70 61 72 61 6d 65 74 65 72 20 74 6f 20 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 20 69 73 20 3a 72 62 70 2e 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ addressing-disp8-indexed-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-indexed-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "scalefield" (string literal with null) 73 63 61 6c 65 66 69 65 6c 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sib" (string literal with null) 73 69 62 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ cld is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "cld" (string literal with null) 63 6c 64 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) fc 00 00 00 00 00 00 00 ~ 0xfc (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ std is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "std" (string literal with null) 73 74 64 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) fd 00 00 00 00 00 00 00 ~ 0xfd (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ syscall is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall" (string literal with null) 73 79 73 63 61 6c 6c 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ hlt is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hlt" (string literal with null) 68 6c 74 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f4 00 00 00 00 00 00 00 ~ 0xf4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ push-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-reg64" (string literal with null) 70 75 73 68 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 50 00 00 00 00 00 00 00 ~ 0x50 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodereg" (string literal with null) 6f 70 63 6f 64 65 72 65 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ push-extrareg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-extrareg64" (string literal with null) 70 75 73 68 2d 65 78 74 72 61 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-b" (string literal with null) 72 65 78 2d 62 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "extrareg64" (string literal with null) 65 78 74 72 61 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 50 00 00 00 00 00 00 00 ~ 0x50 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodereg" (string literal with null) 6f 70 63 6f 64 65 72 65 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pop-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pop-reg64" (string literal with null) 70 6f 70 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 58 00 00 00 00 00 00 00 ~ 0x58 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodereg" (string literal with null) 6f 70 63 6f 64 65 72 65 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pop-extrareg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pop-extrareg64" (string literal with null) 70 6f 70 2d 65 78 74 72 61 72 65 67 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-b" (string literal with null) 72 65 78 2d 62 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "extrareg64" (string literal with null) 65 78 74 72 61 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 58 00 00 00 00 00 00 00 ~ 0x58 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodereg" (string literal with null) 6f 70 63 6f 64 65 72 65 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ push-imm32-extended64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-imm32-extended64" (string literal with null) 70 75 73 68 2d 69 6d 6d 33 32 2d 65 78 74 65 6e 64 65 64 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 68 00 00 00 00 00 00 00 ~ 0x68 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack32" (string literal with null) 70 61 63 6b 33 32 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ lea-reg64-disp8-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lea-reg64-disp8-reg64" (string literal with null) 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8d 00 00 00 00 00 00 00 ~ 0x8d (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ lea-reg64-disp32-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lea-reg64-disp32-reg64" (string literal with null) 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8d 00 00 00 00 00 00 00 ~ 0x8d (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp32-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 33 32 2d 72 65 67 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ lea-reg64-indexed-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lea-reg64-indexed-reg64" (string literal with null) 6c 65 61 2d 72 65 67 36 34 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8d 00 00 00 00 00 00 00 ~ 0x8d (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indexed-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ lea-reg64-disp8-indexed-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lea-reg64-disp8-indexed-reg64" (string literal with null) 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8d 00 00 00 00 00 00 00 ~ 0x8d (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-indexed-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg64-imm32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm32" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 33 32 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c7 00 00 00 00 00 00 00 ~ 0xc7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack32" (string literal with null) 70 61 63 6b 33 32 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg64-imm64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) b8 00 00 00 00 00 00 00 ~ 0xb8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodereg" (string literal with null) 6f 70 63 6f 64 65 72 65 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-extrareg64-imm64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-extrareg64-imm64" (string literal with null) 6d 6f 76 2d 65 78 74 72 61 72 65 67 36 34 2d 69 6d 6d 36 34 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-wb" (string literal with null) 72 65 78 2d 77 62 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "extrareg64" (string literal with null) 65 78 74 72 61 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) b8 00 00 00 00 00 00 00 ~ 0xb8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodereg" (string literal with null) 6f 70 63 6f 64 65 72 65 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-indirect-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-indirect-reg64-reg64" (string literal with null) 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-disp8-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-disp8-reg64-reg64" (string literal with null) 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg64-indirect-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-indirect-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg64-disp8-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-disp8-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg64-disp32-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-disp32-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp32-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 33 32 2d 72 65 67 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg64-indexed-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-indexed-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indexed-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-indexed-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-indexed-reg64-reg64" (string literal with null) 6d 6f 76 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indexed-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-indirect-reg64-reg32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-indirect-reg64-reg32" (string literal with null) 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg32" (string literal with null) 72 65 67 33 32 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-disp8-reg64-reg32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-disp8-reg64-reg32" (string literal with null) 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 33 32 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg32" (string literal with null) 72 65 67 33 32 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg32-indirect-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg32-indirect-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 33 32 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg32" (string literal with null) 72 65 67 33 32 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg32-disp8-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg32-disp8-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 33 32 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg32" (string literal with null) 72 65 67 33 32 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-indirect-reg64-reg16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-indirect-reg64-reg16" (string literal with null) 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg16" (string literal with null) 72 65 67 31 36 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-disp8-reg64-reg16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-disp8-reg64-reg16" (string literal with null) 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 31 36 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg16" (string literal with null) 72 65 67 31 36 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg16-indirect-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg16-indirect-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 31 36 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg16" (string literal with null) 72 65 67 31 36 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg16-disp8-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg16-disp8-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 31 36 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg16" (string literal with null) 72 65 67 31 36 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-indirect-reg64-reg8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-indirect-reg64-reg8" (string literal with null) 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 38 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 88 00 00 00 00 00 00 00 ~ 0x88 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg8" (string literal with null) 72 65 67 38 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-disp8-reg64-reg8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-disp8-reg64-reg8" (string literal with null) 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 38 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 88 00 00 00 00 00 00 00 ~ 0x88 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg8" (string literal with null) 72 65 67 38 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg8-indirect-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg8-indirect-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 38 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8a 00 00 00 00 00 00 00 ~ 0x8a (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg8" (string literal with null) 72 65 67 38 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg8-disp8-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg8-disp8-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 38 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8a 00 00 00 00 00 00 00 ~ 0x8a (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg8" (string literal with null) 72 65 67 38 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-disp8-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mov-reg8-reg8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg8-reg8" (string literal with null) 6d 6f 76 2d 72 65 67 38 2d 72 65 67 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 88 00 00 00 00 00 00 00 ~ 0x88 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg8" (string literal with null) 72 65 67 38 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg8" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 38 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ movs8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "movs8" (string literal with null) 6d 6f 76 73 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a4 00 00 00 00 00 00 00 ~ 0xa4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ movs16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "movs16" (string literal with null) 6d 6f 76 73 31 36 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ movs32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "movs32" (string literal with null) 6d 6f 76 73 33 32 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ movs64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "movs64" (string literal with null) 6d 6f 76 73 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-movs8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-movs8" (string literal with null) 72 65 70 2d 6d 6f 76 73 38 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a4 00 00 00 00 00 00 00 ~ 0xa4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-movs16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-movs16" (string literal with null) 72 65 70 2d 6d 6f 76 73 31 36 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-movs32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-movs32" (string literal with null) 72 65 70 2d 6d 6f 76 73 33 32 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-movs64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-movs64" (string literal with null) 72 65 70 2d 6d 6f 76 73 36 34 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ lods8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lods8" (string literal with null) 6c 6f 64 73 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ac 00 00 00 00 00 00 00 ~ 0xac (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ lods16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lods16" (string literal with null) 6c 6f 64 73 31 36 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ lods32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lods32" (string literal with null) 6c 6f 64 73 33 32 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ lods64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lods64" (string literal with null) 6c 6f 64 73 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-lods8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-lods8" (string literal with null) 72 65 70 2d 6c 6f 64 73 38 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ac 00 00 00 00 00 00 00 ~ 0xac (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-lods16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-lods16" (string literal with null) 72 65 70 2d 6c 6f 64 73 31 36 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-lods32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-lods32" (string literal with null) 72 65 70 2d 6c 6f 64 73 33 32 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-lods64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-lods64" (string literal with null) 72 65 70 2d 6c 6f 64 73 36 34 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ stos8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stos8" (string literal with null) 73 74 6f 73 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) aa 00 00 00 00 00 00 00 ~ 0xaa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ stos16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stos16" (string literal with null) 73 74 6f 73 31 36 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ stos32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stos32" (string literal with null) 73 74 6f 73 33 32 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ stos64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stos64" (string literal with null) 73 74 6f 73 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-stos8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-stos8" (string literal with null) 72 65 70 2d 73 74 6f 73 38 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) aa 00 00 00 00 00 00 00 ~ 0xaa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-stos16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-stos16" (string literal with null) 72 65 70 2d 73 74 6f 73 31 36 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-stos32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-stos32" (string literal with null) 72 65 70 2d 73 74 6f 73 33 32 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rep-stos64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rep-stos64" (string literal with null) 72 65 70 2d 73 74 6f 73 36 34 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ cmps8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "cmps8" (string literal with null) 63 6d 70 73 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a6 00 00 00 00 00 00 00 ~ 0xa6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ cmps16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "cmps16" (string literal with null) 63 6d 70 73 31 36 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ cmps32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "cmps32" (string literal with null) 63 6d 70 73 33 32 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ cmps64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "cmps64" (string literal with null) 63 6d 70 73 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repz-cmps8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repz-cmps8" (string literal with null) 72 65 70 7a 2d 63 6d 70 73 38 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a6 00 00 00 00 00 00 00 ~ 0xa6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repz-cmps16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repz-cmps16" (string literal with null) 72 65 70 7a 2d 63 6d 70 73 31 36 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repz-cmps32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repz-cmps32" (string literal with null) 72 65 70 7a 2d 63 6d 70 73 33 32 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repz-cmps64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repz-cmps64" (string literal with null) 72 65 70 7a 2d 63 6d 70 73 36 34 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repnz-cmps8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repnz-cmps8" (string literal with null) 72 65 70 6e 7a 2d 63 6d 70 73 38 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a6 00 00 00 00 00 00 00 ~ 0xa6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repnz-cmps16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repnz-cmps16" (string literal with null) 72 65 70 6e 7a 2d 63 6d 70 73 31 36 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repnz-cmps32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repnz-cmps32" (string literal with null) 72 65 70 6e 7a 2d 63 6d 70 73 33 32 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repnz-cmps64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repnz-cmps64" (string literal with null) 72 65 70 6e 7a 2d 63 6d 70 73 36 34 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ scas8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "scas8" (string literal with null) 73 63 61 73 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a8 00 00 00 00 00 00 00 ~ 0xa8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ scas16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "scas16" (string literal with null) 73 63 61 73 31 36 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ scas32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "scas32" (string literal with null) 73 63 61 73 33 32 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ scas64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "scas64" (string literal with null) 73 63 61 73 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repz-scas8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repz-scas8" (string literal with null) 72 65 70 7a 2d 73 63 61 73 38 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ae 00 00 00 00 00 00 00 ~ 0xae (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repz-scas16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repz-scas16" (string literal with null) 72 65 70 7a 2d 73 63 61 73 31 36 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repz-scas32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repz-scas32" (string literal with null) 72 65 70 7a 2d 73 63 61 73 33 32 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repz-scas64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repz-scas64" (string literal with null) 72 65 70 7a 2d 73 63 61 73 36 34 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repnz-scas8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repnz-scas8" (string literal with null) 72 65 70 6e 7a 2d 73 63 61 73 38 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ae 00 00 00 00 00 00 00 ~ 0xae (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repnz-scas16 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repnz-scas16" (string literal with null) 72 65 70 6e 7a 2d 73 63 61 73 31 36 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repnz-scas32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repnz-scas32" (string literal with null) 72 65 70 6e 7a 2d 73 63 61 73 33 32 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ repnz-scas64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "repnz-scas64" (string literal with null) 72 65 70 6e 7a 2d 73 63 61 73 36 34 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ add-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "add-reg64-reg64" (string literal with null) 61 64 64 2d 72 65 67 36 34 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ add-indirect-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "add-indirect-reg64-reg64" (string literal with null) 61 64 64 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ add-reg64-indirect-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "add-reg64-indirect-reg64" (string literal with null) 61 64 64 2d 72 65 67 36 34 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ add-reg64-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "add-reg64-imm8" (string literal with null) 61 64 64 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sub-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sub-reg64-reg64" (string literal with null) 73 75 62 2d 72 65 67 36 34 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 2b 00 00 00 00 00 00 00 ~ 0x2b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sub-indirect-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sub-indirect-reg64-reg64" (string literal with null) 73 75 62 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 2b 00 00 00 00 00 00 00 ~ 0x2b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sub-reg64-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sub-reg64-imm8" (string literal with null) 73 75 62 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sbb-reg64-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sbb-reg64-imm8" (string literal with null) 73 62 62 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ mul-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mul-reg64" (string literal with null) 6d 75 6c 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f7 00 00 00 00 00 00 00 ~ 0xf7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ divmod-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "divmod-reg64" (string literal with null) 64 69 76 6d 6f 64 2d 72 65 67 36 34 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f7 00 00 00 00 00 00 00 ~ 0xf7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ idivmod-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "idivmod-reg64" (string literal with null) 69 64 69 76 6d 6f 64 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f7 00 00 00 00 00 00 00 ~ 0xf7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ inc-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "inc-reg64" (string literal with null) 69 6e 63 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ dec-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dec-reg64" (string literal with null) 64 65 63 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ and-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "and-reg64-reg64" (string literal with null) 61 6e 64 2d 72 65 67 36 34 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 23 00 00 00 00 00 00 00 ~ 0x23 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ and-reg64-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "and-reg64-imm8" (string literal with null) 61 6e 64 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ or-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "or-reg64-reg64" (string literal with null) 6f 72 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0b 00 00 00 00 00 00 00 ~ 0xb (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ or-reg64-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "or-reg64-imm8" (string literal with null) 6f 72 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ xor-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "xor-reg64-reg64" (string literal with null) 78 6f 72 2d 72 65 67 36 34 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 33 00 00 00 00 00 00 00 ~ 0x33 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ not-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "not-reg64" (string literal with null) 6e 6f 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f7 00 00 00 00 00 00 00 ~ 0xf7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rol-reg64-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rol-reg64-imm8" (string literal with null) 72 6f 6c 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c1 00 00 00 00 00 00 00 ~ 0xc1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ rol-reg8-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rol-reg8-imm8" (string literal with null) 72 6f 6c 2d 72 65 67 38 2d 69 6d 6d 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c0 00 00 00 00 00 00 00 ~ 0xc0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg8" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 38 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ ror-reg64-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ror-reg64-imm8" (string literal with null) 72 6f 72 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c1 00 00 00 00 00 00 00 ~ 0xc1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ ror-reg8-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ror-reg8-imm8" (string literal with null) 72 6f 72 2d 72 65 67 38 2d 69 6d 6d 38 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c0 00 00 00 00 00 00 00 ~ 0xc0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ cmp-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "cmp-reg64-reg64" (string literal with null) 63 6d 70 2d 72 65 67 36 34 2d 72 65 67 36 34 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 3b 00 00 00 00 00 00 00 ~ 0x3b (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ cmp-reg64-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "cmp-reg64-imm8" (string literal with null) 63 6d 70 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ test-reg64-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "test-reg64-reg64" (string literal with null) 74 65 73 74 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "rex-w" (string literal with null) 72 65 78 2d 77 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 85 00 00 00 00 00 00 00 ~ 0x85 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg64" (string literal with null) 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ set-reg8-cc is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "set-reg8-cc" (string literal with null) 73 65 74 2d 72 65 67 38 2d 63 63 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "condition-code" (string literal with null) 63 6f 6e 64 69 74 69 6f 6e 2d 63 6f 64 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 90 00 00 00 00 00 00 00 ~ 0x90 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodecc" (string literal with null) 6f 70 63 6f 64 65 63 63 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "reg8" (string literal with null) 72 65 67 38 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "modrm" (string literal with null) 6d 6f 64 72 6d 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ jmp-cc-rel-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "jmp-cc-rel-imm8" (string literal with null) 6a 6d 70 2d 63 63 2d 72 65 6c 2d 69 6d 6d 38 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "condition-code" (string literal with null) 63 6f 6e 64 69 74 69 6f 6e 2d 63 6f 64 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 70 00 00 00 00 00 00 00 ~ 0x70 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodecc" (string literal with null) 6f 70 63 6f 64 65 63 63 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ jmp-cc-rel-imm32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "jmp-cc-rel-imm32" (string literal with null) 6a 6d 70 2d 63 63 2d 72 65 6c 2d 69 6d 6d 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "condition-code" (string literal with null) 63 6f 6e 64 69 74 69 6f 6e 2d 63 6f 64 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 70 00 00 00 00 00 00 00 ~ 0x70 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "opcodecc" (string literal with null) 6f 70 63 6f 64 65 63 63 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack32" (string literal with null) 70 61 63 6b 33 32 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ jmp-abs-indirect-reg64 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "jmp-abs-indirect-reg64" (string literal with null) 6a 6d 70 2d 61 62 73 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "addressing-indirect-reg64" (string literal with null) 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ jmp-rel-imm8 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "jmp-rel-imm8" (string literal with null) 6a 6d 70 2d 72 65 6c 2d 69 6d 6d 38 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) eb 00 00 00 00 00 00 00 ~ 0xeb (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ jmp-rel-imm32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "jmp-rel-imm32" (string literal with null) 6a 6d 70 2d 72 65 6c 2d 69 6d 6d 33 32 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) e9 00 00 00 00 00 00 00 ~ 0xe9 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack32" (string literal with null) 70 61 63 6b 33 32 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ call-rel-imm32 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "call-rel-imm32" (string literal with null) 63 61 6c 6c 2d 72 65 6c 2d 69 6d 6d 33 32 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) e8 00 00 00 00 00 00 00 ~ 0xe8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack32" (string literal with null) 70 61 63 6b 33 32 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ ret is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ret" (string literal with null) 72 65 74 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c3 00 00 00 00 00 00 00 ~ 0xc3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-next is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-next" (string literal with null) 70 61 63 6b 2d 6e 65 78 74 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lods64" (string literal with null) 6c 6f 64 73 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "jmp-abs-indirect-reg64" (string literal with null) 6a 6d 70 2d 61 62 73 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-beforenext is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-beforenext" (string literal with null) 70 61 63 6b 2d 62 65 66 6f 72 65 6e 65 78 74 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "jmp-abs-indirect-reg64" (string literal with null) 6a 6d 70 2d 61 62 73 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-pushcontrol is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-pushcontrol" (string literal with null) 70 61 63 6b 2d 70 75 73 68 63 6f 6e 74 72 6f 6c 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f8 ff ff ff ff ff ff ff ~ 0xfffffffffffffff8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lea-reg64-disp8-reg64" (string literal with null) 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-disp8-reg64-reg64" (string literal with null) 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pack-popcontrol is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-popcontrol" (string literal with null) 70 61 63 6b 2d 70 6f 70 63 6f 6e 74 72 6f 6c 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-disp8-reg64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rbp" (string literal with null) 3a 72 62 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lea-reg64-disp8-reg64" (string literal with null) 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-offset is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-offset" (string literal with null) 6c 6f 67 2d 6f 66 66 73 65 74 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 01 00 00 00 00 00 ~ 0x10000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-log is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-log" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 6c 6f 67 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-offset" (string literal with null) 6c 6f 67 2d 6f 66 66 73 65 74 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-s0 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-s0" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 73 30 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-offset" (string literal with null) 6c 6f 67 2d 6f 66 66 73 65 74 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-r0 is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-r0" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 72 30 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-offset" (string literal with null) 6c 6f 67 2d 6f 66 66 73 65 74 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-latest is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-latest" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 6c 61 74 65 73 74 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-offset" (string literal with null) 6c 6f 67 2d 6f 66 66 73 65 74 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-here is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-offset" (string literal with null) 6c 6f 67 2d 6f 66 66 73 65 74 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-find is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-latest" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 6c 61 74 65 73 74 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find-in" (string literal with null) 66 69 6e 64 2d 69 6e 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-find-execution-token is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find-execution-token" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "No such word: " (string literal with null) 4e 6f 20 73 75 63 68 20 77 6f 72 64 3a 20 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-create is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-create" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-latest" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 6c 61 74 65 73 74 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-latest" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 6c 61 74 65 73 74 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-self-codeword is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-self-codeword" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-comma is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-semicolon-assembly is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-semicolon-assembly" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-next" (string literal with null) 70 61 63 6b 2d 6e 65 78 74 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-latest" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 6c 61 74 65 73 74 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-variable is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-variable" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-create" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-reg64" (string literal with null) 70 75 73 68 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-next" (string literal with null) 70 61 63 6b 2d 6e 65 78 74 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-keyword is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-keyword" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 6b 65 79 77 6f 72 64 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-create" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-reg64" (string literal with null) 70 75 73 68 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-next" (string literal with null) 70 61 63 6b 2d 6e 65 78 74 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-comma-string is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma-string" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2d 73 74 72 69 6e 67 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packstring" (string literal with null) 70 61 63 6b 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-left-curly-brace is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-left-curly-brace" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 6c 65 66 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-right-curly-brace is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-right-curly-brace" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 72 69 67 68 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-if is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-if" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 69 66 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-unless is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-unless" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 6c 65 73 73 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-if-else is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-if-else" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 69 66 2d 65 6c 73 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-forever is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-forever" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 6f 72 65 76 65 72 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ log-load-while is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-while" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 77 68 69 6c 65 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-here" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-find" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log-load-comma" (string literal with null) 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ stack is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stack" (string literal with null) 73 74 61 63 6b 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "s0" (string literal with null) 73 30 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "s0" (string literal with null) 73 30 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ stackhex is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stackhex" (string literal with null) 73 74 61 63 6b 68 65 78 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "s0" (string literal with null) 73 30 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "s0" (string literal with null) 73 30 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex64" (string literal with null) 2e 68 65 78 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-in-log is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-in-log" (string literal with null) 69 73 2d 69 6e 2d 6c 6f 67 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log" (string literal with null) 6c 6f 67 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=" (string literal with null) 3c 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&&" (string literal with null) 26 26 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ oldest-entry is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "oldest-entry" (string literal with null) 6f 6c 64 65 73 74 2d 65 6e 74 72 79 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ oldest-entry-in is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "oldest-entry-in" (string literal with null) 6f 6c 64 65 73 74 2d 65 6e 74 72 79 2d 69 6e 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ next-newer-entry is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "next-newer-entry" (string literal with null) 6e 65 78 74 2d 6e 65 77 65 72 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2drop" (string literal with null) 32 64 72 6f 70 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ next-newer-entry-in is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "next-newer-entry-in" (string literal with null) 6e 65 78 74 2d 6e 65 77 65 72 2d 65 6e 74 72 79 2d 69 6e 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2drop" (string literal with null) 32 64 72 6f 70 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ guess-entry-end is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "guess-entry-end" (string literal with null) 67 75 65 73 73 2d 65 6e 74 72 79 2d 65 6e 64 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "next-newer-entry" (string literal with null) 6e 65 78 74 2d 6e 65 77 65 72 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-in-log" (string literal with null) 69 73 2d 69 6e 2d 6c 6f 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ containing-entry is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "containing-entry" (string literal with null) 63 6f 6e 74 61 69 6e 69 6e 67 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-in-log" (string literal with null) 69 73 2d 69 6e 2d 6c 6f 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-in-log" (string literal with null) 69 73 2d 69 6e 2d 6c 6f 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&&" (string literal with null) 26 26 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-assembly-word is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-assembly-word" (string literal with null) 69 73 2d 61 73 73 65 6d 62 6c 79 2d 77 6f 72 64 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-docol-itself is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-docol-itself" (string literal with null) 69 73 2d 64 6f 63 6f 6c 2d 69 74 73 65 6c 66 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-name" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringcmp" (string literal with null) 73 74 72 69 6e 67 63 6d 70 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-docol-codeword is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-docol-codeword" (string literal with null) 69 73 2d 64 6f 63 6f 6c 2d 63 6f 64 65 77 6f 72 64 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-in-log" (string literal with null) 69 73 2d 69 6e 2d 6c 6f 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "containing-entry" (string literal with null) 63 6f 6e 74 61 69 6e 69 6e 67 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-docol-itself" (string literal with null) 69 73 2d 64 6f 63 6f 6c 2d 69 74 73 65 6c 66 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "next-newer-entry" (string literal with null) 6e 65 78 74 2d 6e 65 77 65 72 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-docol-itself" (string literal with null) 69 73 2d 64 6f 63 6f 6c 2d 69 74 73 65 6c 66 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-docol-interpreted-word is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-docol-interpreted-word" (string literal with null) 69 73 2d 64 6f 63 6f 6c 2d 69 6e 74 65 72 70 72 65 74 65 64 2d 77 6f 72 64 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-assembly-word" (string literal with null) 69 73 2d 61 73 73 65 6d 62 6c 79 2d 77 6f 72 64 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-docol-codeword" (string literal with null) 69 73 2d 64 6f 63 6f 6c 2d 63 6f 64 65 77 6f 72 64 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-codeword-pointer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-codeword-pointer" (string literal with null) 69 73 2d 63 6f 64 65 77 6f 72 64 2d 70 6f 69 6e 74 65 72 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-in-log" (string literal with null) 69 73 2d 69 6e 2d 6c 6f 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "containing-entry" (string literal with null) 63 6f 6e 74 61 69 6e 69 6e 67 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2drop" (string literal with null) 32 64 72 6f 70 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ indent is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "indent" (string literal with null) 69 6e 64 65 6e 74 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1-" (string literal with null) 31 2d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ word-heading is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "word-heading" (string literal with null) 77 6f 72 64 2d 68 65 61 64 69 6e 67 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-name" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1+" (string literal with null) 31 2b 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 36 00 00 00 00 00 00 00 ~ 0x36 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "max" (string literal with null) 6d 61 78 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "indent" (string literal with null) 69 6e 64 65 6e 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex64" (string literal with null) 2e 68 65 78 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "H" (string literal with null) 48 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "M" (string literal with null) 4d 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "I" (string literal with null) 49 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-assembly-word" (string literal with null) 69 73 2d 61 73 73 65 6d 62 6c 79 2d 77 6f 72 64 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ " asm" (string literal with null) 20 61 73 6d 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-docol-interpreted-word" (string literal with null) 69 73 2d 64 6f 63 6f 6c 2d 69 6e 74 65 72 70 72 65 74 65 64 2d 77 6f 72 64 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ " raw" (string literal with null) 20 72 61 77 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ list-dictionary is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "list-dictionary" (string literal with null) 6c 69 73 74 2d 64 69 63 74 69 6f 6e 61 72 79 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "oldest-entry" (string literal with null) 6f 6c 64 65 73 74 2d 65 6e 74 72 79 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "word-heading" (string literal with null) 77 6f 72 64 2d 68 65 61 64 69 6e 67 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "next-newer-entry" (string literal with null) 6e 65 78 74 2d 6e 65 77 65 72 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-printable is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-printable" (string literal with null) 69 73 2d 70 72 69 6e 74 61 62 6c 65 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 20 00 00 00 00 00 00 00 ~ 0x20 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=" (string literal with null) 3c 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 7f 00 00 00 00 00 00 00 ~ 0x7f (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&&" (string literal with null) 26 26 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ hexdump-row is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump-row" (string literal with null) 68 65 78 64 75 6d 70 2d 72 6f 77 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "indent" (string literal with null) 69 6e 64 65 6e 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex32" (string literal with null) 2e 68 65 78 33 32 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=" (string literal with null) 3c 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&&" (string literal with null) 26 26 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "8@" (string literal with null) 38 40 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex8" (string literal with null) 2e 68 65 78 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1+" (string literal with null) 31 2b 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "indent" (string literal with null) 69 6e 64 65 6e 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=" (string literal with null) 3c 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&&" (string literal with null) 26 26 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "8@" (string literal with null) 38 40 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-printable" (string literal with null) 69 73 2d 70 72 69 6e 74 61 62 6c 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1+" (string literal with null) 31 2b 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ndrop" (string literal with null) 6e 64 72 6f 70 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ hexdump-between is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump-between" (string literal with null) 68 65 78 64 75 6d 70 2d 62 65 74 77 65 65 6e 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1-" (string literal with null) 31 2d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "invert" (string literal with null) 69 6e 76 65 72 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3dup" (string literal with null) 33 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump-row" (string literal with null) 68 65 78 64 75 6d 70 2d 72 6f 77 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ndrop" (string literal with null) 6e 64 72 6f 70 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ hexdump-from is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump-from" (string literal with null) 68 65 78 64 75 6d 70 2d 66 72 6f 6d 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump-between" (string literal with null) 68 65 78 64 75 6d 70 2d 62 65 74 77 65 65 6e 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ hexdump is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump" (string literal with null) 68 65 78 64 75 6d 70 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump-from" (string literal with null) 68 65 78 64 75 6d 70 2d 66 72 6f 6d 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ describe-hex is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "describe-hex" (string literal with null) 64 65 73 63 72 69 62 65 2d 68 65 78 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "word-heading" (string literal with null) 77 6f 72 64 2d 68 65 61 64 69 6e 67 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "guess-entry-end" (string literal with null) 67 75 65 73 73 2d 65 6e 74 72 79 2d 65 6e 64 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump-between" (string literal with null) 68 65 78 64 75 6d 70 2d 62 65 74 77 65 65 6e 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ describe-docol is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "describe-docol" (string literal with null) 64 65 73 63 72 69 62 65 2d 64 6f 63 6f 6c 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "word-heading" (string literal with null) 77 6f 72 64 2d 68 65 61 64 69 6e 67 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "guess-entry-end" (string literal with null) 67 75 65 73 73 2d 65 6e 74 72 79 2d 65 6e 64 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<" (string literal with null) 3c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-codeword-pointer" (string literal with null) 69 73 2d 63 6f 64 65 77 6f 72 64 2d 70 6f 69 6e 74 65 72 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "execution-token-to-entry" (string literal with null) 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 2d 74 6f 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-name" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ describe is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "describe" (string literal with null) 64 65 73 63 72 69 62 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-docol-interpreted-word" (string literal with null) 69 73 2d 64 6f 63 6f 6c 2d 69 6e 74 65 72 70 72 65 74 65 64 2d 77 6f 72 64 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "describe-docol" (string literal with null) 64 65 73 63 72 69 62 65 2d 64 6f 63 6f 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "describe-hex" (string literal with null) 64 65 73 63 72 69 62 65 2d 68 65 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ describe-all is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "describe-all" (string literal with null) 64 65 73 63 72 69 62 65 2d 61 6c 6c 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "oldest-entry" (string literal with null) 6f 6c 64 65 73 74 2d 65 6e 74 72 79 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "describe" (string literal with null) 64 65 73 63 72 69 62 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "next-newer-entry" (string literal with null) 6e 65 78 74 2d 6e 65 77 65 72 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ describe-compilation is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "describe-compilation" (string literal with null) 64 65 73 63 72 69 62 65 2d 63 6f 6d 70 69 6c 61 74 69 6f 6e 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "compilation in progress" (string literal with null) 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 69 6e 20 70 72 6f 67 72 65 73 73 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "hexdump" (string literal with null) 68 65 78 64 75 6d 70 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ " here " (string literal with null) 20 20 68 65 72 65 20 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex64" (string literal with null) 2e 68 65 78 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ " latest " (string literal with null) 20 20 6c 61 74 65 73 74 20 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex64" (string literal with null) 2e 68 65 78 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ " name of latest: " (string literal with null) 20 20 6e 61 6d 65 20 6f 66 20 6c 61 74 65 73 74 3a 20 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-name" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ symbolize-pointer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "symbolize-pointer" (string literal with null) 73 79 6d 62 6f 6c 69 7a 65 2d 70 6f 69 6e 74 65 72 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-in-log" (string literal with null) 69 73 2d 69 6e 2d 6c 6f 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "containing-entry" (string literal with null) 63 6f 6e 74 61 69 6e 69 6e 67 2d 65 6e 74 72 79 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-in-log" (string literal with null) 69 73 2d 69 6e 2d 6c 6f 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-name" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=" (string literal with null) 3e 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":" (string literal with null) 3a 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0x" (string literal with null) 30 78 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex64" (string literal with null) 2e 68 65 78 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ list-callers is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "list-callers" (string literal with null) 6c 69 73 74 2d 63 61 6c 6c 65 72 73 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control@" (string literal with null) 63 6f 6e 74 72 6f 6c 40 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "r0" (string literal with null) 72 30 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<" (string literal with null) 3c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control@" (string literal with null) 63 6f 6e 74 72 6f 6c 40 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "log" (string literal with null) 6c 6f 67 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "||" (string literal with null) 7c 7c 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control stack pointer out of range: " (string literal with null) 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 70 6f 69 6e 74 65 72 20 6f 75 74 20 6f 66 20 72 61 6e 67 65 3a 20 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control@" (string literal with null) 63 6f 6e 74 72 6f 6c 40 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ".hex64" (string literal with null) 2e 68 65 78 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control@" (string literal with null) 63 6f 6e 74 72 6f 6c 40 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "r0" (string literal with null) 72 30 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "symbolize-pointer" (string literal with null) 73 79 6d 62 6f 6c 69 7a 65 2d 70 6f 69 6e 74 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ bye is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "bye" (string literal with null) 62 79 65 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ forget is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "forget" (string literal with null) 66 6f 72 67 65 74 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ , is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ make-immediate is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags!" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 21 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ make-hidden is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-hidden" (string literal with null) 6d 61 6b 65 2d 68 69 64 64 65 6e 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags!" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 21 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ make-visible is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-visible" (string literal with null) 6d 61 6b 65 2d 76 69 73 69 62 6c 65 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "invert" (string literal with null) 69 6e 76 65 72 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags!" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 21 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ make-metadata is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-metadata" (string literal with null) 6d 61 6b 65 2d 6d 65 74 61 64 61 74 61 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags!" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 21 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ recurse is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "recurse" (string literal with null) 72 65 63 75 72 73 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ find is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find-in" (string literal with null) 66 69 6e 64 2d 69 6e 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ allocate is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ allocate-string is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-string" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "1+" (string literal with null) 31 2b 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ create is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "create" (string literal with null) 63 72 65 61 74 65 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ create-in is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "create-in" (string literal with null) 63 72 65 61 74 65 2d 69 6e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packstring" (string literal with null) 70 61 63 6b 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ self-codeword is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "self-codeword" (string literal with null) 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ variable is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "variable" (string literal with null) 76 61 72 69 61 62 6c 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "create" (string literal with null) 63 72 65 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "self-codeword" (string literal with null) 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-reg64" (string literal with null) 70 75 73 68 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-next" (string literal with null) 70 61 63 6b 2d 6e 65 78 74 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ keyword is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "keyword" (string literal with null) 6b 65 79 77 6f 72 64 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "create" (string literal with null) 63 72 65 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack64" (string literal with null) 70 61 63 6b 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-reg64" (string literal with null) 70 75 73 68 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-next" (string literal with null) 70 61 63 6b 2d 6e 65 78 74 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ literal is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "literal" (string literal with null) 6c 69 74 65 72 61 6c 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ buffer-physical-start is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ buffer-physical-length is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-length" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ buffer-logical-start is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ buffer-logical-length is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ buffer-file-descriptor is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-file-descriptor" (string literal with null) 62 75 66 66 65 72 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ input-buffer-refill is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-refill" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 72 65 66 69 6c 6c 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ input-buffer-next-source is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-next-source" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6e 65 78 74 2d 73 6f 75 72 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ clear-buffer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "clear-buffer" (string literal with null) 63 6c 65 61 72 2d 62 75 66 66 65 72 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ zero-input-buffer-metadata is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "zero-input-buffer-metadata" (string literal with null) 7a 65 72 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-length" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-file-descriptor" (string literal with null) 62 75 66 66 65 72 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-refill" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 72 65 66 69 6c 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-next-source" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6e 65 78 74 2d 73 6f 75 72 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ allocate-input-buffer-metadata is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-input-buffer-metadata" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "zero-input-buffer-metadata" (string literal with null) 7a 65 72 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ allocate-input-buffer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-input-buffer" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "zero-input-buffer-metadata" (string literal with null) 7a 65 72 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-length" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "clear-buffer" (string literal with null) 63 6c 65 61 72 2d 62 75 66 66 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ attach-string-to-input-buffer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "attach-string-to-input-buffer" (string literal with null) 61 74 74 61 63 68 2d 73 74 72 69 6e 67 2d 74 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-length" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-file-descriptor" (string literal with null) 62 75 66 66 65 72 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ consume-from is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "consume-from" (string literal with null) 63 6f 6e 73 75 6d 65 2d 66 72 6f 6d 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-length" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ peek-from is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "peek-from" (string literal with null) 70 65 65 6b 2d 66 72 6f 6d 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-refill" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 72 65 66 69 6c 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "execute" (string literal with null) 65 78 65 63 75 74 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "8@" (string literal with null) 38 40 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ key-from is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key-from" (string literal with null) 6b 65 79 2d 66 72 6f 6d 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "peek-from" (string literal with null) 70 65 65 6b 2d 66 72 6f 6d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "consume-from" (string literal with null) 63 6f 6e 73 75 6d 65 2d 66 72 6f 6d 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ normalize-buffer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "normalize-buffer" (string literal with null) 6e 6f 72 6d 61 6c 69 7a 65 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ compute-next-buffer-free-block is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "compute-next-buffer-free-block" (string literal with null) 63 6f 6d 70 75 74 65 2d 6e 65 78 74 2d 62 75 66 66 65 72 2d 66 72 65 65 2d 62 6c 6f 63 6b 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-length" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=" (string literal with null) 3e 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ refill-input-buffer-from-stream is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "refill-input-buffer-from-stream" (string literal with null) 72 65 66 69 6c 6c 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 66 72 6f 6d 2d 73 74 72 65 61 6d 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "normalize-buffer" (string literal with null) 6e 6f 72 6d 61 6c 69 7a 65 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "compute-next-buffer-free-block" (string literal with null) 63 6f 6d 70 75 74 65 2d 6e 65 78 74 2d 62 75 66 66 65 72 2d 66 72 65 65 2d 62 6c 6f 63 6b 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ndup" (string literal with null) 6e 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-file-descriptor" (string literal with null) 62 75 66 66 65 72 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-read" (string literal with null) 73 79 73 2d 72 65 61 64 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) fc ff ff ff ff ff ff ff ~ 0xfffffffffffffffc (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Read error." (string literal with null) 52 65 61 64 20 65 72 72 6f 72 2e 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer-metadata" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 00 00 00 00 ~ (alignment padding) ~ create 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer-metadata" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c7 04 08 00 00 00 00 ~ entry-flags! (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-input-buffer-metadata" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 55 05 08 00 00 00 00 ~ log-load-variable (codeword pointer) ~ peek is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "peek" (string literal with null) 70 65 65 6b 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "peek-from" (string literal with null) 70 65 65 6b 2d 66 72 6f 6d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ consume is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "consume" (string literal with null) 63 6f 6e 73 75 6d 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "consume-from" (string literal with null) 63 6f 6e 73 75 6d 65 2d 66 72 6f 6d 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ key is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key" (string literal with null) 6b 65 79 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key-from" (string literal with null) 6b 65 79 2d 66 72 6f 6d 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ unroll-past-string is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll-past-string" (string literal with null) 75 6e 72 6f 6c 6c 2d 70 61 73 74 2d 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "align-size" (string literal with null) 61 6c 69 67 6e 2d 73 69 7a 65 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ swap-past-string is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap-past-string" (string literal with null) 73 77 61 70 2d 70 61 73 74 2d 73 74 72 69 6e 67 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll-past-string" (string literal with null) 75 6e 72 6f 6c 6c 2d 70 61 73 74 2d 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ dropstring is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "align-size" (string literal with null) 61 6c 69 67 6e 2d 73 69 7a 65 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value!" (string literal with null) 76 61 6c 75 65 21 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ dropstring-with-result is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring-with-result" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap-past-string" (string literal with null) 73 77 61 70 2d 70 61 73 74 2d 73 74 72 69 6e 67 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ accumulate-string is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "accumulate-string" (string literal with null) 61 63 63 75 6d 75 6c 61 74 65 2d 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringlen" (string literal with null) 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "align-size" (string literal with null) 61 6c 69 67 6e 2d 73 69 7a 65 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 ff 00 00 00 00 00 00 ~ 0xff00 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 01 00 00 00 00 00 00 ~ 0x100 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 ff 00 00 00 00 00 ~ 0xff0000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 01 00 00 00 00 00 ~ 0x10000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 ff 00 00 00 00 ~ 0xff000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 01 00 00 00 00 ~ 0x1000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 ff 00 00 00 ~ 0xff00000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 01 00 00 00 ~ 0x100000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 ff 00 00 ~ 0xff0000000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 01 00 00 ~ 0x10000000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 ff 00 ~ 0xff000000000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 01 00 ~ 0x1000000000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ unless 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) f0 5a 05 08 00 00 00 00 ~ log-load-unless (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 01 ~ 0x100000000000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll-past-string" (string literal with null) 75 6e 72 6f 6c 6c 2d 70 61 73 74 2d 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-space is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-space" (string literal with null) 69 73 2d 73 70 61 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 20 00 00 00 00 00 00 00 ~ 0x20 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0b 00 00 00 00 00 00 00 ~ 0xb (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0c 00 00 00 00 00 00 00 ~ 0xc (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0d 00 00 00 00 00 00 00 ~ 0xd (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ is-alphanumeric is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-alphanumeric" (string literal with null) 69 73 2d 61 6c 70 68 61 6e 75 6d 65 72 69 63 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 39 00 00 00 00 00 00 00 ~ 0x39 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=" (string literal with null) 3e 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 41 00 00 00 00 00 00 00 ~ 0x41 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 5a 00 00 00 00 00 00 00 ~ 0x5a (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=" (string literal with null) 3e 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 61 00 00 00 00 00 00 00 ~ 0x61 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 7a 00 00 00 00 00 00 00 ~ 0x7a (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">=" (string literal with null) 3e 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ word is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "word" (string literal with null) 77 6f 72 64 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key" (string literal with null) 6b 65 79 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-space" (string literal with null) 69 73 2d 73 70 61 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "accumulate-string" (string literal with null) 61 63 63 75 6d 75 6c 61 74 65 2d 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "peek" (string literal with null) 70 65 65 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-space" (string literal with null) 69 73 2d 73 70 61 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "consume" (string literal with null) 63 6f 6e 73 75 6d 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "accumulate-string" (string literal with null) 61 63 63 75 6d 75 6c 61 74 65 2d 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ generalized-digit-value is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "generalized-digit-value" (string literal with null) 67 65 6e 65 72 61 6c 69 7a 65 64 2d 64 69 67 69 74 2d 76 61 6c 75 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 61 00 00 00 00 00 00 00 ~ 0x61 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=" (string literal with null) 3c 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 61 00 00 00 00 00 00 00 ~ 0x61 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 41 00 00 00 00 00 00 00 ~ 0x41 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "<=" (string literal with null) 3c 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 41 00 00 00 00 00 00 00 ~ 0x41 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ decode-generalized-digit is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "decode-generalized-digit" (string literal with null) 64 65 63 6f 64 65 2d 67 65 6e 65 72 61 6c 69 7a 65 64 2d 64 69 67 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-alphanumeric" (string literal with null) 69 73 2d 61 6c 70 68 61 6e 75 6d 65 72 69 63 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "generalized-digit-value" (string literal with null) 67 65 6e 65 72 61 6c 69 7a 65 64 2d 64 69 67 69 74 2d 76 61 6c 75 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ read-base-unsigned is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-base-unsigned" (string literal with null) 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack8" (string literal with null) 75 6e 70 61 63 6b 38 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "decode-generalized-digit" (string literal with null) 64 65 63 6f 64 65 2d 67 65 6e 65 72 61 6c 69 7a 65 64 2d 64 69 67 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack8" (string literal with null) 75 6e 70 61 63 6b 38 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "decode-generalized-digit" (string literal with null) 64 65 63 6f 64 65 2d 67 65 6e 65 72 61 6c 69 7a 65 64 2d 64 69 67 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ read-integer-unsigned is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-integer-unsigned" (string literal with null) 72 65 61 64 2d 69 6e 74 65 67 65 72 2d 75 6e 73 69 67 6e 65 64 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack8" (string literal with null) 75 6e 70 61 63 6b 38 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-base-unsigned" (string literal with null) 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack8" (string literal with null) 75 6e 70 61 63 6b 38 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 78 00 00 00 00 00 00 00 ~ 0x78 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-base-unsigned" (string literal with null) 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 6f 00 00 00 00 00 00 00 ~ 0x6f (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-base-unsigned" (string literal with null) 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 62 00 00 00 00 00 00 00 ~ 0x62 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-base-unsigned" (string literal with null) 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-base-unsigned" (string literal with null) 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ read-integer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-integer" (string literal with null) 72 65 61 64 2d 69 6e 74 65 67 65 72 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack8" (string literal with null) 75 6e 70 61 63 6b 38 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 2d 00 00 00 00 00 00 00 ~ 0x2d (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-integer-unsigned" (string literal with null) 72 65 61 64 2d 69 6e 74 65 67 65 72 2d 75 6e 73 69 67 6e 65 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-integer-unsigned" (string literal with null) 72 65 61 64 2d 69 6e 74 65 67 65 72 2d 75 6e 73 69 67 6e 65 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ read-decimal is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-decimal" (string literal with null) 72 65 61 64 2d 64 65 63 69 6d 61 6c 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unpack8" (string literal with null) 75 6e 70 61 63 6b 38 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 2d 00 00 00 00 00 00 00 ~ 0x2d (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-base-unsigned" (string literal with null) 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-base-unsigned" (string literal with null) 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags-storage" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 2d 73 74 6f 72 61 67 65 00 00 00 00 00 00 00 ~ (alignment padding) ~ create 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-hidden" (string literal with null) 6d 61 6b 65 2d 68 69 64 64 65 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 55 05 08 00 00 00 00 ~ log-load-variable (codeword pointer) ~ [ is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "[" (string literal with null) 5b 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "invert" (string literal with null) 69 6e 76 65 72 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-hidden" (string literal with null) 6d 61 6b 65 2d 68 69 64 64 65 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) ~ ] is defined here via the log-load transform. 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "]" (string literal with null) 5d 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "|" (string literal with null) 7c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-hidden" (string literal with null) 6d 61 6b 65 2d 68 69 64 64 65 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) ~ : is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":" (string literal with null) 3a 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "word" (string literal with null) 77 6f 72 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "create" (string literal with null) 63 72 65 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-hidden" (string literal with null) 6d 61 6b 65 2d 68 69 64 64 65 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ ; is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ";" (string literal with null) 3b 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-visible" (string literal with null) 6d 61 6b 65 2d 76 69 73 69 62 6c 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 50 cf 04 08 00 00 00 00 ~ over (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-hidden" (string literal with null) 6d 61 6b 65 2d 68 69 64 64 65 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) ~ ;asm is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ";asm" (string literal with null) 3b 61 73 6d 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-next" (string literal with null) 70 61 63 6b 2d 6e 65 78 74 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-visible" (string literal with null) 6d 61 6b 65 2d 76 69 73 69 62 6c 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-hidden" (string literal with null) 6d 61 6b 65 2d 68 69 64 64 65 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) ~ ' is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "'" (string literal with null) 27 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "word" (string literal with null) 77 6f 72 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring-with-result" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "literal" (string literal with null) 6c 69 74 65 72 61 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ s" is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "s"" (string literal with null) 73 22 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "consume" (string literal with null) 63 6f 6e 73 75 6d 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "literal" (string literal with null) 6c 69 74 65 72 61 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key" (string literal with null) 6b 65 79 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 22 00 00 00 00 00 00 00 ~ 0x22 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&&" (string literal with null) 26 26 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key" (string literal with null) 6b 65 79 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ ." is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "."" (string literal with null) 2e 22 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "s"" (string literal with null) 73 22 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "execute" (string literal with null) 65 78 65 63 75 74 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "literal" (string literal with null) 6c 69 74 65 72 61 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ ~ is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "~" (string literal with null) 7e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key" (string literal with null) 6b 65 79 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&&" (string literal with null) 26 26 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key" (string literal with null) 6b 65 79 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ interpret is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpret" (string literal with null) 69 6e 74 65 72 70 72 65 74 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "word" (string literal with null) 77 6f 72 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring-with-result" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-flags@" (string literal with null) 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "execute" (string literal with null) 65 78 65 63 75 74 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-integer" (string literal with null) 72 65 61 64 2d 69 6e 74 65 67 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpreter-flags" (string literal with null) 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "&" (string literal with null) 26 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring-with-result" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring-with-result" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "No such word: " (string literal with null) 4e 6f 20 73 75 63 68 20 77 6f 72 64 3a 20 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "value@" (string literal with null) 76 61 6c 75 65 40 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dropstring" (string literal with null) 64 72 6f 70 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ quit is defined here via the log-load transform. 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "quit" (string literal with null) 71 75 69 74 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "r0" (string literal with null) 72 30 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control!" (string literal with null) 63 6f 6e 74 72 6f 6c 21 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpret" (string literal with null) 69 6e 74 65 72 70 72 65 74 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 58 c7 04 08 00 00 00 00 ~ entry-flags@ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 48 c1 04 08 00 00 00 00 ~ invert (codeword pointer) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c7 04 08 00 00 00 00 ~ entry-flags! (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 58 c7 04 08 00 00 00 00 ~ entry-flags@ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 48 c1 04 08 00 00 00 00 ~ invert (codeword pointer) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c7 04 08 00 00 00 00 ~ entry-flags! (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 58 c7 04 08 00 00 00 00 ~ entry-flags@ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 48 c1 04 08 00 00 00 00 ~ invert (codeword pointer) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c7 04 08 00 00 00 00 ~ entry-flags! (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 58 c7 04 08 00 00 00 00 ~ entry-flags@ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 48 c1 04 08 00 00 00 00 ~ invert (codeword pointer) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c7 04 08 00 00 00 00 ~ entry-flags! (codeword pointer) ~ relink-main-input-buffer-to-stdin is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "relink-main-input-buffer-to-stdin" (string literal with null) 72 65 6c 69 6e 6b 2d 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 74 6f 2d 73 74 64 69 6e 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 04 00 00 00 00 00 00 ~ 0x400 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 04 00 00 00 00 00 00 ~ 0x400 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-length" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-file-descriptor" (string literal with null) 62 75 66 66 65 72 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "refill-input-buffer-from-stream" (string literal with null) 72 65 66 69 6c 6c 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 66 72 6f 6d 2d 73 74 72 65 61 6d 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "literal" (string literal with null) 6c 69 74 65 72 61 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-refill" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 72 65 66 69 6c 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ { is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "{" (string literal with null) 7b 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ } is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "}" (string literal with null) 7d 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ if is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "if" (string literal with null) 69 66 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ unless is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unless" (string literal with null) 75 6e 6c 65 73 73 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ if-else is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "if-else" (string literal with null) 69 66 2d 65 6c 73 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ forever is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "forever" (string literal with null) 66 6f 72 65 76 65 72 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ while is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "while" (string literal with null) 77 68 69 6c 65 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memmove" (string literal with null) 6d 65 6d 6d 6f 76 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "unroll" (string literal with null) 75 6e 72 6f 6c 6c 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "," (string literal with null) 2c 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-immediate" (string literal with null) 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ nexit is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "nexit" (string literal with null) 6e 65 78 69 74 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control@" (string literal with null) 63 6f 6e 74 72 6f 6c 40 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "r0" (string literal with null) 72 30 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "min" (string literal with null) 6d 69 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "control!" (string literal with null) 63 6f 6e 74 72 6f 6c 21 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ allocate-timespec is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-timespec" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 74 69 6d 65 73 70 65 63 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ timespec-seconds is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "timespec-seconds" (string literal with null) 74 69 6d 65 73 70 65 63 2d 73 65 63 6f 6e 64 73 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ timespec-nanoseconds is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "timespec-nanoseconds" (string literal with null) 74 69 6d 65 73 70 65 63 2d 6e 61 6e 6f 73 65 63 6f 6e 64 73 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ nanosleep is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "nanosleep" (string literal with null) 6e 61 6e 6f 73 6c 65 65 70 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 ca 9a 3b 00 00 00 00 ~ 0x3b9aca00 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "/%" (string literal with null) 2f 25 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-timespec" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 74 69 6d 65 73 70 65 63 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "timespec-seconds" (string literal with null) 74 69 6d 65 73 70 65 63 2d 73 65 63 6f 6e 64 73 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "timespec-nanoseconds" (string literal with null) 74 69 6d 65 73 70 65 63 2d 6e 61 6e 6f 73 65 63 6f 6e 64 73 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-timespec" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 74 69 6d 65 73 70 65 63 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "timespec-seconds" (string literal with null) 74 69 6d 65 73 70 65 63 2d 73 65 63 6f 6e 64 73 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "timespec-nanoseconds" (string literal with null) 74 69 6d 65 73 70 65 63 2d 6e 61 6e 6f 73 65 63 6f 6e 64 73 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 23 00 00 00 00 00 00 00 ~ 0x23 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-2" (string literal with null) 73 79 73 63 61 6c 6c 2d 32 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sys-sigaction is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-sigaction" (string literal with null) 73 79 73 2d 73 69 67 61 63 74 69 6f 6e 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0d 00 00 00 00 00 00 00 ~ 0xd (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-4" (string literal with null) 73 79 73 63 61 6c 6c 2d 34 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sys-sigaltstack is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-sigaltstack" (string literal with null) 73 79 73 2d 73 69 67 61 6c 74 73 74 61 63 6b 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "syscall-2" (string literal with null) 73 79 73 63 61 6c 6c 2d 32 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ allocate-sigaction is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-sigaction" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 73 69 67 61 63 74 69 6f 6e 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sigaction-action is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaction-action" (string literal with null) 73 69 67 61 63 74 69 6f 6e 2d 61 63 74 69 6f 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sigaction-flags is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaction-flags" (string literal with null) 73 69 67 61 63 74 69 6f 6e 2d 66 6c 61 67 73 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sigaction-restorer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaction-restorer" (string literal with null) 73 69 67 61 63 74 69 6f 6e 2d 72 65 73 74 6f 72 65 72 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sigaction-mask is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaction-mask" (string literal with null) 73 69 67 61 63 74 69 6f 6e 2d 6d 61 73 6b 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ allocate-sigaltstack is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-sigaltstack" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 73 69 67 61 6c 74 73 74 61 63 6b 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sigaltstack-pointer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaltstack-pointer" (string literal with null) 73 69 67 61 6c 74 73 74 61 63 6b 2d 70 6f 69 6e 74 65 72 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sigaltstack-flags is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaltstack-flags" (string literal with null) 73 69 67 61 6c 74 73 74 61 63 6b 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ sigaltstack-size is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaltstack-size" (string literal with null) 73 69 67 61 6c 74 73 74 61 63 6b 2d 73 69 7a 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ prepare-signal-stack is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "prepare-signal-stack" (string literal with null) 70 72 65 70 61 72 65 2d 73 69 67 6e 61 6c 2d 73 74 61 63 6b 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 08 00 00 00 00 00 00 ~ 0x800 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 04 00 00 00 00 00 00 ~ 0x400 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 04 00 00 00 00 00 00 ~ 0x400 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-sigaltstack" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 73 69 67 61 6c 74 73 74 61 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaltstack-pointer" (string literal with null) 73 69 67 61 6c 74 73 74 61 63 6b 2d 70 6f 69 6e 74 65 72 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaltstack-flags" (string literal with null) 73 69 67 61 6c 74 73 74 61 63 6b 2d 66 6c 61 67 73 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaltstack-size" (string literal with null) 73 69 67 61 6c 74 73 74 61 63 6b 2d 73 69 7a 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 04 00 00 00 00 00 00 ~ 0x400 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 04 00 00 00 00 00 00 ~ 0x400 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 20 00 00 00 00 00 00 00 ~ 0x20 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-sigaltstack" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 73 69 67 61 6c 74 73 74 61 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-sigaltstack" (string literal with null) 73 79 73 2d 73 69 67 61 6c 74 73 74 61 63 6b 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ signal-return-trampoline is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "signal-return-trampoline" (string literal with null) 73 69 67 6e 61 6c 2d 72 65 74 75 72 6e 2d 74 72 61 6d 70 6f 6c 69 6e 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c0 1e 05 08 00 00 00 00 ~ mov-reg64-imm64 (codeword pointer) e8 18 05 08 00 00 00 00 ~ syscall (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) c0 54 05 08 00 00 00 00 ~ log-load-semicolon-assembly ~ (codeword pointer) ~ wrap-signal-handler is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "wrap-signal-handler" (string literal with null) 77 72 61 70 2d 73 69 67 6e 61 6c 2d 68 61 6e 64 6c 65 72 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "signal-handler-wrapper" (string literal with null) 73 69 67 6e 61 6c 2d 68 61 6e 64 6c 65 72 2d 77 72 61 70 70 65 72 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "create" (string literal with null) 63 72 65 61 74 65 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "make-hidden" (string literal with null) 6d 61 6b 65 2d 68 69 64 64 65 6e 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "self-codeword" (string literal with null) 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsi" (string literal with null) 3a 72 73 69 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "cld" (string literal with null) 63 6c 64 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rax" (string literal with null) 3a 72 61 78 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "jmp-abs-indirect-reg64" (string literal with null) 6a 6d 70 2d 61 62 73 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "self-codeword" (string literal with null) 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "self-codeword" (string literal with null) 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ":rsi" (string literal with null) 3a 72 73 69 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "mov-reg64-imm64" (string literal with null) 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ret" (string literal with null) 72 65 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "packalign" (string literal with null) 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "here" (string literal with null) 68 65 72 65 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "latest" (string literal with null) 6c 61 74 65 73 74 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ bind-signal is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "bind-signal" (string literal with null) 62 69 6e 64 2d 73 69 67 6e 61 6c 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-sigaction" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 73 69 67 61 63 74 69 6f 6e 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaction-action" (string literal with null) 73 69 67 61 63 74 69 6f 6e 2d 61 63 74 69 6f 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaction-mask" (string literal with null) 73 69 67 61 63 74 69 6f 6e 2d 6d 61 73 6b 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaction-flags" (string literal with null) 73 69 67 61 63 74 69 6f 6e 2d 66 6c 61 67 73 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 04 00 00 00 00 ~ 0x4000000 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sigaction-restorer" (string literal with null) 73 69 67 61 63 74 69 6f 6e 2d 72 65 73 74 6f 72 65 72 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "signal-return-trampoline" (string literal with null) 73 69 67 6e 61 6c 2d 72 65 74 75 72 6e 2d 74 72 61 6d 70 6f 6c 69 6e 65 00 00 00 00 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-sigaction" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 73 69 67 61 63 74 69 6f 6e 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-sigaction" (string literal with null) 73 79 73 2d 73 69 67 61 63 74 69 6f 6e 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ handle-crash is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "handle-crash" (string literal with null) 68 61 6e 64 6c 65 2d 63 72 61 73 68 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "CRASH" (string literal with null) 43 52 41 53 48 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "list-callers" (string literal with null) 6c 69 73 74 2d 63 61 6c 6c 65 72 73 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-exit" (string literal with null) 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ install-crash-handler is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "install-crash-handler" (string literal with null) 69 6e 73 74 61 6c 6c 2d 63 72 61 73 68 2d 68 61 6e 64 6c 65 72 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "handle-crash" (string literal with null) 68 61 6e 64 6c 65 2d 63 72 61 73 68 00 00 00 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "wrap-signal-handler" (string literal with null) 77 72 61 70 2d 73 69 67 6e 61 6c 2d 68 61 6e 64 6c 65 72 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0b 00 00 00 00 00 00 00 ~ 0xb (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "bind-signal" (string literal with null) 62 69 6e 64 2d 73 69 67 6e 61 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "install-crash-handler" (string literal with null) 69 6e 73 74 61 6c 6c 2d 63 72 61 73 68 2d 68 61 6e 64 6c 65 72 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ pack-file-contents is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack-file-contents" (string literal with null) 70 61 63 6b 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-open" (string literal with null) 73 79 73 2d 6f 70 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Couldn't open " (string literal with null) 43 6f 75 6c 64 6e 27 74 20 6f 70 65 6e 20 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "because " (string literal with null) 62 65 63 61 75 73 65 20 00 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ndrop" (string literal with null) 6e 64 72 6f 70 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 04 00 00 00 00 00 00 ~ 0x400 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-read" (string literal with null) 73 79 73 2d 72 65 61 64 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-close" (string literal with null) 73 79 73 2d 63 6c 6f 73 65 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Error while reading from " (string literal with null) 45 72 72 6f 72 20 77 68 69 6c 65 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "because " (string literal with null) 62 65 63 61 75 73 65 20 00 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-close" (string literal with null) 73 79 73 2d 63 6c 6f 73 65 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "ndrop" (string literal with null) 6e 64 72 6f 70 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "roll" (string literal with null) 72 6f 6c 6c 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "+" (string literal with null) 2b 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ read-to-buffer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "read-to-buffer" (string literal with null) 72 65 61 64 2d 74 6f 2d 62 75 66 66 65 72 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "key" (string literal with null) 6b 65 79 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "not" (string literal with null) 6e 6f 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-space" (string literal with null) 69 73 2d 73 70 61 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "8!" (string literal with null) 38 21 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "stringcmp" (string literal with null) 73 74 72 69 6e 67 63 6d 70 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3unroll" (string literal with null) 33 75 6e 72 6f 6c 6c 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "is-space" (string literal with null) 69 73 2d 73 70 61 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "3roll" (string literal with null) 33 72 6f 6c 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pack8" (string literal with null) 70 61 63 6b 38 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ forever 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 61 05 08 00 00 00 00 ~ log-load-forever (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ push-input-buffer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-input-buffer" (string literal with null) 70 75 73 68 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate-input-buffer-metadata" (string literal with null) 61 6c 6c 6f 63 61 74 65 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "2dup" (string literal with null) 32 64 75 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memcopy" (string literal with null) 6d 65 6d 63 6f 70 79 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "zero-input-buffer-metadata" (string literal with null) 7a 65 72 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-next-source" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6e 65 78 74 2d 73 6f 75 72 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ pop-input-buffer is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pop-input-buffer" (string literal with null) 70 6f 70 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-next-source" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6e 65 78 74 2d 73 6f 75 72 63 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "*" (string literal with null) 2a 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "memcopy" (string literal with null) 6d 65 6d 63 6f 70 79 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "zero-input-buffer-metadata" (string literal with null) 7a 65 72 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if-else 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 10 5d 05 08 00 00 00 00 ~ log-load-if-else (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ default-buffer-size is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "default-buffer-size" (string literal with null) 64 65 66 61 75 6c 74 2d 62 75 66 66 65 72 2d 73 69 7a 65 00 00 00 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 04 00 00 00 00 00 00 ~ 0x400 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ attach-input-buffer-to-file-descriptor is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "attach-input-buffer-to-file-descriptor" (string literal with null) 61 74 74 61 63 68 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 74 6f 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-file-descriptor" (string literal with null) 62 75 66 66 65 72 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "default-buffer-size" (string literal with null) 64 65 66 61 75 6c 74 2d 62 75 66 66 65 72 2d 73 69 7a 65 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "allocate" (string literal with null) 61 6c 6c 6f 63 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pick" (string literal with null) 70 69 63 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-start" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-start" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "default-buffer-size" (string literal with null) 64 65 66 61 75 6c 74 2d 62 75 66 66 65 72 2d 73 69 7a 65 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-physical-length" (string literal with null) 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "over" (string literal with null) 6f 76 65 72 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-logical-length" (string literal with null) 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "refill-input-buffer-from-stream" (string literal with null) 72 65 66 69 6c 6c 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 66 72 6f 6d 2d 73 74 72 65 61 6d 00 ~ (alignment padding) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "find" (string literal with null) 66 69 6e 64 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "entry-to-execution-token" (string literal with null) 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "input-buffer-refill" (string literal with null) 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 72 65 66 69 6c 6c 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!" (string literal with null) 21 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ include is defined here via the log-load transform. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "include" (string literal with null) 69 6e 63 6c 75 64 65 00 ~ (alignment padding) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "docol" (string literal with null) 64 6f 63 6f 6c 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-open" (string literal with null) 73 79 73 2d 6f 70 65 6e 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ ">" (string literal with null) 3e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Couldn't open " (string literal with null) 43 6f 75 6c 64 6e 27 74 20 6f 70 65 6e 20 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "because " (string literal with null) 62 65 63 61 75 73 65 20 00 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "space" (string literal with null) 73 70 61 63 65 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "." (string literal with null) 2e 00 00 00 00 00 00 00 ~ (alignment padding) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "litstring" (string literal with null) 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 57 05 08 00 00 00 00 ~ log-load-comma-string ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "emitstring" (string literal with null) 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "newline" (string literal with null) 6e 65 77 6c 69 6e 65 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ if 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d0 58 05 08 00 00 00 00 ~ log-load-if (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "dup" (string literal with null) 64 75 70 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "push-input-buffer" (string literal with null) 70 75 73 68 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "swap" (string literal with null) 73 77 61 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "attach-input-buffer-to-file-descriptor" (string literal with null) 61 74 74 61 63 68 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 74 6f 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ { 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "peek" (string literal with null) 70 65 65 6b 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ } 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 08 58 05 08 00 00 00 00 ~ log-load-left-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ { 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "interpret" (string literal with null) 69 6e 74 65 72 70 72 65 74 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ } 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 58 05 08 00 00 00 00 ~ log-load-right-curly-brace ~ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) ~ while 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b8 61 05 08 00 00 00 00 ~ log-load-while (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "buffer-file-descriptor" (string literal with null) 62 75 66 66 65 72 2d 66 69 6c 65 2d 64 65 73 63 72 69 70 74 6f 72 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "@" (string literal with null) 40 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "sys-close" (string literal with null) 73 79 73 2d 63 6c 6f 73 65 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "drop" (string literal with null) 64 72 6f 70 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "pop-input-buffer" (string literal with null) 70 6f 70 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "exit" (string literal with null) 65 78 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) ~ We're now done with the log-load routine; the next little bit of code ~ here is the final bit of the warm-start routine. 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "main-input-buffer" (string literal with null) 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) d8 64 05 08 00 00 00 00 ~ boot-source (data pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "attach-string-to-input-buffer" (string literal with null) 61 74 74 61 63 68 2d 73 74 72 69 6e 67 2d 74 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "quit" (string literal with null) 71 75 69 74 00 00 00 00 ~ (alignment padding) a8 50 05 08 00 00 00 00 ~ log-load-find-execution-token ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ Get rid of that heap pointer on the stack, we're finally done with it! 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) f8 c5 04 08 00 00 00 00 ~ execute (codeword pointer) ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ This is the start of a long block of code which has been processed by ~ the label transform, meaning it consists of ready-to-run Forth word ~ definitions that reference each other by address, suitable for direct ~ execution as soon as the cold-start routine has set up the basic ~ registers, flags, and memory areas that form Evocation's internal ABI. ~ ~ Each word definition consists of a dictionary entry header, a ~ codeword, and a word body. For words implemented as Forth code, the ~ codeword points to the "docol" routine, and the word body is an array of ~ pointers to the codewords of other words, occasionally interspersed with ~ literal values. For words implemented as machine code, the codeword ~ points to the start of the body, and the body is the machine code. ~ ~ All the word entry headers in this code link to each other, from last ~ backwards to first, forming an Evocation dictionary. ~ ~ The warm-start routine relies on words defined by the label transform, ~ as does the log-load routine. ~ (alignment padding) ~ This is the actual docol routine, the interpreter which is pointed to by ~ the codeword of every interpreted word. It does not itself have an entry ~ in the dictionary; the word "docol" will return a pointer to this routine. ~ The word's entry follows immediately after the routine. ~ label docol-codeword-value at offset 0x000000000004bbe0 is here. ~ "pushcontrol" macro 48 8d 6d f8 ~ :rbp 0xfffffffffffffff8 :rbp lea-reg64-disp8-reg64 48 89 75 00 ~ :rsi :rbp 0x00 mov-disp8-reg64-reg64 48 83 c0 08 ~ 0x8 :rax add-reg64-imm8 48 89 c6 ~ :rax :rsi mov-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 ~ (alignment padding) ~ This is the dictionary entry for docol. 00 00 00 00 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 64 6f 63 6f 6c 00 ~ (alignment padding) ~ label docol at offset 0x000000000004bc08 is here. 10 bc 04 08 00 00 00 00 48 b8 e0 bb 04 08 00 00 00 00 ~ 0x804bbe0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ exit is defined here via the label transform; this is its entry header. f8 bb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 78 69 74 00 00 ~ (alignment padding) ~ label exit at offset 0x000000000004bc30 is here. 38 bc 04 08 00 00 00 00 ~ (self codeword) ~ "popcontrol" macro 48 8b 75 00 ~ :rbp 0x00 :rsi mov-reg64-disp8-reg64 48 8d 6d 08 ~ :rbp 0x08 :rbp lea-reg64-disp8-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 ~ (alignment padding) ~ swap is defined here via the label transform; this is its entry header. 20 bc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 77 61 70 00 00 ~ (alignment padding) ~ label swap at offset 0x000000000004bc58 is here. 60 bc 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 50 ~ :rax push-reg64 53 ~ :rbx push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 ~ (alignment padding) ~ drop is defined here via the label transform; this is its entry header. 48 bc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 64 72 6f 70 00 00 ~ (alignment padding) ~ label drop at offset 0x000000000004bc78 is here. 80 bc 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 ~ (alignment padding) ~ 2drop is defined here via the label transform; this is its entry header. 68 bc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 32 64 72 6f 70 00 ~ (alignment padding) ~ label 2drop at offset 0x000000000004bc98 is here. a0 bc 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 58 ~ :rax pop-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 ~ (alignment padding) ~ roll is defined here via the label transform; this is its entry header. 88 bc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 6f 6c 6c 00 00 ~ (alignment padding) ~ label roll at offset 0x000000000004bcb8 is here. c0 bc 04 08 00 00 00 00 ~ (self codeword) 59 ~ :rcx pop-reg64 48 ff c9 ~ :rcx dec-reg64 48 8b 1c cc ~ :rsp :rcx 8 :rbx mov-reg64-indexed-reg64 56 ~ :rsi push-reg64 48 8d 34 cc ~ :rsp :rcx 8 :rsi lea-reg64-indexed-reg64 48 8d 7c cc 08 ~ :rsp :rcx 8 0x08 :rdi lea-reg64-disp8-indexed-reg64 fd ~ std f3 48 a5 ~ rep-movs64 fc ~ cld 5e ~ :rsi pop-reg64 48 89 1c 24 ~ :rbx :rsp mov-indirect-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 ~ (alignment padding) ~ unroll is defined here via the label transform; this is its entry header. a8 bc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 75 6e 72 6f 6c 6c 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label unroll at offset 0x000000000004bcf8 is here. 00 bd 04 08 00 00 00 00 ~ (self codeword) 59 ~ :rcx pop-reg64 48 ff c9 ~ :rcx dec-reg64 48 89 ca ~ :rcx :rdx mov-reg64-reg64 48 8b 1c 24 ~ :rsp :rbx mov-reg64-indirect-reg64 56 ~ :rsi push-reg64 48 8d 74 24 10 ~ :rsp 0x10 :rsi lea-reg64-disp8-reg64 48 8d 7c 24 08 ~ :rsp 0x08 :rdi lea-reg64-disp8-reg64 f3 48 a5 ~ rep-movs64 5e ~ :rsi pop-reg64 48 89 1c d4 ~ :rbx :rsp :rdx 8 mov-indexed-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ 3roll is defined here via the label transform; this is its entry header. e0 bc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 33 72 6f 6c 6c 00 ~ (alignment padding) ~ label 3roll at offset 0x000000000004bd38 is here. 40 bd 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 59 ~ :rcx pop-reg64 53 ~ :rbx push-reg64 50 ~ :rax push-reg64 51 ~ :rcx push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ 3unroll is defined here via the label transform; this is its entry header. 28 bd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 33 75 6e 72 6f 6c 6c 00 00 00 00 00 00 00 ~ (alignment padding) ~ label 3unroll at offset 0x000000000004bd68 is here. 70 bd 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 59 ~ :rcx pop-reg64 50 ~ :rax push-reg64 51 ~ :rcx push-reg64 53 ~ :rbx push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ dup is defined here via the label transform; this is its entry header. 50 bd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 64 75 70 00 00 00 ~ (alignment padding) ~ label dup at offset 0x000000000004bd90 is here. 98 bd 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 50 ~ :rax push-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ 2dup is defined here via the label transform; this is its entry header. 80 bd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 32 64 75 70 00 00 ~ (alignment padding) ~ label 2dup at offset 0x000000000004bdb0 is here. b8 bd 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 53 ~ :rbx push-reg64 50 ~ :rax push-reg64 53 ~ :rbx push-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ + is defined here via the label transform; this is its entry header. a0 bd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2b 00 00 00 00 00 ~ (alignment padding) ~ label + at offset 0x000000000004bdd8 is here. e0 bd 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 01 d8 ~ :rbx :rax add-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ - is defined here via the label transform; this is its entry header. c8 bd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2d 00 00 00 00 00 ~ (alignment padding) ~ label - at offset 0x000000000004be00 is here. 08 be 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 2b c3 ~ :rbx :rax sub-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ * is defined here via the label transform; this is its entry header. f0 bd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2a 00 00 00 00 00 ~ (alignment padding) ~ label * at offset 0x000000000004be28 is here. 30 be 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 f7 e3 ~ :rbx mul-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ /% is defined here via the label transform; this is its entry header. 18 be 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2f 25 00 00 00 00 ~ (alignment padding) ~ label /% at offset 0x000000000004be50 is here. 58 be 04 08 00 00 00 00 ~ (self codeword) 48 33 d2 ~ :rdx :rdx xor-reg64-reg64 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 f7 f3 ~ :rbx divmod-reg64 52 ~ :rdx push-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 ~ (alignment padding) ~ 1+ is defined here via the label transform; this is its entry header. 40 be 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 31 2b 00 00 00 00 ~ (alignment padding) ~ label 1+ at offset 0x000000000004be78 is here. 80 be 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 48 ff c0 ~ :rax inc-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ 1- is defined here via the label transform; this is its entry header. 68 be 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 31 2d 00 00 00 00 ~ (alignment padding) ~ label 1- at offset 0x000000000004bea0 is here. a8 be 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 48 ff c8 ~ :rax dec-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ = is defined here via the label transform; this is its entry header. 90 be 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3d 00 00 00 00 00 ~ (alignment padding) ~ label = at offset 0x000000000004bec8 is here. d0 be 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 94 c0 ~ :cc-equal :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ != is defined here via the label transform; this is its entry header. b8 be 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 21 3d 00 00 00 00 ~ (alignment padding) ~ label != at offset 0x000000000004bef8 is here. 00 bf 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 95 c0 ~ :cc-not-equal :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ > is defined here via the label transform; this is its entry header. e8 be 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3e 00 00 00 00 00 ~ (alignment padding) ~ label > at offset 0x000000000004bf28 is here. 30 bf 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 9f c0 ~ :cc-greater :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ < is defined here via the label transform; this is its entry header. 18 bf 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3c 00 00 00 00 00 ~ (alignment padding) ~ label < at offset 0x000000000004bf58 is here. 60 bf 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 9c c0 ~ :cc-less :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ >= is defined here via the label transform; this is its entry header. 48 bf 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3e 3d 00 00 00 00 ~ (alignment padding) ~ label >= at offset 0x000000000004bf88 is here. 90 bf 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 9d c0 ~ :cc-greater-equal :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ <= is defined here via the label transform; this is its entry header. 78 bf 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3c 3d 00 00 00 00 ~ (alignment padding) ~ label <= at offset 0x000000000004bfb8 is here. c0 bf 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 9e c0 ~ :cc-less-equal :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ >unsigned is defined here via the label transform; this is its entry header. a8 bf 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3e 75 6e 73 69 67 6e 65 64 00 00 00 00 00 ~ (alignment padding) ~ label >unsigned at offset 0x000000000004bff0 is here. f8 bf 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 97 c0 ~ :cc-above :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ =unsigned is defined here via the label transform; this is its entry header. 10 c0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3e 3d 75 6e 73 69 67 6e 65 64 00 00 00 00 ~ (alignment padding) ~ label >=unsigned at offset 0x000000000004c060 is here. 68 c0 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 93 c0 ~ :cc-above-equal :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ <=unsigned is defined here via the label transform; this is its entry header. 48 c0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3c 3d 75 6e 73 69 67 6e 65 64 00 00 00 00 ~ (alignment padding) ~ label <=unsigned at offset 0x000000000004c098 is here. a0 c0 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5b ~ :rbx pop-reg64 48 3b c3 ~ :rbx :rax cmp-reg64-reg64 0f 96 c0 ~ :cc-below-equal :al set-reg8-cc 48 83 e0 01 ~ 0x1 :rax and-reg64-imm8 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ & is defined here via the label transform; this is its entry header. 80 c0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 26 00 00 00 00 00 ~ (alignment padding) ~ label & at offset 0x000000000004c0c8 is here. d0 c0 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 23 c3 ~ :rbx :rax and-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ | is defined here via the label transform; this is its entry header. b8 c0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 7c 00 00 00 00 00 ~ (alignment padding) ~ label | at offset 0x000000000004c0f0 is here. f8 c0 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 0b c3 ~ :rbx :rax or-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ xor is defined here via the label transform; this is its entry header. e0 c0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 78 6f 72 00 00 00 ~ (alignment padding) ~ label xor at offset 0x000000000004c118 is here. 20 c1 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 33 c3 ~ :rbx :rax xor-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 ~ (alignment padding) ~ invert is defined here via the label transform; this is its entry header. 08 c1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 69 6e 76 65 72 74 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label invert at offset 0x000000000004c148 is here. 50 c1 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 48 f7 d0 ~ :rax not-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ lit is defined here via the label transform; this is its entry header. 30 c1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 69 74 00 00 00 ~ (alignment padding) ~ label lit at offset 0x000000000004c170 is here. 78 c1 04 08 00 00 00 00 ~ (self codeword) 48 ad ~ lods64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ litstring is defined here via the label transform; this is its entry header. 60 c1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 69 74 73 74 72 69 6e 67 00 00 00 00 00 ~ (alignment padding) ~ label litstring at offset 0x000000000004c198 is here. a0 c1 04 08 00 00 00 00 ~ (self codeword) 56 ~ :rsi push-reg64 48 89 f7 ~ :rsi :rdi mov-reg64-reg64 48 33 c0 ~ :rax :rax xor-reg64-reg64 48 33 c9 ~ :rcx :rcx xor-reg64-reg64 48 f7 d1 ~ :rcx not-reg64 f2 ae ~ repnz-scas8 48 89 fe ~ :rdi :rsi mov-reg64-reg64 48 83 c6 07 ~ 0x7 :rsi add-reg64-imm8 48 83 e6 f8 ~ 0xfffffffffffffff8 :rsi and-reg64-imm8 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 ~ (alignment padding) ~ ! is defined here via the label transform; this is its entry header. 80 c1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 21 00 00 00 00 00 ~ (alignment padding) ~ label ! at offset 0x000000000004c1d0 is here. d8 c1 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 89 03 ~ :rax :rbx mov-indirect-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ @ is defined here via the label transform; this is its entry header. c0 c1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 40 00 00 00 00 00 ~ (alignment padding) ~ label @ at offset 0x000000000004c1f8 is here. 00 c2 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 48 8b 00 ~ :rax :rax mov-reg64-indirect-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ +! is defined here via the label transform; this is its entry header. e8 c1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2b 21 00 00 00 00 ~ (alignment padding) ~ label +! at offset 0x000000000004c220 is here. 28 c2 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 01 03 ~ :rax :rbx add-indirect-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ -! is defined here via the label transform; this is its entry header. 10 c2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2d 21 00 00 00 00 ~ (alignment padding) ~ label -! at offset 0x000000000004c248 is here. 50 c2 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 48 2b 03 ~ :rax :rbx sub-indirect-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ 8! is defined here via the label transform; this is its entry header. 38 c2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 38 21 00 00 00 00 ~ (alignment padding) ~ label 8! at offset 0x000000000004c270 is here. 78 c2 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 88 03 ~ :al :rbx mov-indirect-reg64-reg8 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 ~ (alignment padding) ~ 8@ is defined here via the label transform; this is its entry header. 60 c2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 38 40 00 00 00 00 ~ (alignment padding) ~ label 8@ at offset 0x000000000004c290 is here. 98 c2 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 48 33 c0 ~ :rax :rax xor-reg64-reg64 8a 03 ~ :rbx :al mov-reg8-indirect-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 ~ (alignment padding) ~ 16! is defined here via the label transform; this is its entry header. 80 c2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 31 36 21 00 00 00 ~ (alignment padding) ~ label 16! at offset 0x000000000004c2b8 is here. c0 c2 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 66 89 03 ~ :ax :rbx mov-indirect-reg64-reg16 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ 16@ is defined here via the label transform; this is its entry header. a8 c2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 31 36 40 00 00 00 ~ (alignment padding) ~ label 16@ at offset 0x000000000004c2e0 is here. e8 c2 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 48 33 c0 ~ :rax :rax xor-reg64-reg64 66 8b 03 ~ :rbx :ax mov-reg16-indirect-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 ~ (alignment padding) ~ 32! is defined here via the label transform; this is its entry header. d0 c2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 33 32 21 00 00 00 ~ (alignment padding) ~ label 32! at offset 0x000000000004c308 is here. 10 c3 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 58 ~ :rax pop-reg64 89 03 ~ :eax :rbx mov-indirect-reg64-reg32 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 ~ (alignment padding) ~ 32@ is defined here via the label transform; this is its entry header. f8 c2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 33 32 40 00 00 00 ~ (alignment padding) ~ label 32@ at offset 0x000000000004c328 is here. 30 c3 04 08 00 00 00 00 ~ (self codeword) 5b ~ :rbx pop-reg64 48 33 c0 ~ :rax :rax xor-reg64-reg64 8b 03 ~ :rbx :eax mov-reg32-indirect-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 ~ (alignment padding) ~ control! is defined here via the label transform; this is its entry header. 18 c3 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6f 6e 74 72 6f 6c 21 00 00 00 00 00 00 ~ (alignment padding) ~ label control! at offset 0x000000000004c358 is here. 60 c3 04 08 00 00 00 00 ~ (self codeword) 5d ~ :rbp pop-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 ~ (alignment padding) ~ control@ is defined here via the label transform; this is its entry header. 40 c3 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6f 6e 74 72 6f 6c 40 00 00 00 00 00 00 ~ (alignment padding) ~ label control@ at offset 0x000000000004c380 is here. 88 c3 04 08 00 00 00 00 ~ (self codeword) 55 ~ :rbp push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 ~ (alignment padding) ~ value! is defined here via the label transform; this is its entry header. 68 c3 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 76 61 6c 75 65 21 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label value! at offset 0x000000000004c3a8 is here. b0 c3 04 08 00 00 00 00 ~ (self codeword) 5c ~ :rsp pop-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 ~ (alignment padding) ~ value@ is defined here via the label transform; this is its entry header. 90 c3 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 76 61 6c 75 65 40 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label value@ at offset 0x000000000004c3d0 is here. d8 c3 04 08 00 00 00 00 ~ (self codeword) 54 ~ :rsp push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 ~ (alignment padding) ~ memcopy is defined here via the label transform; this is its entry header. b8 c3 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 65 6d 63 6f 70 79 00 00 00 00 00 00 00 ~ (alignment padding) ~ label memcopy at offset 0x000000000004c3f8 is here. 00 c4 04 08 00 00 00 00 ~ (self codeword) 48 89 f2 ~ :rsi :rdx mov-reg64-reg64 59 ~ :rcx pop-reg64 5f ~ :rdi pop-reg64 5e ~ :rsi pop-reg64 f3 a4 ~ rep-movs8 48 89 d6 ~ :rdx :rsi mov-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ memmove is defined here via the label transform; this is its entry header. e0 c3 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 65 6d 6d 6f 76 65 00 00 00 00 00 00 00 ~ (alignment padding) ~ label memmove at offset 0x000000000004c428 is here. 30 c4 04 08 00 00 00 00 ~ (self codeword) 48 89 f2 ~ :rsi :rdx mov-reg64-reg64 59 ~ :rcx pop-reg64 5f ~ :rdi pop-reg64 5e ~ :rsi pop-reg64 48 89 f0 ~ :rsi :rax mov-reg64-reg64 48 3b c7 ~ :rdi :rax cmp-reg64-reg64 72 04 ~ 0x4 :cc-below jmp-cc-rel-imm8 f3 a4 ~ rep-movs8 eb 10 ~ 0x10 jmp-rel-imm8 48 01 ce ~ :rcx :rsi add-reg64-reg64 48 ff ce ~ :rsi dec-reg64 48 01 cf ~ :rcx :rdi add-reg64-reg64 48 ff cf ~ :rdi dec-reg64 fd ~ std f3 a4 ~ rep-movs8 fc ~ cld 48 89 d6 ~ :rdx :rsi mov-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ stringlen is defined here via the label transform; this is its entry header. 10 c4 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 ~ (alignment padding) ~ label stringlen at offset 0x000000000004c478 is here. 80 c4 04 08 00 00 00 00 ~ (self codeword) 5f ~ :rdi pop-reg64 48 89 fb ~ :rdi :rbx mov-reg64-reg64 48 33 c0 ~ :rax :rax xor-reg64-reg64 48 33 c9 ~ :rcx :rcx xor-reg64-reg64 48 f7 d1 ~ :rcx not-reg64 f2 ae ~ repnz-scas8 48 2b fb ~ :rbx :rdi sub-reg64-reg64 48 83 ef 01 ~ 0x1 :rdi sub-reg64-imm8 57 ~ :rdi push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 ~ (alignment padding) ~ reverse-stringlen is defined here via the label transform; this is its entry header. 60 c4 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 76 65 72 73 65 2d 73 74 72 69 6e 67 6c 65 6e 00 00 00 00 00 ~ (alignment padding) ~ label reverse-stringlen at offset 0x000000000004c4c0 is here. c8 c4 04 08 00 00 00 00 ~ (self codeword) 5f ~ :rdi pop-reg64 48 89 fb ~ :rdi :rbx mov-reg64-reg64 48 33 c0 ~ :rax :rax xor-reg64-reg64 48 33 c9 ~ :rcx :rcx xor-reg64-reg64 48 f7 d1 ~ :rcx not-reg64 fd ~ std f2 ae ~ repnz-scas8 fc ~ cld 48 2b df ~ :rdi :rbx sub-reg64-reg64 48 83 eb 01 ~ 0x1 :rbx sub-reg64-imm8 53 ~ :rbx push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 ~ (alignment padding) ~ reverse-padding-len is defined here via the label transform; this is its entry header. a0 c4 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 76 65 72 73 65 2d 70 61 64 64 69 6e 67 2d 6c 65 6e 00 00 00 ~ (alignment padding) ~ label reverse-padding-len at offset 0x000000000004c508 is here. 10 c5 04 08 00 00 00 00 ~ (self codeword) 5f ~ :rdi pop-reg64 48 89 fb ~ :rdi :rbx mov-reg64-reg64 48 33 c0 ~ :rax :rax xor-reg64-reg64 48 c7 c1 09 00 00 00 ~ 0x9 :rcx mov-reg64-imm32 fd ~ std f3 ae ~ repz-scas8 fc ~ cld 48 2b df ~ :rdi :rbx sub-reg64-reg64 48 83 eb 01 ~ 0x1 :rbx sub-reg64-imm8 53 ~ :rbx push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 ~ (alignment padding) ~ stringcmp is defined here via the label transform; this is its entry header. e8 c4 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 74 72 69 6e 67 63 6d 70 00 00 00 00 00 ~ (alignment padding) ~ label stringcmp at offset 0x000000000004c548 is here. 50 c5 04 08 00 00 00 00 ~ (self codeword) 48 89 f2 ~ :rsi :rdx mov-reg64-reg64 5e ~ :rsi pop-reg64 5f ~ :rdi pop-reg64 48 33 db ~ :rbx :rbx xor-reg64-reg64 48 33 c0 ~ :rax :rax xor-reg64-reg64 48 8b 0e ~ :rsi :rcx mov-reg64-indirect-reg64 88 c8 ~ :cl :al mov-reg8-reg8 a6 ~ cmps8 74 0f ~ 0xf :cc-equal jmp-cc-rel-imm8 0f 97 c3 ~ :cc-above :bl set-reg8-cc 48 83 db 00 ~ 0x0 :rbx sbb-reg64-imm8 53 ~ :rbx push-reg64 48 89 d6 ~ :rdx :rsi mov-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 48 85 c0 ~ :rax :rax test-reg64-reg64 75 e4 ~ 0xffffffffffffffe4 :cc-not-equal jmp-cc-rel-imm8 68 00 00 00 00 ~ 0x0 push-imm32-extended64 48 89 d6 ~ :rdx :rsi mov-reg64-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 ~ (alignment padding) ~ branch is defined here via the label transform; this is its entry header. 30 c5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 62 72 61 6e 63 68 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label branch at offset 0x000000000004c5a0 is here. a8 c5 04 08 00 00 00 00 ~ (self codeword) 48 03 36 ~ :rsi :rsi add-reg64-indirect-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ 0branch is defined here via the label transform; this is its entry header. 88 c5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 30 62 72 61 6e 63 68 00 00 00 00 00 00 00 ~ (alignment padding) ~ label 0branch at offset 0x000000000004c5c8 is here. d0 c5 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 48 85 c0 ~ :rax :rax test-reg64-reg64 74 d2 ~ 0xffffffffffffffd2 :cc-equal jmp-cc-rel-imm8 48 ad ~ lods64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 ~ (alignment padding) ~ execute is defined here via the label transform; this is its entry header. b0 c5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 78 65 63 75 74 65 00 00 00 00 00 00 00 ~ (alignment padding) ~ label execute at offset 0x000000000004c5f8 is here. 00 c6 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 ff 20 ~ :rax jmp-abs-indirect-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ entry-to-execution-token is defined here via the label transform; this is its entry header. e0 c5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 00 00 00 00 00 ~ (alignment padding) ~ label entry-to-execution-token at offset 0x000000000004c630 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 78 c4 04 08 00 00 00 00 ~ stringlen (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 48 c1 04 08 00 00 00 00 ~ invert (codeword pointer) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ execution-token-to-entry is defined here via the label transform; this is its entry header. 08 c6 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 2d 74 6f 2d 65 6e 74 72 79 00 00 00 00 00 00 ~ (alignment padding) ~ label execution-token-to-entry at offset 0x000000000004c6d0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 08 c5 04 08 00 00 00 00 ~ reverse-padding-len (codeword pointer) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) c0 c4 04 08 00 00 00 00 ~ reverse-stringlen (codeword pointer) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ entry-flags@ is defined here via the label transform; this is its entry header. a8 c6 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 6e 74 72 79 2d 66 6c 61 67 73 40 00 00 ~ (alignment padding) ~ label entry-flags@ at offset 0x000000000004c758 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ entry-flags! is defined here via the label transform; this is its entry header. 40 c7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 6e 74 72 79 2d 66 6c 61 67 73 21 00 00 ~ (alignment padding) ~ label entry-flags! at offset 0x000000000004c7b8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 ff ff ff ff ff ff ff ~ 0xffffffffffffff00 (integer literal) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) f0 c0 04 08 00 00 00 00 ~ | (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ entry-to-name is defined here via the label transform; this is its entry header. a0 c7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 00 ~ (alignment padding) ~ label entry-to-name at offset 0x000000000004c860 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack64 is defined here via the label transform; this is its entry header. 48 c8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label pack64 at offset 0x000000000004c8a0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack32 is defined here via the label transform; this is its entry header. 88 c8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label pack32 at offset 0x000000000004c900 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 08 c3 04 08 00 00 00 00 ~ 32! (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack16 is defined here via the label transform; this is its entry header. e8 c8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label pack16 at offset 0x000000000004c960 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) b8 c2 04 08 00 00 00 00 ~ 16! (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack8 is defined here via the label transform; this is its entry header. 48 c9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 38 00 ~ (alignment padding) ~ label pack8 at offset 0x000000000004c9b8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 c2 04 08 00 00 00 00 ~ 8! (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ packstring is defined here via the label transform; this is its entry header. a8 c9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 73 74 72 69 6e 67 00 00 00 00 ~ (alignment padding) ~ label packstring at offset 0x000000000004ca18 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 78 c4 04 08 00 00 00 00 ~ stringlen (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c3 04 08 00 00 00 00 ~ memcopy (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-raw-string is defined here via the label transform; this is its entry header. 00 ca 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 00 00 00 00 00 00 00 ~ (alignment padding) ~ label pack-raw-string at offset 0x000000000004cad8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 78 c4 04 08 00 00 00 00 ~ stringlen (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f8 c3 04 08 00 00 00 00 ~ memcopy (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ packalign is defined here via the label transform; this is its entry header. b8 ca 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 61 6c 69 67 6e 00 00 00 00 00 ~ (alignment padding) ~ label packalign at offset 0x000000000004cb78 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 50 be 04 08 00 00 00 00 ~ /% (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 18 00 00 00 00 00 00 00 ~ 0x18 (branch offset) 78 bc 04 08 00 00 00 00 ~ swap (codeword pointer) ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 58 bc 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 80 ff ff ff ff ff ff ff ~ 0xffffffffffffff80 (branch offset) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ unpack64 is defined here via the label transform; this is its entry header. 60 cb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 75 6e 70 61 63 6b 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label unpack64 at offset 0x000000000004cc28 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ unpack32 is defined here via the label transform; this is its entry header. 10 cc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 75 6e 70 61 63 6b 33 32 00 00 00 00 00 00 ~ (alignment padding) ~ label unpack32 at offset 0x000000000004cc88 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 28 c3 04 08 00 00 00 00 ~ 32@ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ unpack16 is defined here via the label transform; this is its entry header. 70 cc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 75 6e 70 61 63 6b 31 36 00 00 00 00 00 00 ~ (alignment padding) ~ label unpack16 at offset 0x000000000004cce8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) e0 c2 04 08 00 00 00 00 ~ 16@ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ unpack8 is defined here via the label transform; this is its entry header. d0 cc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 75 6e 70 61 63 6b 38 00 00 00 00 00 00 00 ~ (alignment padding) ~ label unpack8 at offset 0x000000000004cd48 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 90 c2 04 08 00 00 00 00 ~ 8@ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ align-size is defined here via the label transform; this is its entry header. 30 cd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 6c 69 67 6e 2d 73 69 7a 65 00 00 00 00 ~ (alignment padding) ~ label align-size at offset 0x000000000004cda8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 50 be 04 08 00 00 00 00 ~ /% (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ unpackalign is defined here via the label transform; this is its entry header. 90 cd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 75 6e 70 61 63 6b 61 6c 69 67 6e 00 00 00 ~ (alignment padding) ~ label unpackalign at offset 0x000000000004ce38 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) a8 cd 04 08 00 00 00 00 ~ align-size (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ crash is defined here via the label transform; this is its entry header. 20 ce 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 72 61 73 68 00 ~ (alignment padding) ~ label crash at offset 0x000000000004ce60 is here. 68 ce 04 08 00 00 00 00 ~ (self codeword) f4 ~ hlt ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 ~ (alignment padding) ~ max is defined here via the label transform; this is its entry header. 50 ce 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 61 78 00 00 00 ~ (alignment padding) ~ label max at offset 0x000000000004ce80 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 88 bf 04 08 00 00 00 00 ~ >= (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (branch offset) 58 bc 04 08 00 00 00 00 ~ drop (codeword pointer) ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ min is defined here via the label transform; this is its entry header. 70 ce 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 69 6e 00 00 00 ~ (alignment padding) ~ label min at offset 0x000000000004cee8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) b8 bf 04 08 00 00 00 00 ~ <= (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (branch offset) 58 bc 04 08 00 00 00 00 ~ drop (codeword pointer) ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ over is defined here via the label transform; this is its entry header. d8 ce 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6f 76 65 72 00 00 ~ (alignment padding) ~ label over at offset 0x000000000004cf50 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pick is defined here via the label transform; this is its entry header. 40 cf 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 69 63 6b 00 00 ~ (alignment padding) ~ label pick at offset 0x000000000004cf88 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ ndrop is defined here via the label transform; this is its entry header. 78 cf 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6e 64 72 6f 70 00 ~ (alignment padding) ~ label ndrop at offset 0x000000000004cfe8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (branch offset) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) a0 be 04 08 00 00 00 00 ~ 1- (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) b0 ff ff ff ff ff ff ff ~ 0xffffffffffffffb0 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ ndup is defined here via the label transform; this is its entry header. d8 cf 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6e 64 75 70 00 00 ~ (alignment padding) ~ label ndup at offset 0x000000000004d068 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 78 be 04 08 00 00 00 00 ~ 1+ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 48 00 00 00 00 00 00 00 ~ 0x48 (branch offset) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) a0 be 04 08 00 00 00 00 ~ 1- (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 98 ff ff ff ff ff ff ff ~ 0xffffffffffffff98 (branch offset) 98 bc 04 08 00 00 00 00 ~ 2drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ 3drop is defined here via the label transform; this is its entry header. 58 d0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 33 64 72 6f 70 00 ~ (alignment padding) ~ label 3drop at offset 0x000000000004d118 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ 3dup is defined here via the label transform; this is its entry header. 08 d1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 33 64 75 70 00 00 ~ (alignment padding) ~ label 3dup at offset 0x000000000004d150 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ && is defined here via the label transform; this is its entry header. 40 d1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 26 26 00 00 00 00 ~ (alignment padding) ~ label && at offset 0x000000000004d1b8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ || is defined here via the label transform; this is its entry header. a8 d1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 7c 7c 00 00 00 00 ~ (alignment padding) ~ label || at offset 0x000000000004d218 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) f0 c0 04 08 00 00 00 00 ~ | (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ not is defined here via the label transform; this is its entry header. 08 d2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6e 6f 74 00 00 00 ~ (alignment padding) ~ label not at offset 0x000000000004d258 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ negate is defined here via the label transform; this is its entry header. 48 d2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6e 65 67 61 74 65 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label negate at offset 0x000000000004d298 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ align-floor is defined here via the label transform; this is its entry header. 80 d2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 6c 69 67 6e 2d 66 6c 6f 6f 72 00 00 00 ~ (alignment padding) ~ label align-floor at offset 0x000000000004d2d8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 50 be 04 08 00 00 00 00 ~ /% (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ find-in is defined here via the label transform; this is its entry header. c0 d2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 66 69 6e 64 2d 69 6e 00 00 00 00 00 00 00 ~ (alignment padding) ~ label find-in at offset 0x000000000004d330 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 20 00 00 00 00 00 00 00 ~ 0x20 (branch offset) 58 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 58 c7 04 08 00 00 00 00 ~ entry-flags@ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) c8 c0 04 08 00 00 00 00 ~ & (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 80 00 00 00 00 00 00 00 ~ 0x80 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 88 00 00 00 00 00 00 00 ~ 0x88 (branch offset) b0 bd 04 08 00 00 00 00 ~ @ (codeword pointer) ~ 2dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 48 c5 04 08 00 00 00 00 ~ stringcmp (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 20 00 00 00 00 00 00 00 ~ 0x20 (branch offset) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) f8 c1 04 08 00 00 00 00 a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) a8 fe ff ff ff ff ff ff ~ 0xfffffffffffffea8 (branch offset) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ syscall-0 is defined here via the label transform; this is its entry header. 18 d3 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 63 61 6c 6c 2d 30 00 00 00 00 00 ~ (alignment padding) ~ label syscall-0 at offset 0x000000000004d4c0 is here. c8 d4 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 0f 05 ~ syscall 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 ~ (alignment padding) ~ syscall-1 is defined here via the label transform; this is its entry header. a8 d4 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 63 61 6c 6c 2d 31 00 00 00 00 00 ~ (alignment padding) ~ label syscall-1 at offset 0x000000000004d4e8 is here. f0 d4 04 08 00 00 00 00 ~ (self codeword) 58 ~ :rax pop-reg64 5f ~ :rdi pop-reg64 0f 05 ~ syscall 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ syscall-2 is defined here via the label transform; this is its entry header. d0 d4 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 63 61 6c 6c 2d 32 00 00 00 00 00 ~ (alignment padding) ~ label syscall-2 at offset 0x000000000004d518 is here. 20 d5 04 08 00 00 00 00 ~ (self codeword) 48 89 f3 ~ :rsi :rbx mov-reg64-reg64 58 ~ :rax pop-reg64 5e ~ :rsi pop-reg64 5f ~ :rdi pop-reg64 0f 05 ~ syscall 48 89 de ~ :rbx :rsi mov-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 ~ (alignment padding) ~ syscall-3 is defined here via the label transform; this is its entry header. 00 d5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 63 61 6c 6c 2d 33 00 00 00 00 00 ~ (alignment padding) ~ label syscall-3 at offset 0x000000000004d548 is here. 50 d5 04 08 00 00 00 00 ~ (self codeword) 48 89 f3 ~ :rsi :rbx mov-reg64-reg64 58 ~ :rax pop-reg64 5a ~ :rdx pop-reg64 5e ~ :rsi pop-reg64 5f ~ :rdi pop-reg64 0f 05 ~ syscall 48 89 de ~ :rbx :rsi mov-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 00 00 ~ (alignment padding) ~ syscall-4 is defined here via the label transform; this is its entry header. 30 d5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 63 61 6c 6c 2d 34 00 00 00 00 00 ~ (alignment padding) ~ label syscall-4 at offset 0x000000000004d580 is here. 88 d5 04 08 00 00 00 00 ~ (self codeword) 48 89 f3 ~ :rsi :rbx mov-reg64-reg64 58 ~ :rax pop-reg64 41 5a ~ :r10 pop-extrareg64 5a ~ :rdx pop-reg64 5e ~ :rsi pop-reg64 5f ~ :rdi pop-reg64 0f 05 ~ syscall 48 89 de ~ :rbx :rsi mov-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 00 00 ~ (alignment padding) ~ syscall-5 is defined here via the label transform; this is its entry header. 68 d5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 63 61 6c 6c 2d 35 00 00 00 00 00 ~ (alignment padding) ~ label syscall-5 at offset 0x000000000004d5b8 is here. c0 d5 04 08 00 00 00 00 ~ (self codeword) 48 89 f3 ~ :rsi :rbx mov-reg64-reg64 58 ~ :rax pop-reg64 41 58 ~ :r8 pop-extrareg64 41 5a ~ :r10 pop-extrareg64 5a ~ :rdx pop-reg64 5e ~ :rsi pop-reg64 5f ~ :rdi pop-reg64 0f 05 ~ syscall 48 89 de ~ :rbx :rsi mov-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 00 00 ~ (alignment padding) ~ syscall-6 is defined here via the label transform; this is its entry header. a0 d5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 63 61 6c 6c 2d 36 00 00 00 00 00 ~ (alignment padding) ~ label syscall-6 at offset 0x000000000004d5f0 is here. f8 d5 04 08 00 00 00 00 ~ (self codeword) 48 89 f3 ~ :rsi :rbx mov-reg64-reg64 58 ~ :rax pop-reg64 41 59 ~ :r9 pop-extrareg64 41 58 ~ :r8 pop-extrareg64 41 5a ~ :r10 pop-extrareg64 5a ~ :rdx pop-reg64 5e ~ :rsi pop-reg64 5f ~ :rdi pop-reg64 0f 05 ~ syscall 48 89 de ~ :rbx :rsi mov-reg64-reg64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ sys-exit is defined here via the label transform; this is its entry header. d8 d5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 2d 65 78 69 74 00 00 00 00 00 00 ~ (alignment padding) ~ label sys-exit at offset 0x000000000004d628 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 3c 00 00 00 00 00 00 00 ~ 0x3c (integer literal) e8 d4 04 08 00 00 00 00 ~ syscall-1 (codeword pointer) 60 ce 04 08 00 00 00 00 ~ crash (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sys-write is defined here via the label transform; this is its entry header. 10 d6 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 2d 77 72 69 74 65 00 00 00 00 00 ~ (alignment padding) ~ label sys-write at offset 0x000000000004d670 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 48 d5 04 08 00 00 00 00 ~ syscall-3 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sys-read is defined here via the label transform; this is its entry header. 58 d6 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 2d 72 65 61 64 00 00 00 00 00 00 ~ (alignment padding) ~ label sys-read at offset 0x000000000004d6b0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 48 d5 04 08 00 00 00 00 ~ syscall-3 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sys-open is defined here via the label transform; this is its entry header. 98 d6 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 2d 6f 70 65 6e 00 00 00 00 00 00 ~ (alignment padding) ~ label sys-open at offset 0x000000000004d6f0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 48 d5 04 08 00 00 00 00 ~ syscall-3 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sys-close is defined here via the label transform; this is its entry header. d8 d6 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 2d 63 6c 6f 73 65 00 00 00 00 00 ~ (alignment padding) ~ label sys-close at offset 0x000000000004d730 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) e8 d4 04 08 00 00 00 00 ~ syscall-1 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ emitstring is defined here via the label transform; this is its entry header. 18 d7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 6d 69 74 73 74 72 69 6e 67 00 00 00 00 ~ (alignment padding) ~ label emitstring at offset 0x000000000004d770 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 78 c4 04 08 00 00 00 00 ~ stringlen (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 d6 04 08 00 00 00 00 ~ sys-write (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ space is defined here via the label transform; this is its entry header. 58 d7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 70 61 63 65 00 ~ (alignment padding) ~ label space at offset 0x000000000004d7c8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 20 00 00 00 00 00 00 00 ~ 0x20 (integer literal) d0 c3 04 08 00 00 00 00 ~ value@ (codeword pointer) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ newline is defined here via the label transform; this is its entry header. b8 d7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6e 65 77 6c 69 6e 65 00 00 00 00 00 00 00 ~ (alignment padding) ~ label newline at offset 0x000000000004d818 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) d0 c3 04 08 00 00 00 00 ~ value@ (codeword pointer) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pow is defined here via the label transform; this is its entry header. 00 d8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 6f 77 00 00 00 ~ (alignment padding) ~ label pow at offset 0x000000000004d860 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ lit (codeword pointer) ~ drop (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 70 c1 04 08 00 00 00 00 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 50 ff ff ff ff ff ff ff ~ 0xffffffffffffff50 (branch offset) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ logfloor is defined here via the label transform; this is its entry header. 50 d8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 66 6c 6f 6f 72 00 00 00 00 00 00 ~ (alignment padding) ~ label logfloor at offset 0x000000000004d958 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) f0 bf 04 08 00 00 00 00 ~ >unsigned (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (branch offset) 78 bc 04 08 00 00 00 00 ~ lit (codeword pointer) ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 70 c1 04 08 00 00 00 00 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 58 bf 04 08 00 00 00 00 ~ < (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (branch offset) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 68 fe ff ff ff ff ff ff ~ 0xfffffffffffffe68 (branch offset) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ logceil is defined here via the label transform; this is its entry header. 40 d9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 63 65 69 6c 00 00 00 00 00 00 00 ~ (alignment padding) ~ label logceil at offset 0x000000000004db48 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 60 c0 04 08 00 00 00 00 ~ >=unsigned (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (branch offset) 78 bc 04 08 00 00 00 00 ~ lit (codeword pointer) ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 70 c1 04 08 00 00 00 00 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 58 bf 04 08 00 00 00 00 ~ < (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (branch offset) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 68 fe ff ff ff ff ff ff ~ 0xfffffffffffffe68 (branch offset) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ .base-unsigned is defined here via the label transform; this is its entry header. 30 db 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label .base-unsigned at offset 0x000000000004dd38 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 58 d9 04 08 00 00 00 00 ~ logfloor (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 28 bf 04 08 00 00 00 00 ~ > (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (branch offset) 78 bc 04 08 00 00 00 00 ~ 2dup (codeword pointer) ~ drop (codeword pointer) b0 bd 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 60 d8 04 08 00 00 00 00 ~ pow (codeword pointer) 50 be 04 08 00 00 00 00 ~ /% (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 50 be 04 08 00 00 00 00 ~ /% (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 bf 04 08 00 00 00 00 ~ > (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (integer literal) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (branch offset) 70 c1 04 08 00 00 00 00 ~ + (codeword pointer) ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 61 00 00 00 00 00 00 00 ~ 0x61 (integer literal) d8 bd 04 08 00 00 00 00 d0 c3 04 08 00 00 00 00 ~ value@ (codeword pointer) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 18 fe ff ff ff ff ff ff ~ 0xfffffffffffffe18 (branch offset) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ .base is defined here via the label transform; this is its entry header. 18 dd 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 62 61 73 65 00 ~ (alignment padding) ~ label .base at offset 0x000000000004dff8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 bf 04 08 00 00 00 00 ~ > (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 38 00 00 00 00 00 00 00 ~ 0x38 (branch offset) 70 c1 04 08 00 00 00 00 ~ swap (codeword pointer) ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 58 bc 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 38 dd 04 08 00 00 00 00 ~ .base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ . is defined here via the label transform; this is its entry header. e8 df 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 00 00 00 00 00 ~ (alignment padding) ~ label . at offset 0x000000000004e0b8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) f8 df 04 08 00 00 00 00 ~ .base (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ .hex is defined here via the label transform; this is its entry header. a8 e0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 68 65 78 00 00 ~ (alignment padding) ~ label .hex at offset 0x000000000004e0f0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 38 dd 04 08 00 00 00 00 ~ .base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ .hex8 is defined here via the label transform; this is its entry header. e0 e0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 68 65 78 38 00 ~ (alignment padding) ~ label .hex8 at offset 0x000000000004e138 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 38 dd 04 08 00 00 00 00 ~ .base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ .hex16 is defined here via the label transform; this is its entry header. 28 e1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 68 65 78 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label .hex16 at offset 0x000000000004e188 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 38 dd 04 08 00 00 00 00 ~ .base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ .hex32 is defined here via the label transform; this is its entry header. 70 e1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 68 65 78 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label .hex32 at offset 0x000000000004e1d8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 38 dd 04 08 00 00 00 00 ~ .base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ .hex64 is defined here via the label transform; this is its entry header. c0 e1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 68 65 78 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label .hex64 at offset 0x000000000004e228 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 38 dd 04 08 00 00 00 00 ~ .base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ .hexn is defined here via the label transform; this is its entry header. 10 e2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 2e 68 65 78 6e 00 ~ (alignment padding) ~ label .hexn at offset 0x000000000004e270 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 dd 04 08 00 00 00 00 ~ .base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-base-unsigned is defined here via the label transform; this is its entry header. 60 e2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 00 00 00 00 ~ (alignment padding) ~ label pack-base-unsigned at offset 0x000000000004e2c0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 58 d9 04 08 00 00 00 00 ~ logfloor (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 28 bf 04 08 00 00 00 00 ~ > (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (branch offset) 78 bc 04 08 00 00 00 00 ~ 2dup (codeword pointer) ~ drop (codeword pointer) b0 bd 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 60 d8 04 08 00 00 00 00 ~ pow (codeword pointer) 50 be 04 08 00 00 00 00 ~ /% (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 50 be 04 08 00 00 00 00 ~ /% (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 28 bf 04 08 00 00 00 00 ~ > (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (integer literal) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (branch offset) 70 c1 04 08 00 00 00 00 ~ + (codeword pointer) ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 61 00 00 00 00 00 00 00 ~ 0x61 (integer literal) d8 bd 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) f0 fd ff ff ff ff ff ff ~ 0xfffffffffffffdf0 (branch offset) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-base is defined here via the label transform; this is its entry header. a0 e2 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 62 61 73 65 00 00 00 00 00 ~ (alignment padding) ~ label pack-base at offset 0x000000000004e5b0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 bf 04 08 00 00 00 00 ~ > (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 48 00 00 00 00 00 00 00 ~ 0x48 (branch offset) 70 c1 04 08 00 00 00 00 ~ swap (codeword pointer) ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "-" (string literal with null) 2d 00 00 00 00 00 00 00 ~ (alignment padding) 18 ca 04 08 00 00 00 00 ~ packstring (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 38 dd 04 08 00 00 00 00 ~ .base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-decimal is defined here via the label transform; this is its entry header. 98 e5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 64 65 63 69 6d 61 6c 00 00 ~ (alignment padding) ~ label pack-decimal at offset 0x000000000004e688 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) b0 e5 04 08 00 00 00 00 ~ pack-base (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-hex is defined here via the label transform; this is its entry header. 70 e6 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 68 65 78 00 00 00 00 00 00 ~ (alignment padding) ~ label pack-hex at offset 0x000000000004e6c8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) c0 e2 04 08 00 00 00 00 ~ pack-base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-hex8 is defined here via the label transform; this is its entry header. b0 e6 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 68 65 78 38 00 00 00 00 00 ~ (alignment padding) ~ label pack-hex8 at offset 0x000000000004e718 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) c0 e2 04 08 00 00 00 00 ~ pack-base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-hex16 is defined here via the label transform; this is its entry header. 00 e7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 68 65 78 31 36 00 00 00 00 ~ (alignment padding) ~ label pack-hex16 at offset 0x000000000004e768 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) c0 e2 04 08 00 00 00 00 ~ pack-base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-hex32 is defined here via the label transform; this is its entry header. 50 e7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 68 65 78 33 32 00 00 00 00 ~ (alignment padding) ~ label pack-hex32 at offset 0x000000000004e7b8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) c0 e2 04 08 00 00 00 00 ~ pack-base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-hex64 is defined here via the label transform; this is its entry header. a0 e7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 68 65 78 36 34 00 00 00 00 ~ (alignment padding) ~ label pack-hex64 at offset 0x000000000004e808 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) c0 e2 04 08 00 00 00 00 ~ pack-base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-hexn is defined here via the label transform; this is its entry header. f0 e7 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 68 65 78 6e 00 00 00 00 00 ~ (alignment padding) ~ label pack-hexn at offset 0x000000000004e858 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 10 00 00 00 00 00 00 00 ~ 0x10 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c0 e2 04 08 00 00 00 00 ~ pack-base-unsigned (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ :rax is defined here via the label transform; this is its entry header. 40 e8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 61 78 00 00 ~ (alignment padding) ~ label :rax at offset 0x000000000004e898 is here. a0 e8 04 08 00 00 00 00 48 b8 98 e8 04 08 00 00 00 00 ~ 0x804e898 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :rcx is defined here via the label transform; this is its entry header. 88 e8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 63 78 00 00 ~ (alignment padding) ~ label :rcx at offset 0x000000000004e8c0 is here. c8 e8 04 08 00 00 00 00 48 b8 c0 e8 04 08 00 00 00 00 ~ 0x804e8c0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :rdx is defined here via the label transform; this is its entry header. b0 e8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 64 78 00 00 ~ (alignment padding) ~ label :rdx at offset 0x000000000004e8e8 is here. f0 e8 04 08 00 00 00 00 48 b8 e8 e8 04 08 00 00 00 00 ~ 0x804e8e8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :rbx is defined here via the label transform; this is its entry header. d8 e8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 62 78 00 00 ~ (alignment padding) ~ label :rbx at offset 0x000000000004e910 is here. 18 e9 04 08 00 00 00 00 48 b8 10 e9 04 08 00 00 00 00 ~ 0x804e910 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :rsp is defined here via the label transform; this is its entry header. 00 e9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 73 70 00 00 ~ (alignment padding) ~ label :rsp at offset 0x000000000004e938 is here. 40 e9 04 08 00 00 00 00 48 b8 38 e9 04 08 00 00 00 00 ~ 0x804e938 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :rbp is defined here via the label transform; this is its entry header. 28 e9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 62 70 00 00 ~ (alignment padding) ~ label :rbp at offset 0x000000000004e960 is here. 68 e9 04 08 00 00 00 00 48 b8 60 e9 04 08 00 00 00 00 ~ 0x804e960 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :rsi is defined here via the label transform; this is its entry header. 50 e9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 73 69 00 00 ~ (alignment padding) ~ label :rsi at offset 0x000000000004e988 is here. 90 e9 04 08 00 00 00 00 48 b8 88 e9 04 08 00 00 00 00 ~ 0x804e988 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :rdi is defined here via the label transform; this is its entry header. 78 e9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 64 69 00 00 ~ (alignment padding) ~ label :rdi at offset 0x000000000004e9b0 is here. b8 e9 04 08 00 00 00 00 48 b8 b0 e9 04 08 00 00 00 00 ~ 0x804e9b0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :r8 is defined here via the label transform; this is its entry header. a0 e9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 38 00 00 00 ~ (alignment padding) ~ label :r8 at offset 0x000000000004e9d8 is here. e0 e9 04 08 00 00 00 00 48 b8 d8 e9 04 08 00 00 00 00 ~ 0x804e9d8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :r9 is defined here via the label transform; this is its entry header. c8 e9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 39 00 00 00 ~ (alignment padding) ~ label :r9 at offset 0x000000000004ea00 is here. 08 ea 04 08 00 00 00 00 48 b8 00 ea 04 08 00 00 00 00 ~ 0x804ea00 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :r10 is defined here via the label transform; this is its entry header. f0 e9 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 31 30 00 00 ~ (alignment padding) ~ label :r10 at offset 0x000000000004ea28 is here. 30 ea 04 08 00 00 00 00 48 b8 28 ea 04 08 00 00 00 00 ~ 0x804ea28 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :r11 is defined here via the label transform; this is its entry header. 18 ea 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 31 31 00 00 ~ (alignment padding) ~ label :r11 at offset 0x000000000004ea50 is here. 58 ea 04 08 00 00 00 00 48 b8 50 ea 04 08 00 00 00 00 ~ 0x804ea50 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :r12 is defined here via the label transform; this is its entry header. 40 ea 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 31 32 00 00 ~ (alignment padding) ~ label :r12 at offset 0x000000000004ea78 is here. 80 ea 04 08 00 00 00 00 48 b8 78 ea 04 08 00 00 00 00 ~ 0x804ea78 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :r13 is defined here via the label transform; this is its entry header. 68 ea 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 31 33 00 00 ~ (alignment padding) ~ label :r13 at offset 0x000000000004eaa0 is here. a8 ea 04 08 00 00 00 00 48 b8 a0 ea 04 08 00 00 00 00 ~ 0x804eaa0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :r14 is defined here via the label transform; this is its entry header. 90 ea 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 31 34 00 00 ~ (alignment padding) ~ label :r14 at offset 0x000000000004eac8 is here. d0 ea 04 08 00 00 00 00 48 b8 c8 ea 04 08 00 00 00 00 ~ 0x804eac8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :r15 is defined here via the label transform; this is its entry header. b8 ea 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 72 31 35 00 00 ~ (alignment padding) ~ label :r15 at offset 0x000000000004eaf0 is here. f8 ea 04 08 00 00 00 00 48 b8 f0 ea 04 08 00 00 00 00 ~ 0x804eaf0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :eax is defined here via the label transform; this is its entry header. e0 ea 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 65 61 78 00 00 ~ (alignment padding) ~ label :eax at offset 0x000000000004eb18 is here. 20 eb 04 08 00 00 00 00 48 b8 18 eb 04 08 00 00 00 00 ~ 0x804eb18 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :ecx is defined here via the label transform; this is its entry header. 08 eb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 65 63 78 00 00 ~ (alignment padding) ~ label :ecx at offset 0x000000000004eb40 is here. 48 eb 04 08 00 00 00 00 48 b8 40 eb 04 08 00 00 00 00 ~ 0x804eb40 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :edx is defined here via the label transform; this is its entry header. 30 eb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 65 64 78 00 00 ~ (alignment padding) ~ label :edx at offset 0x000000000004eb68 is here. 70 eb 04 08 00 00 00 00 48 b8 68 eb 04 08 00 00 00 00 ~ 0x804eb68 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :ebx is defined here via the label transform; this is its entry header. 58 eb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 65 62 78 00 00 ~ (alignment padding) ~ label :ebx at offset 0x000000000004eb90 is here. 98 eb 04 08 00 00 00 00 48 b8 90 eb 04 08 00 00 00 00 ~ 0x804eb90 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :esp is defined here via the label transform; this is its entry header. 80 eb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 65 73 70 00 00 ~ (alignment padding) ~ label :esp at offset 0x000000000004ebb8 is here. c0 eb 04 08 00 00 00 00 48 b8 b8 eb 04 08 00 00 00 00 ~ 0x804ebb8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :ebp is defined here via the label transform; this is its entry header. a8 eb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 65 62 70 00 00 ~ (alignment padding) ~ label :ebp at offset 0x000000000004ebe0 is here. e8 eb 04 08 00 00 00 00 48 b8 e0 eb 04 08 00 00 00 00 ~ 0x804ebe0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :esi is defined here via the label transform; this is its entry header. d0 eb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 65 73 69 00 00 ~ (alignment padding) ~ label :esi at offset 0x000000000004ec08 is here. 10 ec 04 08 00 00 00 00 48 b8 08 ec 04 08 00 00 00 00 ~ 0x804ec08 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :edi is defined here via the label transform; this is its entry header. f8 eb 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 65 64 69 00 00 ~ (alignment padding) ~ label :edi at offset 0x000000000004ec30 is here. 38 ec 04 08 00 00 00 00 48 b8 30 ec 04 08 00 00 00 00 ~ 0x804ec30 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :ax is defined here via the label transform; this is its entry header. 20 ec 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 61 78 00 00 00 ~ (alignment padding) ~ label :ax at offset 0x000000000004ec58 is here. 60 ec 04 08 00 00 00 00 48 b8 58 ec 04 08 00 00 00 00 ~ 0x804ec58 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cx is defined here via the label transform; this is its entry header. 48 ec 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 78 00 00 00 ~ (alignment padding) ~ label :cx at offset 0x000000000004ec80 is here. 88 ec 04 08 00 00 00 00 48 b8 80 ec 04 08 00 00 00 00 ~ 0x804ec80 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :dx is defined here via the label transform; this is its entry header. 70 ec 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 64 78 00 00 00 ~ (alignment padding) ~ label :dx at offset 0x000000000004eca8 is here. b0 ec 04 08 00 00 00 00 48 b8 a8 ec 04 08 00 00 00 00 ~ 0x804eca8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :bx is defined here via the label transform; this is its entry header. 98 ec 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 62 78 00 00 00 ~ (alignment padding) ~ label :bx at offset 0x000000000004ecd0 is here. d8 ec 04 08 00 00 00 00 48 b8 d0 ec 04 08 00 00 00 00 ~ 0x804ecd0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :sp is defined here via the label transform; this is its entry header. c0 ec 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 73 70 00 00 00 ~ (alignment padding) ~ label :sp at offset 0x000000000004ecf8 is here. 00 ed 04 08 00 00 00 00 48 b8 f8 ec 04 08 00 00 00 00 ~ 0x804ecf8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :bp is defined here via the label transform; this is its entry header. e8 ec 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 62 70 00 00 00 ~ (alignment padding) ~ label :bp at offset 0x000000000004ed20 is here. 28 ed 04 08 00 00 00 00 48 b8 20 ed 04 08 00 00 00 00 ~ 0x804ed20 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :si is defined here via the label transform; this is its entry header. 10 ed 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 73 69 00 00 00 ~ (alignment padding) ~ label :si at offset 0x000000000004ed48 is here. 50 ed 04 08 00 00 00 00 48 b8 48 ed 04 08 00 00 00 00 ~ 0x804ed48 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :di is defined here via the label transform; this is its entry header. 38 ed 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 64 69 00 00 00 ~ (alignment padding) ~ label :di at offset 0x000000000004ed70 is here. 78 ed 04 08 00 00 00 00 48 b8 70 ed 04 08 00 00 00 00 ~ 0x804ed70 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :al is defined here via the label transform; this is its entry header. 60 ed 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 61 6c 00 00 00 ~ (alignment padding) ~ label :al at offset 0x000000000004ed98 is here. a0 ed 04 08 00 00 00 00 48 b8 98 ed 04 08 00 00 00 00 ~ 0x804ed98 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cl is defined here via the label transform; this is its entry header. 88 ed 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 6c 00 00 00 ~ (alignment padding) ~ label :cl at offset 0x000000000004edc0 is here. c8 ed 04 08 00 00 00 00 48 b8 c0 ed 04 08 00 00 00 00 ~ 0x804edc0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :dl is defined here via the label transform; this is its entry header. b0 ed 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 64 6c 00 00 00 ~ (alignment padding) ~ label :dl at offset 0x000000000004ede8 is here. f0 ed 04 08 00 00 00 00 48 b8 e8 ed 04 08 00 00 00 00 ~ 0x804ede8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :bl is defined here via the label transform; this is its entry header. d8 ed 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 62 6c 00 00 00 ~ (alignment padding) ~ label :bl at offset 0x000000000004ee10 is here. 18 ee 04 08 00 00 00 00 48 b8 10 ee 04 08 00 00 00 00 ~ 0x804ee10 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :ah is defined here via the label transform; this is its entry header. 00 ee 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 61 68 00 00 00 ~ (alignment padding) ~ label :ah at offset 0x000000000004ee38 is here. 40 ee 04 08 00 00 00 00 48 b8 38 ee 04 08 00 00 00 00 ~ 0x804ee38 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :ch is defined here via the label transform; this is its entry header. 28 ee 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 68 00 00 00 ~ (alignment padding) ~ label :ch at offset 0x000000000004ee60 is here. 68 ee 04 08 00 00 00 00 48 b8 60 ee 04 08 00 00 00 00 ~ 0x804ee60 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :dh is defined here via the label transform; this is its entry header. 50 ee 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 64 68 00 00 00 ~ (alignment padding) ~ label :dh at offset 0x000000000004ee88 is here. 90 ee 04 08 00 00 00 00 48 b8 88 ee 04 08 00 00 00 00 ~ 0x804ee88 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :bh is defined here via the label transform; this is its entry header. 78 ee 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 62 68 00 00 00 ~ (alignment padding) ~ label :bh at offset 0x000000000004eeb0 is here. b8 ee 04 08 00 00 00 00 48 b8 b0 ee 04 08 00 00 00 00 ~ 0x804eeb0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-overflow is defined here via the label transform; this is its entry header. a0 ee 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 6f 76 65 72 66 6c 6f 77 00 00 ~ (alignment padding) ~ label :cc-overflow at offset 0x000000000004eee0 is here. e8 ee 04 08 00 00 00 00 48 b8 e0 ee 04 08 00 00 00 00 ~ 0x804eee0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-no-overflow is defined here via the label transform; this is its entry header. c8 ee 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 6e 6f 2d 6f 76 65 72 66 6c 6f 77 00 00 00 00 00 00 00 ~ (alignment padding) ~ label :cc-no-overflow at offset 0x000000000004ef18 is here. 20 ef 04 08 00 00 00 00 48 b8 18 ef 04 08 00 00 00 00 ~ 0x804ef18 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-below is defined here via the label transform; this is its entry header. f8 ee 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 62 65 6c 6f 77 00 00 00 00 00 ~ (alignment padding) ~ label :cc-below at offset 0x000000000004ef48 is here. 50 ef 04 08 00 00 00 00 48 b8 48 ef 04 08 00 00 00 00 ~ 0x804ef48 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-above-equal is defined here via the label transform; this is its entry header. 30 ef 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 61 62 6f 76 65 2d 65 71 75 61 6c 00 00 00 00 00 00 00 ~ (alignment padding) ~ label :cc-above-equal at offset 0x000000000004ef80 is here. 88 ef 04 08 00 00 00 00 48 b8 80 ef 04 08 00 00 00 00 ~ 0x804ef80 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-equal is defined here via the label transform; this is its entry header. 60 ef 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 65 71 75 61 6c 00 00 00 00 00 ~ (alignment padding) ~ label :cc-equal at offset 0x000000000004efb0 is here. b8 ef 04 08 00 00 00 00 48 b8 b0 ef 04 08 00 00 00 00 ~ 0x804efb0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-not-equal is defined here via the label transform; this is its entry header. 98 ef 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 6e 6f 74 2d 65 71 75 61 6c 00 ~ (alignment padding) ~ label :cc-not-equal at offset 0x000000000004efe0 is here. e8 ef 04 08 00 00 00 00 48 b8 e0 ef 04 08 00 00 00 00 ~ 0x804efe0 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-below-equal is defined here via the label transform; this is its entry header. c8 ef 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 62 65 6c 6f 77 2d 65 71 75 61 6c 00 00 00 00 00 00 00 ~ (alignment padding) ~ label :cc-below-equal at offset 0x000000000004f018 is here. 20 f0 04 08 00 00 00 00 48 b8 18 f0 04 08 00 00 00 00 ~ 0x804f018 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-above is defined here via the label transform; this is its entry header. f8 ef 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 61 62 6f 76 65 00 00 00 00 00 ~ (alignment padding) ~ label :cc-above at offset 0x000000000004f048 is here. 50 f0 04 08 00 00 00 00 48 b8 48 f0 04 08 00 00 00 00 ~ 0x804f048 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-sign is defined here via the label transform; this is its entry header. 30 f0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 73 69 67 6e 00 00 00 00 00 00 ~ (alignment padding) ~ label :cc-sign at offset 0x000000000004f078 is here. 80 f0 04 08 00 00 00 00 48 b8 78 f0 04 08 00 00 00 00 ~ 0x804f078 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-not-sign is defined here via the label transform; this is its entry header. 60 f0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 6e 6f 74 2d 73 69 67 6e 00 00 ~ (alignment padding) ~ label :cc-not-sign at offset 0x000000000004f0a8 is here. b0 f0 04 08 00 00 00 00 48 b8 a8 f0 04 08 00 00 00 00 ~ 0x804f0a8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-even is defined here via the label transform; this is its entry header. 90 f0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 65 76 65 6e 00 00 00 00 00 00 ~ (alignment padding) ~ label :cc-even at offset 0x000000000004f0d8 is here. e0 f0 04 08 00 00 00 00 48 b8 d8 f0 04 08 00 00 00 00 ~ 0x804f0d8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-odd is defined here via the label transform; this is its entry header. c0 f0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 6f 64 64 00 00 00 00 00 00 00 ~ (alignment padding) ~ label :cc-odd at offset 0x000000000004f108 is here. 10 f1 04 08 00 00 00 00 48 b8 08 f1 04 08 00 00 00 00 ~ 0x804f108 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-less is defined here via the label transform; this is its entry header. f0 f0 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 6c 65 73 73 00 00 00 00 00 00 ~ (alignment padding) ~ label :cc-less at offset 0x000000000004f138 is here. 40 f1 04 08 00 00 00 00 48 b8 38 f1 04 08 00 00 00 00 ~ 0x804f138 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-greater-equal is defined here via the label transform; this is its entry header. 20 f1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 67 72 65 61 74 65 72 2d 65 71 75 61 6c 00 00 00 00 00 ~ (alignment padding) ~ label :cc-greater-equal at offset 0x000000000004f170 is here. 78 f1 04 08 00 00 00 00 48 b8 70 f1 04 08 00 00 00 00 ~ 0x804f170 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-less-equal is defined here via the label transform; this is its entry header. 50 f1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 6c 65 73 73 2d 65 71 75 61 6c 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label :cc-less-equal at offset 0x000000000004f1a8 is here. b0 f1 04 08 00 00 00 00 48 b8 a8 f1 04 08 00 00 00 00 ~ 0x804f1a8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ :cc-greater is defined here via the label transform; this is its entry header. 88 f1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 3a 63 63 2d 67 72 65 61 74 65 72 00 00 00 ~ (alignment padding) ~ label :cc-greater at offset 0x000000000004f1d8 is here. e0 f1 04 08 00 00 00 00 48 b8 d8 f1 04 08 00 00 00 00 ~ 0x804f1d8 :rax mov-reg64-imm64 50 ~ :rax push-reg64 ~ "next" macro 48 ad ~ lods64 ff 20 ~ :rax jmp-abs-indirect-reg64 00 ~ (alignment padding) ~ reg64 is defined here via the label transform; this is its entry header. c0 f1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 67 36 34 00 ~ (alignment padding) ~ label reg64 at offset 0x000000000004f200 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 c0 e8 04 08 00 00 00 00 ~ :rcx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 e8 e8 04 08 00 00 00 00 ~ :rdx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 10 e9 04 08 00 00 00 00 ~ :rbx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 88 e9 04 08 00 00 00 00 ~ :rsi (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 b0 e9 04 08 00 00 00 00 ~ :rdi (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to reg64 is not a reg64." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 72 65 67 36 34 20 69 73 20 6e 6f 74 20 61 20 72 65 67 36 34 2e 00 00 00 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ extrareg64 is defined here via the label transform; this is its entry header. f0 f1 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 65 78 74 72 61 72 65 67 36 34 00 00 00 00 ~ (alignment padding) ~ label extrareg64 at offset 0x000000000004f578 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) d8 e9 04 08 00 00 00 00 ~ :r8 (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 00 ea 04 08 00 00 00 00 ~ :r9 (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 28 ea 04 08 00 00 00 00 ~ :r10 (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 50 ea 04 08 00 00 00 00 ~ :r11 (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 78 ea 04 08 00 00 00 00 ~ :r12 (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 a0 ea 04 08 00 00 00 00 ~ :r13 (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 c8 ea 04 08 00 00 00 00 ~ :r14 (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 f0 ea 04 08 00 00 00 00 ~ :r15 (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to extrareg64 is not an extrareg64." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 65 78 74 72 61 72 65 67 36 34 20 69 73 20 6e 6f 74 20 61 6e 20 65 78 74 72 61 72 65 67 36 34 2e 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ reg32 is defined here via the label transform; this is its entry header. 60 f5 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 67 33 32 00 ~ (alignment padding) ~ label reg32 at offset 0x000000000004f8f0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 18 eb 04 08 00 00 00 00 ~ :eax (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 40 eb 04 08 00 00 00 00 ~ :ecx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 68 eb 04 08 00 00 00 00 ~ :edx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 90 eb 04 08 00 00 00 00 ~ :ebx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 b8 eb 04 08 00 00 00 00 ~ :esp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 e0 eb 04 08 00 00 00 00 ~ :ebp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 08 ec 04 08 00 00 00 00 ~ :esi (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 30 ec 04 08 00 00 00 00 ~ :edi (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to reg32 is not a reg32." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 72 65 67 33 32 20 69 73 20 6e 6f 74 20 61 20 72 65 67 33 32 2e 00 00 00 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ reg16 is defined here via the label transform; this is its entry header. e0 f8 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 67 31 36 00 ~ (alignment padding) ~ label reg16 at offset 0x000000000004fc60 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 58 ec 04 08 00 00 00 00 ~ :ax (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 80 ec 04 08 00 00 00 00 ~ :cx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 a8 ec 04 08 00 00 00 00 ~ :dx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 d0 ec 04 08 00 00 00 00 ~ :bx (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 f8 ec 04 08 00 00 00 00 ~ :sp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 20 ed 04 08 00 00 00 00 ~ :bp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 48 ed 04 08 00 00 00 00 ~ :si (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 70 ed 04 08 00 00 00 00 ~ :di (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to reg16 is not a reg16." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 72 65 67 31 36 20 69 73 20 6e 6f 74 20 61 20 72 65 67 31 36 2e 00 00 00 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ reg8 is defined here via the label transform; this is its entry header. 50 fc 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 67 38 00 00 ~ (alignment padding) ~ label reg8 at offset 0x000000000004ffd0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 98 ed 04 08 00 00 00 00 ~ :al (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 c0 ed 04 08 00 00 00 00 ~ :cl (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 e8 ed 04 08 00 00 00 00 ~ :dl (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 10 ee 04 08 00 00 00 00 ~ :bl (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 38 ee 04 08 00 00 00 00 ~ :ah (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 60 ee 04 08 00 00 00 00 ~ :ch (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 88 ee 04 08 00 00 00 00 ~ :dh (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 b0 ee 04 08 00 00 00 00 ~ :bh (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to reg8 is not a reg8." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 72 65 67 38 20 69 73 20 6e 6f 74 20 61 20 72 65 67 38 2e 00 00 00 00 00 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ scalefield is defined here via the label transform; this is its entry header. c0 ff 04 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 63 61 6c 65 66 69 65 6c 64 00 00 00 00 ~ (alignment padding) ~ label scalefield at offset 0x0000000000050348 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to scalefield is not 1, 2, 4, or 8." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 73 63 61 6c 65 66 69 65 6c 64 20 69 73 20 6e 6f 74 20 31 2c 20 32 2c 20 34 2c 20 6f 72 20 38 2e 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ condition-code is defined here via the label transform; this is its entry header. 30 03 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6f 6e 64 69 74 69 6f 6e 2d 63 6f 64 65 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label condition-code at offset 0x0000000000050570 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) e0 ee 04 08 00 00 00 00 ~ :cc-overflow (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 18 ef 04 08 00 00 00 00 ~ :cc-no-overflow (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 48 ef 04 08 00 00 00 00 ~ :cc-below (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 80 ef 04 08 00 00 00 00 ~ :cc-above-equal (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 b0 ef 04 08 00 00 00 00 ~ :cc-equal (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 e0 ef 04 08 00 00 00 00 ~ :cc-not-equal (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 18 f0 04 08 00 00 00 00 ~ :cc-below-equal (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 48 f0 04 08 00 00 00 00 ~ :cc-above (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 78 f0 04 08 00 00 00 00 ~ :cc-sign (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 a8 f0 04 08 00 00 00 00 ~ :cc-not-sign (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 09 00 00 00 00 00 00 00 ~ 0x9 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 d8 f0 04 08 00 00 00 00 ~ :cc-even (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 08 f1 04 08 00 00 00 00 ~ :cc-odd (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0b 00 00 00 00 00 00 00 ~ 0xb (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 38 f1 04 08 00 00 00 00 ~ :cc-less (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0c 00 00 00 00 00 00 00 ~ 0xc (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 70 f1 04 08 00 00 00 00 ~ :cc-greater-equal (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0d 00 00 00 00 00 00 00 ~ 0xd (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 a8 f1 04 08 00 00 00 00 ~ :cc-less-equal (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ dup (codeword pointer) ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0e 00 00 00 00 00 00 00 ~ 0xe (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 90 bd 04 08 00 00 00 00 d8 f1 04 08 00 00 00 00 ~ :cc-greater (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 28 00 00 00 00 00 00 00 ~ 0x28 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Parameter to condition-code is not a condition code." (string literal with null) 50 61 72 61 6d 65 74 65 72 20 74 6f 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 6f 64 65 20 69 73 20 6e 6f 74 20 61 20 63 6f 6e 64 69 74 69 6f 6e 20 63 6f 64 65 2e 00 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-0 is defined here via the label transform; this is its entry header. 50 05 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 30 00 ~ (alignment padding) ~ label rex-0 at offset 0x0000000000050bf0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-w is defined here via the label transform; this is its entry header. e0 0b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 77 00 ~ (alignment padding) ~ label rex-w at offset 0x0000000000050c28 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 48 00 00 00 00 00 00 00 ~ 0x48 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-r is defined here via the label transform; this is its entry header. 18 0c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 72 00 ~ (alignment padding) ~ label rex-r at offset 0x0000000000050c60 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 44 00 00 00 00 00 00 00 ~ 0x44 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-x is defined here via the label transform; this is its entry header. 50 0c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 78 00 ~ (alignment padding) ~ label rex-x at offset 0x0000000000050c98 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 42 00 00 00 00 00 00 00 ~ 0x42 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-b is defined here via the label transform; this is its entry header. 88 0c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 62 00 ~ (alignment padding) ~ label rex-b at offset 0x0000000000050cd0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 41 00 00 00 00 00 00 00 ~ 0x41 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-wr is defined here via the label transform; this is its entry header. c0 0c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 77 72 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-wr at offset 0x0000000000050d10 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4c 00 00 00 00 00 00 00 ~ 0x4c (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-wx is defined here via the label transform; this is its entry header. f8 0c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 77 78 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-wx at offset 0x0000000000050d50 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4a 00 00 00 00 00 00 00 ~ 0x4a (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-wb is defined here via the label transform; this is its entry header. 38 0d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 77 62 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-wb at offset 0x0000000000050d90 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 49 00 00 00 00 00 00 00 ~ 0x49 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-rx is defined here via the label transform; this is its entry header. 78 0d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 72 78 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-rx at offset 0x0000000000050dd0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 46 00 00 00 00 00 00 00 ~ 0x46 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-rb is defined here via the label transform; this is its entry header. b8 0d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 72 62 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-rb at offset 0x0000000000050e10 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 45 00 00 00 00 00 00 00 ~ 0x45 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-xb is defined here via the label transform; this is its entry header. f8 0d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 78 62 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-xb at offset 0x0000000000050e50 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 43 00 00 00 00 00 00 00 ~ 0x43 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-wrx is defined here via the label transform; this is its entry header. 38 0e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 77 72 78 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-wrx at offset 0x0000000000050e90 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4e 00 00 00 00 00 00 00 ~ 0x4e (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-wrb is defined here via the label transform; this is its entry header. 78 0e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 77 72 62 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-wrb at offset 0x0000000000050ed0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4d 00 00 00 00 00 00 00 ~ 0x4d (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-wxb is defined here via the label transform; this is its entry header. b8 0e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 77 78 62 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-wxb at offset 0x0000000000050f10 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4b 00 00 00 00 00 00 00 ~ 0x4b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-rxb is defined here via the label transform; this is its entry header. f8 0e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 72 78 62 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-rxb at offset 0x0000000000050f50 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 47 00 00 00 00 00 00 00 ~ 0x47 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rex-wrxb is defined here via the label transform; this is its entry header. 38 0f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 78 2d 77 72 78 62 00 00 00 00 00 00 ~ (alignment padding) ~ label rex-wrxb at offset 0x0000000000050f90 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 4f 00 00 00 00 00 00 00 ~ 0x4f (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ opcodereg is defined here via the label transform; this is its entry header. 78 0f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6f 70 63 6f 64 65 72 65 67 00 00 00 00 00 ~ (alignment padding) ~ label opcodereg at offset 0x0000000000050fd0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) f0 c0 04 08 00 00 00 00 ~ | (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ opcodecc is defined here via the label transform; this is its entry header. b8 0f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6f 70 63 6f 64 65 63 63 00 00 00 00 00 00 ~ (alignment padding) ~ label opcodecc at offset 0x0000000000051008 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) f0 c0 04 08 00 00 00 00 ~ | (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ modrm is defined here via the label transform; this is its entry header. f0 0f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 64 72 6d 00 ~ (alignment padding) ~ label modrm at offset 0x0000000000051038 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) f0 c0 04 08 00 00 00 00 ~ | (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) f0 c0 04 08 00 00 00 00 ~ | (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sib is defined here via the label transform; this is its entry header. 28 10 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 69 62 00 00 00 ~ (alignment padding) ~ label sib at offset 0x00000000000510b0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) f0 c0 04 08 00 00 00 00 ~ | (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) f0 c0 04 08 00 00 00 00 ~ | (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ addressing-reg64 is defined here via the label transform; this is its entry header. a0 10 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label addressing-reg64 at offset 0x0000000000051138 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 38 10 05 08 00 00 00 00 ~ modrm (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ addressing-reg8 is defined here via the label transform; this is its entry header. 18 11 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 38 00 00 00 00 00 00 00 ~ (alignment padding) ~ label addressing-reg8 at offset 0x0000000000051190 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) d0 ff 04 08 00 00 00 00 ~ reg8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 38 10 05 08 00 00 00 00 ~ modrm (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ addressing-indirect-reg64 is defined here via the label transform; this is its entry header. 70 11 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 ~ (alignment padding) ~ label addressing-indirect-reg64 at offset 0x00000000000511f0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) d0 00 00 00 00 00 00 00 ~ 0xd0 (branch offset) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 38 10 05 08 00 00 00 00 ~ modrm (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (branch offset) 70 c1 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) b0 10 05 08 00 00 00 00 ~ sib (codeword pointer) 30 bc 04 08 00 00 00 00 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "R/M parameter to addressing-indirect-reg64 is :rbp." (string literal with null) 52 2f 4d 20 70 61 72 61 6d 65 74 65 72 20 74 6f 20 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 20 69 73 20 3a 72 62 70 2e 00 00 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ addressing-disp8-reg64 is defined here via the label transform; this is its entry header. c8 11 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label addressing-disp8-reg64 at offset 0x0000000000051390 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 38 10 05 08 00 00 00 00 ~ modrm (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (branch offset) 70 c1 04 08 00 00 00 00 ~ swap (codeword pointer) ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) b0 10 05 08 00 00 00 00 ~ sib (codeword pointer) 58 bc 04 08 00 00 00 00 b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ addressing-disp32-reg64 is defined here via the label transform; this is its entry header. 68 13 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 33 32 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label addressing-disp32-reg64 at offset 0x00000000000514c0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) c8 be 04 08 00 00 00 00 ~ = (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 38 10 05 08 00 00 00 00 ~ modrm (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 40 00 00 00 00 00 00 00 ~ 0x40 (branch offset) 70 c1 04 08 00 00 00 00 ~ swap (codeword pointer) ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 38 e9 04 08 00 00 00 00 ~ :rsp (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) b0 10 05 08 00 00 00 00 ~ sib (codeword pointer) 58 bc 04 08 00 00 00 00 00 c9 04 08 00 00 00 00 ~ pack32 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ addressing-indexed-reg64 is defined here via the label transform; this is its entry header. 98 14 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label addressing-indexed-reg64 at offset 0x00000000000515f0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) b8 00 00 00 00 00 00 00 ~ 0xb8 (branch offset) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 38 10 05 08 00 00 00 00 ~ modrm (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 48 03 05 08 00 00 00 00 ~ scalefield (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) b0 10 05 08 00 00 00 00 ~ sib (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "Base parameter to addressing-indexed-reg64 is :rbp." (string literal with null) 42 61 73 65 20 70 61 72 61 6d 65 74 65 72 20 74 6f 20 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 20 69 73 20 3a 72 62 70 2e 00 00 00 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 28 d6 04 08 00 00 00 00 ~ sys-exit (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ addressing-disp8-indexed-reg64 is defined here via the label transform; this is its entry header. c8 15 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label addressing-disp8-indexed-reg64 at offset 0x0000000000051780 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 38 10 05 08 00 00 00 00 ~ modrm (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 48 03 05 08 00 00 00 00 ~ scalefield (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) b0 10 05 08 00 00 00 00 ~ sib (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ cld is defined here via the label transform; this is its entry header. 50 17 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6c 64 00 00 00 ~ (alignment padding) ~ label cld at offset 0x0000000000051870 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) fc 00 00 00 00 00 00 00 ~ 0xfc (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ std is defined here via the label transform; this is its entry header. 60 18 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 74 64 00 00 00 ~ (alignment padding) ~ label std at offset 0x00000000000518a8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) fd 00 00 00 00 00 00 00 ~ 0xfd (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ syscall is defined here via the label transform; this is its entry header. 98 18 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 79 73 63 61 6c 6c 00 00 00 00 00 00 00 ~ (alignment padding) ~ label syscall at offset 0x00000000000518e8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ hlt is defined here via the label transform; this is its entry header. d0 18 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 68 6c 74 00 00 00 ~ (alignment padding) ~ label hlt at offset 0x0000000000051938 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f4 00 00 00 00 00 00 00 ~ 0xf4 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ push-reg64 is defined here via the label transform; this is its entry header. 28 19 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 75 73 68 2d 72 65 67 36 34 00 00 00 00 ~ (alignment padding) ~ label push-reg64 at offset 0x0000000000051978 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 50 00 00 00 00 00 00 00 ~ 0x50 (integer literal) d0 0f 05 08 00 00 00 00 ~ opcodereg (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ push-extrareg64 is defined here via the label transform; this is its entry header. 60 19 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 75 73 68 2d 65 78 74 72 61 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label push-extrareg64 at offset 0x00000000000519c8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 0c 05 08 00 00 00 00 ~ rex-b (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 f5 04 08 00 00 00 00 ~ extrareg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 50 00 00 00 00 00 00 00 ~ 0x50 (integer literal) d0 0f 05 08 00 00 00 00 ~ opcodereg (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pop-reg64 is defined here via the label transform; this is its entry header. a8 19 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 6f 70 2d 72 65 67 36 34 00 00 00 00 00 ~ (alignment padding) ~ label pop-reg64 at offset 0x0000000000051a28 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 58 00 00 00 00 00 00 00 ~ 0x58 (integer literal) d0 0f 05 08 00 00 00 00 ~ opcodereg (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pop-extrareg64 is defined here via the label transform; this is its entry header. 10 1a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 6f 70 2d 65 78 74 72 61 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label pop-extrareg64 at offset 0x0000000000051a78 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 0c 05 08 00 00 00 00 ~ rex-b (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 f5 04 08 00 00 00 00 ~ extrareg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 58 00 00 00 00 00 00 00 ~ 0x58 (integer literal) d0 0f 05 08 00 00 00 00 ~ opcodereg (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ push-imm32-extended64 is defined here via the label transform; this is its entry header. 58 1a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 75 73 68 2d 69 6d 6d 33 32 2d 65 78 74 65 6e 64 65 64 36 34 00 ~ (alignment padding) ~ label push-imm32-extended64 at offset 0x0000000000051ae0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 68 00 00 00 00 00 00 00 ~ 0x68 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 c9 04 08 00 00 00 00 ~ pack32 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lea-reg64-disp8-reg64 is defined here via the label transform; this is its entry header. c0 1a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 00 ~ (alignment padding) ~ label lea-reg64-disp8-reg64 at offset 0x0000000000051b40 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8d 00 00 00 00 00 00 00 ~ 0x8d (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lea-reg64-disp32-reg64 is defined here via the label transform; this is its entry header. 20 1b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label lea-reg64-disp32-reg64 at offset 0x0000000000051be0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8d 00 00 00 00 00 00 00 ~ 0x8d (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) c0 14 05 08 00 00 00 00 ~ addressing-disp32-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lea-reg64-indexed-reg64 is defined here via the label transform; this is its entry header. b8 1b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 65 61 2d 72 65 67 36 34 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label lea-reg64-indexed-reg64 at offset 0x0000000000051c80 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8d 00 00 00 00 00 00 00 ~ 0x8d (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 15 05 08 00 00 00 00 ~ addressing-indexed-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lea-reg64-disp8-indexed-reg64 is defined here via the label transform; this is its entry header. 58 1c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 ~ (alignment padding) ~ label lea-reg64-disp8-indexed-reg64 at offset 0x0000000000051d40 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8d 00 00 00 00 00 00 00 ~ 0x8d (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 80 17 05 08 00 00 00 00 ~ addressing-disp8-indexed-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg64-imm32 is defined here via the label transform; this is its entry header. 18 1d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 33 32 00 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg64-imm32 at offset 0x0000000000051e30 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c7 00 00 00 00 00 00 00 ~ 0xc7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 c9 04 08 00 00 00 00 ~ pack32 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg64-imm64 is defined here via the label transform; this is its entry header. 10 1e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg64-imm64 at offset 0x0000000000051ec0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) b8 00 00 00 00 00 00 00 ~ 0xb8 (integer literal) d0 0f 05 08 00 00 00 00 ~ opcodereg (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) a0 c8 04 08 00 00 00 00 ~ pack64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-extrareg64-imm64 is defined here via the label transform; this is its entry header. a0 1e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 65 78 74 72 61 72 65 67 36 34 2d 69 6d 6d 36 34 00 00 ~ (alignment padding) ~ label mov-extrareg64-imm64 at offset 0x0000000000051f38 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 90 0d 05 08 00 00 00 00 ~ rex-wb (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 f5 04 08 00 00 00 00 ~ extrareg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) b8 00 00 00 00 00 00 00 ~ 0xb8 (integer literal) d0 0f 05 08 00 00 00 00 ~ opcodereg (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) a0 c8 04 08 00 00 00 00 ~ pack64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg64-reg64 is defined here via the label transform; this is its entry header. 18 1f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg64-reg64 at offset 0x0000000000051fb0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-indirect-reg64-reg64 is defined here via the label transform; this is its entry header. 90 1f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-indirect-reg64-reg64 at offset 0x0000000000052038 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-disp8-reg64-reg64 is defined here via the label transform; this is its entry header. 10 20 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 36 34 00 ~ (alignment padding) ~ label mov-disp8-reg64-reg64 at offset 0x00000000000520b8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg64-indirect-reg64 is defined here via the label transform; this is its entry header. 98 20 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 36 34 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg64-indirect-reg64 at offset 0x0000000000052160 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg64-disp8-reg64 is defined here via the label transform; this is its entry header. 38 21 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 00 ~ (alignment padding) ~ label mov-reg64-disp8-reg64 at offset 0x00000000000521d8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg64-disp32-reg64 is defined here via the label transform; this is its entry header. b8 21 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg64-disp32-reg64 at offset 0x0000000000052278 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) c0 14 05 08 00 00 00 00 ~ addressing-disp32-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg64-indexed-reg64 is defined here via the label transform; this is its entry header. 50 22 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 36 34 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg64-indexed-reg64 at offset 0x0000000000052328 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 15 05 08 00 00 00 00 ~ addressing-indexed-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-indexed-reg64-reg64 is defined here via the label transform; this is its entry header. 00 23 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-indexed-reg64-reg64 at offset 0x00000000000523e8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 15 05 08 00 00 00 00 ~ addressing-indexed-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-indirect-reg64-reg32 is defined here via the label transform; this is its entry header. c0 23 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 33 32 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-indirect-reg64-reg32 at offset 0x00000000000524c0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 f8 04 08 00 00 00 00 ~ reg32 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-disp8-reg64-reg32 is defined here via the label transform; this is its entry header. 98 24 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 33 32 00 ~ (alignment padding) ~ label mov-disp8-reg64-reg32 at offset 0x0000000000052538 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) f0 f8 04 08 00 00 00 00 ~ reg32 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg32-indirect-reg64 is defined here via the label transform; this is its entry header. 18 25 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 33 32 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg32-indirect-reg64 at offset 0x00000000000525d8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) f0 f8 04 08 00 00 00 00 ~ reg32 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg32-disp8-reg64 is defined here via the label transform; this is its entry header. b0 25 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 33 32 2d 64 69 73 70 38 2d 72 65 67 36 34 00 ~ (alignment padding) ~ label mov-reg32-disp8-reg64 at offset 0x0000000000052648 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) f0 f8 04 08 00 00 00 00 ~ reg32 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-indirect-reg64-reg16 is defined here via the label transform; this is its entry header. 28 26 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 31 36 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-indirect-reg64-reg16 at offset 0x00000000000526e0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 60 fc 04 08 00 00 00 00 ~ reg16 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-disp8-reg64-reg16 is defined here via the label transform; this is its entry header. b8 26 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 31 36 00 ~ (alignment padding) ~ label mov-disp8-reg64-reg16 at offset 0x0000000000052770 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 89 00 00 00 00 00 00 00 ~ 0x89 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 60 fc 04 08 00 00 00 00 ~ reg16 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg16-indirect-reg64 is defined here via the label transform; this is its entry header. 50 27 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 31 36 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg16-indirect-reg64 at offset 0x0000000000052828 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 60 fc 04 08 00 00 00 00 ~ reg16 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg16-disp8-reg64 is defined here via the label transform; this is its entry header. 00 28 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 31 36 2d 64 69 73 70 38 2d 72 65 67 36 34 00 ~ (alignment padding) ~ label mov-reg16-disp8-reg64 at offset 0x00000000000528b0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8b 00 00 00 00 00 00 00 ~ 0x8b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 60 fc 04 08 00 00 00 00 ~ reg16 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-indirect-reg64-reg8 is defined here via the label transform; this is its entry header. 90 28 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 38 00 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-indirect-reg64-reg8 at offset 0x0000000000052960 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 88 00 00 00 00 00 00 00 ~ 0x88 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 ff 04 08 00 00 00 00 ~ reg8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-disp8-reg64-reg8 is defined here via the label transform; this is its entry header. 38 29 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 38 00 00 ~ (alignment padding) ~ label mov-disp8-reg64-reg8 at offset 0x00000000000529d8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 88 00 00 00 00 00 00 00 ~ 0x88 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) d0 ff 04 08 00 00 00 00 ~ reg8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg8-indirect-reg64 is defined here via the label transform; this is its entry header. b8 29 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 38 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label mov-reg8-indirect-reg64 at offset 0x0000000000052a78 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8a 00 00 00 00 00 00 00 ~ 0x8a (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) d0 ff 04 08 00 00 00 00 ~ reg8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg8-disp8-reg64 is defined here via the label transform; this is its entry header. 50 2a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 38 2d 64 69 73 70 38 2d 72 65 67 36 34 00 00 ~ (alignment padding) ~ label mov-reg8-disp8-reg64 at offset 0x0000000000052ae8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 8a 00 00 00 00 00 00 00 ~ 0x8a (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) d0 ff 04 08 00 00 00 00 ~ reg8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 13 05 08 00 00 00 00 ~ addressing-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mov-reg8-reg8 is defined here via the label transform; this is its entry header. c8 2a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 2d 72 65 67 38 2d 72 65 67 38 00 ~ (alignment padding) ~ label mov-reg8-reg8 at offset 0x0000000000052b70 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 88 00 00 00 00 00 00 00 ~ 0x88 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 ff 04 08 00 00 00 00 ~ reg8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 11 05 08 00 00 00 00 ~ addressing-reg8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ movs8 is defined here via the label transform; this is its entry header. 58 2b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 73 38 00 ~ (alignment padding) ~ label movs8 at offset 0x0000000000052bd8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a4 00 00 00 00 00 00 00 ~ 0xa4 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ movs16 is defined here via the label transform; this is its entry header. c8 2b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 73 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label movs16 at offset 0x0000000000052c18 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ movs32 is defined here via the label transform; this is its entry header. 00 2c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 73 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label movs32 at offset 0x0000000000052c70 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ movs64 is defined here via the label transform; this is its entry header. 58 2c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 6f 76 73 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label movs64 at offset 0x0000000000052cb0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-movs8 is defined here via the label transform; this is its entry header. 98 2c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 6d 6f 76 73 38 00 00 00 00 00 ~ (alignment padding) ~ label rep-movs8 at offset 0x0000000000052cf8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a4 00 00 00 00 00 00 00 ~ 0xa4 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-movs16 is defined here via the label transform; this is its entry header. e0 2c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 6d 6f 76 73 31 36 00 00 00 00 ~ (alignment padding) ~ label rep-movs16 at offset 0x0000000000052d50 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-movs32 is defined here via the label transform; this is its entry header. 38 2d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 6d 6f 76 73 33 32 00 00 00 00 ~ (alignment padding) ~ label rep-movs32 at offset 0x0000000000052dc0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-movs64 is defined here via the label transform; this is its entry header. a8 2d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 6d 6f 76 73 36 34 00 00 00 00 ~ (alignment padding) ~ label rep-movs64 at offset 0x0000000000052e18 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a5 00 00 00 00 00 00 00 ~ 0xa5 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lods8 is defined here via the label transform; this is its entry header. 00 2e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 64 73 38 00 ~ (alignment padding) ~ label lods8 at offset 0x0000000000052e70 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ac 00 00 00 00 00 00 00 ~ 0xac (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lods16 is defined here via the label transform; this is its entry header. 60 2e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 64 73 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label lods16 at offset 0x0000000000052eb0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lods32 is defined here via the label transform; this is its entry header. 98 2e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 64 73 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label lods32 at offset 0x0000000000052f08 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ lods64 is defined here via the label transform; this is its entry header. f0 2e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 64 73 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label lods64 at offset 0x0000000000052f48 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-lods8 is defined here via the label transform; this is its entry header. 30 2f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 6c 6f 64 73 38 00 00 00 00 00 ~ (alignment padding) ~ label rep-lods8 at offset 0x0000000000052f90 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ac 00 00 00 00 00 00 00 ~ 0xac (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-lods16 is defined here via the label transform; this is its entry header. 78 2f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 6c 6f 64 73 31 36 00 00 00 00 ~ (alignment padding) ~ label rep-lods16 at offset 0x0000000000052fe8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-lods32 is defined here via the label transform; this is its entry header. d0 2f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 6c 6f 64 73 33 32 00 00 00 00 ~ (alignment padding) ~ label rep-lods32 at offset 0x0000000000053058 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-lods64 is defined here via the label transform; this is its entry header. 40 30 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 6c 6f 64 73 36 34 00 00 00 00 ~ (alignment padding) ~ label rep-lods64 at offset 0x00000000000530b0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ad 00 00 00 00 00 00 00 ~ 0xad (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ stos8 is defined here via the label transform; this is its entry header. 98 30 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 74 6f 73 38 00 ~ (alignment padding) ~ label stos8 at offset 0x0000000000053108 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) aa 00 00 00 00 00 00 00 ~ 0xaa (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ stos16 is defined here via the label transform; this is its entry header. f8 30 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 74 6f 73 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label stos16 at offset 0x0000000000053148 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ stos32 is defined here via the label transform; this is its entry header. 30 31 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 74 6f 73 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label stos32 at offset 0x00000000000531a0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ stos64 is defined here via the label transform; this is its entry header. 88 31 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 74 6f 73 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label stos64 at offset 0x00000000000531e0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-stos8 is defined here via the label transform; this is its entry header. c8 31 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 73 74 6f 73 38 00 00 00 00 00 ~ (alignment padding) ~ label rep-stos8 at offset 0x0000000000053228 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) aa 00 00 00 00 00 00 00 ~ 0xaa (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-stos16 is defined here via the label transform; this is its entry header. 10 32 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 73 74 6f 73 31 36 00 00 00 00 ~ (alignment padding) ~ label rep-stos16 at offset 0x0000000000053280 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-stos32 is defined here via the label transform; this is its entry header. 68 32 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 73 74 6f 73 33 32 00 00 00 00 ~ (alignment padding) ~ label rep-stos32 at offset 0x00000000000532f0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rep-stos64 is defined here via the label transform; this is its entry header. d8 32 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 2d 73 74 6f 73 36 34 00 00 00 00 ~ (alignment padding) ~ label rep-stos64 at offset 0x0000000000053348 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ab 00 00 00 00 00 00 00 ~ 0xab (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ cmps8 is defined here via the label transform; this is its entry header. 30 33 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6d 70 73 38 00 ~ (alignment padding) ~ label cmps8 at offset 0x00000000000533a0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a6 00 00 00 00 00 00 00 ~ 0xa6 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ cmps16 is defined here via the label transform; this is its entry header. 90 33 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6d 70 73 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label cmps16 at offset 0x00000000000533e0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ cmps32 is defined here via the label transform; this is its entry header. c8 33 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6d 70 73 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label cmps32 at offset 0x0000000000053438 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ cmps64 is defined here via the label transform; this is its entry header. 20 34 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6d 70 73 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label cmps64 at offset 0x0000000000053478 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repz-cmps8 is defined here via the label transform; this is its entry header. 60 34 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 7a 2d 63 6d 70 73 38 00 00 00 00 ~ (alignment padding) ~ label repz-cmps8 at offset 0x00000000000534c0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a6 00 00 00 00 00 00 00 ~ 0xa6 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repz-cmps16 is defined here via the label transform; this is its entry header. a8 34 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 7a 2d 63 6d 70 73 31 36 00 00 00 ~ (alignment padding) ~ label repz-cmps16 at offset 0x0000000000053518 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repz-cmps32 is defined here via the label transform; this is its entry header. 00 35 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 7a 2d 63 6d 70 73 33 32 00 00 00 ~ (alignment padding) ~ label repz-cmps32 at offset 0x0000000000053588 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repz-cmps64 is defined here via the label transform; this is its entry header. 70 35 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 7a 2d 63 6d 70 73 36 34 00 00 00 ~ (alignment padding) ~ label repz-cmps64 at offset 0x00000000000535e0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repnz-cmps8 is defined here via the label transform; this is its entry header. c8 35 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 6e 7a 2d 63 6d 70 73 38 00 00 00 ~ (alignment padding) ~ label repnz-cmps8 at offset 0x0000000000053640 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a6 00 00 00 00 00 00 00 ~ 0xa6 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repnz-cmps16 is defined here via the label transform; this is its entry header. 28 36 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 6e 7a 2d 63 6d 70 73 31 36 00 00 ~ (alignment padding) ~ label repnz-cmps16 at offset 0x0000000000053698 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repnz-cmps32 is defined here via the label transform; this is its entry header. 80 36 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 6e 7a 2d 63 6d 70 73 33 32 00 00 ~ (alignment padding) ~ label repnz-cmps32 at offset 0x0000000000053708 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repnz-cmps64 is defined here via the label transform; this is its entry header. f0 36 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 6e 7a 2d 63 6d 70 73 36 34 00 00 ~ (alignment padding) ~ label repnz-cmps64 at offset 0x0000000000053760 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a7 00 00 00 00 00 00 00 ~ 0xa7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ scas8 is defined here via the label transform; this is its entry header. 48 37 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 63 61 73 38 00 ~ (alignment padding) ~ label scas8 at offset 0x00000000000537b8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) a8 00 00 00 00 00 00 00 ~ 0xa8 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ scas16 is defined here via the label transform; this is its entry header. a8 37 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 63 61 73 31 36 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label scas16 at offset 0x00000000000537f8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ scas32 is defined here via the label transform; this is its entry header. e0 37 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 63 61 73 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label scas32 at offset 0x0000000000053850 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ scas64 is defined here via the label transform; this is its entry header. 38 38 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 63 61 73 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label scas64 at offset 0x0000000000053890 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repz-scas8 is defined here via the label transform; this is its entry header. 78 38 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 7a 2d 73 63 61 73 38 00 00 00 00 ~ (alignment padding) ~ label repz-scas8 at offset 0x00000000000538d8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ae 00 00 00 00 00 00 00 ~ 0xae (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repz-scas16 is defined here via the label transform; this is its entry header. c0 38 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 7a 2d 73 63 61 73 31 36 00 00 00 ~ (alignment padding) ~ label repz-scas16 at offset 0x0000000000053930 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repz-scas32 is defined here via the label transform; this is its entry header. 18 39 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 7a 2d 73 63 61 73 33 32 00 00 00 ~ (alignment padding) ~ label repz-scas32 at offset 0x00000000000539a0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repz-scas64 is defined here via the label transform; this is its entry header. 88 39 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 7a 2d 73 63 61 73 36 34 00 00 00 ~ (alignment padding) ~ label repz-scas64 at offset 0x00000000000539f8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f3 00 00 00 00 00 00 00 ~ 0xf3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repnz-scas8 is defined here via the label transform; this is its entry header. e0 39 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 6e 7a 2d 73 63 61 73 38 00 00 00 ~ (alignment padding) ~ label repnz-scas8 at offset 0x0000000000053a58 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ae 00 00 00 00 00 00 00 ~ 0xae (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repnz-scas16 is defined here via the label transform; this is its entry header. 40 3a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 6e 7a 2d 73 63 61 73 31 36 00 00 ~ (alignment padding) ~ label repnz-scas16 at offset 0x0000000000053ab0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 66 00 00 00 00 00 00 00 ~ 0x66 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repnz-scas32 is defined here via the label transform; this is its entry header. 98 3a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 6e 7a 2d 73 63 61 73 33 32 00 00 ~ (alignment padding) ~ label repnz-scas32 at offset 0x0000000000053b20 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ repnz-scas64 is defined here via the label transform; this is its entry header. 08 3b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 70 6e 7a 2d 73 63 61 73 36 34 00 00 ~ (alignment padding) ~ label repnz-scas64 at offset 0x0000000000053b78 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f2 00 00 00 00 00 00 00 ~ 0xf2 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) af 00 00 00 00 00 00 00 ~ 0xaf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ add-reg64-reg64 is defined here via the label transform; this is its entry header. 60 3b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label add-reg64-reg64 at offset 0x0000000000053be0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ add-indirect-reg64-reg64 is defined here via the label transform; this is its entry header. c0 3b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label add-indirect-reg64-reg64 at offset 0x0000000000053c68 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ add-reg64-indirect-reg64 is defined here via the label transform; this is its entry header. 40 3c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 2d 72 65 67 36 34 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label add-reg64-indirect-reg64 at offset 0x0000000000053cf0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ add-reg64-imm8 is defined here via the label transform; this is its entry header. c8 3c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 64 64 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label add-reg64-imm8 at offset 0x0000000000053d68 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sub-reg64-reg64 is defined here via the label transform; this is its entry header. 48 3d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 75 62 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label sub-reg64-reg64 at offset 0x0000000000053df8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 2b 00 00 00 00 00 00 00 ~ 0x2b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sub-indirect-reg64-reg64 is defined here via the label transform; this is its entry header. d8 3d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 75 62 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label sub-indirect-reg64-reg64 at offset 0x0000000000053e78 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 2b 00 00 00 00 00 00 00 ~ 0x2b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sub-reg64-imm8 is defined here via the label transform; this is its entry header. 50 3e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 75 62 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label sub-reg64-imm8 at offset 0x0000000000053ef8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ sbb-reg64-imm8 is defined here via the label transform; this is its entry header. d8 3e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 62 62 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label sbb-reg64-imm8 at offset 0x0000000000053f88 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ mul-reg64 is defined here via the label transform; this is its entry header. 68 3f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6d 75 6c 2d 72 65 67 36 34 00 00 00 00 00 ~ (alignment padding) ~ label mul-reg64 at offset 0x0000000000054010 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f7 00 00 00 00 00 00 00 ~ 0xf7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ divmod-reg64 is defined here via the label transform; this is its entry header. f8 3f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 64 69 76 6d 6f 64 2d 72 65 67 36 34 00 00 ~ (alignment padding) ~ label divmod-reg64 at offset 0x0000000000054088 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f7 00 00 00 00 00 00 00 ~ 0xf7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ idivmod-reg64 is defined here via the label transform; this is its entry header. 70 40 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 69 64 69 76 6d 6f 64 2d 72 65 67 36 34 00 ~ (alignment padding) ~ label idivmod-reg64 at offset 0x0000000000054100 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f7 00 00 00 00 00 00 00 ~ 0xf7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ inc-reg64 is defined here via the label transform; this is its entry header. e8 40 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 69 6e 63 2d 72 65 67 36 34 00 00 00 00 00 ~ (alignment padding) ~ label inc-reg64 at offset 0x0000000000054178 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ dec-reg64 is defined here via the label transform; this is its entry header. 60 41 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 64 65 63 2d 72 65 67 36 34 00 00 00 00 00 ~ (alignment padding) ~ label dec-reg64 at offset 0x00000000000541f0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ and-reg64-reg64 is defined here via the label transform; this is its entry header. d8 41 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 6e 64 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label and-reg64-reg64 at offset 0x0000000000054270 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 23 00 00 00 00 00 00 00 ~ 0x23 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ and-reg64-imm8 is defined here via the label transform; this is its entry header. 50 42 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 61 6e 64 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label and-reg64-imm8 at offset 0x00000000000542e8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ or-reg64-reg64 is defined here via the label transform; this is its entry header. c8 42 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6f 72 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label or-reg64-reg64 at offset 0x0000000000054378 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0b 00 00 00 00 00 00 00 ~ 0xb (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ or-reg64-imm8 is defined here via the label transform; this is its entry header. 58 43 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6f 72 2d 72 65 67 36 34 2d 69 6d 6d 38 00 ~ (alignment padding) ~ label or-reg64-imm8 at offset 0x00000000000543e8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ xor-reg64-reg64 is defined here via the label transform; this is its entry header. d0 43 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 78 6f 72 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label xor-reg64-reg64 at offset 0x0000000000054478 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 33 00 00 00 00 00 00 00 ~ 0x33 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ not-reg64 is defined here via the label transform; this is its entry header. 58 44 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6e 6f 74 2d 72 65 67 36 34 00 00 00 00 00 ~ (alignment padding) ~ label not-reg64 at offset 0x00000000000544e8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f7 00 00 00 00 00 00 00 ~ 0xf7 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rol-reg64-imm8 is defined here via the label transform; this is its entry header. d0 44 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 6f 6c 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label rol-reg64-imm8 at offset 0x0000000000054568 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c1 00 00 00 00 00 00 00 ~ 0xc1 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ rol-reg8-imm8 is defined here via the label transform; this is its entry header. 48 45 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 6f 6c 2d 72 65 67 38 2d 69 6d 6d 38 00 ~ (alignment padding) ~ label rol-reg8-imm8 at offset 0x00000000000545f0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c0 00 00 00 00 00 00 00 ~ 0xc0 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 11 05 08 00 00 00 00 ~ addressing-reg8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ ror-reg64-imm8 is defined here via the label transform; this is its entry header. d8 45 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 6f 72 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label ror-reg64-imm8 at offset 0x0000000000054678 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c1 00 00 00 00 00 00 00 ~ 0xc1 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ ror-reg8-imm8 is defined here via the label transform; this is its entry header. 58 46 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 6f 72 2d 72 65 67 38 2d 69 6d 6d 38 00 ~ (alignment padding) ~ label ror-reg8-imm8 at offset 0x0000000000054700 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c0 00 00 00 00 00 00 00 ~ 0xc0 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ cmp-reg64-reg64 is defined here via the label transform; this is its entry header. e8 46 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6d 70 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 00 ~ (alignment padding) ~ label cmp-reg64-reg64 at offset 0x0000000000054788 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 3b 00 00 00 00 00 00 00 ~ 0x3b (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ cmp-reg64-imm8 is defined here via the label transform; this is its entry header. 68 47 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 6d 70 2d 72 65 67 36 34 2d 69 6d 6d 38 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label cmp-reg64-imm8 at offset 0x0000000000054800 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 83 00 00 00 00 00 00 00 ~ 0x83 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ test-reg64-reg64 is defined here via the label transform; this is its entry header. e0 47 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 74 65 73 74 2d 72 65 67 36 34 2d 72 65 67 36 34 00 00 00 00 00 00 ~ (alignment padding) ~ label test-reg64-reg64 at offset 0x0000000000054890 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 0c 05 08 00 00 00 00 ~ rex-w (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 85 00 00 00 00 00 00 00 ~ 0x85 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 f2 04 08 00 00 00 00 ~ reg64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 11 05 08 00 00 00 00 ~ addressing-reg64 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ set-reg8-cc is defined here via the label transform; this is its entry header. 70 48 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 73 65 74 2d 72 65 67 38 2d 63 63 00 00 00 ~ (alignment padding) ~ label set-reg8-cc at offset 0x0000000000054908 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 05 05 08 00 00 00 00 ~ condition-code (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 90 00 00 00 00 00 00 00 ~ 0x90 (integer literal) 08 10 05 08 00 00 00 00 ~ opcodecc (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 ff 04 08 00 00 00 00 ~ reg8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 38 10 05 08 00 00 00 00 ~ modrm (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ jmp-cc-rel-imm8 is defined here via the label transform; this is its entry header. f0 48 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6a 6d 70 2d 63 63 2d 72 65 6c 2d 69 6d 6d 38 00 00 00 00 00 00 00 ~ (alignment padding) ~ label jmp-cc-rel-imm8 at offset 0x00000000000549c0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 05 05 08 00 00 00 00 ~ condition-code (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 70 00 00 00 00 00 00 00 ~ 0x70 (integer literal) 08 10 05 08 00 00 00 00 ~ opcodecc (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ jmp-cc-rel-imm32 is defined here via the label transform; this is its entry header. a0 49 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6a 6d 70 2d 63 63 2d 72 65 6c 2d 69 6d 6d 33 32 00 00 00 00 00 00 ~ (alignment padding) ~ label jmp-cc-rel-imm32 at offset 0x0000000000054a30 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0f 00 00 00 00 00 00 00 ~ 0xf (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 05 05 08 00 00 00 00 ~ condition-code (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 70 00 00 00 00 00 00 00 ~ 0x70 (integer literal) 08 10 05 08 00 00 00 00 ~ opcodecc (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 c9 04 08 00 00 00 00 ~ pack32 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ jmp-abs-indirect-reg64 is defined here via the label transform; this is its entry header. 10 4a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6a 6d 70 2d 61 62 73 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label jmp-abs-indirect-reg64 at offset 0x0000000000054ac0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff 00 00 00 00 00 00 00 ~ 0xff (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) f0 11 05 08 00 00 00 00 ~ addressing-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ jmp-rel-imm8 is defined here via the label transform; this is its entry header. 98 4a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6a 6d 70 2d 72 65 6c 2d 69 6d 6d 38 00 00 ~ (alignment padding) ~ label jmp-rel-imm8 at offset 0x0000000000054b30 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) eb 00 00 00 00 00 00 00 ~ 0xeb (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ jmp-rel-imm32 is defined here via the label transform; this is its entry header. 18 4b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6a 6d 70 2d 72 65 6c 2d 69 6d 6d 33 32 00 ~ (alignment padding) ~ label jmp-rel-imm32 at offset 0x0000000000054b88 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) e9 00 00 00 00 00 00 00 ~ 0xe9 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 c9 04 08 00 00 00 00 ~ pack32 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ call-rel-imm32 is defined here via the label transform; this is its entry header. 70 4b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 63 61 6c 6c 2d 72 65 6c 2d 69 6d 6d 33 32 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label call-rel-imm32 at offset 0x0000000000054be8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) e8 00 00 00 00 00 00 00 ~ 0xe8 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 c9 04 08 00 00 00 00 ~ pack32 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ ret is defined here via the label transform; this is its entry header. c8 4b 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 72 65 74 00 00 00 ~ (alignment padding) ~ label ret at offset 0x0000000000054c38 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) c3 00 00 00 00 00 00 00 ~ 0xc3 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-next is defined here via the label transform; this is its entry header. 28 4c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 6e 65 78 74 00 00 00 00 00 ~ (alignment padding) ~ label pack-next at offset 0x0000000000054c78 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 48 2f 05 08 00 00 00 00 ~ lods64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c0 4a 05 08 00 00 00 00 ~ jmp-abs-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-beforenext is defined here via the label transform; this is its entry header. 60 4c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 62 65 66 6f 72 65 6e 65 78 74 00 00 00 00 00 00 00 ~ (alignment padding) ~ label pack-beforenext at offset 0x0000000000054cc0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c0 1e 05 08 00 00 00 00 ~ mov-reg64-imm64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c0 4a 05 08 00 00 00 00 ~ jmp-abs-indirect-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-pushcontrol is defined here via the label transform; this is its entry header. a0 4c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 70 75 73 68 63 6f 6e 74 72 6f 6c 00 00 00 00 00 00 ~ (alignment padding) ~ label pack-pushcontrol at offset 0x0000000000054d10 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) f8 ff ff ff ff ff ff ff ~ 0xfffffffffffffff8 (integer literal) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) 40 1b 05 08 00 00 00 00 ~ lea-reg64-disp8-reg64 ~ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) b8 20 05 08 00 00 00 00 ~ mov-disp8-reg64-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ pack-popcontrol is defined here via the label transform; this is its entry header. f0 4c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 70 61 63 6b 2d 70 6f 70 63 6f 6e 74 72 6f 6c 00 00 00 00 00 00 00 ~ (alignment padding) ~ label pack-popcontrol at offset 0x0000000000054d98 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) d8 21 05 08 00 00 00 00 ~ mov-reg64-disp8-reg64 ~ (codeword pointer) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 60 e9 04 08 00 00 00 00 ~ :rbp (codeword pointer) 40 1b 05 08 00 00 00 00 ~ lea-reg64-disp8-reg64 ~ (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-offset is defined here via the label transform; this is its entry header. 78 4d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6f 66 66 73 65 74 00 00 00 00 ~ (alignment padding) ~ label log-offset at offset 0x0000000000054e10 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 01 00 00 00 00 00 ~ 0x10000 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-log is defined here via the label transform; this is its entry header. f8 4d 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 6c 6f 67 00 00 ~ (alignment padding) ~ label log-load-log at offset 0x0000000000054e48 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 10 4e 05 08 00 00 00 00 ~ log-offset (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-s0 is defined here via the label transform; this is its entry header. 30 4e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 73 30 00 00 00 ~ (alignment padding) ~ label log-load-s0 at offset 0x0000000000054e88 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 10 4e 05 08 00 00 00 00 ~ log-offset (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-r0 is defined here via the label transform; this is its entry header. 70 4e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 72 30 00 00 00 ~ (alignment padding) ~ label log-load-r0 at offset 0x0000000000054ee0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 10 4e 05 08 00 00 00 00 ~ log-offset (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-latest is defined here via the label transform; this is its entry header. c8 4e 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 6c 61 74 65 73 74 00 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-latest at offset 0x0000000000054f58 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 10 4e 05 08 00 00 00 00 ~ log-offset (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-here is defined here via the label transform; this is its entry header. 38 4f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 00 ~ (alignment padding) ~ label log-load-here at offset 0x0000000000054fc8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 10 4e 05 08 00 00 00 00 ~ log-offset (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-find is defined here via the label transform; this is its entry header. b0 4f 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 00 ~ (alignment padding) ~ label log-load-find at offset 0x0000000000055038 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 58 4f 05 08 00 00 00 00 ~ log-load-latest (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 30 d3 04 08 00 00 00 00 ~ find-in (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-find-execution-token is defined here via the label transform; this is its entry header. 20 50 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 00 ~ (alignment padding) ~ label log-load-find-execution-token at offset 0x00000000000550a8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) f8 be 04 08 00 00 00 00 ~ != (codeword pointer) c8 c5 04 08 00 00 00 00 ~ 0branch (codeword pointer) 30 00 00 00 00 00 00 00 ~ 0x30 (branch offset) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) a0 c5 04 08 00 00 00 00 ~ branch (codeword pointer) 58 00 00 00 00 00 00 00 ~ 0x58 (branch offset) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "No such word: " (string literal with null) 4e 6f 20 73 75 63 68 20 77 6f 72 64 3a 20 00 00 ~ (alignment padding) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 70 d7 04 08 00 00 00 00 ~ emitstring (codeword pointer) 18 d8 04 08 00 00 00 00 ~ newline (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-create is defined here via the label transform; this is its entry header. 80 50 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 00 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-create at offset 0x0000000000055198 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 78 c4 04 08 00 00 00 00 ~ stringlen (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 01 00 00 00 00 00 00 00 ~ 0x1 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 0a 00 00 00 00 00 00 00 ~ 0xa (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 28 c4 04 08 00 00 00 00 ~ memmove (codeword pointer) 50 cf 04 08 00 00 00 00 ~ over (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 58 4f 05 08 00 00 00 00 ~ log-load-latest (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) a0 c8 04 08 00 00 00 00 ~ pack64 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) b8 c9 04 08 00 00 00 00 ~ pack8 (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 78 cb 04 08 00 00 00 00 ~ packalign (codeword pointer) 50 cf 04 08 00 00 00 00 ~ over (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 02 00 00 00 00 00 00 00 ~ 0x2 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 58 4f 05 08 00 00 00 00 ~ log-load-latest (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 50 cf 04 08 00 00 00 00 ~ over (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-self-codeword is defined here via the label transform; this is its entry header. 78 51 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-self-codeword at offset 0x00000000000553a8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) a0 c8 04 08 00 00 00 00 ~ pack64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-comma is defined here via the label transform; this is its entry header. 80 53 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-comma at offset 0x0000000000055428 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) a0 c8 04 08 00 00 00 00 ~ pack64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-semicolon-assembly is defined here via the label transform; this is its entry header. 08 54 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 00 00 00 ~ (alignment padding) ~ label log-load-semicolon-assembly at offset 0x00000000000554c0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 78 4c 05 08 00 00 00 00 ~ pack-next (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 78 cb 04 08 00 00 00 00 ~ packalign (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 58 4f 05 08 00 00 00 00 ~ log-load-latest (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-variable is defined here via the label transform; this is its entry header. 98 54 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 00 00 00 00 00 ~ (alignment padding) ~ label log-load-variable at offset 0x0000000000055590 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) a0 c8 04 08 00 00 00 00 ~ pack64 (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c0 1e 05 08 00 00 00 00 ~ mov-reg64-imm64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 78 4c 05 08 00 00 00 00 ~ pack-next (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 78 cb 04 08 00 00 00 00 ~ packalign (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-keyword is defined here via the label transform; this is its entry header. 70 55 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 6b 65 79 77 6f 72 64 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-keyword at offset 0x0000000000055680 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 98 51 05 08 00 00 00 00 ~ log-load-create (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) a0 c8 04 08 00 00 00 00 ~ pack64 (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) c0 1e 05 08 00 00 00 00 ~ mov-reg64-imm64 (codeword pointer) 98 e8 04 08 00 00 00 00 ~ :rax (codeword pointer) 78 19 05 08 00 00 00 00 ~ push-reg64 (codeword pointer) 78 4c 05 08 00 00 00 00 ~ pack-next (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 78 cb 04 08 00 00 00 00 ~ packalign (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-comma-string is defined here via the label transform; this is its entry header. 60 56 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2d 73 74 72 69 6e 67 00 ~ (alignment padding) ~ label log-load-comma-string at offset 0x0000000000055768 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 18 ca 04 08 00 00 00 00 ~ packstring (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 78 cb 04 08 00 00 00 00 ~ packalign (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-left-curly-brace is defined here via the label transform; this is its entry header. 48 57 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 6c 65 66 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 00 00 00 00 00 ~ (alignment padding) ~ label log-load-left-curly-brace at offset 0x0000000000055808 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-right-curly-brace is defined here via the label transform; this is its entry header. e0 57 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 72 69 67 68 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 00 00 00 00 ~ (alignment padding) ~ label log-load-right-curly-brace at offset 0x0000000000055858 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 00 be 04 08 00 00 00 00 ~ - (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-if is defined here via the label transform; this is its entry header. 30 58 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 69 66 00 00 00 ~ (alignment padding) ~ label log-load-if at offset 0x00000000000558d0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 c4 04 08 00 00 00 00 ~ memmove (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-unless is defined here via the label transform; this is its entry header. b8 58 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 6c 65 73 73 00 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-unless at offset 0x0000000000055af0 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 c4 04 08 00 00 00 00 ~ memmove (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "=" (string literal with null) 3d 00 00 00 00 00 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-if-else is defined here via the label transform; this is its entry header. d0 5a 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 69 66 2d 65 6c 73 65 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-if-else at offset 0x0000000000055d10 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 c4 04 08 00 00 00 00 ~ memmove (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) 88 cf 04 08 00 00 00 00 ~ pick (codeword pointer) 28 c4 04 08 00 00 00 00 ~ memmove (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 07 00 00 00 00 00 00 00 ~ 0x7 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-forever is defined here via the label transform; this is its entry header. f0 5c 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 66 6f 72 65 76 65 72 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-forever at offset 0x0000000000056110 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ log-load-while is defined here via the label transform; this is its entry header. f0 60 05 08 00 00 00 00 ~ (previous entry pointer) 00 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 6c 6f 67 2d 6c 6f 61 64 2d 77 68 69 6c 65 00 00 00 00 00 00 00 00 ~ (alignment padding) ~ label log-load-while at offset 0x00000000000561b8 is here. e0 bb 04 08 00 00 00 00 ~ (docol codeword) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) b0 bd 04 08 00 00 00 00 ~ 2dup (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 38 bd 04 08 00 00 00 00 ~ 3roll (codeword pointer) 28 c4 04 08 00 00 00 00 ~ memmove (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) f8 c1 04 08 00 00 00 00 ~ @ (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 04 00 00 00 00 00 00 00 ~ 0x4 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "lit" (string literal with null) 6c 69 74 00 00 00 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 00 00 00 00 00 00 00 00 ~ 0x0 (integer literal) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "!=" (string literal with null) 21 3d 00 00 00 00 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "0branch" (string literal with null) 30 62 72 61 6e 63 68 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 90 bd 04 08 00 00 00 00 ~ dup (codeword pointer) 68 bd 04 08 00 00 00 00 ~ 3unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 03 00 00 00 00 00 00 00 ~ 0x3 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) c8 4f 05 08 00 00 00 00 ~ log-load-here (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) b8 bc 04 08 00 00 00 00 ~ roll (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) d0 c1 04 08 00 00 00 00 ~ ! (codeword pointer) 98 c1 04 08 00 00 00 00 ~ litstring (codeword pointer) ~ "branch" (string literal with null) 62 72 61 6e 63 68 00 00 ~ (alignment padding) 38 50 05 08 00 00 00 00 ~ log-load-find (codeword pointer) 30 c6 04 08 00 00 00 00 ~ entry-to-execution-token ~ (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 05 00 00 00 00 00 00 00 ~ 0x5 (integer literal) f8 bc 04 08 00 00 00 00 ~ unroll (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 06 00 00 00 00 00 00 00 ~ 0x6 (integer literal) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) 08 00 00 00 00 00 00 00 ~ 0x8 (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) d8 bd 04 08 00 00 00 00 ~ + (codeword pointer) 58 bc 04 08 00 00 00 00 ~ swap (codeword pointer) 78 bc 04 08 00 00 00 00 ~ drop (codeword pointer) 70 c1 04 08 00 00 00 00 ~ lit (codeword pointer) ff ff ff ff ff ff ff ff ~ 0xffffffffffffffff (integer literal) 28 be 04 08 00 00 00 00 ~ * (codeword pointer) 28 54 05 08 00 00 00 00 ~ log-load-comma (codeword pointer) 30 bc 04 08 00 00 00 00 ~ exit (codeword pointer) ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ This is the start of the boot-source, which is Forth code included ~ as text, and invoked by the warm-start routine. At the time it runs, ~ the warm-start routine and the log-load routine have both completed and ~ the Forth execution environment is fully ready. ~ ~ The routine is stored as a dictionary entry with the "hidden" flag ~ set. It has a regular entry header up to, but not including, the ~ codeword. Then it has text, with a null terminator and alignment ~ padding at the end. ~ ~ Making this readable in the hex dump is no small task, but has been ~ valiantly attempted. 98 61 05 00 00 00 00 00 ~ (previous entry pointer) 80 ~ (entry flags) ~ bidirectional-null-terminated entry name 00 62 6f 6f 74 2d 73 6f 75 72 63 65 00 00 00 ~ (alignment padding) ~ label boot-source at offset 0x00000000000564d8 is here. ~ What follows is a long string literal. For convenience, its contents ~ are given in short runs, but it's all a single string. When possible, ~ runs are broken at line endings or word breaks. Trailing line endings ~ are not shown in the comments; look for them in the hex. ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ ~~ Machine label facility ~~" 7e 20 7e 7e 20 4d 61 63 68 69 6e 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 20 7e 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ Compilers and assemblers always have a need to resolve" ~ " symbolic names for" 7e 20 20 20 43 6f 6d 70 69 6c 65 72 73 20 61 6e 64 20 61 73 73 65 6d 62 6c 65 72 73 20 61 6c 77 61 79 73 20 68 61 76 65 20 61 20 6e 65 65 64 20 74 6f 20 72 65 73 6f 6c 76 65 20 73 79 6d 62 6f 6c 69 63 20 6e 61 6d 65 73 20 66 6f 72 0a ~ "~ parts of their code to numeric values. Usually, these" ~ " symbolic names are" 7e 20 70 61 72 74 73 20 6f 66 20 74 68 65 69 72 20 63 6f 64 65 20 74 6f 20 6e 75 6d 65 72 69 63 20 76 61 6c 75 65 73 2e 20 55 73 75 61 6c 6c 79 2c 20 74 68 65 73 65 20 73 79 6d 62 6f 6c 69 63 20 6e 61 6d 65 73 20 61 72 65 0a ~ "~ called labels." 7e 20 63 61 6c 6c 65 64 20 6c 61 62 65 6c 73 2e 0a ~ "~" 7e 0a ~ "~ It's a surprisingly deep problem. The output itself can" ~ " end up depending" 7e 20 20 20 49 74 27 73 20 61 20 73 75 72 70 72 69 73 69 6e 67 6c 79 20 64 65 65 70 20 70 72 6f 62 6c 65 6d 2e 20 54 68 65 20 6f 75 74 70 75 74 20 69 74 73 65 6c 66 20 63 61 6e 20 65 6e 64 20 75 70 20 64 65 70 65 6e 64 69 6e 67 0a ~ "~ on the actual values, for a variety of reasons. For" ~ " example, the size of" 7e 20 6f 6e 20 74 68 65 20 61 63 74 75 61 6c 20 76 61 6c 75 65 73 2c 20 66 6f 72 20 61 20 76 61 72 69 65 74 79 20 6f 66 20 72 65 61 73 6f 6e 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 73 69 7a 65 20 6f 66 0a ~ "~ a relative-jump instruction may vary depending on how far" ~ " away its target" 7e 20 61 20 72 65 6c 61 74 69 76 65 2d 6a 75 6d 70 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 6d 61 79 20 76 61 72 79 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 68 6f 77 20 66 61 72 20 61 77 61 79 20 69 74 73 20 74 61 72 67 65 74 0a ~ "~ is, which changes the position of everything after. Or," ~ " there may be a size" 7e 20 69 73 2c 20 77 68 69 63 68 20 63 68 61 6e 67 65 73 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 65 76 65 72 79 74 68 69 6e 67 20 61 66 74 65 72 2e 20 4f 72 2c 20 74 68 65 72 65 20 6d 61 79 20 62 65 20 61 20 73 69 7a 65 0a ~ "~ limit on some particular segment and code may have to be" ~ " entirely" 7e 20 6c 69 6d 69 74 20 6f 6e 20 73 6f 6d 65 20 70 61 72 74 69 63 75 6c 61 72 20 73 65 67 6d 65 6e 74 20 61 6e 64 20 63 6f 64 65 20 6d 61 79 20 68 61 76 65 20 74 6f 20 62 65 20 65 6e 74 69 72 65 6c 79 0a ~ "~ reorganized to make things fit, splitting it into pieces" ~ " or adding" 7e 20 72 65 6f 72 67 61 6e 69 7a 65 64 20 74 6f 20 6d 61 6b 65 20 74 68 69 6e 67 73 20 66 69 74 2c 20 73 70 6c 69 74 74 69 6e 67 20 69 74 20 69 6e 74 6f 20 70 69 65 63 65 73 20 6f 72 20 61 64 64 69 6e 67 0a ~ "~ trampolines." 7e 20 74 72 61 6d 70 6f 6c 69 6e 65 73 2e 0a ~ "~" 7e 0a ~ "~ Often, this winds up being a hidden layer with immense" ~ " complexity," 7e 20 20 20 4f 66 74 65 6e 2c 20 74 68 69 73 20 77 69 6e 64 73 20 75 70 20 62 65 69 6e 67 20 61 20 68 69 64 64 65 6e 20 6c 61 79 65 72 20 77 69 74 68 20 69 6d 6d 65 6e 73 65 20 63 6f 6d 70 6c 65 78 69 74 79 2c 0a ~ "~ implemented as part of a linker, that even compiler" ~ " maintainers find obscure" 7e 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 61 20 6c 69 6e 6b 65 72 2c 20 74 68 61 74 20 65 76 65 6e 20 63 6f 6d 70 69 6c 65 72 20 6d 61 69 6e 74 61 69 6e 65 72 73 20 66 69 6e 64 20 6f 62 73 63 75 72 65 0a ~ "~ and confusing." 7e 20 61 6e 64 20 63 6f 6e 66 75 73 69 6e 67 2e 0a ~ "~" 7e 0a ~ "~ It's Irenes' position that we should engage with" ~ " complexity rather than" 7e 20 20 20 49 74 27 73 20 49 72 65 6e 65 73 27 20 70 6f 73 69 74 69 6f 6e 20 74 68 61 74 20 77 65 20 73 68 6f 75 6c 64 20 65 6e 67 61 67 65 20 77 69 74 68 20 63 6f 6d 70 6c 65 78 69 74 79 20 72 61 74 68 65 72 20 74 68 61 6e 0a ~ "~ encysting it. So, in Evocation we take a different" ~ " approach, heavily" 7e 20 65 6e 63 79 73 74 69 6e 67 20 69 74 2e 20 53 6f 2c 20 69 6e 20 45 76 6f 63 61 74 69 6f 6e 20 77 65 20 74 61 6b 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 61 70 70 72 6f 61 63 68 2c 20 68 65 61 76 69 6c 79 0a ~ "~ inspired by the semantics of a tool called flatassembler." ~ " We provide" 7e 20 69 6e 73 70 69 72 65 64 20 62 79 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 20 6f 66 20 61 20 74 6f 6f 6c 20 63 61 6c 6c 65 64 20 66 6c 61 74 61 73 73 65 6d 62 6c 65 72 2e 20 57 65 20 70 72 6f 76 69 64 65 0a ~ "~ downstream code with the basic operations set-label and" ~ " use-label which it" 7e 20 64 6f 77 6e 73 74 72 65 61 6d 20 63 6f 64 65 20 77 69 74 68 20 74 68 65 20 62 61 73 69 63 20 6f 70 65 72 61 74 69 6f 6e 73 20 73 65 74 2d 6c 61 62 65 6c 20 61 6e 64 20 75 73 65 2d 6c 61 62 65 6c 20 77 68 69 63 68 20 69 74 0a ~ "~ can combine in whatever order it wants. We also provide a" ~ " harness," 7e 20 63 61 6e 20 63 6f 6d 62 69 6e 65 20 69 6e 20 77 68 61 74 65 76 65 72 20 6f 72 64 65 72 20 69 74 20 77 61 6e 74 73 2e 20 57 65 20 61 6c 73 6f 20 70 72 6f 76 69 64 65 20 61 20 68 61 72 6e 65 73 73 2c 0a ~ "~ label-loop, which takes an execution token for the" ~ " downstream code" 7e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2c 20 77 68 69 63 68 20 74 61 6b 65 73 20 61 6e 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 66 6f 72 20 74 68 65 20 64 6f 77 6e 73 74 72 65 61 6d 20 63 6f 64 65 0a ~ "~ generator and runs it over and over, computing the" ~ " mathematical fixed point" 7e 20 67 65 6e 65 72 61 74 6f 72 20 61 6e 64 20 72 75 6e 73 20 69 74 20 6f 76 65 72 20 61 6e 64 20 6f 76 65 72 2c 20 63 6f 6d 70 75 74 69 6e 67 20 74 68 65 20 6d 61 74 68 65 6d 61 74 69 63 61 6c 20 66 69 78 65 64 20 70 6f 69 6e 74 0a ~ "~ of the label assignments." 7e 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 20 61 73 73 69 67 6e 6d 65 6e 74 73 2e 0a ~ "~" 7e 0a ~ "~ On the first pass, label-loop guesses a value of zero" ~ " for any label that's" 7e 20 20 20 4f 6e 20 74 68 65 20 66 69 72 73 74 20 70 61 73 73 2c 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 67 75 65 73 73 65 73 20 61 20 76 61 6c 75 65 20 6f 66 20 7a 65 72 6f 20 66 6f 72 20 61 6e 79 20 6c 61 62 65 6c 20 74 68 61 74 27 73 0a ~ "~ used before it's set. On subsequent passes, each label" ~ " starts with the value" 7e 20 75 73 65 64 20 62 65 66 6f 72 65 20 69 74 27 73 20 73 65 74 2e 20 4f 6e 20 73 75 62 73 65 71 75 65 6e 74 20 70 61 73 73 65 73 2c 20 65 61 63 68 20 6c 61 62 65 6c 20 73 74 61 72 74 73 20 77 69 74 68 20 74 68 65 20 76 61 6c 75 65 0a ~ "~ it had on the previous pass. When we have a pass where" ~ " labels end with the" 7e 20 69 74 20 68 61 64 20 6f 6e 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 70 61 73 73 2e 20 57 68 65 6e 20 77 65 20 68 61 76 65 20 61 20 70 61 73 73 20 77 68 65 72 65 20 6c 61 62 65 6c 73 20 65 6e 64 20 77 69 74 68 20 74 68 65 0a ~ "~ same value they started with, we say they've converged," ~ " and we announce" 7e 20 73 61 6d 65 20 76 61 6c 75 65 20 74 68 65 79 20 73 74 61 72 74 65 64 20 77 69 74 68 2c 20 77 65 20 73 61 79 20 74 68 65 79 27 76 65 20 63 6f 6e 76 65 72 67 65 64 2c 20 61 6e 64 20 77 65 20 61 6e 6e 6f 75 6e 63 65 0a ~ "~ success. If a hundred passes go by without convergence," ~ " we fail instead." 7e 20 73 75 63 63 65 73 73 2e 20 49 66 20 61 20 68 75 6e 64 72 65 64 20 70 61 73 73 65 73 20 67 6f 20 62 79 20 77 69 74 68 6f 75 74 20 63 6f 6e 76 65 72 67 65 6e 63 65 2c 20 77 65 20 66 61 69 6c 20 69 6e 73 74 65 61 64 2e 0a ~ "~" 7e 0a ~ "~ Importantly, the label facility does not have an" ~ " opinion on where or how" 7e 20 20 20 49 6d 70 6f 72 74 61 6e 74 6c 79 2c 20 74 68 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 61 6e 20 6f 70 69 6e 69 6f 6e 20 6f 6e 20 77 68 65 72 65 20 6f 72 20 68 6f 77 0a ~ "~ the values of labels should be output, nor does it have" ~ " concepts of" 7e 20 74 68 65 20 76 61 6c 75 65 73 20 6f 66 20 6c 61 62 65 6c 73 20 73 68 6f 75 6c 64 20 62 65 20 6f 75 74 70 75 74 2c 20 6e 6f 72 20 64 6f 65 73 20 69 74 20 68 61 76 65 20 63 6f 6e 63 65 70 74 73 20 6f 66 0a ~ "~ dependency tracking or topological sorting. It only cares" ~ " about the sequence" 7e 20 64 65 70 65 6e 64 65 6e 63 79 20 74 72 61 63 6b 69 6e 67 20 6f 72 20 74 6f 70 6f 6c 6f 67 69 63 61 6c 20 73 6f 72 74 69 6e 67 2e 20 49 74 20 6f 6e 6c 79 20 63 61 72 65 73 20 61 62 6f 75 74 20 74 68 65 20 73 65 71 75 65 6e 63 65 0a ~ "~ of set- and use-operations. Code relying on the facility" ~ " is free to make" 7e 20 6f 66 20 73 65 74 2d 20 61 6e 64 20 75 73 65 2d 6f 70 65 72 61 74 69 6f 6e 73 2e 20 43 6f 64 65 20 72 65 6c 79 69 6e 67 20 6f 6e 20 74 68 65 20 66 61 63 69 6c 69 74 79 20 69 73 20 66 72 65 65 20 74 6f 20 6d 61 6b 65 0a ~ "~ arbitrarily complex decisions about the layout, size," ~ " contents etc of its" 7e 20 61 72 62 69 74 72 61 72 69 6c 79 20 63 6f 6d 70 6c 65 78 20 64 65 63 69 73 69 6f 6e 73 20 61 62 6f 75 74 20 74 68 65 20 6c 61 79 6f 75 74 2c 20 73 69 7a 65 2c 20 63 6f 6e 74 65 6e 74 73 20 65 74 63 20 6f 66 20 69 74 73 0a ~ "~ output, and to use label values as part of those" ~ " decisions. It is the" 7e 20 6f 75 74 70 75 74 2c 20 61 6e 64 20 74 6f 20 75 73 65 20 6c 61 62 65 6c 20 76 61 6c 75 65 73 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 6f 73 65 20 64 65 63 69 73 69 6f 6e 73 2e 20 49 74 20 69 73 20 74 68 65 0a ~ "~ responsibility of this relying code to ensure the process" ~ " converges, by" 7e 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 6f 66 20 74 68 69 73 20 72 65 6c 79 69 6e 67 20 63 6f 64 65 20 74 6f 20 65 6e 73 75 72 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 63 6f 6e 76 65 72 67 65 73 2c 20 62 79 0a ~ "~ whatever means it wishes." 7e 20 77 68 61 74 65 76 65 72 20 6d 65 61 6e 73 20 69 74 20 77 69 73 68 65 73 2e 0a ~ "~" 7e 0a ~ "~ Since the label facility is not directly involved in" ~ " output, it is also" 7e 20 20 20 53 69 6e 63 65 20 74 68 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 20 69 73 20 6e 6f 74 20 64 69 72 65 63 74 6c 79 20 69 6e 76 6f 6c 76 65 64 20 69 6e 20 6f 75 74 70 75 74 2c 20 69 74 20 69 73 20 61 6c 73 6f 0a ~ "~ permissible for code relying on it to make retroactive" ~ " changes to the" 7e 20 70 65 72 6d 69 73 73 69 62 6c 65 20 66 6f 72 20 63 6f 64 65 20 72 65 6c 79 69 6e 67 20 6f 6e 20 69 74 20 74 6f 20 6d 61 6b 65 20 72 65 74 72 6f 61 63 74 69 76 65 20 63 68 61 6e 67 65 73 20 74 6f 20 74 68 65 0a ~ "~ output, as long as all such changes are completed before" ~ " returning control" 7e 20 6f 75 74 70 75 74 2c 20 61 73 20 6c 6f 6e 67 20 61 73 20 61 6c 6c 20 73 75 63 68 20 63 68 61 6e 67 65 73 20 61 72 65 20 63 6f 6d 70 6c 65 74 65 64 20 62 65 66 6f 72 65 20 72 65 74 75 72 6e 69 6e 67 20 63 6f 6e 74 72 6f 6c 0a ~ "~ to label-loop." 7e 20 74 6f 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2e 0a ~ "~" 7e 0a ~ "~ Most of the time, the shorthand words L@' and L!' will" ~ " be all you need to" 7e 20 20 20 4d 6f 73 74 20 6f 66 20 74 68 65 20 74 69 6d 65 2c 20 74 68 65 20 73 68 6f 72 74 68 61 6e 64 20 77 6f 72 64 73 20 4c 40 27 20 61 6e 64 20 4c 21 27 20 77 69 6c 6c 20 62 65 20 61 6c 6c 20 79 6f 75 20 6e 65 65 64 20 74 6f 0a ~ "~ use from your own code." 7e 20 75 73 65 20 66 72 6f 6d 20 79 6f 75 72 20 6f 77 6e 20 63 6f 64 65 2e 0a ~ "" 0a ~ "~ The labels data structure is a linked list of" ~ " dictionary entries, with" 7e 20 20 20 54 68 65 20 6c 61 62 65 6c 73 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 69 73 20 61 20 6c 69 6e 6b 65 64 20 6c 69 73 74 20 6f 66 20 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 69 65 73 2c 20 77 69 74 68 0a ~ "~ the same header format as the main Evocation dictionary," ~ " but instead of" 7e 20 74 68 65 20 73 61 6d 65 20 68 65 61 64 65 72 20 66 6f 72 6d 61 74 20 61 73 20 74 68 65 20 6d 61 69 6e 20 45 76 6f 63 61 74 69 6f 6e 20 64 69 63 74 69 6f 6e 61 72 79 2c 20 62 75 74 20 69 6e 73 74 65 61 64 20 6f 66 0a ~ "~ being executable, each holds two words of data: status" ~ " bits, and a value," 7e 20 62 65 69 6e 67 20 65 78 65 63 75 74 61 62 6c 65 2c 20 65 61 63 68 20 68 6f 6c 64 73 20 74 77 6f 20 77 6f 72 64 73 20 6f 66 20 64 61 74 61 3a 20 73 74 61 74 75 73 20 62 69 74 73 2c 20 61 6e 64 20 61 20 76 61 6c 75 65 2c 0a ~ "~ in that order. There's no "docol" pointer or anything of" ~ " the sort." 7e 20 69 6e 20 74 68 61 74 20 6f 72 64 65 72 2e 20 54 68 65 72 65 27 73 20 6e 6f 20 22 64 6f 63 6f 6c 22 20 70 6f 69 6e 74 65 72 20 6f 72 20 61 6e 79 74 68 69 6e 67 20 6f 66 20 74 68 65 20 73 6f 72 74 2e 0a ~ "~" 7e 0a ~ "~ Status is a bit field:" 7e 20 20 20 53 74 61 74 75 73 20 69 73 20 61 20 62 69 74 20 66 69 65 6c 64 3a 0a ~ "~ bit zero is whether it's been used" 7e 20 20 20 20 62 69 74 20 7a 65 72 6f 20 69 73 20 77 68 65 74 68 65 72 20 69 74 27 73 20 62 65 65 6e 20 75 73 65 64 0a ~ "~ bit one is whether it's been defined" 7e 20 20 20 20 62 69 74 20 6f 6e 65 20 69 73 20 77 68 65 74 68 65 72 20 69 74 27 73 20 62 65 65 6e 20 64 65 66 69 6e 65 64 0a ~ "~ bit two is whether it was used before being defined" 7e 20 20 20 20 62 69 74 20 74 77 6f 20 69 73 20 77 68 65 74 68 65 72 20 69 74 20 77 61 73 20 75 73 65 64 20 62 65 66 6f 72 65 20 62 65 69 6e 67 20 64 65 66 69 6e 65 64 0a ~ "~ bit three is whether the guessed value wound up" ~ " equaling the actual value" 7e 20 20 20 20 62 69 74 20 74 68 72 65 65 20 69 73 20 77 68 65 74 68 65 72 20 74 68 65 20 67 75 65 73 73 65 64 20 76 61 6c 75 65 20 77 6f 75 6e 64 20 75 70 20 65 71 75 61 6c 69 6e 67 20 74 68 65 20 61 63 74 75 61 6c 20 76 61 6c 75 65 0a ~ "~" 7e 0a ~ "~ Just as the Evocation dictionary uses the global" ~ " variable "latest" as a" 7e 20 20 20 4a 75 73 74 20 61 73 20 74 68 65 20 45 76 6f 63 61 74 69 6f 6e 20 64 69 63 74 69 6f 6e 61 72 79 20 75 73 65 73 20 74 68 65 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 22 6c 61 74 65 73 74 22 20 61 73 20 61 0a ~ "~ handle (a pointer to a pointer) beginning a linked list" ~ " of entries, so the" 7e 20 68 61 6e 64 6c 65 20 28 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 29 20 62 65 67 69 6e 6e 69 6e 67 20 61 20 6c 69 6e 6b 65 64 20 6c 69 73 74 20 6f 66 20 65 6e 74 72 69 65 73 2c 20 73 6f 20 74 68 65 0a ~ "~ label dictionary also uses a handle variable, named" ~ " "labels". We initialize" 7e 20 6c 61 62 65 6c 20 64 69 63 74 69 6f 6e 61 72 79 20 61 6c 73 6f 20 75 73 65 73 20 61 20 68 61 6e 64 6c 65 20 76 61 72 69 61 62 6c 65 2c 20 6e 61 6d 65 64 20 22 6c 61 62 65 6c 73 22 2e 20 57 65 20 69 6e 69 74 69 61 6c 69 7a 65 0a ~ "~ it here." 7e 20 69 74 20 68 65 72 65 2e 0a ~ "8 allocate s" labels" variable 0 labels !" 38 20 61 6c 6c 6f 63 61 74 65 20 73 22 20 6c 61 62 65 6c 73 22 20 76 61 72 69 61 62 6c 65 20 30 20 6c 61 62 65 6c 73 20 21 0a ~ "" 0a ~ "~ This is analogous to word-heading, but prints label" ~ " information." 7e 20 20 20 54 68 69 73 20 69 73 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 77 6f 72 64 2d 68 65 61 64 69 6e 67 2c 20 62 75 74 20 70 72 69 6e 74 73 20 6c 61 62 65 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ "~ (entry pointer --)" 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": label-heading" 3a 20 6c 61 62 65 6c 2d 68 65 61 64 69 6e 67 0a ~ " dup entry-to-name dup emitstring space" 20 20 64 75 70 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 64 75 70 20 65 6d 69 74 73 74 72 69 6e 67 20 73 70 61 63 65 0a ~ " stringlen 1+ 54 swap - 0 max indent" 20 20 73 74 72 69 6e 67 6c 65 6e 20 31 2b 20 35 34 20 73 77 61 70 20 2d 20 30 20 6d 61 78 20 69 6e 64 65 6e 74 0a ~ " entry-to-execution-token dup 8 + @ .hex64 space @ .hex8" 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 64 75 70 20 38 20 2b 20 40 20 2e 68 65 78 36 34 20 73 70 61 63 65 20 40 20 2e 68 65 78 38 0a ~ " newline ;" 20 20 6e 65 77 6c 69 6e 65 20 3b 0a ~ "" 0a ~ "~ This prints the headings for all the labels that have" ~ " been created. Note" 7e 20 20 20 54 68 69 73 20 70 72 69 6e 74 73 20 74 68 65 20 68 65 61 64 69 6e 67 73 20 66 6f 72 20 61 6c 6c 20 74 68 65 20 6c 61 62 65 6c 73 20 74 68 61 74 20 68 61 76 65 20 62 65 65 6e 20 63 72 65 61 74 65 64 2e 20 4e 6f 74 65 0a ~ "~ that labels that have been created once stay in the" ~ " dictionary forever, even" 7e 20 74 68 61 74 20 6c 61 62 65 6c 73 20 74 68 61 74 20 68 61 76 65 20 62 65 65 6e 20 63 72 65 61 74 65 64 20 6f 6e 63 65 20 73 74 61 79 20 69 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 66 6f 72 65 76 65 72 2c 20 65 76 65 6e 0a ~ "~ if subsequent passes neither use nor define them. That's" ~ " because the control" 7e 20 69 66 20 73 75 62 73 65 71 75 65 6e 74 20 70 61 73 73 65 73 20 6e 65 69 74 68 65 72 20 75 73 65 20 6e 6f 72 20 64 65 66 69 6e 65 20 74 68 65 6d 2e 20 54 68 61 74 27 73 20 62 65 63 61 75 73 65 20 74 68 65 20 63 6f 6e 74 72 6f 6c 0a ~ "~ loop has no way to know if they're still important; it's" ~ " up to downstream" 7e 20 6c 6f 6f 70 20 68 61 73 20 6e 6f 20 77 61 79 20 74 6f 20 6b 6e 6f 77 20 69 66 20 74 68 65 79 27 72 65 20 73 74 69 6c 6c 20 69 6d 70 6f 72 74 61 6e 74 3b 20 69 74 27 73 20 75 70 20 74 6f 20 64 6f 77 6e 73 74 72 65 61 6d 0a ~ "~ code to decide that. Everything has been carefully set up" ~ " so that disused" 7e 20 63 6f 64 65 20 74 6f 20 64 65 63 69 64 65 20 74 68 61 74 2e 20 45 76 65 72 79 74 68 69 6e 67 20 68 61 73 20 62 65 65 6e 20 63 61 72 65 66 75 6c 6c 79 20 73 65 74 20 75 70 20 73 6f 20 74 68 61 74 20 64 69 73 75 73 65 64 0a ~ "~ labels don't hurt anything." 7e 20 6c 61 62 65 6c 73 20 64 6f 6e 27 74 20 68 75 72 74 20 61 6e 79 74 68 69 6e 67 2e 0a ~ ": list-labels" 3a 20 6c 69 73 74 2d 6c 61 62 65 6c 73 0a ~ " labels oldest-entry-in { dup }" 20 20 6c 61 62 65 6c 73 20 6f 6c 64 65 73 74 2d 65 6e 74 72 79 2d 69 6e 20 7b 20 64 75 70 20 7d 0a ~ " { dup label-heading labels next-newer-entry-in } while" ~ " drop ;" 20 20 7b 20 64 75 70 20 6c 61 62 65 6c 2d 68 65 61 64 69 6e 67 20 6c 61 62 65 6c 73 20 6e 65 78 74 2d 6e 65 77 65 72 2d 65 6e 74 72 79 2d 69 6e 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "~ This looks up a label by name if it exists, or returns" ~ " 0 if it doesn't." 7e 20 20 20 54 68 69 73 20 6c 6f 6f 6b 73 20 75 70 20 61 20 6c 61 62 65 6c 20 62 79 20 6e 61 6d 65 20 69 66 20 69 74 20 65 78 69 73 74 73 2c 20 6f 72 20 72 65 74 75 72 6e 73 20 30 20 69 66 20 69 74 20 64 6f 65 73 6e 27 74 2e 0a ~ "~ The return value if it's found is an entry pointer." 7e 20 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 66 20 69 74 27 73 20 66 6f 75 6e 64 20 69 73 20 61 6e 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2e 0a ~ "~" 7e 0a ~ "~ Keep in mind that this is a pointer to the entry in the" ~ " label dictionary," 7e 20 20 20 4b 65 65 70 20 69 6e 20 6d 69 6e 64 20 74 68 61 74 20 74 68 69 73 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 6c 61 62 65 6c 20 64 69 63 74 69 6f 6e 61 72 79 2c 0a ~ "~ not the label's value. It's common for a label's value to" ~ " itself be a" 7e 20 6e 6f 74 20 74 68 65 20 6c 61 62 65 6c 27 73 20 76 61 6c 75 65 2e 20 49 74 27 73 20 63 6f 6d 6d 6f 6e 20 66 6f 72 20 61 20 6c 61 62 65 6c 27 73 20 76 61 6c 75 65 20 74 6f 20 69 74 73 65 6c 66 20 62 65 20 61 0a ~ "~ pointer to a dictionary entry, in the program being" ~ " compiled, so it's easy" 7e 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 79 2c 20 69 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 2c 20 73 6f 20 69 74 27 73 20 65 61 73 79 0a ~ "~ to confuse that." 7e 20 74 6f 20 63 6f 6e 66 75 73 65 20 74 68 61 74 2e 0a ~ "~" 7e 0a ~ "~ (name string pointer -- label entry pointer)" 7e 20 28 6e 61 6d 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 20 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ ": find-label labels swap find-in ;" 3a 20 66 69 6e 64 2d 6c 61 62 65 6c 20 6c 61 62 65 6c 73 20 73 77 61 70 20 66 69 6e 64 2d 69 6e 20 3b 0a ~ "" 0a ~ "~ This creates a new label given a name for it," ~ " initializing its value and" 7e 20 20 20 54 68 69 73 20 63 72 65 61 74 65 73 20 61 20 6e 65 77 20 6c 61 62 65 6c 20 67 69 76 65 6e 20 61 20 6e 61 6d 65 20 66 6f 72 20 69 74 2c 20 69 6e 69 74 69 61 6c 69 7a 69 6e 67 20 69 74 73 20 76 61 6c 75 65 20 61 6e 64 0a ~ "~ status to zero and adding it to the label dictionary." ~ " This is responsible" 7e 20 73 74 61 74 75 73 20 74 6f 20 7a 65 72 6f 20 61 6e 64 20 61 64 64 69 6e 67 20 69 74 20 74 6f 20 74 68 65 20 6c 61 62 65 6c 20 64 69 63 74 69 6f 6e 61 72 79 2e 20 54 68 69 73 20 69 73 20 72 65 73 70 6f 6e 73 69 62 6c 65 0a ~ "~ for the initial guess of zero on the first pass." 7e 20 66 6f 72 20 74 68 65 20 69 6e 69 74 69 61 6c 20 67 75 65 73 73 20 6f 66 20 7a 65 72 6f 20 6f 6e 20 74 68 65 20 66 69 72 73 74 20 70 61 73 73 2e 0a ~ "~" 7e 0a ~ "~ (name string pointer -- )" 7e 20 28 6e 61 6d 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 20 29 0a ~ ": new-label labels create-in 0 , 0 , ;" 3a 20 6e 65 77 2d 6c 61 62 65 6c 20 6c 61 62 65 6c 73 20 63 72 65 61 74 65 2d 69 6e 20 30 20 2c 20 30 20 2c 20 3b 0a ~ "" 0a ~ "~ These helpers take a label entry pointer and return" ~ " pointers to the status" 7e 20 20 20 54 68 65 73 65 20 68 65 6c 70 65 72 73 20 74 61 6b 65 20 61 20 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 61 6e 64 20 72 65 74 75 72 6e 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 20 73 74 61 74 75 73 0a ~ "~ and value fields." 7e 20 61 6e 64 20 76 61 6c 75 65 20 66 69 65 6c 64 73 2e 0a ~ ": label-status entry-to-execution-token ;" 3a 20 6c 61 62 65 6c 2d 73 74 61 74 75 73 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 3b 0a ~ ": label-value entry-to-execution-token 8 + ;" 3a 20 6c 61 62 65 6c 2d 76 61 6c 75 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 38 20 2b 20 3b 0a ~ "" 0a ~ "~ This looks up a label by name if it exists, or creates" ~ " it if it doesn't." 7e 20 20 20 54 68 69 73 20 6c 6f 6f 6b 73 20 75 70 20 61 20 6c 61 62 65 6c 20 62 79 20 6e 61 6d 65 20 69 66 20 69 74 20 65 78 69 73 74 73 2c 20 6f 72 20 63 72 65 61 74 65 73 20 69 74 20 69 66 20 69 74 20 64 6f 65 73 6e 27 74 2e 0a ~ "~ Either way, it returns an entry pointer. It's named after" ~ " the function" 7e 20 45 69 74 68 65 72 20 77 61 79 2c 20 69 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2e 20 49 74 27 73 20 6e 61 6d 65 64 20 61 66 74 65 72 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 0a ~ "~ "intern" that many Lisp dialects have." 7e 20 22 69 6e 74 65 72 6e 22 20 74 68 61 74 20 6d 61 6e 79 20 4c 69 73 70 20 64 69 61 6c 65 63 74 73 20 68 61 76 65 2e 0a ~ "~" 7e 0a ~ "~ (name string pointer -- label entry pointer)" 7e 20 28 6e 61 6d 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 20 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ ": intern-label" 3a 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 0a ~ " dup find-label" 20 20 64 75 70 20 66 69 6e 64 2d 6c 61 62 65 6c 0a ~ " dup { swap drop }" 20 20 64 75 70 20 7b 20 73 77 61 70 20 64 72 6f 70 20 7d 0a ~ " { drop dup new-label labels swap find-in } if-else ;" 20 20 20 20 20 20 7b 20 64 72 6f 70 20 64 75 70 20 6e 65 77 2d 6c 61 62 65 6c 20 6c 61 62 65 6c 73 20 73 77 61 70 20 66 69 6e 64 2d 69 6e 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "~ This returns the value of a label, also doing all" ~ " necessary status checks" 7e 20 20 20 54 68 69 73 20 72 65 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 61 20 6c 61 62 65 6c 2c 20 61 6c 73 6f 20 64 6f 69 6e 67 20 61 6c 6c 20 6e 65 63 65 73 73 61 72 79 20 73 74 61 74 75 73 20 63 68 65 63 6b 73 0a ~ "~ and updates to keep track of the circumstances under" ~ " which it was used. The" 7e 20 61 6e 64 20 75 70 64 61 74 65 73 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 74 68 65 20 63 69 72 63 75 6d 73 74 61 6e 63 65 73 20 75 6e 64 65 72 20 77 68 69 63 68 20 69 74 20 77 61 73 20 75 73 65 64 2e 20 54 68 65 0a ~ "~ label loop relies on all read accesses going through this" ~ " word." 7e 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 72 65 6c 69 65 73 20 6f 6e 20 61 6c 6c 20 72 65 61 64 20 61 63 63 65 73 73 65 73 20 67 6f 69 6e 67 20 74 68 72 6f 75 67 68 20 74 68 69 73 20 77 6f 72 64 2e 0a ~ "~" 7e 0a ~ "~ (label entry pointer -- label value)" 7e 20 28 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 20 6c 61 62 65 6c 20 76 61 6c 75 65 29 0a ~ ": use-label" 3a 20 75 73 65 2d 6c 61 62 65 6c 0a ~ " ~ If it hasn't been defined yet, mark it" ~ " used-before-set." 20 20 7e 20 49 66 20 69 74 20 68 61 73 6e 27 74 20 62 65 65 6e 20 64 65 66 69 6e 65 64 20 79 65 74 2c 20 6d 61 72 6b 20 69 74 20 75 73 65 64 2d 62 65 66 6f 72 65 2d 73 65 74 2e 0a ~ " dup label-status dup @ dup 0x02 & not" 20 20 64 75 70 20 6c 61 62 65 6c 2d 73 74 61 74 75 73 20 64 75 70 20 40 20 64 75 70 20 30 78 30 32 20 26 20 6e 6f 74 0a ~ " { 0x04 | swap ! } { drop drop } if-else" 20 20 7b 20 30 78 30 34 20 7c 20 73 77 61 70 20 21 20 7d 20 7b 20 64 72 6f 70 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " ~ Mark it used. It's faster to just do this than to check" ~ " if it's needed." 20 20 7e 20 4d 61 72 6b 20 69 74 20 75 73 65 64 2e 20 49 74 27 73 20 66 61 73 74 65 72 20 74 6f 20 6a 75 73 74 20 64 6f 20 74 68 69 73 20 74 68 61 6e 20 74 6f 20 63 68 65 63 6b 20 69 66 20 69 74 27 73 20 6e 65 65 64 65 64 2e 0a ~ " dup label-status dup @ 0x01 | swap !" 20 20 64 75 70 20 6c 61 62 65 6c 2d 73 74 61 74 75 73 20 64 75 70 20 40 20 30 78 30 31 20 7c 20 73 77 61 70 20 21 0a ~ "" 0a ~ " ~ TODO putting a provide-label magic comment command here" ~ " would be lovely" 20 20 7e 20 54 4f 44 4f 20 70 75 74 74 69 6e 67 20 61 20 70 72 6f 76 69 64 65 2d 6c 61 62 65 6c 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 63 6f 6d 6d 61 6e 64 20 68 65 72 65 20 77 6f 75 6c 64 20 62 65 20 6c 6f 76 65 6c 79 0a ~ "" 0a ~ " ~ Return the guessed value." 20 20 7e 20 52 65 74 75 72 6e 20 74 68 65 20 67 75 65 73 73 65 64 20 76 61 6c 75 65 2e 0a ~ " label-value @ ;" 20 20 6c 61 62 65 6c 2d 76 61 6c 75 65 20 40 20 3b 0a ~ "" 0a ~ "~ This overwrites the value of a label, also doing all" ~ " necessary status" 7e 20 20 20 54 68 69 73 20 6f 76 65 72 77 72 69 74 65 73 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 61 20 6c 61 62 65 6c 2c 20 61 6c 73 6f 20 64 6f 69 6e 67 20 61 6c 6c 20 6e 65 63 65 73 73 61 72 79 20 73 74 61 74 75 73 0a ~ "~ checks and updates to keep track of the cirumstances" ~ " under which it was" 7e 20 63 68 65 63 6b 73 20 61 6e 64 20 75 70 64 61 74 65 73 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 74 68 65 20 63 69 72 75 6d 73 74 61 6e 63 65 73 20 75 6e 64 65 72 20 77 68 69 63 68 20 69 74 20 77 61 73 0a ~ "~ set. The label loop relies on all write accesses going" ~ " through this word." 7e 20 73 65 74 2e 20 54 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 72 65 6c 69 65 73 20 6f 6e 20 61 6c 6c 20 77 72 69 74 65 20 61 63 63 65 73 73 65 73 20 67 6f 69 6e 67 20 74 68 72 6f 75 67 68 20 74 68 69 73 20 77 6f 72 64 2e 0a ~ "~" 7e 0a ~ "~ (new label value, label entry pointer --)" 7e 20 28 6e 65 77 20 6c 61 62 65 6c 20 76 61 6c 75 65 2c 20 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": set-label" 3a 20 73 65 74 2d 6c 61 62 65 6c 0a ~ " dup label-status @" 20 20 64 75 70 20 6c 61 62 65 6c 2d 73 74 61 74 75 73 20 40 0a ~ " ~ (new value, entry, initial status)" 20 20 7e 20 28 6e 65 77 20 76 61 6c 75 65 2c 20 65 6e 74 72 79 2c 20 69 6e 69 74 69 61 6c 20 73 74 61 74 75 73 29 0a ~ "" 0a ~ " ~ Exit, and print a diagnostic, if the label was" ~ " already set on this pass." 20 20 7e 20 20 20 45 78 69 74 2c 20 61 6e 64 20 70 72 69 6e 74 20 61 20 64 69 61 67 6e 6f 73 74 69 63 2c 20 69 66 20 74 68 65 20 6c 61 62 65 6c 20 77 61 73 20 61 6c 72 65 61 64 79 20 73 65 74 20 6f 6e 20 74 68 69 73 20 70 61 73 73 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Without cooperation from user code, there's no great" ~ " way to communicate" 20 20 7e 20 20 20 57 69 74 68 6f 75 74 20 63 6f 6f 70 65 72 61 74 69 6f 6e 20 66 72 6f 6d 20 75 73 65 72 20 63 6f 64 65 2c 20 74 68 65 72 65 27 73 20 6e 6f 20 67 72 65 61 74 20 77 61 79 20 74 6f 20 63 6f 6d 6d 75 6e 69 63 61 74 65 0a ~ " ~ up the call stack that execution should stop, so we" ~ " don't try to." 20 20 7e 20 75 70 20 74 68 65 20 63 61 6c 6c 20 73 74 61 63 6b 20 74 68 61 74 20 65 78 65 63 75 74 69 6f 6e 20 73 68 6f 75 6c 64 20 73 74 6f 70 2c 20 73 6f 20 77 65 20 64 6f 6e 27 74 20 74 72 79 20 74 6f 2e 0a ~ " dup 0x02 & { drop swap drop" 20 20 64 75 70 20 30 78 30 32 20 26 20 7b 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 0a ~ " ." Failed by attempting to redefine "" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 22 20 46 61 69 6c 65 64 20 62 79 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 72 65 64 65 66 69 6e 65 20 22 0a ~ " entry-to-name emitstring newline exit } if" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 65 6d 69 74 73 74 72 69 6e 67 20 6e 65 77 6c 69 6e 65 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ We always set the defined bit to true. We leave the" ~ " other status bits" 20 20 7e 20 57 65 20 61 6c 77 61 79 73 20 73 65 74 20 74 68 65 20 64 65 66 69 6e 65 64 20 62 69 74 20 74 6f 20 74 72 75 65 2e 20 57 65 20 6c 65 61 76 65 20 74 68 65 20 6f 74 68 65 72 20 73 74 61 74 75 73 20 62 69 74 73 0a ~ " ~ as-is, except that we check whether it's unused up to" ~ " now, and whether" 20 20 7e 20 61 73 2d 69 73 2c 20 65 78 63 65 70 74 20 74 68 61 74 20 77 65 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 69 74 27 73 20 75 6e 75 73 65 64 20 75 70 20 74 6f 20 6e 6f 77 2c 20 61 6e 64 20 77 68 65 74 68 65 72 0a ~ " ~ the previous value equals the new value. If either of" ~ " those holds, we set" 20 20 7e 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 76 61 6c 75 65 20 65 71 75 61 6c 73 20 74 68 65 20 6e 65 77 20 76 61 6c 75 65 2e 20 49 66 20 65 69 74 68 65 72 20 6f 66 20 74 68 6f 73 65 20 68 6f 6c 64 73 2c 20 77 65 20 73 65 74 0a ~ " ~ the guessed-equals-actual bit to true." 20 20 7e 20 74 68 65 20 67 75 65 73 73 65 64 2d 65 71 75 61 6c 73 2d 61 63 74 75 61 6c 20 62 69 74 20 74 6f 20 74 72 75 65 2e 0a ~ " 0x02 |" 20 20 30 78 30 32 20 7c 0a ~ " ~ (new value, entry, updated status)" 20 20 7e 20 28 6e 65 77 20 76 61 6c 75 65 2c 20 65 6e 74 72 79 2c 20 75 70 64 61 74 65 64 20 73 74 61 74 75 73 29 0a ~ " 3unroll dup 4 unroll label-value @ swap dup 3unroll =" 20 20 33 75 6e 72 6f 6c 6c 20 64 75 70 20 34 20 75 6e 72 6f 6c 6c 20 6c 61 62 65 6c 2d 76 61 6c 75 65 20 40 20 73 77 61 70 20 64 75 70 20 33 75 6e 72 6f 6c 6c 20 3d 0a ~ " ~ (entry, updated status, new value, equality)" 20 20 7e 20 28 65 6e 74 72 79 2c 20 75 70 64 61 74 65 64 20 73 74 61 74 75 73 2c 20 6e 65 77 20 76 61 6c 75 65 2c 20 65 71 75 61 6c 69 74 79 29 0a ~ " 3roll dup 4 unroll 0x01 & not" 20 20 33 72 6f 6c 6c 20 64 75 70 20 34 20 75 6e 72 6f 6c 6c 20 30 78 30 31 20 26 20 6e 6f 74 0a ~ " ~ (entry, updated status, new value, equality, unused)" 20 20 7e 20 28 65 6e 74 72 79 2c 20 75 70 64 61 74 65 64 20 73 74 61 74 75 73 2c 20 6e 65 77 20 76 61 6c 75 65 2c 20 65 71 75 61 6c 69 74 79 2c 20 75 6e 75 73 65 64 29 0a ~ " || { swap 0x08 | swap } if" 20 20 7c 7c 20 7b 20 73 77 61 70 20 30 78 30 38 20 7c 20 73 77 61 70 20 7d 20 69 66 0a ~ " ~ (entry, updated status, new value)" 20 20 7e 20 28 65 6e 74 72 79 2c 20 75 70 64 61 74 65 64 20 73 74 61 74 75 73 2c 20 6e 65 77 20 76 61 6c 75 65 29 0a ~ " 3roll dup 3unroll" 20 20 33 72 6f 6c 6c 20 64 75 70 20 33 75 6e 72 6f 6c 6c 0a ~ " ~ (updated status, entry, new value, entry)" 20 20 7e 20 28 75 70 64 61 74 65 64 20 73 74 61 74 75 73 2c 20 65 6e 74 72 79 2c 20 6e 65 77 20 76 61 6c 75 65 2c 20 65 6e 74 72 79 29 0a ~ " label-value ! label-status ! ;" 20 20 6c 61 62 65 6c 2d 76 61 6c 75 65 20 21 20 6c 61 62 65 6c 2d 73 74 61 74 75 73 20 21 20 3b 0a ~ "" 0a ~ "~ Since labels have dictionary entry headers but aren't" ~ " in the main" 7e 20 20 20 53 69 6e 63 65 20 6c 61 62 65 6c 73 20 68 61 76 65 20 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 79 20 68 65 61 64 65 72 73 20 62 75 74 20 61 72 65 6e 27 74 20 69 6e 20 74 68 65 20 6d 61 69 6e 0a ~ "~ dictionary, we get to use the entry flag bits for other" ~ " things. The only one" 7e 20 64 69 63 74 69 6f 6e 61 72 79 2c 20 77 65 20 67 65 74 20 74 6f 20 75 73 65 20 74 68 65 20 65 6e 74 72 79 20 66 6c 61 67 20 62 69 74 73 20 66 6f 72 20 6f 74 68 65 72 20 74 68 69 6e 67 73 2e 20 54 68 65 20 6f 6e 6c 79 20 6f 6e 65 0a ~ "~ we have right now is a feature that acts as a hint to" ~ " anything trying to" 7e 20 77 65 20 68 61 76 65 20 72 69 67 68 74 20 6e 6f 77 20 69 73 20 61 20 66 65 61 74 75 72 65 20 74 68 61 74 20 61 63 74 73 20 61 73 20 61 20 68 69 6e 74 20 74 6f 20 61 6e 79 74 68 69 6e 67 20 74 72 79 69 6e 67 20 74 6f 0a ~ "~ display metadata about labels, to the effect that this" ~ " one represents" 7e 20 64 69 73 70 6c 61 79 20 6d 65 74 61 64 61 74 61 20 61 62 6f 75 74 20 6c 61 62 65 6c 73 2c 20 74 6f 20 74 68 65 20 65 66 66 65 63 74 20 74 68 61 74 20 74 68 69 73 20 6f 6e 65 20 72 65 70 72 65 73 65 6e 74 73 0a ~ "~ something other than an offset in the file." 7e 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 61 6e 20 6f 66 66 73 65 74 20 69 6e 20 74 68 65 20 66 69 6c 65 2e 0a ~ "~" 7e 0a ~ "~ (label entry pointer --)" 7e 20 28 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": set-label-non-offset dup entry-flags@ 0x01 | swap" ~ " entry-flags! ;" 3a 20 73 65 74 2d 6c 61 62 65 6c 2d 6e 6f 6e 2d 6f 66 66 73 65 74 20 64 75 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 30 31 20 7c 20 73 77 61 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 21 20 3b 0a ~ "~ (label entry pointer -- boolean)" 7e 20 28 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 20 62 6f 6f 6c 65 61 6e 29 0a ~ ": is-label-non-offset entry-flags@ 0x01 & ;" 3a 20 69 73 2d 6c 61 62 65 6c 2d 6e 6f 6e 2d 6f 66 66 73 65 74 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 30 31 20 26 20 3b 0a ~ "" 0a ~ "~ This is a convenience helper which downstream code can" ~ " use to check how" 7e 20 20 20 54 68 69 73 20 69 73 20 61 20 63 6f 6e 76 65 6e 69 65 6e 63 65 20 68 65 6c 70 65 72 20 77 68 69 63 68 20 64 6f 77 6e 73 74 72 65 61 6d 20 63 6f 64 65 20 63 61 6e 20 75 73 65 20 74 6f 20 63 68 65 63 6b 20 68 6f 77 0a ~ "~ many bytes it has output thus-far." 7e 20 6d 61 6e 79 20 62 79 74 65 73 20 69 74 20 68 61 73 20 6f 75 74 70 75 74 20 74 68 75 73 2d 66 61 72 2e 0a ~ "~ (output memory start, current output point" 7e 20 28 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 0a ~ "~ -- output memory start, current output point, offset)" 7e 20 20 2d 2d 20 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 66 66 73 65 74 29 0a ~ ": current-offset 2dup swap - ;" 3a 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 32 64 75 70 20 73 77 61 70 20 2d 20 3b 0a ~ "" 0a ~ "~ This is a concise syntax for referencing the entry" ~ " pointer of a label," 7e 20 20 20 54 68 69 73 20 69 73 20 61 20 63 6f 6e 63 69 73 65 20 73 79 6e 74 61 78 20 66 6f 72 20 72 65 66 65 72 65 6e 63 69 6e 67 20 74 68 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 66 20 61 20 6c 61 62 65 6c 2c 0a ~ "~ when you know its name statically. It reads a word of" ~ " text input and calls" 7e 20 77 68 65 6e 20 79 6f 75 20 6b 6e 6f 77 20 69 74 73 20 6e 61 6d 65 20 73 74 61 74 69 63 61 6c 6c 79 2e 20 49 74 20 72 65 61 64 73 20 61 20 77 6f 72 64 20 6f 66 20 74 65 78 74 20 69 6e 70 75 74 20 61 6e 64 20 63 61 6c 6c 73 0a ~ "~ intern-label on it." 7e 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 20 6f 6e 20 69 74 2e 0a ~ ": L'" 3a 20 4c 27 0a ~ " word value@" 20 20 77 6f 72 64 20 76 61 6c 75 65 40 0a ~ " interpreter-flags @ 0x01 &" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 0a ~ " { ' litstring entry-to-execution-token ," 20 20 7b 20 27 20 6c 69 74 73 74 72 69 6e 67 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " here @ swap packstring 8 packalign here !" 20 20 20 20 68 65 72 65 20 40 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " ' intern-label entry-to-execution-token ," 20 20 20 20 27 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " dropstring }" 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 20 7d 0a ~ " { intern-label dropstring-with-result } if-else" 20 20 7b 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "~ This is a concise syntax for calling use-label with a" ~ " label whose name" 7e 20 20 20 54 68 69 73 20 69 73 20 61 20 63 6f 6e 63 69 73 65 20 73 79 6e 74 61 78 20 66 6f 72 20 63 61 6c 6c 69 6e 67 20 75 73 65 2d 6c 61 62 65 6c 20 77 69 74 68 20 61 20 6c 61 62 65 6c 20 77 68 6f 73 65 20 6e 61 6d 65 0a ~ "~ you know statically. It performs L', then calls" ~ " use-label." 7e 20 79 6f 75 20 6b 6e 6f 77 20 73 74 61 74 69 63 61 6c 6c 79 2e 20 49 74 20 70 65 72 66 6f 72 6d 73 20 4c 27 2c 20 74 68 65 6e 20 63 61 6c 6c 73 20 75 73 65 2d 6c 61 62 65 6c 2e 0a ~ ": L@'" 3a 20 4c 40 27 0a ~ " ' L' entry-to-execution-token execute" 20 20 27 20 4c 27 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " interpreter-flags @ 1 &" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 31 20 26 0a ~ " { ' use-label entry-to-execution-token , }" 20 20 20 20 7b 20 27 20 75 73 65 2d 6c 61 62 65 6c 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 7d 0a ~ " { use-label } if-else" 20 20 20 20 7b 20 75 73 65 2d 6c 61 62 65 6c 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "~ This is a concise syntax for calling set-label with a" ~ " label whose name" 7e 20 20 20 54 68 69 73 20 69 73 20 61 20 63 6f 6e 63 69 73 65 20 73 79 6e 74 61 78 20 66 6f 72 20 63 61 6c 6c 69 6e 67 20 73 65 74 2d 6c 61 62 65 6c 20 77 69 74 68 20 61 20 6c 61 62 65 6c 20 77 68 6f 73 65 20 6e 61 6d 65 0a ~ "~ you know statically. It performs L', then calls" ~ " set-label." 7e 20 79 6f 75 20 6b 6e 6f 77 20 73 74 61 74 69 63 61 6c 6c 79 2e 20 49 74 20 70 65 72 66 6f 72 6d 73 20 4c 27 2c 20 74 68 65 6e 20 63 61 6c 6c 73 20 73 65 74 2d 6c 61 62 65 6c 2e 0a ~ ": L!'" 3a 20 4c 21 27 0a ~ " ' L' entry-to-execution-token execute" 20 20 27 20 4c 27 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " interpreter-flags @ 1 &" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 31 20 26 0a ~ " { ' set-label entry-to-execution-token , }" 20 20 20 20 7b 20 27 20 73 65 74 2d 6c 61 62 65 6c 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 7d 0a ~ " { set-label } if-else" 20 20 20 20 7b 20 73 65 74 2d 6c 61 62 65 6c 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "~ This is an internal helper that label-loop uses to" ~ " check if a specific" 7e 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20 68 65 6c 70 65 72 20 74 68 61 74 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 75 73 65 73 20 74 6f 20 63 68 65 63 6b 20 69 66 20 61 20 73 70 65 63 69 66 69 63 0a ~ "~ label entry has "converged", based on its status bits." ~ " Downstream code won't" 7e 20 6c 61 62 65 6c 20 65 6e 74 72 79 20 68 61 73 20 22 63 6f 6e 76 65 72 67 65 64 22 2c 20 62 61 73 65 64 20 6f 6e 20 69 74 73 20 73 74 61 74 75 73 20 62 69 74 73 2e 20 44 6f 77 6e 73 74 72 65 61 6d 20 63 6f 64 65 20 77 6f 6e 27 74 0a ~ "~ need to call this directly." 7e 20 6e 65 65 64 20 74 6f 20 63 61 6c 6c 20 74 68 69 73 20 64 69 72 65 63 74 6c 79 2e 0a ~ "~" 7e 0a ~ "~ For a label to have "converged", at least one of the" ~ " following must be" 7e 20 20 20 46 6f 72 20 61 20 6c 61 62 65 6c 20 74 6f 20 68 61 76 65 20 22 63 6f 6e 76 65 72 67 65 64 22 2c 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6d 75 73 74 20 62 65 0a ~ "~ true:" 7e 20 74 72 75 65 3a 0a ~ "~" 7e 0a ~ "~ 1. The label must never have been used (bit zero clear);" 7e 20 31 2e 20 54 68 65 20 6c 61 62 65 6c 20 6d 75 73 74 20 6e 65 76 65 72 20 68 61 76 65 20 62 65 65 6e 20 75 73 65 64 20 28 62 69 74 20 7a 65 72 6f 20 63 6c 65 61 72 29 3b 0a ~ "~ 2. The label was both used and defined, but not used" ~ " before it was defined" 7e 20 32 2e 20 54 68 65 20 6c 61 62 65 6c 20 77 61 73 20 62 6f 74 68 20 75 73 65 64 20 61 6e 64 20 64 65 66 69 6e 65 64 2c 20 62 75 74 20 6e 6f 74 20 75 73 65 64 20 62 65 66 6f 72 65 20 69 74 20 77 61 73 20 64 65 66 69 6e 65 64 0a ~ "~ (bits zero and one set; bit two clear);" 7e 20 20 20 20 28 62 69 74 73 20 7a 65 72 6f 20 61 6e 64 20 6f 6e 65 20 73 65 74 3b 20 62 69 74 20 74 77 6f 20 63 6c 65 61 72 29 3b 0a ~ "~ 3. The label was both used and defined, and the guessed" ~ " value equalled the" 7e 20 33 2e 20 54 68 65 20 6c 61 62 65 6c 20 77 61 73 20 62 6f 74 68 20 75 73 65 64 20 61 6e 64 20 64 65 66 69 6e 65 64 2c 20 61 6e 64 20 74 68 65 20 67 75 65 73 73 65 64 20 76 61 6c 75 65 20 65 71 75 61 6c 6c 65 64 20 74 68 65 0a ~ "~ actual value (bits zero, one, and three set)." 7e 20 20 20 20 61 63 74 75 61 6c 20 76 61 6c 75 65 20 28 62 69 74 73 20 7a 65 72 6f 2c 20 6f 6e 65 2c 20 61 6e 64 20 74 68 72 65 65 20 73 65 74 29 2e 0a ~ "~" 7e 0a ~ "~ (label entry pointer -- boolean)" 7e 20 28 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 20 62 6f 6f 6c 65 61 6e 29 0a ~ ": check-label-converged" 3a 20 63 68 65 63 6b 2d 6c 61 62 65 6c 2d 63 6f 6e 76 65 72 67 65 64 0a ~ " label-status @" 20 20 6c 61 62 65 6c 2d 73 74 61 74 75 73 20 40 0a ~ " dup 0x01 & not swap" 20 20 64 75 70 20 30 78 30 31 20 26 20 6e 6f 74 20 73 77 61 70 0a ~ " dup 0x03 & 0x03 = swap dup 0x04 & not swap 3unroll &&" ~ " swap" 20 20 64 75 70 20 30 78 30 33 20 26 20 30 78 30 33 20 3d 20 73 77 61 70 20 64 75 70 20 30 78 30 34 20 26 20 6e 6f 74 20 73 77 61 70 20 33 75 6e 72 6f 6c 6c 20 26 26 20 73 77 61 70 0a ~ " 0x0b & 0x0b =" 20 20 30 78 30 62 20 26 20 30 78 30 62 20 3d 0a ~ " || || ;" 20 20 7c 7c 20 7c 7c 20 3b 0a ~ "" 0a ~ "~ This is an internal helper that label-loop uses to" ~ " check if the overall" 7e 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20 68 65 6c 70 65 72 20 74 68 61 74 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 75 73 65 73 20 74 6f 20 63 68 65 63 6b 20 69 66 20 74 68 65 20 6f 76 65 72 61 6c 6c 0a ~ "~ label assignments have converged, based on their status" ~ " bits. Downstream" 7e 20 6c 61 62 65 6c 20 61 73 73 69 67 6e 6d 65 6e 74 73 20 68 61 76 65 20 63 6f 6e 76 65 72 67 65 64 2c 20 62 61 73 65 64 20 6f 6e 20 74 68 65 69 72 20 73 74 61 74 75 73 20 62 69 74 73 2e 20 44 6f 77 6e 73 74 72 65 61 6d 0a ~ "~ code won't need to call this directly." 7e 20 63 6f 64 65 20 77 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 63 61 6c 6c 20 74 68 69 73 20 64 69 72 65 63 74 6c 79 2e 0a ~ "~" 7e 0a ~ "~ This returns true if and only if check-label-converged" ~ " returns true for" 7e 20 20 20 54 68 69 73 20 72 65 74 75 72 6e 73 20 74 72 75 65 20 69 66 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 63 68 65 63 6b 2d 6c 61 62 65 6c 2d 63 6f 6e 76 65 72 67 65 64 20 72 65 74 75 72 6e 73 20 74 72 75 65 20 66 6f 72 0a ~ "~ all the labels that have been created." 7e 20 61 6c 6c 20 74 68 65 20 6c 61 62 65 6c 73 20 74 68 61 74 20 68 61 76 65 20 62 65 65 6e 20 63 72 65 61 74 65 64 2e 0a ~ "~" 7e 0a ~ "~ (-- boolean)" 7e 20 28 2d 2d 20 62 6f 6f 6c 65 61 6e 29 0a ~ ": check-labels-converged" 3a 20 63 68 65 63 6b 2d 6c 61 62 65 6c 73 2d 63 6f 6e 76 65 72 67 65 64 0a ~ " 1" 20 20 31 0a ~ " labels @ { dup }" 20 20 6c 61 62 65 6c 73 20 40 20 7b 20 64 75 70 20 7d 0a ~ " { dup check-label-converged 3roll && swap" 20 20 7b 20 64 75 70 20 63 68 65 63 6b 2d 6c 61 62 65 6c 2d 63 6f 6e 76 65 72 67 65 64 20 33 72 6f 6c 6c 20 26 26 20 73 77 61 70 0a ~ " @ } while drop ;" 20 20 20 20 40 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "~ This is an internal helper that label-loop calls" ~ " between passes, to update" 7e 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20 68 65 6c 70 65 72 20 74 68 61 74 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 63 61 6c 6c 73 20 62 65 74 77 65 65 6e 20 70 61 73 73 65 73 2c 20 74 6f 20 75 70 64 61 74 65 0a ~ "~ the status bits and get ready for the next one." ~ " Downstream code won't need" 7e 20 74 68 65 20 73 74 61 74 75 73 20 62 69 74 73 20 61 6e 64 20 67 65 74 20 72 65 61 64 79 20 66 6f 72 20 74 68 65 20 6e 65 78 74 20 6f 6e 65 2e 20 44 6f 77 6e 73 74 72 65 61 6d 20 63 6f 64 65 20 77 6f 6e 27 74 20 6e 65 65 64 0a ~ "~ to call this directly." 7e 20 74 6f 20 63 61 6c 6c 20 74 68 69 73 20 64 69 72 65 63 74 6c 79 2e 0a ~ "~" 7e 0a ~ ": reset-labels" 3a 20 72 65 73 65 74 2d 6c 61 62 65 6c 73 0a ~ " labels @ { dup }" 20 20 6c 61 62 65 6c 73 20 40 20 7b 20 64 75 70 20 7d 0a ~ " { dup label-status 0 swap !" 20 20 7b 20 64 75 70 20 6c 61 62 65 6c 2d 73 74 61 74 75 73 20 30 20 73 77 61 70 20 21 0a ~ " @ } while drop ;" 20 20 20 20 40 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "~ This is the top-level word that invokes the entire" ~ " label system. All the" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 77 6f 72 64 20 74 68 61 74 20 69 6e 76 6f 6b 65 73 20 74 68 65 20 65 6e 74 69 72 65 20 6c 61 62 65 6c 20 73 79 73 74 65 6d 2e 20 41 6c 6c 20 74 68 65 0a ~ "~ code generation happens inside it." 7e 20 63 6f 64 65 20 67 65 6e 65 72 61 74 69 6f 6e 20 68 61 70 70 65 6e 73 20 69 6e 73 69 64 65 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ The execution token it's passed should have the" ~ " interface:" 7e 20 20 20 54 68 65 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 69 74 27 73 20 70 61 73 73 65 64 20 73 68 6f 75 6c 64 20 68 61 76 65 20 74 68 65 20 69 6e 74 65 72 66 61 63 65 3a 0a ~ "~" 7e 0a ~ "~ (output start, current output pointer" 7e 20 20 20 20 20 28 6f 75 74 70 75 74 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 65 72 0a ~ "~ -- output start, current output pointer)" 7e 20 20 20 20 20 20 2d 2d 20 6f 75 74 70 75 74 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 65 72 29 0a ~ "~" 7e 0a ~ "~ In general, this is the same interface that code" ~ " generation words should" 7e 20 20 20 49 6e 20 67 65 6e 65 72 61 6c 2c 20 74 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 69 6e 74 65 72 66 61 63 65 20 74 68 61 74 20 63 6f 64 65 20 67 65 6e 65 72 61 74 69 6f 6e 20 77 6f 72 64 73 20 73 68 6f 75 6c 64 0a ~ "~ use to communicate with each other. For example, all the" ~ " words in" 7e 20 75 73 65 20 74 6f 20 63 6f 6d 6d 75 6e 69 63 61 74 65 20 77 69 74 68 20 65 61 63 68 20 6f 74 68 65 72 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 61 6c 6c 20 74 68 65 20 77 6f 72 64 73 20 69 6e 0a ~ "~ compilation/elf.e use this interface." 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 65 6c 66 2e 65 20 75 73 65 20 74 68 69 73 20 69 6e 74 65 72 66 61 63 65 2e 0a ~ "~" 7e 0a ~ "~ (execution token -- output start, output length)" 7e 20 28 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 2d 2d 20 6f 75 74 70 75 74 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 6c 65 6e 67 74 68 29 0a ~ ": label-loop" 3a 20 6c 61 62 65 6c 2d 6c 6f 6f 70 0a ~ " 0 swap" 20 20 30 20 73 77 61 70 0a ~ " ~ TODO every time you double this to fix a crash, you" ~ " must publicly" 20 20 7e 20 54 4f 44 4f 20 65 76 65 72 79 20 74 69 6d 65 20 79 6f 75 20 64 6f 75 62 6c 65 20 74 68 69 73 20 74 6f 20 66 69 78 20 61 20 63 72 61 73 68 2c 20 79 6f 75 20 6d 75 73 74 20 70 75 62 6c 69 63 6c 79 0a ~ " ~ apologize for deferring a real fix. those are the" ~ " rules" 20 20 7e 20 61 70 6f 6c 6f 67 69 7a 65 20 66 6f 72 20 64 65 66 65 72 72 69 6e 67 20 61 20 72 65 61 6c 20 66 69 78 2e 20 74 68 6f 73 65 20 61 72 65 20 74 68 65 20 72 75 6c 65 73 0a ~ " 0x100000 allocate dup" 20 20 30 78 31 30 30 30 30 30 20 61 6c 6c 6f 63 61 74 65 20 64 75 70 0a ~ " ~ (iteration count, execution token, output start, output" ~ " point)" 20 20 7e 20 28 69 74 65 72 61 74 69 6f 6e 20 63 6f 75 6e 74 2c 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 6f 75 74 70 75 74 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " { 3 pick 100 > }" 20 20 7b 20 33 20 70 69 63 6b 20 31 30 30 20 3e 20 7d 0a ~ " { 2 pick execute 4 roll 1+ 4 unroll" 20 20 7b 20 32 20 70 69 63 6b 20 65 78 65 63 75 74 65 20 34 20 72 6f 6c 6c 20 31 2b 20 34 20 75 6e 72 6f 6c 6c 0a ~ "" 0a ~ " check-labels-converged" 20 20 20 20 63 68 65 63 6b 2d 6c 61 62 65 6c 73 2d 63 6f 6e 76 65 72 67 65 64 0a ~ " { 4 roll drop" 20 20 20 20 7b 20 34 20 72 6f 6c 6c 20 64 72 6f 70 0a ~ " 3 roll drop" 20 20 20 20 20 20 33 20 72 6f 6c 6c 20 64 72 6f 70 0a ~ " current-offset swap drop" 20 20 20 20 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 73 77 61 70 20 64 72 6f 70 0a ~ " exit } if" 20 20 20 20 20 20 65 78 69 74 20 7d 20 69 66 0a ~ " drop dup" 20 20 20 20 64 72 6f 70 20 64 75 70 0a ~ " reset-labels } while" 20 20 20 20 72 65 73 65 74 2d 6c 61 62 65 6c 73 20 7d 20 77 68 69 6c 65 0a ~ " ~ TODO run some analysis on the labels to detect labels" ~ " that are never" 20 20 7e 20 54 4f 44 4f 20 72 75 6e 20 73 6f 6d 65 20 61 6e 61 6c 79 73 69 73 20 6f 6e 20 74 68 65 20 6c 61 62 65 6c 73 20 74 6f 20 64 65 74 65 63 74 20 6c 61 62 65 6c 73 20 74 68 61 74 20 61 72 65 20 6e 65 76 65 72 0a ~ " ~ defined, but are referenced. List them." 20 20 7e 20 64 65 66 69 6e 65 64 2c 20 62 75 74 20 61 72 65 20 72 65 66 65 72 65 6e 63 65 64 2e 20 4c 69 73 74 20 74 68 65 6d 2e 0a ~ " drop drop drop ." Failed after " . ." iterations."" ~ " newline ;" 20 20 64 72 6f 70 20 64 72 6f 70 20 64 72 6f 70 20 2e 22 20 46 61 69 6c 65 64 20 61 66 74 65 72 20 22 20 2e 20 2e 22 20 20 69 74 65 72 61 74 69 6f 6e 73 2e 22 20 6e 65 77 6c 69 6e 65 20 3b 0a ~ "" 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ ~~ Executable file format ~~" 7e 20 7e 7e 20 45 78 65 63 75 74 61 62 6c 65 20 66 69 6c 65 20 66 6f 72 6d 61 74 20 7e 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ Before we do anything specific to the actual program" ~ " we're building, we" 7e 20 20 20 42 65 66 6f 72 65 20 77 65 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 73 70 65 63 69 66 69 63 20 74 6f 20 74 68 65 20 61 63 74 75 61 6c 20 70 72 6f 67 72 61 6d 20 77 65 27 72 65 20 62 75 69 6c 64 69 6e 67 2c 20 77 65 0a ~ "~ do a lot of ELF-specific stuff to ensure that our output" ~ " is in a format" 7e 20 64 6f 20 61 20 6c 6f 74 20 6f 66 20 45 4c 46 2d 73 70 65 63 69 66 69 63 20 73 74 75 66 66 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 6f 75 72 20 6f 75 74 70 75 74 20 69 73 20 69 6e 20 61 20 66 6f 72 6d 61 74 0a ~ "~ Linux knows how to run." 7e 20 4c 69 6e 75 78 20 6b 6e 6f 77 73 20 68 6f 77 20 74 6f 20 72 75 6e 2e 0a ~ "~" 7e 0a ~ "~ This relies on the label facility defined in" ~ " compilation/labels.e. Make" 7e 20 20 20 54 68 69 73 20 72 65 6c 69 65 73 20 6f 6e 20 74 68 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 20 64 65 66 69 6e 65 64 20 69 6e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 6c 61 62 65 6c 73 2e 65 2e 20 4d 61 6b 65 0a ~ "~ sure to load that first." 7e 20 73 75 72 65 20 74 6f 20 6c 6f 61 64 20 74 68 61 74 20 66 69 72 73 74 2e 0a ~ "~" 7e 0a ~ "~ This file makes use of magic comments for the hex" ~ " transform, described in" 7e 20 20 20 54 68 69 73 20 66 69 6c 65 20 6d 61 6b 65 73 20 75 73 65 20 6f 66 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 66 6f 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2c 20 64 65 73 63 72 69 62 65 64 20 69 6e 0a ~ "~ detail in compilation/transform.e, but its use is trivial" ~ " and doesn't" 7e 20 64 65 74 61 69 6c 20 69 6e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 74 72 61 6e 73 66 6f 72 6d 2e 65 2c 20 62 75 74 20 69 74 73 20 75 73 65 20 69 73 20 74 72 69 76 69 61 6c 20 61 6e 64 20 64 6f 65 73 6e 27 74 0a ~ "~ require accounting conventions." 7e 20 72 65 71 75 69 72 65 20 61 63 63 6f 75 6e 74 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 2e 0a ~ "" 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ ~~ ELF file header ~~" 7e 20 7e 7e 20 45 4c 46 20 66 69 6c 65 20 68 65 61 64 65 72 20 7e 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ First, we output ELF's top-level file header. This" ~ " header describes the" 7e 20 20 20 46 69 72 73 74 2c 20 77 65 20 6f 75 74 70 75 74 20 45 4c 46 27 73 20 74 6f 70 2d 6c 65 76 65 6c 20 66 69 6c 65 20 68 65 61 64 65 72 2e 20 54 68 69 73 20 68 65 61 64 65 72 20 64 65 73 63 72 69 62 65 73 20 74 68 65 0a ~ "~ entire file. An ELF always has exactly one of this" ~ " header, which is always" 7e 20 65 6e 74 69 72 65 20 66 69 6c 65 2e 20 41 6e 20 45 4c 46 20 61 6c 77 61 79 73 20 68 61 73 20 65 78 61 63 74 6c 79 20 6f 6e 65 20 6f 66 20 74 68 69 73 20 68 65 61 64 65 72 2c 20 77 68 69 63 68 20 69 73 20 61 6c 77 61 79 73 0a ~ "~ at the start of the file." 7e 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 0a ~ "~" 7e 0a ~ "~ The program we're building should call this word as the" ~ " first output it" 7e 20 20 20 54 68 65 20 70 72 6f 67 72 61 6d 20 77 65 27 72 65 20 62 75 69 6c 64 69 6e 67 20 73 68 6f 75 6c 64 20 63 61 6c 6c 20 74 68 69 73 20 77 6f 72 64 20 61 73 20 74 68 65 20 66 69 72 73 74 20 6f 75 74 70 75 74 20 69 74 0a ~ "~ generates." 7e 20 67 65 6e 65 72 61 74 65 73 2e 0a ~ "~" 7e 0a ~ "~ The most interesting thing here is the entry pointer." 7e 20 20 20 54 68 65 20 6d 6f 73 74 20 69 6e 74 65 72 65 73 74 69 6e 67 20 74 68 69 6e 67 20 68 65 72 65 20 69 73 20 74 68 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2e 0a ~ "~" 7e 0a ~ "~ It's also worth noticing that we set the ABI version to" ~ " 3. An ABI version" 7e 20 20 20 49 74 27 73 20 61 6c 73 6f 20 77 6f 72 74 68 20 6e 6f 74 69 63 69 6e 67 20 74 68 61 74 20 77 65 20 73 65 74 20 74 68 65 20 41 42 49 20 76 65 72 73 69 6f 6e 20 74 6f 20 33 2e 20 41 6e 20 41 42 49 20 76 65 72 73 69 6f 6e 0a ~ "~ of 0 (for the System V ABI) would work fine too, but 3" ~ " allows FreeBSD's" 7e 20 6f 66 20 30 20 28 66 6f 72 20 74 68 65 20 53 79 73 74 65 6d 20 56 20 41 42 49 29 20 77 6f 75 6c 64 20 77 6f 72 6b 20 66 69 6e 65 20 74 6f 6f 2c 20 62 75 74 20 33 20 61 6c 6c 6f 77 73 20 46 72 65 65 42 53 44 27 73 0a ~ "~ Linux compatibility features to kick in." 7e 20 4c 69 6e 75 78 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 66 65 61 74 75 72 65 73 20 74 6f 20 6b 69 63 6b 20 69 6e 2e 0a ~ "" 0a ~ ": elf-file-header" 3a 20 65 6c 66 2d 66 69 6c 65 2d 68 65 61 64 65 72 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : ELF file header" 20 20 7e 20 3a 20 45 4c 46 20 66 69 6c 65 20 68 65 61 64 65 72 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ " ~ : * denotes mandatory fields according to breadbox" 20 20 7e 20 3a 20 2a 20 64 65 6e 6f 74 65 73 20 6d 61 6e 64 61 74 6f 72 79 20 66 69 65 6c 64 73 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 62 72 65 61 64 62 6f 78 0a ~ " current-offset 3unroll" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 33 75 6e 72 6f 6c 6c 0a ~ "" 0a ~ " ~ : 1 suppress" 20 20 7e 20 3a 20 31 20 73 75 70 70 72 65 73 73 0a ~ " 0x7f pack8 s" ELF" pack-raw-string ~ : -4 *magic number" 20 20 30 78 37 66 20 70 61 63 6b 38 20 73 22 20 45 4c 46 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 20 20 7e 20 3a 20 2d 34 20 2a 6d 61 67 69 63 20 6e 75 6d 62 65 72 0a ~ " 2 pack8 ~ : -1 64-bit" 20 20 32 20 70 61 63 6b 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 31 20 36 34 2d 62 69 74 0a ~ " 1 pack8 ~ : -1 little-endian" 20 20 31 20 70 61 63 6b 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 31 20 6c 69 74 74 6c 65 2d 65 6e 64 69 61 6e 0a ~ " 1 pack8 ~ : -1 ELF header" ~ " format v1" 20 20 31 20 70 61 63 6b 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 31 20 45 4c 46 20 68 65 61 64 65 72 20 66 6f 72 6d 61 74 20 76 31 0a ~ " 3 pack8 ~ : -1 Linux ABI" 20 20 33 20 70 61 63 6b 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 31 20 4c 69 6e 75 78 20 41 42 49 0a ~ " 0 pack64 ~ : -8 (padding)" 20 20 30 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 28 70 61 64 64 69 6e 67 29 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " 2 pack16 ~ : -2 *executable" 20 20 32 20 70 61 63 6b 31 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 32 20 2a 65 78 65 63 75 74 61 62 6c 65 0a ~ " 0x3e pack16 ~ : -2 *Intel x86-64" 20 20 30 78 33 65 20 70 61 63 6b 31 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 32 20 2a 49 6e 74 65 6c 20 78 38 36 2d 36 34 0a ~ " 1 pack32 ~ : -4 ELF format" ~ " version" 20 20 31 20 70 61 63 6b 33 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 34 20 45 4c 46 20 66 6f 72 6d 61 74 20 76 65 72 73 69 6f 6e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " L@' cold-start L@' origin + pack64 ~ : -8 *entry point" 20 20 4c 40 27 20 63 6f 6c 64 2d 73 74 61 72 74 20 4c 40 27 20 6f 72 69 67 69 6e 20 2b 20 70 61 63 6b 36 34 20 20 7e 20 3a 20 2d 38 20 2a 65 6e 74 72 79 20 70 6f 69 6e 74 0a ~ " ~ This includes the origin, intentionally." 20 20 20 20 7e 20 54 68 69 73 20 69 6e 63 6c 75 64 65 73 20 74 68 65 20 6f 72 69 67 69 6e 2c 20 69 6e 74 65 6e 74 69 6f 6e 61 6c 6c 79 2e 0a ~ "" 0a ~ " L@' elf-program-header pack64 ~ : -8 *program" ~ " header offset" 20 20 4c 40 27 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 20 6f 66 66 73 65 74 0a ~ " ~ We place the program header immediately after the ELF" ~ " header. This" 20 20 20 20 7e 20 57 65 20 70 6c 61 63 65 20 74 68 65 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 74 68 65 20 45 4c 46 20 68 65 61 64 65 72 2e 20 54 68 69 73 0a ~ " ~ offset is from the start of the file." 20 20 20 20 7e 20 6f 66 66 73 65 74 20 69 73 20 66 72 6f 6d 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 0a ~ " 0 pack64 ~ : -8 section header" ~ " offset" 20 20 30 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 65 63 74 69 6f 6e 20 68 65 61 64 65 72 20 6f 66 66 73 65 74 0a ~ " 0 pack32 ~ : -4 processor" ~ " flags" 20 20 30 20 70 61 63 6b 33 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 34 20 70 72 6f 63 65 73 73 6f 72 20 66 6c 61 67 73 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " L@' elf-header-size pack16 ~ : -2 ELF header" ~ " size" 20 20 4c 40 27 20 65 6c 66 2d 68 65 61 64 65 72 2d 73 69 7a 65 20 70 61 63 6b 31 36 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 32 20 45 4c 46 20 68 65 61 64 65 72 20 73 69 7a 65 0a ~ " L@' elf-program-header-size pack16 ~ : -2 *program" ~ " header entry size" 20 20 4c 40 27 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 2d 73 69 7a 65 20 70 61 63 6b 31 36 20 20 7e 20 3a 20 2d 32 20 2a 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 20 65 6e 74 72 79 20 73 69 7a 65 0a ~ " 1 pack16 ~ : -2 *number of" ~ " program header entries" 20 20 31 20 70 61 63 6b 31 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 32 20 2a 6e 75 6d 62 65 72 20 6f 66 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 20 65 6e 74 72 69 65 73 0a ~ " 0 pack16 ~ : -2 section header" ~ " entry size" 20 20 30 20 70 61 63 6b 31 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 32 20 73 65 63 74 69 6f 6e 20 68 65 61 64 65 72 20 65 6e 74 72 79 20 73 69 7a 65 0a ~ " 0 pack16 ~ : -2 number of" ~ " section header entries" 20 20 30 20 70 61 63 6b 31 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 32 20 6e 75 6d 62 65 72 20 6f 66 20 73 65 63 74 69 6f 6e 20 68 65 61 64 65 72 20 65 6e 74 72 69 65 73 0a ~ " 0 pack16 ~ : -2 section name" ~ " string table index" 20 20 30 20 70 61 63 6b 31 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 32 20 73 65 63 74 69 6f 6e 20 6e 61 6d 65 20 73 74 72 69 6e 67 20 74 61 62 6c 65 20 69 6e 64 65 78 0a ~ "" 0a ~ " ~ Though hardcoding the size of this header would work" ~ " fine, it's easier" 20 20 7e 20 20 20 54 68 6f 75 67 68 20 68 61 72 64 63 6f 64 69 6e 67 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 69 73 20 68 65 61 64 65 72 20 77 6f 75 6c 64 20 77 6f 72 6b 20 66 69 6e 65 2c 20 69 74 27 73 20 65 61 73 69 65 72 0a ~ " ~ to use the label system to keep track of its size. The" ~ " only place this is" 20 20 7e 20 74 6f 20 75 73 65 20 74 68 65 20 6c 61 62 65 6c 20 73 79 73 74 65 6d 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 69 74 73 20 73 69 7a 65 2e 20 54 68 65 20 6f 6e 6c 79 20 70 6c 61 63 65 20 74 68 69 73 20 69 73 0a ~ " ~ actually referenced is right here in the header." 20 20 7e 20 61 63 74 75 61 6c 6c 79 20 72 65 66 65 72 65 6e 63 65 64 20 69 73 20 72 69 67 68 74 20 68 65 72 65 20 69 6e 20 74 68 65 20 68 65 61 64 65 72 2e 0a ~ " current-offset 4 roll - L!' elf-header-size" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 34 20 72 6f 6c 6c 20 2d 20 4c 21 27 20 65 6c 66 2d 68 65 61 64 65 72 2d 73 69 7a 65 0a ~ " L' elf-header-size set-label-non-offset" 20 20 4c 27 20 65 6c 66 2d 68 65 61 64 65 72 2d 73 69 7a 65 20 73 65 74 2d 6c 61 62 65 6c 2d 6e 6f 6e 2d 6f 66 66 73 65 74 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ ~~ ELF program header ~~" 7e 20 7e 7e 20 45 4c 46 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 20 7e 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ Second, we output ELF's program header, which lists the" ~ " memory regions" 7e 20 20 20 53 65 63 6f 6e 64 2c 20 77 65 20 6f 75 74 70 75 74 20 45 4c 46 27 73 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 2c 20 77 68 69 63 68 20 6c 69 73 74 73 20 74 68 65 20 6d 65 6d 6f 72 79 20 72 65 67 69 6f 6e 73 0a ~ "~ ("segments") we want to have and where we want them to" ~ " come from. There may" 7e 20 28 22 73 65 67 6d 65 6e 74 73 22 29 20 77 65 20 77 61 6e 74 20 74 6f 20 68 61 76 65 20 61 6e 64 20 77 68 65 72 65 20 77 65 20 77 61 6e 74 20 74 68 65 6d 20 74 6f 20 63 6f 6d 65 20 66 72 6f 6d 2e 20 54 68 65 72 65 20 6d 61 79 0a ~ "~ be any number of these entries, one per segment, , and" ~ " they may be anywhere" 7e 20 62 65 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 65 73 65 20 65 6e 74 72 69 65 73 2c 20 6f 6e 65 20 70 65 72 20 73 65 67 6d 65 6e 74 2c 20 2c 20 61 6e 64 20 74 68 65 79 20 6d 61 79 20 62 65 20 61 6e 79 77 68 65 72 65 0a ~ "~ in the file as long as they're consecutive." 7e 20 69 6e 20 74 68 65 20 66 69 6c 65 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 79 27 72 65 20 63 6f 6e 73 65 63 75 74 69 76 65 2e 0a ~ "~" 7e 0a ~ "~ We list just a single region, which is the entire" ~ " contents of the ELF file" 7e 20 20 20 57 65 20 6c 69 73 74 20 6a 75 73 74 20 61 20 73 69 6e 67 6c 65 20 72 65 67 69 6f 6e 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 45 4c 46 20 66 69 6c 65 0a ~ "~ from disk, and we put the program header immediately" ~ " after the file header." 7e 20 66 72 6f 6d 20 64 69 73 6b 2c 20 61 6e 64 20 77 65 20 70 75 74 20 74 68 65 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 74 68 65 20 66 69 6c 65 20 68 65 61 64 65 72 2e 0a ~ "~ The program we're building should call this word as the" ~ " second output it" 7e 20 54 68 65 20 70 72 6f 67 72 61 6d 20 77 65 27 72 65 20 62 75 69 6c 64 69 6e 67 20 73 68 6f 75 6c 64 20 63 61 6c 6c 20 74 68 69 73 20 77 6f 72 64 20 61 73 20 74 68 65 20 73 65 63 6f 6e 64 20 6f 75 74 70 75 74 20 69 74 0a ~ "~ generates." 7e 20 67 65 6e 65 72 61 74 65 73 2e 0a ~ "~" 7e 0a ~ "~ It would be more typical to use this header to ask the" ~ " loader to give us" 7e 20 20 20 49 74 20 77 6f 75 6c 64 20 62 65 20 6d 6f 72 65 20 74 79 70 69 63 61 6c 20 74 6f 20 75 73 65 20 74 68 69 73 20 68 65 61 64 65 72 20 74 6f 20 61 73 6b 20 74 68 65 20 6c 6f 61 64 65 72 20 74 6f 20 67 69 76 65 20 75 73 0a ~ "~ separate code and data segments, and perhaps a stack or" ~ " heap, but this keeps" 7e 20 73 65 70 61 72 61 74 65 20 63 6f 64 65 20 61 6e 64 20 64 61 74 61 20 73 65 67 6d 65 6e 74 73 2c 20 61 6e 64 20 70 65 72 68 61 70 73 20 61 20 73 74 61 63 6b 20 6f 72 20 68 65 61 70 2c 20 62 75 74 20 74 68 69 73 20 6b 65 65 70 73 0a ~ "~ things simple, and we can create those things for" ~ " ourselves later." 7e 20 74 68 69 6e 67 73 20 73 69 6d 70 6c 65 2c 20 61 6e 64 20 77 65 20 63 61 6e 20 63 72 65 61 74 65 20 74 68 6f 73 65 20 74 68 69 6e 67 73 20 66 6f 72 20 6f 75 72 73 65 6c 76 65 73 20 6c 61 74 65 72 2e 0a ~ "~" 7e 0a ~ "~ We do have a little stack space available, though we" ~ " don't explicitly" 7e 20 20 20 57 65 20 64 6f 20 68 61 76 65 20 61 20 6c 69 74 74 6c 65 20 73 74 61 63 6b 20 73 70 61 63 65 20 61 76 61 69 6c 61 62 6c 65 2c 20 74 68 6f 75 67 68 20 77 65 20 64 6f 6e 27 74 20 65 78 70 6c 69 63 69 74 6c 79 0a ~ "~ request any; the kernel allocates it for us as part of" ~ " exec() so that it can" 7e 20 72 65 71 75 65 73 74 20 61 6e 79 3b 20 74 68 65 20 6b 65 72 6e 65 6c 20 61 6c 6c 6f 63 61 74 65 73 20 69 74 20 66 6f 72 20 75 73 20 61 73 20 70 61 72 74 20 6f 66 20 65 78 65 63 28 29 20 73 6f 20 74 68 61 74 20 69 74 20 63 61 6e 0a ~ "~ pass us argc and argv (which we ignore). That stack space" ~ " will be at a" 7e 20 70 61 73 73 20 75 73 20 61 72 67 63 20 61 6e 64 20 61 72 67 76 20 28 77 68 69 63 68 20 77 65 20 69 67 6e 6f 72 65 29 2e 20 54 68 61 74 20 73 74 61 63 6b 20 73 70 61 63 65 20 77 69 6c 6c 20 62 65 20 61 74 20 61 0a ~ "~ random address, different every time, because of ASLR;" ~ " that's a neat" 7e 20 72 61 6e 64 6f 6d 20 61 64 64 72 65 73 73 2c 20 64 69 66 66 65 72 65 6e 74 20 65 76 65 72 79 20 74 69 6d 65 2c 20 62 65 63 61 75 73 65 20 6f 66 20 41 53 4c 52 3b 20 74 68 61 74 27 73 20 61 20 6e 65 61 74 0a ~ "~ security feature, so we leave it as-is. Note that ASLR" ~ " doesn't happen when" 7e 20 73 65 63 75 72 69 74 79 20 66 65 61 74 75 72 65 2c 20 73 6f 20 77 65 20 6c 65 61 76 65 20 69 74 20 61 73 2d 69 73 2e 20 4e 6f 74 65 20 74 68 61 74 20 41 53 4c 52 20 64 6f 65 73 6e 27 74 20 68 61 70 70 65 6e 20 77 68 65 6e 0a ~ "~ you run under gdb, so if you aren't seeing it, that's" ~ " probably why." 7e 20 79 6f 75 20 72 75 6e 20 75 6e 64 65 72 20 67 64 62 2c 20 73 6f 20 69 66 20 79 6f 75 20 61 72 65 6e 27 74 20 73 65 65 69 6e 67 20 69 74 2c 20 74 68 61 74 27 73 20 70 72 6f 62 61 62 6c 79 20 77 68 79 2e 0a ~ "" 0a ~ "~ ~~" 7e 20 7e 7e 0a ~ ": elf-program-header" 3a 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : ELF program header" 20 20 7e 20 3a 20 45 4c 46 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ " ~ * denotes mandatory fields according to breadbox" 20 20 7e 20 2a 20 64 65 6e 6f 74 65 73 20 6d 61 6e 64 61 74 6f 72 79 20 66 69 65 6c 64 73 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 62 72 65 61 64 62 6f 78 0a ~ " current-offset L!' elf-program-header" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 4c 21 27 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 0a ~ " current-offset 3unroll" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 33 75 6e 72 6f 6c 6c 0a ~ "" 0a ~ " 1 pack32 ~ : -4 *"loadable"" ~ " segment type" 20 20 31 20 70 61 63 6b 33 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 34 20 2a 22 6c 6f 61 64 61 62 6c 65 22 20 73 65 67 6d 65 6e 74 20 74 79 70 65 0a ~ " 0x05 pack32 ~ : -4 *read+execute" ~ " permission" 20 20 30 78 30 35 20 70 61 63 6b 33 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 34 20 2a 72 65 61 64 2b 65 78 65 63 75 74 65 20 70 65 72 6d 69 73 73 69 6f 6e 0a ~ " 0 pack64 ~ : -8 *offset in" ~ " file" 20 20 30 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 6f 66 66 73 65 74 20 69 6e 20 66 69 6c 65 0a ~ " L@' origin pack64 ~ : -8 *virtual" ~ " address" 20 20 4c 40 27 20 6f 72 69 67 69 6e 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 76 69 72 74 75 61 6c 20 61 64 64 72 65 73 73 0a ~ " ~ required, but can be anything, subject to alignment" 20 20 20 20 7e 20 72 65 71 75 69 72 65 64 2c 20 62 75 74 20 63 61 6e 20 62 65 20 61 6e 79 74 68 69 6e 67 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 61 6c 69 67 6e 6d 65 6e 74 0a ~ " 0 pack64 ~ : -8 physical" ~ " address (ignored)" 20 20 30 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 70 68 79 73 69 63 61 6c 20 61 64 64 72 65 73 73 20 28 69 67 6e 6f 72 65 64 29 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " L@' total-size pack64 ~ : -8 *size in file" 20 20 4c 40 27 20 74 6f 74 61 6c 2d 73 69 7a 65 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 73 69 7a 65 20 69 6e 20 66 69 6c 65 0a ~ " L@' total-size pack64 ~ : -8 *size in" ~ " memory" 20 20 4c 40 27 20 74 6f 74 61 6c 2d 73 69 7a 65 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 73 69 7a 65 20 69 6e 20 6d 65 6d 6f 72 79 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " 0 pack64 ~ : -8 segment" ~ " alignment" 20 20 30 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 65 67 6d 65 6e 74 20 61 6c 69 67 6e 6d 65 6e 74 0a ~ " ~ for relocation, but this doesn't apply to us" 20 20 20 20 7e 20 66 6f 72 20 72 65 6c 6f 63 61 74 69 6f 6e 2c 20 62 75 74 20 74 68 69 73 20 64 6f 65 73 6e 27 74 20 61 70 70 6c 79 20 74 6f 20 75 73 0a ~ "" 0a ~ " ~ As with the file header, we use the label system to" ~ " keep track of the" 20 20 7e 20 20 20 41 73 20 77 69 74 68 20 74 68 65 20 66 69 6c 65 20 68 65 61 64 65 72 2c 20 77 65 20 75 73 65 20 74 68 65 20 6c 61 62 65 6c 20 73 79 73 74 65 6d 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 74 68 65 0a ~ " ~ program header's size." 20 20 7e 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 27 73 20 73 69 7a 65 2e 0a ~ " current-offset 4 roll - L!' elf-program-header-size" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 34 20 72 6f 6c 6c 20 2d 20 4c 21 27 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 2d 73 69 7a 65 0a ~ " L' elf-program-header-size set-label-non-offset" 20 20 4c 27 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 2d 73 69 7a 65 20 73 65 74 2d 6c 61 62 65 6c 2d 6e 6f 6e 2d 6f 66 66 73 65 74 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This alternate version of the program header isn't used" ~ " by evoke.e, but" 7e 20 20 20 54 68 69 73 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 20 69 73 6e 27 74 20 75 73 65 64 20 62 79 20 65 76 6f 6b 65 2e 65 2c 20 62 75 74 0a ~ "~ may be useful for other programs, such as hex.e. Its only" ~ " difference from" 7e 20 6d 61 79 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 73 2c 20 73 75 63 68 20 61 73 20 68 65 78 2e 65 2e 20 49 74 73 20 6f 6e 6c 79 20 64 69 66 66 65 72 65 6e 63 65 20 66 72 6f 6d 0a ~ "~ the base version is that it adds the write permission." 7e 20 74 68 65 20 62 61 73 65 20 76 65 72 73 69 6f 6e 20 69 73 20 74 68 61 74 20 69 74 20 61 64 64 73 20 74 68 65 20 77 72 69 74 65 20 70 65 72 6d 69 73 73 69 6f 6e 2e 0a ~ ": elf-program-header-writable" 3a 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 2d 77 72 69 74 61 62 6c 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : ELF program header" 20 20 7e 20 3a 20 45 4c 46 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ " ~ * denotes mandatory fields according to breadbox" 20 20 7e 20 2a 20 64 65 6e 6f 74 65 73 20 6d 61 6e 64 61 74 6f 72 79 20 66 69 65 6c 64 73 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 62 72 65 61 64 62 6f 78 0a ~ " current-offset L!' elf-program-header" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 4c 21 27 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 0a ~ " current-offset 3unroll" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 33 75 6e 72 6f 6c 6c 0a ~ "" 0a ~ " 1 pack32 ~ : -4 *"loadable"" ~ " segment type" 20 20 31 20 70 61 63 6b 33 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 34 20 2a 22 6c 6f 61 64 61 62 6c 65 22 20 73 65 67 6d 65 6e 74 20 74 79 70 65 0a ~ " 0x07 pack32 ~ : -4" ~ " *read+write+execute permission" 20 20 30 78 30 37 20 70 61 63 6b 33 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 34 20 2a 72 65 61 64 2b 77 72 69 74 65 2b 65 78 65 63 75 74 65 20 70 65 72 6d 69 73 73 69 6f 6e 0a ~ " 0 pack64 ~ : -8 *offset in" ~ " file" 20 20 30 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 6f 66 66 73 65 74 20 69 6e 20 66 69 6c 65 0a ~ " L@' origin pack64 ~ : -8 *virtual" ~ " address" 20 20 4c 40 27 20 6f 72 69 67 69 6e 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 76 69 72 74 75 61 6c 20 61 64 64 72 65 73 73 0a ~ " ~ required, but can be anything, subject to alignment" 20 20 20 20 7e 20 72 65 71 75 69 72 65 64 2c 20 62 75 74 20 63 61 6e 20 62 65 20 61 6e 79 74 68 69 6e 67 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 61 6c 69 67 6e 6d 65 6e 74 0a ~ " 0 pack64 ~ : -8 physical" ~ " address (ignored)" 20 20 30 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 70 68 79 73 69 63 61 6c 20 61 64 64 72 65 73 73 20 28 69 67 6e 6f 72 65 64 29 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " L@' total-size pack64 ~ : -8 *size in file" 20 20 4c 40 27 20 74 6f 74 61 6c 2d 73 69 7a 65 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 73 69 7a 65 20 69 6e 20 66 69 6c 65 0a ~ " L@' total-size pack64 ~ : -8 *size in" ~ " memory" 20 20 4c 40 27 20 74 6f 74 61 6c 2d 73 69 7a 65 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 2a 73 69 7a 65 20 69 6e 20 6d 65 6d 6f 72 79 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " 0 pack64 ~ : -8 segment" ~ " alignment" 20 20 30 20 70 61 63 6b 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 65 67 6d 65 6e 74 20 61 6c 69 67 6e 6d 65 6e 74 0a ~ " ~ for relocation, but this doesn't apply to us" 20 20 20 20 7e 20 66 6f 72 20 72 65 6c 6f 63 61 74 69 6f 6e 2c 20 62 75 74 20 74 68 69 73 20 64 6f 65 73 6e 27 74 20 61 70 70 6c 79 20 74 6f 20 75 73 0a ~ "" 0a ~ " ~ As with the file header, we use the label system to" ~ " keep track of the" 20 20 7e 20 20 20 41 73 20 77 69 74 68 20 74 68 65 20 66 69 6c 65 20 68 65 61 64 65 72 2c 20 77 65 20 75 73 65 20 74 68 65 20 6c 61 62 65 6c 20 73 79 73 74 65 6d 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 74 68 65 0a ~ " ~ program header's size." 20 20 7e 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 27 73 20 73 69 7a 65 2e 0a ~ " current-offset 4 roll - L!' elf-program-header-size" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 34 20 72 6f 6c 6c 20 2d 20 4c 21 27 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 2d 73 69 7a 65 0a ~ " L' elf-program-header-size set-label-non-offset" 20 20 4c 27 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 2d 73 69 7a 65 20 73 65 74 2d 6c 61 62 65 6c 2d 6e 6f 6e 2d 6f 66 66 73 65 74 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "~ ~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ ~~ That's it! ~~" 7e 20 7e 7e 20 54 68 61 74 27 73 20 69 74 21 20 7e 7e 0a ~ "~ ~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ ELF is a simple format, really. Now you can output" ~ " your own machine code" 7e 20 20 20 45 4c 46 20 69 73 20 61 20 73 69 6d 70 6c 65 20 66 6f 72 6d 61 74 2c 20 72 65 61 6c 6c 79 2e 20 20 4e 6f 77 20 79 6f 75 20 63 61 6e 20 6f 75 74 70 75 74 20 79 6f 75 72 20 6f 77 6e 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 0a ~ "~ that you generate however you want; make sure to define" ~ " the labels "origin"" 7e 20 74 68 61 74 20 79 6f 75 20 67 65 6e 65 72 61 74 65 20 68 6f 77 65 76 65 72 20 79 6f 75 20 77 61 6e 74 3b 20 6d 61 6b 65 20 73 75 72 65 20 74 6f 20 64 65 66 69 6e 65 20 74 68 65 20 6c 61 62 65 6c 73 20 22 6f 72 69 67 69 6e 22 0a ~ "~ and "cold-start". Origin will control the address the" ~ " code loads at;" 7e 20 61 6e 64 20 22 63 6f 6c 64 2d 73 74 61 72 74 22 2e 20 4f 72 69 67 69 6e 20 77 69 6c 6c 20 63 6f 6e 74 72 6f 6c 20 74 68 65 20 61 64 64 72 65 73 73 20 74 68 65 20 63 6f 64 65 20 6c 6f 61 64 73 20 61 74 3b 0a ~ "~ cold-start will be the first thing that runs. The origin" ~ " is arbitrary, but" 7e 20 63 6f 6c 64 2d 73 74 61 72 74 20 77 69 6c 6c 20 62 65 20 74 68 65 20 66 69 72 73 74 20 74 68 69 6e 67 20 74 68 61 74 20 72 75 6e 73 2e 20 54 68 65 20 6f 72 69 67 69 6e 20 69 73 20 61 72 62 69 74 72 61 72 79 2c 20 62 75 74 0a ~ "~ can't be zero." 7e 20 63 61 6e 27 74 20 62 65 20 7a 65 72 6f 2e 0a ~ "" 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ ~~ Code transformation facility ~~" 7e 20 7e 7e 20 43 6f 64 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 66 61 63 69 6c 69 74 79 20 7e 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The process of producing an executable binary out of" ~ " Evocation involves" 7e 20 20 20 54 68 65 20 70 72 6f 63 65 73 73 20 6f 66 20 70 72 6f 64 75 63 69 6e 67 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 62 69 6e 61 72 79 20 6f 75 74 20 6f 66 20 45 76 6f 63 61 74 69 6f 6e 20 69 6e 76 6f 6c 76 65 73 0a ~ "~ various bootstrapping phases during which code operates" ~ " under different" 7e 20 76 61 72 69 6f 75 73 20 62 6f 6f 74 73 74 72 61 70 70 69 6e 67 20 70 68 61 73 65 73 20 64 75 72 69 6e 67 20 77 68 69 63 68 20 63 6f 64 65 20 6f 70 65 72 61 74 65 73 20 75 6e 64 65 72 20 64 69 66 66 65 72 65 6e 74 0a ~ "~ constraints, and must be written with different styles." ~ " In some cases," 7e 20 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 61 6e 64 20 6d 75 73 74 20 62 65 20 77 72 69 74 74 65 6e 20 77 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 73 74 79 6c 65 73 2e 20 49 6e 20 73 6f 6d 65 20 63 61 73 65 73 2c 0a ~ "~ substantially the same code must be output multiple times" ~ " in slightly" 7e 20 73 75 62 73 74 61 6e 74 69 61 6c 6c 79 20 74 68 65 20 73 61 6d 65 20 63 6f 64 65 20 6d 75 73 74 20 62 65 20 6f 75 74 70 75 74 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 20 69 6e 20 73 6c 69 67 68 74 6c 79 0a ~ "~ different ways, and it would be both arduous and verbose" ~ " to write each of" 7e 20 64 69 66 66 65 72 65 6e 74 20 77 61 79 73 2c 20 61 6e 64 20 69 74 20 77 6f 75 6c 64 20 62 65 20 62 6f 74 68 20 61 72 64 75 6f 75 73 20 61 6e 64 20 76 65 72 62 6f 73 65 20 74 6f 20 77 72 69 74 65 20 65 61 63 68 20 6f 66 0a ~ "~ these directly." 7e 20 74 68 65 73 65 20 64 69 72 65 63 74 6c 79 2e 0a ~ "~" 7e 0a ~ "~ To solve this problem, this file implements a concept" ~ " of code" 7e 20 20 20 54 6f 20 73 6f 6c 76 65 20 74 68 69 73 20 70 72 6f 62 6c 65 6d 2c 20 74 68 69 73 20 66 69 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 61 20 63 6f 6e 63 65 70 74 20 6f 66 20 63 6f 64 65 0a ~ "~ transformation. There are two transforms, the label" ~ " transform and the" 7e 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 74 72 61 6e 73 66 6f 72 6d 73 2c 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 61 6e 64 20 74 68 65 0a ~ "~ log-load transform, each of which takes a string" ~ " containing Evocation source" 7e 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2c 20 65 61 63 68 20 6f 66 20 77 68 69 63 68 20 74 61 6b 65 73 20 61 20 73 74 72 69 6e 67 20 63 6f 6e 74 61 69 6e 69 6e 67 20 45 76 6f 63 61 74 69 6f 6e 20 73 6f 75 72 63 65 0a ~ "~ code and produces compiled code that has been modified to" ~ " operate in a" 7e 20 63 6f 64 65 20 61 6e 64 20 70 72 6f 64 75 63 65 73 20 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 20 74 68 61 74 20 68 61 73 20 62 65 65 6e 20 6d 6f 64 69 66 69 65 64 20 74 6f 20 6f 70 65 72 61 74 65 20 69 6e 20 61 0a ~ "~ specific way. The transforms rely on the label facility" ~ " provided by" 7e 20 73 70 65 63 69 66 69 63 20 77 61 79 2e 20 54 68 65 20 74 72 61 6e 73 66 6f 72 6d 73 20 72 65 6c 79 20 6f 6e 20 74 68 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 20 70 72 6f 76 69 64 65 64 20 62 79 0a ~ "~ compilation/labels.e, and expect to run from within" ~ " label-loop." 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 6c 61 62 65 6c 73 2e 65 2c 20 61 6e 64 20 65 78 70 65 63 74 20 74 6f 20 72 75 6e 20 66 72 6f 6d 20 77 69 74 68 69 6e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2e 0a ~ "~" 7e 0a ~ "~ The label transform produces code that uses one label" ~ " per word it defines," 7e 20 20 20 54 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 70 72 6f 64 75 63 65 73 20 63 6f 64 65 20 74 68 61 74 20 75 73 65 73 20 6f 6e 65 20 6c 61 62 65 6c 20 70 65 72 20 77 6f 72 64 20 69 74 20 64 65 66 69 6e 65 73 2c 0a ~ "~ to statically reference everything. Thus, when output to" ~ " an executable" 7e 20 74 6f 20 73 74 61 74 69 63 61 6c 6c 79 20 72 65 66 65 72 65 6e 63 65 20 65 76 65 72 79 74 68 69 6e 67 2e 20 54 68 75 73 2c 20 77 68 65 6e 20 6f 75 74 70 75 74 20 74 6f 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 0a ~ "~ binary, this code will function without external" ~ " dependencies. The tradeoff" 7e 20 62 69 6e 61 72 79 2c 20 74 68 69 73 20 63 6f 64 65 20 77 69 6c 6c 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 6f 75 74 20 65 78 74 65 72 6e 61 6c 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 20 54 68 65 20 74 72 61 64 65 6f 66 66 0a ~ "~ is that it has no way to reference data that exists only" ~ " at runtime." 7e 20 69 73 20 74 68 61 74 20 69 74 20 68 61 73 20 6e 6f 20 77 61 79 20 74 6f 20 72 65 66 65 72 65 6e 63 65 20 64 61 74 61 20 74 68 61 74 20 65 78 69 73 74 73 20 6f 6e 6c 79 20 61 74 20 72 75 6e 74 69 6d 65 2e 0a ~ "~" 7e 0a ~ "~ The log-load transform relies on labels, but doesn't" ~ " add any of its own." 7e 20 20 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 72 65 6c 69 65 73 20 6f 6e 20 6c 61 62 65 6c 73 2c 20 62 75 74 20 64 6f 65 73 6e 27 74 20 61 64 64 20 61 6e 79 20 6f 66 20 69 74 73 20 6f 77 6e 2e 0a ~ "~ It produces a compiled routine which, when run," ~ " dynamically looks up all the" 7e 20 49 74 20 70 72 6f 64 75 63 65 73 20 61 20 63 6f 6d 70 69 6c 65 64 20 72 6f 75 74 69 6e 65 20 77 68 69 63 68 2c 20 77 68 65 6e 20 72 75 6e 2c 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 6f 6f 6b 73 20 75 70 20 61 6c 6c 20 74 68 65 0a ~ "~ references in the log, and appends the original code to" ~ " the log. This adds" 7e 20 72 65 66 65 72 65 6e 63 65 73 20 69 6e 20 74 68 65 20 6c 6f 67 2c 20 61 6e 64 20 61 70 70 65 6e 64 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 20 74 6f 20 74 68 65 20 6c 6f 67 2e 20 54 68 69 73 20 61 64 64 73 0a ~ "~ work that must be done when the runtime starts up, but" ~ " the benefit is that" 7e 20 77 6f 72 6b 20 74 68 61 74 20 6d 75 73 74 20 62 65 20 64 6f 6e 65 20 77 68 65 6e 20 74 68 65 20 72 75 6e 74 69 6d 65 20 73 74 61 72 74 73 20 75 70 2c 20 62 75 74 20 74 68 65 20 62 65 6e 65 66 69 74 20 69 73 20 74 68 61 74 0a ~ "~ it can reference data that doesn't exist at compile-time." ~ " Most crucially," 7e 20 69 74 20 63 61 6e 20 72 65 66 65 72 65 6e 63 65 20 64 61 74 61 20 74 68 61 74 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 4d 6f 73 74 20 63 72 75 63 69 61 6c 6c 79 2c 0a ~ "~ it can reference the "here" and "latest" pointers in the" ~ " log, which are" 7e 20 69 74 20 63 61 6e 20 72 65 66 65 72 65 6e 63 65 20 74 68 65 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 20 70 6f 69 6e 74 65 72 73 20 69 6e 20 74 68 65 20 6c 6f 67 2c 20 77 68 69 63 68 20 61 72 65 0a ~ "~ required for all the usual word-definition stuff to work," ~ " and whose" 7e 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 61 6c 6c 20 74 68 65 20 75 73 75 61 6c 20 77 6f 72 64 2d 64 65 66 69 6e 69 74 69 6f 6e 20 73 74 75 66 66 20 74 6f 20 77 6f 72 6b 2c 20 61 6e 64 20 77 68 6f 73 65 0a ~ "~ addresses are not known until runtime." 7e 20 61 64 64 72 65 73 73 65 73 20 61 72 65 20 6e 6f 74 20 6b 6e 6f 77 6e 20 75 6e 74 69 6c 20 72 75 6e 74 69 6d 65 2e 0a ~ "~" 7e 0a ~ "~ The log-load transform may also be useful for" ~ " experimental tasks such as" 7e 20 20 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 6d 61 79 20 61 6c 73 6f 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 65 78 70 65 72 69 6d 65 6e 74 61 6c 20 74 61 73 6b 73 20 73 75 63 68 20 61 73 0a ~ "~ creating additional, independent logs, or injecting" ~ " Evocation into another" 7e 20 63 72 65 61 74 69 6e 67 20 61 64 64 69 74 69 6f 6e 61 6c 2c 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 6c 6f 67 73 2c 20 6f 72 20 69 6e 6a 65 63 74 69 6e 67 20 45 76 6f 63 61 74 69 6f 6e 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 0a ~ "~ process's address space." 7e 20 70 72 6f 63 65 73 73 27 73 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2e 0a ~ "~" 7e 0a ~ "~ Please notice that both these transforms, in different" ~ " ways, navigate the" 7e 20 20 20 50 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 61 74 20 62 6f 74 68 20 74 68 65 73 65 20 74 72 61 6e 73 66 6f 72 6d 73 2c 20 69 6e 20 64 69 66 66 65 72 65 6e 74 20 77 61 79 73 2c 20 6e 61 76 69 67 61 74 65 20 74 68 65 0a ~ "~ same underlying design tension: The Forth compilation" ~ " model hardcodes" 7e 20 73 61 6d 65 20 75 6e 64 65 72 6c 79 69 6e 67 20 64 65 73 69 67 6e 20 74 65 6e 73 69 6f 6e 3a 20 54 68 65 20 46 6f 72 74 68 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6d 6f 64 65 6c 20 68 61 72 64 63 6f 64 65 73 0a ~ "~ references at the time compilation happens, and Evocation" ~ " makes the choice" 7e 20 72 65 66 65 72 65 6e 63 65 73 20 61 74 20 74 68 65 20 74 69 6d 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 68 61 70 70 65 6e 73 2c 20 61 6e 64 20 45 76 6f 63 61 74 69 6f 6e 20 6d 61 6b 65 73 20 74 68 65 20 63 68 6f 69 63 65 0a ~ "~ to not decide the address of the log until runtime. Thus" ~ " the label transform" 7e 20 74 6f 20 6e 6f 74 20 64 65 63 69 64 65 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 6c 6f 67 20 75 6e 74 69 6c 20 72 75 6e 74 69 6d 65 2e 20 54 68 75 73 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ can't be sufficient on its own. Other Forths avoid this" ~ " problem by" 7e 20 63 61 6e 27 74 20 62 65 20 73 75 66 66 69 63 69 65 6e 74 20 6f 6e 20 69 74 73 20 6f 77 6e 2e 20 4f 74 68 65 72 20 46 6f 72 74 68 73 20 61 76 6f 69 64 20 74 68 69 73 20 70 72 6f 62 6c 65 6d 20 62 79 0a ~ "~ hardcoding an address for the log, or by using" ~ " OS-provided load-time" 7e 20 68 61 72 64 63 6f 64 69 6e 67 20 61 6e 20 61 64 64 72 65 73 73 20 66 6f 72 20 74 68 65 20 6c 6f 67 2c 20 6f 72 20 62 79 20 75 73 69 6e 67 20 4f 53 2d 70 72 6f 76 69 64 65 64 20 6c 6f 61 64 2d 74 69 6d 65 0a ~ "~ symbol relocation. Evocation, however, does it on hard" ~ " mode, mostly for fun." 7e 20 73 79 6d 62 6f 6c 20 72 65 6c 6f 63 61 74 69 6f 6e 2e 20 45 76 6f 63 61 74 69 6f 6e 2c 20 68 6f 77 65 76 65 72 2c 20 64 6f 65 73 20 69 74 20 6f 6e 20 68 61 72 64 20 6d 6f 64 65 2c 20 6d 6f 73 74 6c 79 20 66 6f 72 20 66 75 6e 2e 0a ~ "~" 7e 0a ~ "~ Because it was clear from early on that the label" ~ " transform couldn't stand" 7e 20 20 20 42 65 63 61 75 73 65 20 69 74 20 77 61 73 20 63 6c 65 61 72 20 66 72 6f 6d 20 65 61 72 6c 79 20 6f 6e 20 74 68 61 74 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 63 6f 75 6c 64 6e 27 74 20 73 74 61 6e 64 0a ~ "~ alone, and that another one would be necessary, we've" ~ " refrained from adding" 7e 20 61 6c 6f 6e 65 2c 20 61 6e 64 20 74 68 61 74 20 61 6e 6f 74 68 65 72 20 6f 6e 65 20 77 6f 75 6c 64 20 62 65 20 6e 65 63 65 73 73 61 72 79 2c 20 77 65 27 76 65 20 72 65 66 72 61 69 6e 65 64 20 66 72 6f 6d 20 61 64 64 69 6e 67 0a ~ "~ too many features to it. Since we have multiple" ~ " transforms, they should each" 7e 20 74 6f 6f 20 6d 61 6e 79 20 66 65 61 74 75 72 65 73 20 74 6f 20 69 74 2e 20 53 69 6e 63 65 20 77 65 20 68 61 76 65 20 6d 75 6c 74 69 70 6c 65 20 74 72 61 6e 73 66 6f 72 6d 73 2c 20 74 68 65 79 20 73 68 6f 75 6c 64 20 65 61 63 68 0a ~ "~ be kept simple and well-defined, so that they can be" ~ " composed in creative" 7e 20 62 65 20 6b 65 70 74 20 73 69 6d 70 6c 65 20 61 6e 64 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 2c 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61 6e 20 62 65 20 63 6f 6d 70 6f 73 65 64 20 69 6e 20 63 72 65 61 74 69 76 65 0a ~ "~ new ways down the line. When adding additional behavior," ~ " always give thought" 7e 20 6e 65 77 20 77 61 79 73 20 64 6f 77 6e 20 74 68 65 20 6c 69 6e 65 2e 20 57 68 65 6e 20 61 64 64 69 6e 67 20 61 64 64 69 74 69 6f 6e 61 6c 20 62 65 68 61 76 69 6f 72 2c 20 61 6c 77 61 79 73 20 67 69 76 65 20 74 68 6f 75 67 68 74 0a ~ "~ to whether it belongs in an existing transform or a new" ~ " one." 7e 20 74 6f 20 77 68 65 74 68 65 72 20 69 74 20 62 65 6c 6f 6e 67 73 20 69 6e 20 61 6e 20 65 78 69 73 74 69 6e 67 20 74 72 61 6e 73 66 6f 72 6d 20 6f 72 20 61 20 6e 65 77 20 6f 6e 65 2e 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~ About the label transform" 7e 20 41 62 6f 75 74 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The label transform operates on code that compiles" ~ " itself, and ensures" 7e 20 20 20 54 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 6f 70 65 72 61 74 65 73 20 6f 6e 20 63 6f 64 65 20 74 68 61 74 20 63 6f 6d 70 69 6c 65 73 20 69 74 73 65 6c 66 2c 20 61 6e 64 20 65 6e 73 75 72 65 73 0a ~ "~ that the result of the compilation is suitable to be" ~ " included in an" 7e 20 74 68 61 74 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 69 73 20 73 75 69 74 61 62 6c 65 20 74 6f 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6e 0a ~ "~ executable binary as words that are statically referenced" ~ " by their" 7e 20 65 78 65 63 75 74 61 62 6c 65 20 62 69 6e 61 72 79 20 61 73 20 77 6f 72 64 73 20 74 68 61 74 20 61 72 65 20 73 74 61 74 69 63 61 6c 6c 79 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 74 68 65 69 72 0a ~ "~ addresses. To achieve this, it causes each newly-defined" ~ " word to have a" 7e 20 61 64 64 72 65 73 73 65 73 2e 20 54 6f 20 61 63 68 69 65 76 65 20 74 68 69 73 2c 20 69 74 20 63 61 75 73 65 73 20 65 61 63 68 20 6e 65 77 6c 79 2d 64 65 66 69 6e 65 64 20 77 6f 72 64 20 74 6f 20 68 61 76 65 20 61 0a ~ "~ corresponding label whose value is the offset of its" ~ " codeword, and it causes" 7e 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 6c 61 62 65 6c 20 77 68 6f 73 65 20 76 61 6c 75 65 20 69 73 20 74 68 65 20 6f 66 66 73 65 74 20 6f 66 20 69 74 73 20 63 6f 64 65 77 6f 72 64 2c 20 61 6e 64 20 69 74 20 63 61 75 73 65 73 0a ~ "~ all compiled invocations of other words to be resolved by" ~ " using these labels." 7e 20 61 6c 6c 20 63 6f 6d 70 69 6c 65 64 20 69 6e 76 6f 63 61 74 69 6f 6e 73 20 6f 66 20 6f 74 68 65 72 20 77 6f 72 64 73 20 74 6f 20 62 65 20 72 65 73 6f 6c 76 65 64 20 62 79 20 75 73 69 6e 67 20 74 68 65 73 65 20 6c 61 62 65 6c 73 2e 0a ~ "~ The label transform is suitable for code that must be" ~ " directly invoked by" 7e 20 54 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 73 75 69 74 61 62 6c 65 20 66 6f 72 20 63 6f 64 65 20 74 68 61 74 20 6d 75 73 74 20 62 65 20 64 69 72 65 63 74 6c 79 20 69 6e 76 6f 6b 65 64 20 62 79 0a ~ "~ the warm-start routine provided by" ~ " compilation/execution.e." 7e 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 70 72 6f 76 69 64 65 64 20 62 79 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 65 78 65 63 75 74 69 6f 6e 2e 65 2e 0a ~ "~" 7e 0a ~ "~ The most fundamental technique the label transform" ~ " performs is to separate" 7e 20 20 20 54 68 65 20 6d 6f 73 74 20 66 75 6e 64 61 6d 65 6e 74 61 6c 20 74 65 63 68 6e 69 71 75 65 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 70 65 72 66 6f 72 6d 73 20 69 73 20 74 6f 20 73 65 70 61 72 61 74 65 0a ~ "~ words that run in compile mode from words that run" ~ " immediately. There is no" 7e 20 77 6f 72 64 73 20 74 68 61 74 20 72 75 6e 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 20 66 72 6f 6d 20 77 6f 72 64 73 20 74 68 61 74 20 72 75 6e 20 69 6d 6d 65 64 69 61 74 65 6c 79 2e 20 20 54 68 65 72 65 20 69 73 20 6e 6f 0a ~ "~ distinction made between words running in immediate mode," ~ " and words declared" 7e 20 64 69 73 74 69 6e 63 74 69 6f 6e 20 6d 61 64 65 20 62 65 74 77 65 65 6e 20 77 6f 72 64 73 20 72 75 6e 6e 69 6e 67 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2c 20 61 6e 64 20 77 6f 72 64 73 20 64 65 63 6c 61 72 65 64 0a ~ "~ as immediate. Immediate words are looked up and executed" ~ " based on their" 7e 20 61 73 20 69 6d 6d 65 64 69 61 74 65 2e 20 49 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 73 20 61 72 65 20 6c 6f 6f 6b 65 64 20 75 70 20 61 6e 64 20 65 78 65 63 75 74 65 64 20 62 61 73 65 64 20 6f 6e 20 74 68 65 69 72 0a ~ "~ "real", currently-executing definitions. Compiled words," ~ " including" 7e 20 22 72 65 61 6c 22 2c 20 63 75 72 72 65 6e 74 6c 79 2d 65 78 65 63 75 74 69 6e 67 20 64 65 66 69 6e 69 74 69 6f 6e 73 2e 20 43 6f 6d 70 69 6c 65 64 20 77 6f 72 64 73 2c 20 69 6e 63 6c 75 64 69 6e 67 0a ~ "~ literals, are looked up via the label facility." 7e 20 6c 69 74 65 72 61 6c 73 2c 20 61 72 65 20 6c 6f 6f 6b 65 64 20 75 70 20 76 69 61 20 74 68 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 2e 0a ~ "~" 7e 0a ~ "~ Since the label facility is able to resolve forward" ~ " references, there is" 7e 20 20 20 53 69 6e 63 65 20 74 68 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 20 69 73 20 61 62 6c 65 20 74 6f 20 72 65 73 6f 6c 76 65 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 73 2c 20 74 68 65 72 65 20 69 73 0a ~ "~ no hard requirement that everything in the file be" ~ " topologically sorted." 7e 20 6e 6f 20 68 61 72 64 20 72 65 71 75 69 72 65 6d 65 6e 74 20 74 68 61 74 20 65 76 65 72 79 74 68 69 6e 67 20 69 6e 20 74 68 65 20 66 69 6c 65 20 62 65 20 74 6f 70 6f 6c 6f 67 69 63 61 6c 6c 79 20 73 6f 72 74 65 64 2e 0a ~ "~ However, the transform will refuse to create forward" ~ " references to compiled" 7e 20 48 6f 77 65 76 65 72 2c 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 77 69 6c 6c 20 72 65 66 75 73 65 20 74 6f 20 63 72 65 61 74 65 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 63 6f 6d 70 69 6c 65 64 0a ~ "~ words. If you want them, you can create them by hand by" ~ " calling use-label" 7e 20 77 6f 72 64 73 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 68 65 6d 2c 20 79 6f 75 20 63 61 6e 20 63 72 65 61 74 65 20 74 68 65 6d 20 62 79 20 68 61 6e 64 20 62 79 20 63 61 6c 6c 69 6e 67 20 75 73 65 2d 6c 61 62 65 6c 0a ~ "~ yourself. This restriction is in place because allowing" ~ " forward references" 7e 20 79 6f 75 72 73 65 6c 66 2e 20 54 68 69 73 20 72 65 73 74 72 69 63 74 69 6f 6e 20 69 73 20 69 6e 20 70 6c 61 63 65 20 62 65 63 61 75 73 65 20 61 6c 6c 6f 77 69 6e 67 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 73 0a ~ "~ would be a significant difference from un-transformed" ~ " code that could easily" 7e 20 77 6f 75 6c 64 20 62 65 20 61 20 73 69 67 6e 69 66 69 63 61 6e 74 20 64 69 66 66 65 72 65 6e 63 65 20 66 72 6f 6d 20 75 6e 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 74 68 61 74 20 63 6f 75 6c 64 20 65 61 73 69 6c 79 0a ~ "~ become confusing, and because it simplifies the" ~ " implementation a bit." 7e 20 62 65 63 6f 6d 65 20 63 6f 6e 66 75 73 69 6e 67 2c 20 61 6e 64 20 62 65 63 61 75 73 65 20 69 74 20 73 69 6d 70 6c 69 66 69 65 73 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 61 20 62 69 74 2e 0a ~ "~" 7e 0a ~ "~ Compilation words do make extensive reference to the" ~ " global variables" 7e 20 20 20 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 77 6f 72 64 73 20 64 6f 20 6d 61 6b 65 20 65 78 74 65 6e 73 69 76 65 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 73 0a ~ "~ "here" and "latest". In particular, flow-control words" ~ " such as if-else" 7e 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 2e 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 20 73 75 63 68 20 61 73 20 69 66 2d 65 6c 73 65 0a ~ "~ expect the log to have recent compilation outputs on it," ~ " and to be able to" 7e 20 65 78 70 65 63 74 20 74 68 65 20 6c 6f 67 20 74 6f 20 68 61 76 65 20 72 65 63 65 6e 74 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 75 74 70 75 74 73 20 6f 6e 20 69 74 2c 20 61 6e 64 20 74 6f 20 62 65 20 61 62 6c 65 20 74 6f 0a ~ "~ mutate them in-place. In order to make this work, we" ~ " provide temporary" 7e 20 6d 75 74 61 74 65 20 74 68 65 6d 20 69 6e 2d 70 6c 61 63 65 2e 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 6b 65 20 74 68 69 73 20 77 6f 72 6b 2c 20 77 65 20 70 72 6f 76 69 64 65 20 74 65 6d 70 6f 72 61 72 79 0a ~ "~ values of these two variables which point to the location" ~ " of the output" 7e 20 76 61 6c 75 65 73 20 6f 66 20 74 68 65 73 65 20 74 77 6f 20 76 61 72 69 61 62 6c 65 73 20 77 68 69 63 68 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 0a ~ "~ buffer. This allows pointer resolution to work correctly" ~ " without additional" 7e 20 62 75 66 66 65 72 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 70 6f 69 6e 74 65 72 20 72 65 73 6f 6c 75 74 69 6f 6e 20 74 6f 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c 79 20 77 69 74 68 6f 75 74 20 61 64 64 69 74 69 6f 6e 61 6c 0a ~ "~ effort, but notice that the buffer's address will differ" ~ " from the address" 7e 20 65 66 66 6f 72 74 2c 20 62 75 74 20 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 65 20 62 75 66 66 65 72 27 73 20 61 64 64 72 65 73 73 20 77 69 6c 6c 20 64 69 66 66 65 72 20 66 72 6f 6d 20 74 68 65 20 61 64 64 72 65 73 73 0a ~ "~ the resulting program loads itself at. There's no simple" ~ " way to avoid this" 7e 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 70 72 6f 67 72 61 6d 20 6c 6f 61 64 73 20 69 74 73 65 6c 66 20 61 74 2e 20 54 68 65 72 65 27 73 20 6e 6f 20 73 69 6d 70 6c 65 20 77 61 79 20 74 6f 20 61 76 6f 69 64 20 74 68 69 73 0a ~ "~ concern, since the variables must point to one of those" ~ " addresses or the" 7e 20 63 6f 6e 63 65 72 6e 2c 20 73 69 6e 63 65 20 74 68 65 20 76 61 72 69 61 62 6c 65 73 20 6d 75 73 74 20 70 6f 69 6e 74 20 74 6f 20 6f 6e 65 20 6f 66 20 74 68 6f 73 65 20 61 64 64 72 65 73 73 65 73 20 6f 72 20 74 68 65 0a ~ "~ other, not both." 7e 20 6f 74 68 65 72 2c 20 6e 6f 74 20 62 6f 74 68 2e 0a ~ "~" 7e 0a ~ "~ We resolve the issue by running our own, alternate" ~ " versions of most of the" 7e 20 20 20 57 65 20 72 65 73 6f 6c 76 65 20 74 68 65 20 69 73 73 75 65 20 62 79 20 72 75 6e 6e 69 6e 67 20 6f 75 72 20 6f 77 6e 2c 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 6d 6f 73 74 20 6f 66 20 74 68 65 0a ~ "~ critical word-defining words, including for example" ~ " "create", ":", and ";"." 7e 20 63 72 69 74 69 63 61 6c 20 77 6f 72 64 2d 64 65 66 69 6e 69 6e 67 20 77 6f 72 64 73 2c 20 69 6e 63 6c 75 64 69 6e 67 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 22 63 72 65 61 74 65 22 2c 20 22 3a 22 2c 20 61 6e 64 20 22 3b 22 2e 0a ~ "~ These alternates run instead of the normal versions of" ~ " these words, and use" 7e 20 54 68 65 73 65 20 61 6c 74 65 72 6e 61 74 65 73 20 72 75 6e 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 6e 6f 72 6d 61 6c 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 74 68 65 73 65 20 77 6f 72 64 73 2c 20 61 6e 64 20 75 73 65 0a ~ "~ the label facility to compute the addresses that will be" ~ " needed at runtime." 7e 20 74 68 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 20 74 6f 20 63 6f 6d 70 75 74 65 20 74 68 65 20 61 64 64 72 65 73 73 65 73 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 6e 65 65 64 65 64 20 61 74 20 72 75 6e 74 69 6d 65 2e 0a ~ "~ The code being compiled is responsible for not doing" ~ " anything else that" 7e 20 54 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 20 69 73 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 6e 6f 74 20 64 6f 69 6e 67 20 61 6e 79 74 68 69 6e 67 20 65 6c 73 65 20 74 68 61 74 0a ~ "~ would rely on "here" and "latest" matching their runtime" ~ " addresses, though" 7e 20 77 6f 75 6c 64 20 72 65 6c 79 20 6f 6e 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 20 6d 61 74 63 68 69 6e 67 20 74 68 65 69 72 20 72 75 6e 74 69 6d 65 20 61 64 64 72 65 73 73 65 73 2c 20 74 68 6f 75 67 68 0a ~ "~ it is otherwise allowed to modify and rely on them in all" ~ " the usual ways." 7e 20 69 74 20 69 73 20 6f 74 68 65 72 77 69 73 65 20 61 6c 6c 6f 77 65 64 20 74 6f 20 6d 6f 64 69 66 79 20 61 6e 64 20 72 65 6c 79 20 6f 6e 20 74 68 65 6d 20 69 6e 20 61 6c 6c 20 74 68 65 20 75 73 75 61 6c 20 77 61 79 73 2e 0a ~ "~ The alternate versions are defined in this file as their" ~ " own words," 7e 20 54 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 73 20 61 72 65 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 69 73 20 66 69 6c 65 20 61 73 20 74 68 65 69 72 20 6f 77 6e 20 77 6f 72 64 73 2c 0a ~ "~ "label-create-alternate" and so on." 7e 20 22 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 22 20 61 6e 64 20 73 6f 20 6f 6e 2e 0a ~ "~" 7e 0a ~ "~ Note that these alternates are applied via a purely" ~ " lexical" 7e 20 20 20 4e 6f 74 65 20 74 68 61 74 20 74 68 65 73 65 20 61 6c 74 65 72 6e 61 74 65 73 20 61 72 65 20 61 70 70 6c 69 65 64 20 76 69 61 20 61 20 70 75 72 65 6c 79 20 6c 65 78 69 63 61 6c 0a ~ "~ transformation: when a word would be looked up in the" ~ " dictionary to" 7e 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 3a 20 77 68 65 6e 20 61 20 77 6f 72 64 20 77 6f 75 6c 64 20 62 65 20 6c 6f 6f 6b 65 64 20 75 70 20 69 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 74 6f 0a ~ "~ interpret, first check if it's one of these. That means" ~ " the transformation" 7e 20 69 6e 74 65 72 70 72 65 74 2c 20 66 69 72 73 74 20 63 68 65 63 6b 20 69 66 20 69 74 27 73 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 2e 20 54 68 61 74 20 6d 65 61 6e 73 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 0a ~ "~ won't apply to indirect callers of these words, nor to" ~ " tick-quotes of them." 7e 20 77 6f 6e 27 74 20 61 70 70 6c 79 20 74 6f 20 69 6e 64 69 72 65 63 74 20 63 61 6c 6c 65 72 73 20 6f 66 20 74 68 65 73 65 20 77 6f 72 64 73 2c 20 6e 6f 72 20 74 6f 20 74 69 63 6b 2d 71 75 6f 74 65 73 20 6f 66 20 74 68 65 6d 2e 0a ~ "~ The code being compiled is responsible for not doing" ~ " either of those things." 7e 20 54 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 20 69 73 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 6e 6f 74 20 64 6f 69 6e 67 20 65 69 74 68 65 72 20 6f 66 20 74 68 6f 73 65 20 74 68 69 6e 67 73 2e 0a ~ "~" 7e 0a ~ "~ Notably, the transformation uses the same" ~ " "interpreter-flags" variable as" 7e 20 20 20 4e 6f 74 61 62 6c 79 2c 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 75 73 65 73 20 74 68 65 20 73 61 6d 65 20 22 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 22 20 76 61 72 69 61 62 6c 65 20 61 73 0a ~ "~ the rest of Evocation. There's no need to keep it" ~ " separate like there is" 7e 20 74 68 65 20 72 65 73 74 20 6f 66 20 45 76 6f 63 61 74 69 6f 6e 2e 20 54 68 65 72 65 27 73 20 6e 6f 20 6e 65 65 64 20 74 6f 20 6b 65 65 70 20 69 74 20 73 65 70 61 72 61 74 65 20 6c 69 6b 65 20 74 68 65 72 65 20 69 73 0a ~ "~ with the other variables. This makes it easy to change" ~ " modes." 7e 20 77 69 74 68 20 74 68 65 20 6f 74 68 65 72 20 76 61 72 69 61 62 6c 65 73 2e 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74 20 65 61 73 79 20 74 6f 20 63 68 61 6e 67 65 20 6d 6f 64 65 73 2e 0a ~ "~" 7e 0a ~ "~ The label transformation and its alternates rely on" ~ " various labels, all of" 7e 20 20 20 54 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 61 6e 64 20 69 74 73 20 61 6c 74 65 72 6e 61 74 65 73 20 72 65 6c 79 20 6f 6e 20 76 61 72 69 6f 75 73 20 6c 61 62 65 6c 73 2c 20 61 6c 6c 20 6f 66 0a ~ "~ which must be defined elsewhere, lest the label loop fail" ~ " to converge:" 7e 20 77 68 69 63 68 20 6d 75 73 74 20 62 65 20 64 65 66 69 6e 65 64 20 65 6c 73 65 77 68 65 72 65 2c 20 6c 65 73 74 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 66 61 69 6c 20 74 6f 20 63 6f 6e 76 65 72 67 65 3a 0a ~ "~ "lit", "origin", "docol", "exit", ":", ";", and ";asm"." 7e 20 22 6c 69 74 22 2c 20 22 6f 72 69 67 69 6e 22 2c 20 22 64 6f 63 6f 6c 22 2c 20 22 65 78 69 74 22 2c 20 22 3a 22 2c 20 22 3b 22 2c 20 61 6e 64 20 22 3b 61 73 6d 22 2e 0a ~ "~" 7e 0a ~ "~ All of these limitations result in the compiled code" ~ " being, in effect," 7e 20 20 20 41 6c 6c 20 6f 66 20 74 68 65 73 65 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 72 65 73 75 6c 74 20 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 20 62 65 69 6e 67 2c 20 69 6e 20 65 66 66 65 63 74 2c 0a ~ "~ written in a dialect which is like Evocation, but more" ~ " restricted. This is" 7e 20 77 72 69 74 74 65 6e 20 69 6e 20 61 20 64 69 61 6c 65 63 74 20 77 68 69 63 68 20 69 73 20 6c 69 6b 65 20 45 76 6f 63 61 74 69 6f 6e 2c 20 62 75 74 20 6d 6f 72 65 20 72 65 73 74 72 69 63 74 65 64 2e 20 54 68 69 73 20 69 73 0a ~ "~ acceptable, because the label transform is intended for" ~ " compiling code that" 7e 20 61 63 63 65 70 74 61 62 6c 65 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 69 6e 74 65 6e 64 65 64 20 66 6f 72 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f 64 65 20 74 68 61 74 0a ~ "~ is an early part of Evocation itself, and the necessary" ~ " code has all been" 7e 20 69 73 20 61 6e 20 65 61 72 6c 79 20 70 61 72 74 20 6f 66 20 45 76 6f 63 61 74 69 6f 6e 20 69 74 73 65 6c 66 2c 20 61 6e 64 20 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 63 6f 64 65 20 68 61 73 20 61 6c 6c 20 62 65 65 6e 0a ~ "~ written to follow these restrictions." 7e 20 77 72 69 74 74 65 6e 20 74 6f 20 66 6f 6c 6c 6f 77 20 74 68 65 73 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 2e 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~ About the log-load transform" 7e 20 41 62 6f 75 74 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The log-load transform also operates on code that" ~ " compiles itself; it" 7e 20 20 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 61 6c 73 6f 20 6f 70 65 72 61 74 65 73 20 6f 6e 20 63 6f 64 65 20 74 68 61 74 20 63 6f 6d 70 69 6c 65 73 20 69 74 73 65 6c 66 3b 20 69 74 0a ~ "~ produces a compiled routine which, when run, appends the" ~ " original code to" 7e 20 70 72 6f 64 75 63 65 73 20 61 20 63 6f 6d 70 69 6c 65 64 20 72 6f 75 74 69 6e 65 20 77 68 69 63 68 2c 20 77 68 65 6e 20 72 75 6e 2c 20 61 70 70 65 6e 64 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 20 74 6f 0a ~ "~ the log. As the routine is run, each reference to another" ~ " word is resolved" 7e 20 74 68 65 20 6c 6f 67 2e 20 41 73 20 74 68 65 20 72 6f 75 74 69 6e 65 20 69 73 20 72 75 6e 2c 20 65 61 63 68 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 61 6e 6f 74 68 65 72 20 77 6f 72 64 20 69 73 20 72 65 73 6f 6c 76 65 64 0a ~ "~ by looking up the name of the target word in the log." ~ " Furthermore, these" 7e 20 62 79 20 6c 6f 6f 6b 69 6e 67 20 75 70 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 74 61 72 67 65 74 20 77 6f 72 64 20 69 6e 20 74 68 65 20 6c 6f 67 2e 20 46 75 72 74 68 65 72 6d 6f 72 65 2c 20 74 68 65 73 65 0a ~ "~ lookups are done using log-load-find, defined in" ~ " language/static/log-load.e," 7e 20 6c 6f 6f 6b 75 70 73 20 61 72 65 20 64 6f 6e 65 20 75 73 69 6e 67 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2c 20 64 65 66 69 6e 65 64 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 6c 6f 67 2d 6c 6f 61 64 2e 65 2c 0a ~ "~ which accepts a pointer to the log's base address as a" ~ " parameter. See that" 7e 20 77 68 69 63 68 20 61 63 63 65 70 74 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 6c 6f 67 27 73 20 62 61 73 65 20 61 64 64 72 65 73 73 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 2e 20 53 65 65 20 74 68 61 74 0a ~ "~ file for more explanation of what the log is and why it's" ~ " important. Thus," 7e 20 66 69 6c 65 20 66 6f 72 20 6d 6f 72 65 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 6f 66 20 77 68 61 74 20 74 68 65 20 6c 6f 67 20 69 73 20 61 6e 64 20 77 68 79 20 69 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 2e 20 54 68 75 73 2c 0a ~ "~ unlike normal accesses to the log, this routine doesn't" ~ " rely on already" 7e 20 75 6e 6c 69 6b 65 20 6e 6f 72 6d 61 6c 20 61 63 63 65 73 73 65 73 20 74 6f 20 74 68 65 20 6c 6f 67 2c 20 74 68 69 73 20 72 6f 75 74 69 6e 65 20 64 6f 65 73 6e 27 74 20 72 65 6c 79 20 6f 6e 20 61 6c 72 65 61 64 79 0a ~ "~ having the log's base address hardcoded into it at the" ~ " time of its own" 7e 20 68 61 76 69 6e 67 20 74 68 65 20 6c 6f 67 27 73 20 62 61 73 65 20 61 64 64 72 65 73 73 20 68 61 72 64 63 6f 64 65 64 20 69 6e 74 6f 20 69 74 20 61 74 20 74 68 65 20 74 69 6d 65 20 6f 66 20 69 74 73 20 6f 77 6e 0a ~ "~ compilation. The log-load transform is suitable for" ~ " implementing the core" 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2e 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 73 75 69 74 61 62 6c 65 20 66 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 74 68 65 20 63 6f 72 65 0a ~ "~ responsibilities of the warm-start routine provided by" 7e 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 20 6f 66 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 70 72 6f 76 69 64 65 64 20 62 79 0a ~ "~ compilation/execution.e, relying on only a few specific" ~ " words that it" 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 65 78 65 63 75 74 69 6f 6e 2e 65 2c 20 72 65 6c 79 69 6e 67 20 6f 6e 20 6f 6e 6c 79 20 61 20 66 65 77 20 73 70 65 63 69 66 69 63 20 77 6f 72 64 73 20 74 68 61 74 20 69 74 0a ~ "~ statically references via labels." 7e 20 73 74 61 74 69 63 61 6c 6c 79 20 72 65 66 65 72 65 6e 63 65 73 20 76 69 61 20 6c 61 62 65 6c 73 2e 0a ~ "~" 7e 0a ~ "~ Much like the label transform, the log-load transform" ~ " provides alternate" 7e 20 20 20 4d 75 63 68 20 6c 69 6b 65 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 70 72 6f 76 69 64 65 73 20 61 6c 74 65 72 6e 61 74 65 0a ~ "~ versions of certain immediate words used in word" ~ " definition. Also like the" 7e 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 63 65 72 74 61 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 73 20 75 73 65 64 20 69 6e 20 77 6f 72 64 20 64 65 66 69 6e 69 74 69 6f 6e 2e 20 41 6c 73 6f 20 6c 69 6b 65 20 74 68 65 0a ~ "~ label transform, it provides its own copies of "here" and" ~ " "latest"." 7e 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 69 74 20 70 72 6f 76 69 64 65 73 20 69 74 73 20 6f 77 6e 20 63 6f 70 69 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 2e 0a ~ "~" 7e 0a ~ "~ The log-load transform provides alternates for a" ~ " significantly broader set" 7e 20 20 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 70 72 6f 76 69 64 65 73 20 61 6c 74 65 72 6e 61 74 65 73 20 66 6f 72 20 61 20 73 69 67 6e 69 66 69 63 61 6e 74 6c 79 20 62 72 6f 61 64 65 72 20 73 65 74 0a ~ "~ of words than the label transform, including all the" ~ " flow-control words such" 7e 20 6f 66 20 77 6f 72 64 73 20 74 68 61 6e 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 69 6e 63 6c 75 64 69 6e 67 20 61 6c 6c 20 74 68 65 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 20 73 75 63 68 0a ~ "~ as if-else. It runs its own alternates immediately, but" ~ " unlike the label" 7e 20 61 73 20 69 66 2d 65 6c 73 65 2e 20 49 74 20 72 75 6e 73 20 69 74 73 20 6f 77 6e 20 61 6c 74 65 72 6e 61 74 65 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 2c 20 62 75 74 20 75 6e 6c 69 6b 65 20 74 68 65 20 6c 61 62 65 6c 0a ~ "~ transform, immediate execution for the log-load transform" ~ " is not actually" 7e 20 74 72 61 6e 73 66 6f 72 6d 2c 20 69 6d 6d 65 64 69 61 74 65 20 65 78 65 63 75 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 6e 6f 74 20 61 63 74 75 61 6c 6c 79 0a ~ "~ immediate; it is compiled into words which will have" ~ " those immediate effects" 7e 20 69 6d 6d 65 64 69 61 74 65 3b 20 69 74 20 69 73 20 63 6f 6d 70 69 6c 65 64 20 69 6e 74 6f 20 77 6f 72 64 73 20 77 68 69 63 68 20 77 69 6c 6c 20 68 61 76 65 20 74 68 6f 73 65 20 69 6d 6d 65 64 69 61 74 65 20 65 66 66 65 63 74 73 0a ~ "~ at the time the generated routine is run. The generated" ~ " routine can itself" 7e 20 61 74 20 74 68 65 20 74 69 6d 65 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 72 6f 75 74 69 6e 65 20 69 73 20 72 75 6e 2e 20 54 68 65 20 67 65 6e 65 72 61 74 65 64 20 72 6f 75 74 69 6e 65 20 63 61 6e 20 69 74 73 65 6c 66 0a ~ "~ be thought of as a compilation process, producing its" ~ " output on the log, so" 7e 20 62 65 20 74 68 6f 75 67 68 74 20 6f 66 20 61 73 20 61 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 2c 20 70 72 6f 64 75 63 69 6e 67 20 69 74 73 20 6f 75 74 70 75 74 20 6f 6e 20 74 68 65 20 6c 6f 67 2c 20 73 6f 0a ~ "~ doing things later for us still means doing them" ~ " immediately during the" 7e 20 64 6f 69 6e 67 20 74 68 69 6e 67 73 20 6c 61 74 65 72 20 66 6f 72 20 75 73 20 73 74 69 6c 6c 20 6d 65 61 6e 73 20 64 6f 69 6e 67 20 74 68 65 6d 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 64 75 72 69 6e 67 20 74 68 65 0a ~ "~ routine." 7e 20 72 6f 75 74 69 6e 65 2e 0a ~ "~" 7e 0a ~ "~ The log-load transform does impose a" ~ " no-forward-references requirement," 7e 20 20 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 64 6f 65 73 20 69 6d 70 6f 73 65 20 61 20 6e 6f 2d 66 6f 72 77 61 72 64 2d 72 65 66 65 72 65 6e 63 65 73 20 72 65 71 75 69 72 65 6d 65 6e 74 2c 0a ~ "~ though it is applied at the time the routine is run," ~ " rather than at the time" 7e 20 74 68 6f 75 67 68 20 69 74 20 69 73 20 61 70 70 6c 69 65 64 20 61 74 20 74 68 65 20 74 69 6d 65 20 74 68 65 20 72 6f 75 74 69 6e 65 20 69 73 20 72 75 6e 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 74 20 74 68 65 20 74 69 6d 65 0a ~ "~ of the transformation." 7e 20 6f 66 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ "~" 7e 0a ~ "~ The log-load transformation and its alternates rely on" ~ " the following" 7e 20 20 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 61 6e 64 20 69 74 73 20 61 6c 74 65 72 6e 61 74 65 73 20 72 65 6c 79 20 6f 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a ~ "~ labels, all of which must be defined elsewhere: TODO" 7e 20 6c 61 62 65 6c 73 2c 20 61 6c 6c 20 6f 66 20 77 68 69 63 68 20 6d 75 73 74 20 62 65 20 64 65 66 69 6e 65 64 20 65 6c 73 65 77 68 65 72 65 3a 20 54 4f 44 4f 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~ About the hex transform" 7e 20 41 62 6f 75 74 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The hex transform's role is a bit different. Whereas" ~ " the label and" 7e 20 20 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 72 6f 6c 65 20 69 73 20 61 20 62 69 74 20 64 69 66 66 65 72 65 6e 74 2e 20 57 68 65 72 65 61 73 20 74 68 65 20 6c 61 62 65 6c 20 61 6e 64 0a ~ "~ log-load transforms are used as part of generating an" ~ " executable binary, the" 7e 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 73 20 61 72 65 20 75 73 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 67 65 6e 65 72 61 74 69 6e 67 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 62 69 6e 61 72 79 2c 20 74 68 65 0a ~ "~ hex transform produces a commented hex dump that, when" ~ " later processed by" 7e 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 70 72 6f 64 75 63 65 73 20 61 20 63 6f 6d 6d 65 6e 74 65 64 20 68 65 78 20 64 75 6d 70 20 74 68 61 74 2c 20 77 68 65 6e 20 6c 61 74 65 72 20 70 72 6f 63 65 73 73 65 64 20 62 79 0a ~ "~ the "hex" tool, produces that same binary. It achieves" ~ " this by modifying" 7e 20 74 68 65 20 22 68 65 78 22 20 74 6f 6f 6c 2c 20 70 72 6f 64 75 63 65 73 20 74 68 61 74 20 73 61 6d 65 20 62 69 6e 61 72 79 2e 20 49 74 20 61 63 68 69 65 76 65 73 20 74 68 69 73 20 62 79 20 6d 6f 64 69 66 79 69 6e 67 0a ~ "~ various words which are core parts of Evocation to keep" ~ " track of appropriate" 7e 20 76 61 72 69 6f 75 73 20 77 6f 72 64 73 20 77 68 69 63 68 20 61 72 65 20 63 6f 72 65 20 70 61 72 74 73 20 6f 66 20 45 76 6f 63 61 74 69 6f 6e 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 61 70 70 72 6f 70 72 69 61 74 65 0a ~ "~ comments and other metadata, and modifying the output" ~ " facility to output a" 7e 20 63 6f 6d 6d 65 6e 74 73 20 61 6e 64 20 6f 74 68 65 72 20 6d 65 74 61 64 61 74 61 2c 20 61 6e 64 20 6d 6f 64 69 66 79 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 20 66 61 63 69 6c 69 74 79 20 74 6f 20 6f 75 74 70 75 74 20 61 0a ~ "~ hex dump with any attached comments, rather than raw" ~ " bytes." 7e 20 68 65 78 20 64 75 6d 70 20 77 69 74 68 20 61 6e 79 20 61 74 74 61 63 68 65 64 20 63 6f 6d 6d 65 6e 74 73 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 72 61 77 20 62 79 74 65 73 2e 0a ~ "~" 7e 0a ~ "~ By its nature, the hex transform needs to be able to" ~ " cope with other" 7e 20 20 20 42 79 20 69 74 73 20 6e 61 74 75 72 65 2c 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 6e 65 65 64 73 20 74 6f 20 62 65 20 61 62 6c 65 20 74 6f 20 63 6f 70 65 20 77 69 74 68 20 6f 74 68 65 72 0a ~ "~ transforms running inside itself; that is, the" ~ " transformation facility needs" 7e 20 74 72 61 6e 73 66 6f 72 6d 73 20 72 75 6e 6e 69 6e 67 20 69 6e 73 69 64 65 20 69 74 73 65 6c 66 3b 20 74 68 61 74 20 69 73 2c 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 66 61 63 69 6c 69 74 79 20 6e 65 65 64 73 0a ~ "~ to be reentrant. The other transforms don't have to cope" ~ " with that, since" 7e 20 74 6f 20 62 65 20 72 65 65 6e 74 72 61 6e 74 2e 20 54 68 65 20 6f 74 68 65 72 20 74 72 61 6e 73 66 6f 72 6d 73 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 63 6f 70 65 20 77 69 74 68 20 74 68 61 74 2c 20 73 69 6e 63 65 0a ~ "~ the code they run is mostly just about creating word" ~ " definitions, but the" 7e 20 74 68 65 20 63 6f 64 65 20 74 68 65 79 20 72 75 6e 20 69 73 20 6d 6f 73 74 6c 79 20 6a 75 73 74 20 61 62 6f 75 74 20 63 72 65 61 74 69 6e 67 20 77 6f 72 64 20 64 65 66 69 6e 69 74 69 6f 6e 73 2c 20 62 75 74 20 74 68 65 0a ~ "~ code given to the hex transform will normally include a" ~ " call to label-loop," 7e 20 63 6f 64 65 20 67 69 76 65 6e 20 74 6f 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 77 69 6c 6c 20 6e 6f 72 6d 61 6c 6c 79 20 69 6e 63 6c 75 64 65 20 61 20 63 61 6c 6c 20 74 6f 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2c 0a ~ "~ all the memory manipulation that happens as part of" ~ " binary generation, and" 7e 20 61 6c 6c 20 74 68 65 20 6d 65 6d 6f 72 79 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 74 68 61 74 20 68 61 70 70 65 6e 73 20 61 73 20 70 61 72 74 20 6f 66 20 62 69 6e 61 72 79 20 67 65 6e 65 72 61 74 69 6f 6e 2c 20 61 6e 64 0a ~ "~ various output words." 7e 20 76 61 72 69 6f 75 73 20 6f 75 74 70 75 74 20 77 6f 72 64 73 2e 0a ~ "~" 7e 0a ~ "~ While the label and log-load transforms allow Evocation" ~ " to be a" 7e 20 20 20 57 68 69 6c 65 20 74 68 65 20 6c 61 62 65 6c 20 61 6e 64 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 73 20 61 6c 6c 6f 77 20 45 76 6f 63 61 74 69 6f 6e 20 74 6f 20 62 65 20 61 0a ~ "~ self-hosting compiler, the hex transform attains the even" ~ " higher bar of" 7e 20 73 65 6c 66 2d 68 6f 73 74 69 6e 67 20 63 6f 6d 70 69 6c 65 72 2c 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 61 74 74 61 69 6e 73 20 74 68 65 20 65 76 65 6e 20 68 69 67 68 65 72 20 62 61 72 20 6f 66 0a ~ "~ making Evocation a "self-bootstrapping" compiler, able to" ~ " create a running" 7e 20 6d 61 6b 69 6e 67 20 45 76 6f 63 61 74 69 6f 6e 20 61 20 22 73 65 6c 66 2d 62 6f 6f 74 73 74 72 61 70 70 69 6e 67 22 20 63 6f 6d 70 69 6c 65 72 2c 20 61 62 6c 65 20 74 6f 20 63 72 65 61 74 65 20 61 20 72 75 6e 6e 69 6e 67 0a ~ "~ copy of itself without having any sort of pre-existing" ~ " compiler at all, only" 7e 20 63 6f 70 79 20 6f 66 20 69 74 73 65 6c 66 20 77 69 74 68 6f 75 74 20 68 61 76 69 6e 67 20 61 6e 79 20 73 6f 72 74 20 6f 66 20 70 72 65 2d 65 78 69 73 74 69 6e 67 20 63 6f 6d 70 69 6c 65 72 20 61 74 20 61 6c 6c 2c 20 6f 6e 6c 79 0a ~ "~ a hex converter or similar small tool. The idea is that" ~ " the hex converter is" 7e 20 61 20 68 65 78 20 63 6f 6e 76 65 72 74 65 72 20 6f 72 20 73 69 6d 69 6c 61 72 20 73 6d 61 6c 6c 20 74 6f 6f 6c 2e 20 54 68 65 20 69 64 65 61 20 69 73 20 74 68 61 74 20 74 68 65 20 68 65 78 20 63 6f 6e 76 65 72 74 65 72 20 69 73 0a ~ "~ small and simple enough that it's easy to perform a" ~ " BINARY audit on, and" 7e 20 73 6d 61 6c 6c 20 61 6e 64 20 73 69 6d 70 6c 65 20 65 6e 6f 75 67 68 20 74 68 61 74 20 69 74 27 73 20 65 61 73 79 20 74 6f 20 70 65 72 66 6f 72 6d 20 61 20 42 49 4e 41 52 59 20 61 75 64 69 74 20 6f 6e 2c 20 61 6e 64 0a ~ "~ that there need be no other binary artifacts in the chain" ~ " of trust." 7e 20 74 68 61 74 20 74 68 65 72 65 20 6e 65 65 64 20 62 65 20 6e 6f 20 6f 74 68 65 72 20 62 69 6e 61 72 79 20 61 72 74 69 66 61 63 74 73 20 69 6e 20 74 68 65 20 63 68 61 69 6e 20 6f 66 20 74 72 75 73 74 2e 0a ~ "~" 7e 0a ~ "~ This is not a new concept, but as far as Irenes are" ~ " aware this name for it" 7e 20 20 20 54 68 69 73 20 69 73 20 6e 6f 74 20 61 20 6e 65 77 20 63 6f 6e 63 65 70 74 2c 20 62 75 74 20 61 73 20 66 61 72 20 61 73 20 49 72 65 6e 65 73 20 61 72 65 20 61 77 61 72 65 20 74 68 69 73 20 6e 61 6d 65 20 66 6f 72 20 69 74 0a ~ "~ is a new coinage. The approach of using a hex-to-binary" ~ " conversion tool as" 7e 20 69 73 20 61 20 6e 65 77 20 63 6f 69 6e 61 67 65 2e 20 54 68 65 20 61 70 70 72 6f 61 63 68 20 6f 66 20 75 73 69 6e 67 20 61 20 68 65 78 2d 74 6f 2d 62 69 6e 61 72 79 20 63 6f 6e 76 65 72 73 69 6f 6e 20 74 6f 6f 6c 20 61 73 0a ~ "~ the initial bootstrapping stage is due to MesCC, which is" ~ " quite inspiring in" 7e 20 74 68 65 20 69 6e 69 74 69 61 6c 20 62 6f 6f 74 73 74 72 61 70 70 69 6e 67 20 73 74 61 67 65 20 69 73 20 64 75 65 20 74 6f 20 4d 65 73 43 43 2c 20 77 68 69 63 68 20 69 73 20 71 75 69 74 65 20 69 6e 73 70 69 72 69 6e 67 20 69 6e 0a ~ "~ that regard." 7e 20 74 68 61 74 20 72 65 67 61 72 64 2e 0a ~ "~" 7e 0a ~ "~ The key insight is that, some sense, the difference" ~ " between source code" 7e 20 20 20 54 68 65 20 6b 65 79 20 69 6e 73 69 67 68 74 20 69 73 20 74 68 61 74 2c 20 73 6f 6d 65 20 73 65 6e 73 65 2c 20 74 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 73 6f 75 72 63 65 20 63 6f 64 65 0a ~ "~ and binary is the ability to have comments." 7e 20 61 6e 64 20 62 69 6e 61 72 79 20 69 73 20 74 68 65 20 61 62 69 6c 69 74 79 20 74 6f 20 68 61 76 65 20 63 6f 6d 6d 65 6e 74 73 2e 0a ~ "~" 7e 0a ~ "~ The hex transform keeps some large, complex state as it" ~ " runs, unlike the" 7e 20 20 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 6b 65 65 70 73 20 73 6f 6d 65 20 6c 61 72 67 65 2c 20 63 6f 6d 70 6c 65 78 20 73 74 61 74 65 20 61 73 20 69 74 20 72 75 6e 73 2c 20 75 6e 6c 69 6b 65 20 74 68 65 0a ~ "~ label and log-load transforms, which only require very" ~ " simple state. This" 7e 20 6c 61 62 65 6c 20 61 6e 64 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 73 2c 20 77 68 69 63 68 20 6f 6e 6c 79 20 72 65 71 75 69 72 65 20 76 65 72 79 20 73 69 6d 70 6c 65 20 73 74 61 74 65 2e 20 54 68 69 73 0a ~ "~ state is called the "output metadata". Entries in the" ~ " output metadata are" 7e 20 73 74 61 74 65 20 69 73 20 63 61 6c 6c 65 64 20 74 68 65 20 22 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 22 2e 20 45 6e 74 72 69 65 73 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 61 72 65 0a ~ "~ created and modified as the code under transform runs, by" ~ " "magic comments"" 7e 20 63 72 65 61 74 65 64 20 61 6e 64 20 6d 6f 64 69 66 69 65 64 20 61 73 20 74 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 20 72 75 6e 73 2c 20 62 79 20 22 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 22 0a ~ "~ embedded within it. There is a complex command language" ~ " for these comments," 7e 20 65 6d 62 65 64 64 65 64 20 77 69 74 68 69 6e 20 69 74 2e 20 54 68 65 72 65 20 69 73 20 61 20 63 6f 6d 70 6c 65 78 20 63 6f 6d 6d 61 6e 64 20 6c 61 6e 67 75 61 67 65 20 66 6f 72 20 74 68 65 73 65 20 63 6f 6d 6d 65 6e 74 73 2c 0a ~ "~ which must be understood to write code designed to make" ~ " good use of the hex" 7e 20 77 68 69 63 68 20 6d 75 73 74 20 62 65 20 75 6e 64 65 72 73 74 6f 6f 64 20 74 6f 20 77 72 69 74 65 20 63 6f 64 65 20 64 65 73 69 67 6e 65 64 20 74 6f 20 6d 61 6b 65 20 67 6f 6f 64 20 75 73 65 20 6f 66 20 74 68 65 20 68 65 78 0a ~ "~ transform. Fortunately, that's really just" ~ " assembly-language" 7e 20 74 72 61 6e 73 66 6f 72 6d 2e 20 46 6f 72 74 75 6e 61 74 65 6c 79 2c 20 74 68 61 74 27 73 20 72 65 61 6c 6c 79 20 6a 75 73 74 20 61 73 73 65 6d 62 6c 79 2d 6c 61 6e 67 75 61 67 65 0a ~ "~ implementations." 7e 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2e 0a ~ "~" 7e 0a ~ "~ It's quite an intense topic, and many readers may wish" ~ " only to know that" 7e 20 20 20 49 74 27 73 20 71 75 69 74 65 20 61 6e 20 69 6e 74 65 6e 73 65 20 74 6f 70 69 63 2c 20 61 6e 64 20 6d 61 6e 79 20 72 65 61 64 65 72 73 20 6d 61 79 20 77 69 73 68 20 6f 6e 6c 79 20 74 6f 20 6b 6e 6f 77 20 74 68 61 74 0a ~ "~ the hex transform exists, not how it's structured. So," ~ " details on the output" 7e 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 65 78 69 73 74 73 2c 20 6e 6f 74 20 68 6f 77 20 69 74 27 73 20 73 74 72 75 63 74 75 72 65 64 2e 20 53 6f 2c 20 64 65 74 61 69 6c 73 20 6f 6e 20 74 68 65 20 6f 75 74 70 75 74 0a ~ "~ metadata and the magic comments are described below," ~ " under "hex transform" 7e 20 6d 65 74 61 64 61 74 61 20 61 6e 64 20 74 68 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 64 65 73 63 72 69 62 65 64 20 62 65 6c 6f 77 2c 20 75 6e 64 65 72 20 22 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ implementation", rather than here." 7e 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 22 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 68 65 72 65 2e 0a ~ "~" 7e 0a ~ "~ The hex transform DOES NOT WORK yet. It's still in" ~ " development." 7e 20 20 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 44 4f 45 53 20 4e 4f 54 20 57 4f 52 4b 20 79 65 74 2e 20 49 74 27 73 20 73 74 69 6c 6c 20 69 6e 20 64 65 76 65 6c 6f 70 6d 65 6e 74 2e 0a ~ "~ TODO update this note when it does work" 7e 20 54 4f 44 4f 20 75 70 64 61 74 65 20 74 68 69 73 20 6e 6f 74 65 20 77 68 65 6e 20 69 74 20 64 6f 65 73 20 77 6f 72 6b 0a ~ "" 0a ~ "" 0a ~ "~ Address-management helpers" 7e 20 41 64 64 72 65 73 73 2d 6d 61 6e 61 67 65 6d 65 6e 74 20 68 65 6c 70 65 72 73 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The facilities in this section are used as helper code" ~ " in the" 7e 20 20 20 54 68 65 20 66 61 63 69 6c 69 74 69 65 73 20 69 6e 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 61 72 65 20 75 73 65 64 20 61 73 20 68 65 6c 70 65 72 20 63 6f 64 65 20 69 6e 20 74 68 65 0a ~ "~ implementations of all three transforms." 7e 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 6f 66 20 61 6c 6c 20 74 68 72 65 65 20 74 72 61 6e 73 66 6f 72 6d 73 2e 0a ~ "" 0a ~ "" 0a ~ "~ We have a bunch of accessors for the transformation" ~ " state structure, which" 7e 20 20 20 57 65 20 68 61 76 65 20 61 20 62 75 6e 63 68 20 6f 66 20 61 63 63 65 73 73 6f 72 73 20 66 6f 72 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 73 74 61 74 65 20 73 74 72 75 63 74 75 72 65 2c 20 77 68 69 63 68 0a ~ "~ are all functions from pointers to pointers. We also" ~ " define a global" 7e 20 61 72 65 20 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 70 6f 69 6e 74 65 72 73 2e 20 57 65 20 61 6c 73 6f 20 64 65 66 69 6e 65 20 61 20 67 6c 6f 62 61 6c 0a ~ "~ variable which points to the transformation state." 7e 20 76 61 72 69 61 62 6c 65 20 77 68 69 63 68 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 73 74 61 74 65 2e 0a ~ ": transformation-state-saved-here ;" 3a 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 3b 0a ~ ": transformation-state-saved-latest 8 + ;" 3a 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 38 20 2b 20 3b 0a ~ ": transformation-state-output-buffer-start 2 8 * + ;" 3a 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 32 20 38 20 2a 20 2b 20 3b 0a ~ ": transformation-state-user-stack-depth 3 8 * + ;" 3a 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 33 20 38 20 2a 20 2b 20 3b 0a ~ ": transformation-state-label-scratch 4 8 * + ;" 3a 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6c 61 62 65 6c 2d 73 63 72 61 74 63 68 20 34 20 38 20 2a 20 2b 20 3b 0a ~ ": transformation-state-output-metadata 5 8 * + ;" 3a 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 35 20 38 20 2a 20 2b 20 3b 0a ~ ": allocate-transformation-state" 3a 20 61 6c 6c 6f 63 61 74 65 2d 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 0a ~ " 6 8 * allocate" 20 20 36 20 38 20 2a 20 61 6c 6c 6f 63 61 74 65 0a ~ " dup transformation-state-saved-here 0 swap !" 20 20 64 75 70 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 30 20 73 77 61 70 20 21 0a ~ " dup transformation-state-saved-latest 0 swap !" 20 20 64 75 70 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 30 20 73 77 61 70 20 21 0a ~ " dup transformation-state-output-buffer-start 0 swap !" 20 20 64 75 70 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 30 20 73 77 61 70 20 21 0a ~ " dup transformation-state-user-stack-depth 0 swap !" 20 20 64 75 70 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 30 20 73 77 61 70 20 21 0a ~ " dup transformation-state-label-scratch 0 swap !" 20 20 64 75 70 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6c 61 62 65 6c 2d 73 63 72 61 74 63 68 20 30 20 73 77 61 70 20 21 0a ~ " dup transformation-state-output-metadata 0 swap ! ;" 20 20 64 75 70 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 30 20 73 77 61 70 20 21 20 3b 0a ~ "allocate-transformation-state s" transformation-state"" ~ " variable" 61 6c 6c 6f 63 61 74 65 2d 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 73 22 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 22 20 76 61 72 69 61 62 6c 65 0a ~ "" 0a ~ "" 0a ~ "~ When calling the label facility during a" ~ " transformation, it's necessary" 7e 20 20 20 57 68 65 6e 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 6c 61 62 65 6c 20 66 61 63 69 6c 69 74 79 20 64 75 72 69 6e 67 20 61 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2c 20 69 74 27 73 20 6e 65 63 65 73 73 61 72 79 0a ~ "~ to use the real, non-wrapped "here" and "latest"." 7e 20 74 6f 20 75 73 65 20 74 68 65 20 72 65 61 6c 2c 20 6e 6f 6e 2d 77 72 61 70 70 65 64 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 2e 0a ~ ": swap-transform-variables" 3a 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " here @ transformation-state" ~ " transformation-state-saved-here @" 20 20 68 65 72 65 20 40 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 40 0a ~ " here ! transformation-state" ~ " transformation-state-saved-here !" 20 20 68 65 72 65 20 21 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 21 0a ~ " latest @ transformation-state" ~ " transformation-state-saved-latest @" 20 20 6c 61 74 65 73 74 20 40 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 40 0a ~ " latest ! transformation-state" ~ " transformation-state-saved-latest ! ;" 20 20 6c 61 74 65 73 74 20 21 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 21 20 3b 0a ~ "" 0a ~ "~ We deal with a few address spaces. There's the "host"" ~ " address space, the" 7e 20 20 20 57 65 20 64 65 61 6c 20 77 69 74 68 20 61 20 66 65 77 20 61 64 64 72 65 73 73 20 73 70 61 63 65 73 2e 20 54 68 65 72 65 27 73 20 74 68 65 20 22 68 6f 73 74 22 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2c 20 74 68 65 0a ~ "~ space this process performing the compilation is using" ~ " for itself. There's" 7e 20 73 70 61 63 65 20 74 68 69 73 20 70 72 6f 63 65 73 73 20 70 65 72 66 6f 72 6d 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 69 73 20 75 73 69 6e 67 20 66 6f 72 20 69 74 73 65 6c 66 2e 20 54 68 65 72 65 27 73 0a ~ "~ the "target" address space, the address space that will" ~ " exist later, when" 7e 20 74 68 65 20 22 74 61 72 67 65 74 22 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2c 20 74 68 65 20 61 64 64 72 65 73 73 20 73 70 61 63 65 20 74 68 61 74 20 77 69 6c 6c 20 65 78 69 73 74 20 6c 61 74 65 72 2c 20 77 68 65 6e 0a ~ "~ the program we've compiled is running." 7e 20 74 68 65 20 70 72 6f 67 72 61 6d 20 77 65 27 76 65 20 63 6f 6d 70 69 6c 65 64 20 69 73 20 72 75 6e 6e 69 6e 67 2e 0a ~ "~" 7e 0a ~ "~ Then there's "offsets", which are relative to the start" ~ " of the output" 7e 20 20 20 54 68 65 6e 20 74 68 65 72 65 27 73 20 22 6f 66 66 73 65 74 73 22 2c 20 77 68 69 63 68 20 61 72 65 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 0a ~ "~ buffer. For clarity's sake, we always refer to these as" ~ " offsets, rather than" 7e 20 62 75 66 66 65 72 2e 20 46 6f 72 20 63 6c 61 72 69 74 79 27 73 20 73 61 6b 65 2c 20 77 65 20 61 6c 77 61 79 73 20 72 65 66 65 72 20 74 6f 20 74 68 65 73 65 20 61 73 20 6f 66 66 73 65 74 73 2c 20 72 61 74 68 65 72 20 74 68 61 6e 0a ~ "~ as addresses." 7e 20 61 73 20 61 64 64 72 65 73 73 65 73 2e 0a ~ "~" 7e 0a ~ "~ When we define labels for compiled words, we set their" ~ " values to be" 7e 20 20 20 57 68 65 6e 20 77 65 20 64 65 66 69 6e 65 20 6c 61 62 65 6c 73 20 66 6f 72 20 63 6f 6d 70 69 6c 65 64 20 77 6f 72 64 73 2c 20 77 65 20 73 65 74 20 74 68 65 69 72 20 76 61 6c 75 65 73 20 74 6f 20 62 65 0a ~ "~ offsets pointing to the generated codeword. This is done" ~ " by" 7e 20 6f 66 66 73 65 74 73 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 77 6f 72 64 2e 20 54 68 69 73 20 69 73 20 64 6f 6e 65 20 62 79 0a ~ "~ label-create-alternate. We then need to convert them" ~ " either to the host or" 7e 20 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 2e 20 57 65 20 74 68 65 6e 20 6e 65 65 64 20 74 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 6d 20 65 69 74 68 65 72 20 74 6f 20 74 68 65 20 68 6f 73 74 20 6f 72 0a ~ "~ the target address space, depending on how we're using" ~ " them." 7e 20 74 68 65 20 74 61 72 67 65 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2c 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 68 6f 77 20 77 65 27 72 65 20 75 73 69 6e 67 20 74 68 65 6d 2e 0a ~ "~" 7e 0a ~ "~ There's no approach here that isn't confusing, but the" ~ " hope is that by" 7e 20 20 20 54 68 65 72 65 27 73 20 6e 6f 20 61 70 70 72 6f 61 63 68 20 68 65 72 65 20 74 68 61 74 20 69 73 6e 27 74 20 63 6f 6e 66 75 73 69 6e 67 2c 20 62 75 74 20 74 68 65 20 68 6f 70 65 20 69 73 20 74 68 61 74 20 62 79 0a ~ "~ using offsets, so that we always have to convert them" ~ " regardless of what" 7e 20 75 73 69 6e 67 20 6f 66 66 73 65 74 73 2c 20 73 6f 20 74 68 61 74 20 77 65 20 61 6c 77 61 79 73 20 68 61 76 65 20 74 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 6d 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 61 74 0a ~ "~ we're doing with them, we won't miss a spot where" ~ " conversion needs to" 7e 20 77 65 27 72 65 20 64 6f 69 6e 67 20 77 69 74 68 20 74 68 65 6d 2c 20 77 65 20 77 6f 6e 27 74 20 6d 69 73 73 20 61 20 73 70 6f 74 20 77 68 65 72 65 20 63 6f 6e 76 65 72 73 69 6f 6e 20 6e 65 65 64 73 20 74 6f 0a ~ "~ happen." 7e 20 68 61 70 70 65 6e 2e 0a ~ "~" 7e 0a ~ "~ (output offset -- target address)" 7e 20 28 6f 75 74 70 75 74 20 6f 66 66 73 65 74 20 2d 2d 20 74 61 72 67 65 74 20 61 64 64 72 65 73 73 29 0a ~ ": offset-to-target-address-space" 3a 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 0a ~ " ~ Don't transform null pointers." 20 20 7e 20 44 6f 6e 27 74 20 74 72 61 6e 73 66 6f 72 6d 20 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 73 2e 0a ~ " dup { swap-transform-variables L@' origin" ~ " swap-transform-variables + } if ;" 20 20 64 75 70 20 7b 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 4c 40 27 20 6f 72 69 67 69 6e 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 2b 20 7d 20 69 66 20 3b 0a ~ "" 0a ~ "~ (target address -- output offset)" 7e 20 28 74 61 72 67 65 74 20 61 64 64 72 65 73 73 20 2d 2d 20 6f 75 74 70 75 74 20 6f 66 66 73 65 74 29 0a ~ ": target-address-space-to-offset" 3a 20 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 6f 66 66 73 65 74 0a ~ " ~ Don't transform null pointers." 20 20 7e 20 44 6f 6e 27 74 20 74 72 61 6e 73 66 6f 72 6d 20 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 73 2e 0a ~ " dup { swap-transform-variables L@' origin" ~ " swap-transform-variables - } if ;" 20 20 64 75 70 20 7b 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 4c 40 27 20 6f 72 69 67 69 6e 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 2d 20 7d 20 69 66 20 3b 0a ~ "" 0a ~ "~ (output offset -- host address)" 7e 20 28 6f 75 74 70 75 74 20 6f 66 66 73 65 74 20 2d 2d 20 68 6f 73 74 20 61 64 64 72 65 73 73 29 0a ~ ": offset-to-host-address-space" 3a 20 6f 66 66 73 65 74 2d 74 6f 2d 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 0a ~ " ~ Don't transform null pointers" 20 20 7e 20 44 6f 6e 27 74 20 74 72 61 6e 73 66 6f 72 6d 20 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 73 0a ~ " dup { transformation-state" ~ " transformation-state-output-buffer-start @ + } if ;" 20 20 64 75 70 20 7b 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 20 2b 20 7d 20 69 66 20 3b ~ "" 0a ~ "" 0a ~ "~ (host address --output offset)" 7e 20 28 68 6f 73 74 20 61 64 64 72 65 73 73 20 2d 2d 6f 75 74 70 75 74 20 6f 66 66 73 65 74 29 0a ~ ": host-address-space-to-offset" 3a 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 6f 66 66 73 65 74 0a ~ " ~ Don't transform null pointers" 20 20 7e 20 44 6f 6e 27 74 20 74 72 61 6e 73 66 6f 72 6d 20 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 73 0a ~ " dup { transformation-state" ~ " transformation-state-output-buffer-start @ - } if ;" 20 20 64 75 70 20 7b 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 20 2d 20 7d 20 69 66 20 3b ~ "" 0a ~ "" 0a ~ "~ (host address inside the output buffer -- target" ~ " address)" 7e 20 28 68 6f 73 74 20 61 64 64 72 65 73 73 20 69 6e 73 69 64 65 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 2d 2d 20 74 61 72 67 65 74 20 61 64 64 72 65 73 73 29 0a ~ ": host-address-space-to-target" 3a 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 74 61 72 67 65 74 0a ~ " host-address-space-to-offset" ~ " offset-to-target-address-space ;" 20 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 6f 66 66 73 65 74 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 3b 0a ~ "" 0a ~ "~ (target address -- host address)" 7e 20 28 74 61 72 67 65 74 20 61 64 64 72 65 73 73 20 2d 2d 20 68 6f 73 74 20 61 64 64 72 65 73 73 29 0a ~ ": target-address-space-to-host" 3a 20 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 68 6f 73 74 0a ~ " target-address-space-to-offset" ~ " offset-to-host-address-space ;" 20 20 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 6f 66 66 73 65 74 20 6f 66 66 73 65 74 2d 74 6f 2d 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 3b 0a ~ "" 0a ~ "" 0a ~ ": describe-transformation" 3a 20 64 65 73 63 72 69 62 65 2d 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 0a ~ " ." active here " here @ .hex64 space" 20 20 2e 22 20 20 20 20 20 20 20 20 61 63 74 69 76 65 20 68 65 72 65 20 22 20 68 65 72 65 20 40 20 2e 68 65 78 36 34 20 73 70 61 63 65 0a ~ " ." latest " latest @ .hex64 newline" 20 20 2e 22 20 6c 61 74 65 73 74 20 22 20 6c 61 74 65 73 74 20 40 20 2e 68 65 78 36 34 20 6e 65 77 6c 69 6e 65 0a ~ " ." saved here " transformation-state" ~ " transformation-state-saved-here" 20 20 2e 22 20 20 20 20 20 20 20 20 20 73 61 76 65 64 20 68 65 72 65 20 22 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 0a ~ " @ .hex64 space" 20 20 40 20 2e 68 65 78 36 34 20 73 70 61 63 65 0a ~ " ." latest " transformation-state" ~ " transformation-state-saved-latest" 20 20 2e 22 20 6c 61 74 65 73 74 20 22 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 0a ~ " @ .hex64 newline" 20 20 40 20 2e 68 65 78 36 34 20 6e 65 77 6c 69 6e 65 0a ~ " ." output start "" 20 20 2e 22 20 20 20 20 20 20 20 6f 75 74 70 75 74 20 73 74 61 72 74 20 22 0a ~ " transformation-state" ~ " transformation-state-output-buffer-start" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 0a ~ " @ .hex64 newline" 20 20 40 20 2e 68 65 78 36 34 20 6e 65 77 6c 69 6e 65 0a ~ " ." user stack depth "" 20 20 2e 22 20 20 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 22 0a ~ " transformation-state" ~ " transformation-state-user-stack-depth" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 0a ~ " @ .hex64 newline ;" 20 20 40 20 2e 68 65 78 36 34 20 6e 65 77 6c 69 6e 65 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ User stack depth tracking helper" 7e 20 55 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 74 72 61 63 6b 69 6e 67 20 68 65 6c 70 65 72 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The transformation facility offers a feature which" ~ " specific transforms can" 7e 20 20 20 54 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 66 61 63 69 6c 69 74 79 20 6f 66 66 65 72 73 20 61 20 66 65 61 74 75 72 65 20 77 68 69 63 68 20 73 70 65 63 69 66 69 63 20 74 72 61 6e 73 66 6f 72 6d 73 20 63 61 6e 0a ~ "~ use, or not, as they prefer, called user stack depth" ~ " tracking. The log-load" 7e 20 75 73 65 2c 20 6f 72 20 6e 6f 74 2c 20 61 73 20 74 68 65 79 20 70 72 65 66 65 72 2c 20 63 61 6c 6c 65 64 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 74 72 61 63 6b 69 6e 67 2e 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ "~ transform uses it; the label transform does not. The most" ~ " difficult part of" 7e 20 74 72 61 6e 73 66 6f 72 6d 20 75 73 65 73 20 69 74 3b 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 64 6f 65 73 20 6e 6f 74 2e 20 54 68 65 20 6d 6f 73 74 20 64 69 66 66 69 63 75 6c 74 20 70 61 72 74 20 6f 66 0a ~ "~ the tracking is the heler word below; it also relies on" ~ " the user-stack-depth" 7e 20 74 68 65 20 74 72 61 63 6b 69 6e 67 20 69 73 20 74 68 65 20 68 65 6c 65 72 20 77 6f 72 64 20 62 65 6c 6f 77 3b 20 69 74 20 61 6c 73 6f 20 72 65 6c 69 65 73 20 6f 6e 20 74 68 65 20 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 0a ~ "~ field of the transformation-state variable." 7e 20 66 69 65 6c 64 20 6f 66 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 76 61 72 69 61 62 6c 65 2e 0a ~ "~" 7e 0a ~ "~ What does user stack depth mean? Well, for every" ~ " transform there's some" 7e 20 20 20 57 68 61 74 20 64 6f 65 73 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 6d 65 61 6e 3f 20 57 65 6c 6c 2c 20 66 6f 72 20 65 76 65 72 79 20 74 72 61 6e 73 66 6f 72 6d 20 74 68 65 72 65 27 73 20 73 6f 6d 65 0a ~ "~ notion of running a word "immediately"; for the log-load" ~ " transform, it means" 7e 20 6e 6f 74 69 6f 6e 20 6f 66 20 72 75 6e 6e 69 6e 67 20 61 20 77 6f 72 64 20 22 69 6d 6d 65 64 69 61 74 65 6c 79 22 3b 20 66 6f 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2c 20 69 74 20 6d 65 61 6e 73 0a ~ "~ that the word runs at the time the generated log-load" ~ " routine executes. Each" 7e 20 74 68 61 74 20 74 68 65 20 77 6f 72 64 20 72 75 6e 73 20 61 74 20 74 68 65 20 74 69 6d 65 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 65 78 65 63 75 74 65 73 2e 20 45 61 63 68 0a ~ "~ time a word runs, it interacts with the value stack in" ~ " some way. Some words" 7e 20 74 69 6d 65 20 61 20 77 6f 72 64 20 72 75 6e 73 2c 20 69 74 20 69 6e 74 65 72 61 63 74 73 20 77 69 74 68 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 20 69 6e 20 73 6f 6d 65 20 77 61 79 2e 20 53 6f 6d 65 20 77 6f 72 64 73 0a ~ "~ are neutral; others result in a net increase or decrease" ~ " in its depth, which" 7e 20 61 72 65 20 6e 65 75 74 72 61 6c 3b 20 6f 74 68 65 72 73 20 72 65 73 75 6c 74 20 69 6e 20 61 20 6e 65 74 20 69 6e 63 72 65 61 73 65 20 6f 72 20 64 65 63 72 65 61 73 65 20 69 6e 20 69 74 73 20 64 65 70 74 68 2c 20 77 68 69 63 68 0a ~ "~ we call the delta. The running total of these deltas is" ~ " what we call the" 7e 20 77 65 20 63 61 6c 6c 20 74 68 65 20 64 65 6c 74 61 2e 20 54 68 65 20 72 75 6e 6e 69 6e 67 20 74 6f 74 61 6c 20 6f 66 20 74 68 65 73 65 20 64 65 6c 74 61 73 20 69 73 20 77 68 61 74 20 77 65 20 63 61 6c 6c 20 74 68 65 0a ~ "~ user stack depth. By "user" we mean that these are values" ~ " which were created" 7e 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 2e 20 42 79 20 22 75 73 65 72 22 20 77 65 20 6d 65 61 6e 20 74 68 61 74 20 74 68 65 73 65 20 61 72 65 20 76 61 6c 75 65 73 20 77 68 69 63 68 20 77 65 72 65 20 63 72 65 61 74 65 64 0a ~ "~ by and for the code being transformed, which the code" ~ " doing the transforming" 7e 20 62 79 20 61 6e 64 20 66 6f 72 20 74 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 74 72 61 6e 73 66 6f 72 6d 65 64 2c 20 77 68 69 63 68 20 74 68 65 20 63 6f 64 65 20 64 6f 69 6e 67 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 69 6e 67 0a ~ "~ must be careful not to interfere with." 7e 20 6d 75 73 74 20 62 65 20 63 61 72 65 66 75 6c 20 6e 6f 74 20 74 6f 20 69 6e 74 65 72 66 65 72 65 20 77 69 74 68 2e 0a ~ "~" 7e 0a ~ "~ Why do we need to do this? Recall that the log-load" ~ " routine is given the" 7e 20 20 20 57 68 79 20 64 6f 20 77 65 20 6e 65 65 64 20 74 6f 20 64 6f 20 74 68 69 73 3f 20 52 65 63 61 6c 6c 20 74 68 61 74 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 69 73 20 67 69 76 65 6e 20 74 68 65 0a ~ "~ log address as the only value on the stack when it" ~ " begins, and any time it" 7e 20 6c 6f 67 20 61 64 64 72 65 73 73 20 61 73 20 74 68 65 20 6f 6e 6c 79 20 76 61 6c 75 65 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 77 68 65 6e 20 69 74 20 62 65 67 69 6e 73 2c 20 61 6e 64 20 61 6e 79 20 74 69 6d 65 20 69 74 0a ~ "~ does something that requires looking at the log, it needs" ~ " to be able to find" 7e 20 64 6f 65 73 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 72 65 71 75 69 72 65 73 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 65 20 6c 6f 67 2c 20 69 74 20 6e 65 65 64 73 20 74 6f 20 62 65 20 61 62 6c 65 20 74 6f 20 66 69 6e 64 0a ~ "~ that address. The log-load routine runs as part of the" ~ " warm-start routine" 7e 20 74 68 61 74 20 61 64 64 72 65 73 73 2e 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 72 75 6e 73 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 0a ~ "~ (see compilation/execution.e), whose overall job is to" ~ " get Evocation into a" 7e 20 28 73 65 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 65 78 65 63 75 74 69 6f 6e 2e 65 29 2c 20 77 68 6f 73 65 20 6f 76 65 72 61 6c 6c 20 6a 6f 62 20 69 73 20 74 6f 20 67 65 74 20 45 76 6f 63 61 74 69 6f 6e 20 69 6e 74 6f 20 61 0a ~ "~ state where it can freely work with dynamically-allocated" ~ " data on the log" 7e 20 73 74 61 74 65 20 77 68 65 72 65 20 69 74 20 63 61 6e 20 66 72 65 65 6c 79 20 77 6f 72 6b 20 77 69 74 68 20 64 79 6e 61 6d 69 63 61 6c 6c 79 2d 61 6c 6c 6f 63 61 74 65 64 20 64 61 74 61 20 6f 6e 20 74 68 65 20 6c 6f 67 0a ~ "~ whose address isn't known at compile time. Therefore," ~ " necessarily, the" 7e 20 77 68 6f 73 65 20 61 64 64 72 65 73 73 20 69 73 6e 27 74 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 20 54 68 65 72 65 66 6f 72 65 2c 20 6e 65 63 65 73 73 61 72 69 6c 79 2c 20 74 68 65 0a ~ "~ log-load routine itself cannot assume access to any" ~ " scratch space; the value" 7e 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 69 74 73 65 6c 66 20 63 61 6e 6e 6f 74 20 61 73 73 75 6d 65 20 61 63 63 65 73 73 20 74 6f 20 61 6e 79 20 73 63 72 61 74 63 68 20 73 70 61 63 65 3b 20 74 68 65 20 76 61 6c 75 65 0a ~ "~ stack is the only place it can store anything it needs," ~ " most crucially" 7e 20 73 74 61 63 6b 20 69 73 20 74 68 65 20 6f 6e 6c 79 20 70 6c 61 63 65 20 69 74 20 63 61 6e 20 73 74 6f 72 65 20 61 6e 79 74 68 69 6e 67 20 69 74 20 6e 65 65 64 73 2c 20 6d 6f 73 74 20 63 72 75 63 69 61 6c 6c 79 0a ~ "~ including the log address." 7e 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 2e 0a ~ "~" 7e 0a ~ "~ Fortunately, it is possible for the transform's own" ~ " generated code to" 7e 20 20 20 46 6f 72 74 75 6e 61 74 65 6c 79 2c 20 69 74 20 69 73 20 70 6f 73 73 69 62 6c 65 20 66 6f 72 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 6f 77 6e 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 74 6f 0a ~ "~ cooperate with the transformed code so that they can both" ~ " share the stack," 7e 20 63 6f 6f 70 65 72 61 74 65 20 77 69 74 68 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61 6e 20 62 6f 74 68 20 73 68 61 72 65 20 74 68 65 20 73 74 61 63 6b 2c 0a ~ "~ as long as the log transform knows what the transformed" ~ " code is doing with" 7e 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 20 6c 6f 67 20 74 72 61 6e 73 66 6f 72 6d 20 6b 6e 6f 77 73 20 77 68 61 74 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 69 73 20 64 6f 69 6e 67 20 77 69 74 68 0a ~ "~ it. Unfortunately, there's no general way to know that." ~ " We achieve it by" 7e 20 69 74 2e 20 55 6e 66 6f 72 74 75 6e 61 74 65 6c 79 2c 20 74 68 65 72 65 27 73 20 6e 6f 20 67 65 6e 65 72 61 6c 20 77 61 79 20 74 6f 20 6b 6e 6f 77 20 74 68 61 74 2e 20 57 65 20 61 63 68 69 65 76 65 20 69 74 20 62 79 0a ~ "~ hard-coding a delta value for every single possible word," ~ " and looking up" 7e 20 68 61 72 64 2d 63 6f 64 69 6e 67 20 61 20 64 65 6c 74 61 20 76 61 6c 75 65 20 66 6f 72 20 65 76 65 72 79 20 73 69 6e 67 6c 65 20 70 6f 73 73 69 62 6c 65 20 77 6f 72 64 2c 20 61 6e 64 20 6c 6f 6f 6b 69 6e 67 20 75 70 0a ~ "~ that delta at transform-time, based on the word's name." ~ " Yes, that is quite a" 7e 20 74 68 61 74 20 64 65 6c 74 61 20 61 74 20 74 72 61 6e 73 66 6f 72 6d 2d 74 69 6d 65 2c 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 77 6f 72 64 27 73 20 6e 61 6d 65 2e 20 59 65 73 2c 20 74 68 61 74 20 69 73 20 71 75 69 74 65 20 61 0a ~ "~ thing to have to do, but it does mean we don't have to" ~ " think about this" 7e 20 74 68 69 6e 67 20 74 6f 20 68 61 76 65 20 74 6f 20 64 6f 2c 20 62 75 74 20 69 74 20 64 6f 65 73 20 6d 65 61 6e 20 77 65 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 74 68 69 6e 6b 20 61 62 6f 75 74 20 74 68 69 73 0a ~ "~ while writing the code we're transforming." 7e 20 77 68 69 6c 65 20 77 72 69 74 69 6e 67 20 74 68 65 20 63 6f 64 65 20 77 65 27 72 65 20 74 72 61 6e 73 66 6f 72 6d 69 6e 67 2e 0a ~ "~" 7e 0a ~ "~ It's worth noticing that the delta only applies to" ~ " things that happen" 7e 20 20 20 49 74 27 73 20 77 6f 72 74 68 20 6e 6f 74 69 63 69 6e 67 20 74 68 61 74 20 74 68 65 20 64 65 6c 74 61 20 6f 6e 6c 79 20 61 70 70 6c 69 65 73 20 74 6f 20 74 68 69 6e 67 73 20 74 68 61 74 20 68 61 70 70 65 6e 0a ~ "~ immediately. It does not apply to compiled words because" ~ " they run later, and" 7e 20 69 6d 6d 65 64 69 61 74 65 6c 79 2e 20 49 74 20 64 6f 65 73 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20 63 6f 6d 70 69 6c 65 64 20 77 6f 72 64 73 20 62 65 63 61 75 73 65 20 74 68 65 79 20 72 75 6e 20 6c 61 74 65 72 2c 20 61 6e 64 0a ~ "~ it does not apply to alternates because they run too" ~ " soon. Feel free to" 7e 20 69 74 20 64 6f 65 73 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20 61 6c 74 65 72 6e 61 74 65 73 20 62 65 63 61 75 73 65 20 74 68 65 79 20 72 75 6e 20 74 6f 6f 20 73 6f 6f 6e 2e 20 46 65 65 6c 20 66 72 65 65 20 74 6f 0a ~ "~ contemplate how confusing it is that transformation-time" ~ " is sooner than" 7e 20 63 6f 6e 74 65 6d 70 6c 61 74 65 20 68 6f 77 20 63 6f 6e 66 75 73 69 6e 67 20 69 74 20 69 73 20 74 68 61 74 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 74 69 6d 65 20 69 73 20 73 6f 6f 6e 65 72 20 74 68 61 6e 0a ~ "~ "immediate"." 7e 20 22 69 6d 6d 65 64 69 61 74 65 22 2e 0a ~ "~" 7e 0a ~ "~ (name pointer -- delta value)" 7e 20 28 6e 61 6d 65 20 70 6f 69 6e 74 65 72 20 2d 2d 20 64 65 6c 74 61 20 76 61 6c 75 65 29 0a ~ ": transform-get-stack-delta" 3a 20 74 72 61 6e 73 66 6f 72 6d 2d 67 65 74 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ " ~ From language/static/core.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 63 6f 72 65 2e 65 2e 0a ~ " dup s" docol" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 64 6f 63 6f 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" exit" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 65 78 69 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" swap" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 77 61 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" drop" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 64 72 6f 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 2drop" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 32 64 72 6f 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ The following are deliberate omissions: roll, unroll." 20 20 7e 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 72 65 20 64 65 6c 69 62 65 72 61 74 65 20 6f 6d 69 73 73 69 6f 6e 73 3a 20 72 6f 6c 6c 2c 20 75 6e 72 6f 6c 6c 2e 0a ~ " dup s" 3roll" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 33 72 6f 6c 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 3unroll" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 33 75 6e 72 6f 6c 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" dup" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 64 75 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 2dup" stringcmp 0 = { drop 2 exit } if" 20 20 64 75 70 20 73 22 20 32 64 75 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" +" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" -" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" *" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2a 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" /%" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 2f 25 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 1+" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 31 2b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 1-" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 31 2d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" =" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 3d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" !=" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 21 3d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" >" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 3e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" <" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 3c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" >=" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 3e 3d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" <=" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 3c 3d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" >unsigned" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 3e 75 6e 73 69 67 6e 65 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" =unsigned" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 3e 3d 75 6e 73 69 67 6e 65 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" <=unsigned" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 3c 3d 75 6e 73 69 67 6e 65 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" &" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 26 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" |" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 7c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" xor" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 78 6f 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" invert" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 69 6e 76 65 72 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lit" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 6c 69 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" litstring" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 6c 69 74 73 74 72 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" !" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" @" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 40 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" +!" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 2b 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" -!" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 2d 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 8!" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 38 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 8@" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 38 40 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 16!" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 31 36 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 16@" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 31 36 40 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 32!" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 33 32 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 32@" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 33 32 40 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" control!" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 63 6f 6e 74 72 6f 6c 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" control@" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 63 6f 6e 74 72 6f 6c 40 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" value!" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 76 61 6c 75 65 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" value@" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 76 61 6c 75 65 40 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" memcopy" stringcmp 0 = { drop -3 exit } if" 20 20 64 75 70 20 73 22 20 6d 65 6d 63 6f 70 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" memmove" stringcmp 0 = { drop -3 exit } if" 20 20 64 75 70 20 73 22 20 6d 65 6d 6d 6f 76 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" stringlen" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 74 72 69 6e 67 6c 65 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" reverse-stringlen" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 72 65 76 65 72 73 65 2d 73 74 72 69 6e 67 6c 65 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" reverse-padding-len" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 72 65 76 65 72 73 65 2d 70 61 64 64 69 6e 67 2d 6c 65 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" stringcmp" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 73 74 72 69 6e 67 63 6d 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" branch" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 62 72 61 6e 63 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 0branch" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 30 62 72 61 6e 63 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ This is kind of a big assumption." 20 20 7e 20 54 68 69 73 20 69 73 20 6b 69 6e 64 20 6f 66 20 61 20 62 69 67 20 61 73 73 75 6d 70 74 69 6f 6e 2e 0a ~ " dup s" execute" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 65 78 65 63 75 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" entry-to-execution-token" stringcmp 0 = { drop 0" ~ " exit } if" 20 20 64 75 70 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" execution-token-to-entry" stringcmp 0 = { drop 0" ~ " exit } if" 20 20 64 75 70 20 73 22 20 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 2d 74 6f 2d 65 6e 74 72 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" entry-flags@" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" entry-flags!" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 65 6e 74 72 79 2d 66 6c 61 67 73 21 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" entry-to-name" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pack64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pack32" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pack16" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pack8" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" packstring" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 73 74 72 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" packalign" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 61 6c 69 67 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" unpack64" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 75 6e 70 61 63 6b 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" unpack32" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 75 6e 70 61 63 6b 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" unpack16" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 75 6e 70 61 63 6b 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" unpack8" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 75 6e 70 61 63 6b 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" align-size" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 61 6c 69 67 6e 2d 73 69 7a 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" unpackalign" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 75 6e 70 61 63 6b 61 6c 69 67 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" crash" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 63 72 61 73 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" max" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 6d 61 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" min" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 6d 69 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" over" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 6f 76 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pick" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 70 69 63 6b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ The following are deliberate omissions: ndrop, ndup." 20 20 7e 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 72 65 20 64 65 6c 69 62 65 72 61 74 65 20 6f 6d 69 73 73 69 6f 6e 73 3a 20 6e 64 72 6f 70 2c 20 6e 64 75 70 2e 0a ~ " dup s" 3drop" stringcmp 0 = { drop -3 exit } if" 20 20 64 75 70 20 73 22 20 33 64 72 6f 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" 3dup" stringcmp 0 = { drop 3 exit } if" 20 20 64 75 70 20 73 22 20 33 64 75 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" &&" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 26 26 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" ||" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 7c 7c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" not" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6e 6f 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" negate" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6e 65 67 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" align-floor" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 61 6c 69 67 6e 2d 66 6c 6f 6f 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ From language/static/linux.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 6c 69 6e 75 78 2e 65 2e 0a ~ " dup s" sys-exit" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 73 79 73 2d 65 78 69 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sys-write" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 73 79 73 2d 77 72 69 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sys-read" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 73 79 73 2d 72 65 61 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ From language/static/output.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 6f 75 74 70 75 74 2e 65 2e 0a ~ " dup s" emitstring" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 65 6d 69 74 73 74 72 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" space" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 70 61 63 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" newline" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6e 65 77 6c 69 6e 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pow" stringcmp 0 = { drop 2 exit } if" 20 20 64 75 70 20 73 22 20 70 6f 77 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" logfloor" stringcmp 0 = { drop 2 exit } if" 20 20 64 75 70 20 73 22 20 6c 6f 67 66 6c 6f 6f 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" logceil" stringcmp 0 = { drop 2 exit } if" 20 20 64 75 70 20 73 22 20 6c 6f 67 63 65 69 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" .base-unsigned" stringcmp 0 = { drop -3 exit } if" 20 20 64 75 70 20 73 22 20 2e 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" .base" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 2e 62 61 73 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" ." stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" .hex" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2e 68 65 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" .hex8" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2e 68 65 78 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" .hex16" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2e 68 65 78 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" .hex32" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2e 68 65 78 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" .hex64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2e 68 65 78 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" .hexn" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 2e 68 65 78 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ From language/static/amd64.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 61 6d 64 36 34 2e 65 2e 0a ~ " dup s" :rax" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 61 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :rcx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 63 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :rdx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 64 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :rbx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 62 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :rsp" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 73 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :rbp" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 62 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :rsi" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 73 69 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :rdi" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 64 69 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :r8" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :r9" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 39 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :r10" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 31 30 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :r11" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 31 31 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :r12" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 31 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :r13" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 31 33 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :r14" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 31 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :r15" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 72 31 35 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :eax" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 65 61 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :ecx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 65 63 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :edx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 65 64 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :ebx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 65 62 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :esp" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 65 73 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :ebp" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 65 62 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :esi" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 65 73 69 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :edi" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 65 64 69 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :ax" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 61 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :dx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 64 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :bx" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 62 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :sp" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 73 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :bp" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 62 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :si" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 73 69 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :di" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 64 69 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :al" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cl" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :dl" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 64 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :bl" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 62 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :ah" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 61 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :ch" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :dh" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 64 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :bh" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 62 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-overflow" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 6f 76 65 72 66 6c 6f 77 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-no-overflow" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 6e 6f 2d 6f 76 65 72 66 6c 6f 77 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-below" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 62 65 6c 6f 77 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-above-equal" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 61 62 6f 76 65 2d 65 71 75 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-equal" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 65 71 75 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-not-equal" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 6e 6f 74 2d 65 71 75 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-below-equal" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 62 65 6c 6f 77 2d 65 71 75 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-above" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 61 62 6f 76 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-sign" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 73 69 67 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-not-sign" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 6e 6f 74 2d 73 69 67 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-even" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 65 76 65 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-odd" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 6f 64 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-less" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 6c 65 73 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-greater-equal" stringcmp 0 = { drop 1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 67 72 65 61 74 65 72 2d 65 71 75 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-less-equal" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 6c 65 73 73 2d 65 71 75 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :cc-greater" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 3a 63 63 2d 67 72 65 61 74 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" reg64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" extrareg64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 65 78 74 72 61 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" reg32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 67 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" reg16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 67 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" reg8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 67 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" scalefield" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 63 61 6c 65 66 69 65 6c 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" condition-code" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 6f 64 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-0" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 30 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-w" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 77 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-r" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-x" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-b" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-wr" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 77 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-wx" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 77 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-wb" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 77 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-rx" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 72 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-rb" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 72 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-xb" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 78 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-wrx" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 77 72 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-wrb" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 77 72 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-wxb" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 77 78 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-rxb" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 72 78 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rex-wrxb" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 78 2d 77 72 78 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" opcodereg" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 6f 70 63 6f 64 65 72 65 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" opcodecc" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 6f 70 63 6f 64 65 63 63 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" modrm" stringcmp 0 = { drop -3 exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 64 72 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sib" stringcmp 0 = { drop -3 exit } if" 20 20 64 75 70 20 73 22 20 73 69 62 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" addressing-reg64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" addressing-reg8" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 61 64 64 72 65 73 73 69 6e 67 2d 72 65 67 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" addressing-indirect-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" addressing-disp8-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" addressing-disp32-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 33 32 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" addressing-indexed-reg64" stringcmp 0 = { drop -4" ~ " exit } if" 20 20 64 75 70 20 73 22 20 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 34 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" addressing-disp8-indexed-reg64" stringcmp 0 = {" ~ " drop -5 exit } if" 20 20 64 75 70 20 73 22 20 61 64 64 72 65 73 73 69 6e 67 2d 64 69 73 70 38 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 35 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" cld" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 63 6c 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" std" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 74 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" syscall" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 79 73 63 61 6c 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" hlt" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 68 6c 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" push-reg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 75 73 68 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" push-extrareg64" stringcmp 0 = { drop -1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 70 75 73 68 2d 65 78 74 72 61 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pop-reg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 6f 70 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pop-extrareg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 70 6f 70 2d 65 78 74 72 61 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" push-imm32-extended64" stringcmp 0 = { drop -1" ~ " exit } if" 20 20 64 75 70 20 73 22 20 70 75 73 68 2d 69 6d 6d 33 32 2d 65 78 74 65 6e 64 65 64 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lea-reg64-disp8-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lea-reg64-disp32-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lea-reg64-indexed-reg64" stringcmp 0 = { drop -4" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6c 65 61 2d 72 65 67 36 34 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 34 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lea-reg64-disp8-indexed-reg64" stringcmp 0 = {" ~ " drop -5 exit } if" 20 20 64 75 70 20 73 22 20 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 35 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg64-imm32" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg64-imm64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-extrareg64-imm64" stringcmp 0 = { drop -2 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 65 78 74 72 61 72 65 67 36 34 2d 69 6d 6d 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg64-reg64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-indirect-reg64-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-disp8-reg64-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg64-indirect-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg64-disp8-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 38 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg64-disp32-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg64-indexed-reg64" stringcmp 0 = { drop -4" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 34 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-indexed-reg64-reg64" stringcmp 0 = { drop -4" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 69 6e 64 65 78 65 64 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 34 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-indirect-reg64-reg32" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-disp8-reg64-reg32" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg32-indirect-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 33 32 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg32-disp8-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 33 32 2d 64 69 73 70 38 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-indirect-reg64-reg16" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-disp8-reg64-reg16" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg16-indirect-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 31 36 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg16-disp8-reg64" stringcmp 0 = { drop -3" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 31 36 2d 64 69 73 70 38 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-indirect-reg64-reg8" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-disp8-reg64-reg8" stringcmp 0 = { drop -3 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 64 69 73 70 38 2d 72 65 67 36 34 2d 72 65 67 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg8-indirect-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 38 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg8-disp8-reg64" stringcmp 0 = { drop -3 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 38 2d 64 69 73 70 38 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mov-reg8-reg8" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 2d 72 65 67 38 2d 72 65 67 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" movs8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" movs16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" movs32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" movs64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6d 6f 76 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-movs8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 6d 6f 76 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-movs16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 6d 6f 76 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-movs32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 6d 6f 76 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-movs64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 6d 6f 76 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lods8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6c 6f 64 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lods16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6c 6f 64 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lods32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6c 6f 64 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" lods64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6c 6f 64 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-lods8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 6c 6f 64 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-lods16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 6c 6f 64 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-lods32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 6c 6f 64 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-lods64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 6c 6f 64 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" stos8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 74 6f 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" stos16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 74 6f 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" stos32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 74 6f 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" stos64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 74 6f 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-stos8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 73 74 6f 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-stos16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 73 74 6f 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-stos32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 73 74 6f 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" rep-stos64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 2d 73 74 6f 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" cmps8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 63 6d 70 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" cmps16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 63 6d 70 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" cmps32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 63 6d 70 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" cmps64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 63 6d 70 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repz-cmps8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 7a 2d 63 6d 70 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repz-cmps16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 7a 2d 63 6d 70 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repz-cmps32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 7a 2d 63 6d 70 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repz-cmps64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 7a 2d 63 6d 70 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repnz-cmps8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 6e 7a 2d 63 6d 70 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repnz-cmps16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 6e 7a 2d 63 6d 70 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repnz-cmps32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 6e 7a 2d 63 6d 70 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repnz-cmps64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 6e 7a 2d 63 6d 70 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" scas8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 63 61 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" scas16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 63 61 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" scas32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 63 61 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" scas64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 63 61 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repz-scas8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 7a 2d 73 63 61 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repz-scas16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 7a 2d 73 63 61 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repz-scas32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 7a 2d 73 63 61 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repz-scas64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 7a 2d 73 63 61 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repnz-scas8" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 6e 7a 2d 73 63 61 73 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repnz-scas16" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 6e 7a 2d 73 63 61 73 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repnz-scas32" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 6e 7a 2d 73 63 61 73 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" repnz-scas64" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 70 6e 7a 2d 73 63 61 73 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" add-reg64-reg64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 61 64 64 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" add-indirect-reg64-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 61 64 64 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" add-reg64-indirect-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 61 64 64 2d 72 65 67 36 34 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" add-reg64-imm8" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 61 64 64 2d 72 65 67 36 34 2d 69 6d 6d 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sub-reg64-reg64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 75 62 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sub-indirect-reg64-reg64" stringcmp 0 = { drop -2" ~ " exit } if" 20 20 64 75 70 20 73 22 20 73 75 62 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sub-reg64-imm8" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 73 75 62 2d 72 65 67 36 34 2d 69 6d 6d 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sbb-reg64-imm8" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 73 62 62 2d 72 65 67 36 34 2d 69 6d 6d 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" mul-reg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 6d 75 6c 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" divmod-reg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 64 69 76 6d 6f 64 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" idivmod-reg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 69 64 69 76 6d 6f 64 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" inc-reg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 69 6e 63 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" dec-reg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 64 65 63 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" and-reg64-reg64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 61 6e 64 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" and-reg64-imm8" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 61 6e 64 2d 72 65 67 36 34 2d 69 6d 6d 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" or-reg64-reg64" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 6f 72 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" or-reg64-imm8" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 6f 72 2d 72 65 67 36 34 2d 69 6d 6d 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" xor-reg64-reg64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 78 6f 72 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" not-reg64" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 6e 6f 74 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" cmp-reg64-reg64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 63 6d 70 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" test-reg64-reg64" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 74 65 73 74 2d 72 65 67 36 34 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" set-reg8-cc" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 73 65 74 2d 72 65 67 38 2d 63 63 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" jmp-cc-rel-imm8" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 6a 6d 70 2d 63 63 2d 72 65 6c 2d 69 6d 6d 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" jmp-cc-rel-imm32" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 6a 6d 70 2d 63 63 2d 72 65 6c 2d 69 6d 6d 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" jmp-abs-indirect-reg64" stringcmp 0 = { drop -1" ~ " exit } if" 20 20 64 75 70 20 73 22 20 6a 6d 70 2d 61 62 73 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" jmp-rel-imm8" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 6a 6d 70 2d 72 65 6c 2d 69 6d 6d 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" jmp-rel-imm32" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 6a 6d 70 2d 72 65 6c 2d 69 6d 6d 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ From language/static/execution-support.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 65 78 65 63 75 74 69 6f 6e 2d 73 75 70 70 6f 72 74 2e 65 2e 0a ~ " dup s" pack-next" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 2d 6e 65 78 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pack-beforenext" stringcmp 0 = { drop -1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 2d 62 65 66 6f 72 65 6e 65 78 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pack-pushcontrol" stringcmp 0 = { drop -1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 2d 70 75 73 68 63 6f 6e 74 72 6f 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" pack-popcontrol" stringcmp 0 = { drop -1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 70 61 63 6b 2d 70 6f 70 63 6f 6e 74 72 6f 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ From language/dynamic/dynamic.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 2e 0a ~ " dup s" stack" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 74 61 63 6b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" stackhex" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 74 61 63 6b 68 65 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" is-in-log" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 69 73 2d 69 6e 2d 6c 6f 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" oldest-entry" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 6f 6c 64 65 73 74 2d 65 6e 74 72 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" next-newer-entry" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 6e 65 78 74 2d 6e 65 77 65 72 2d 65 6e 74 72 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" guess-entry-end" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 67 75 65 73 73 2d 65 6e 74 72 79 2d 65 6e 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" containing-entry" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 63 6f 6e 74 61 69 6e 69 6e 67 2d 65 6e 74 72 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" is-assembly-word" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 69 73 2d 61 73 73 65 6d 62 6c 79 2d 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" is-docol-itself" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 69 73 2d 64 6f 63 6f 6c 2d 69 74 73 65 6c 66 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" is-docol-codeword" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 69 73 2d 64 6f 63 6f 6c 2d 63 6f 64 65 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" is-docol-interpreted-word" stringcmp 0 = { drop 0" ~ " exit } if" 20 20 64 75 70 20 73 22 20 69 73 2d 64 6f 63 6f 6c 2d 69 6e 74 65 72 70 72 65 74 65 64 2d 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" is-codeword-pointer" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 69 73 2d 63 6f 64 65 77 6f 72 64 2d 70 6f 69 6e 74 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" indent" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 69 6e 64 65 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" word-heading" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 77 6f 72 64 2d 68 65 61 64 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" list-dictionary" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6c 69 73 74 2d 64 69 63 74 69 6f 6e 61 72 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" hexdump-row" stringcmp 0 = { drop -3 exit } if" 20 20 64 75 70 20 73 22 20 68 65 78 64 75 6d 70 2d 72 6f 77 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 33 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" hexdump-between" stringcmp 0 = { drop -2 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 68 65 78 64 75 6d 70 2d 62 65 74 77 65 65 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" hexdump-from" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 68 65 78 64 75 6d 70 2d 66 72 6f 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" hexdump" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 68 65 78 64 75 6d 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" describe-hex" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 64 65 73 63 72 69 62 65 2d 68 65 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" describe-docol" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 64 65 73 63 72 69 62 65 2d 64 6f 63 6f 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" describe" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 64 65 73 63 72 69 62 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" describe-all" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 64 65 73 63 72 69 62 65 2d 61 6c 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" describe-compilation" stringcmp 0 = { drop 0 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 64 65 73 63 72 69 62 65 2d 63 6f 6d 70 69 6c 61 74 69 6f 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" symbolize-pointer" stringcmp 0 = { drop -1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 79 6d 62 6f 6c 69 7a 65 2d 70 6f 69 6e 74 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" list-callers" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6c 69 73 74 2d 63 61 6c 6c 65 72 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" forget" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 66 6f 72 67 65 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" ," stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 2c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" make-immediate" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" make-hidden" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6d 61 6b 65 2d 68 69 64 64 65 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" make-visible" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6d 61 6b 65 2d 76 69 73 69 62 6c 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" recurse" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 63 75 72 73 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" recurse" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 63 75 72 73 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" find" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 66 69 6e 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" allocate" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 61 6c 6c 6f 63 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" create" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 63 72 65 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" self-codeword" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" variable" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 76 61 72 69 61 62 6c 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" keyword" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 6b 65 79 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" literal" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 6c 69 74 65 72 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ From language/dynamic/input.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 69 6e 70 75 74 2e 65 2e 0a ~ " dup s" buffer-physical-start" stringcmp 0 = { drop 0 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 73 74 61 72 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" buffer-physical-length" stringcmp 0 = { drop 0" ~ " exit } if" 20 20 64 75 70 20 73 22 20 62 75 66 66 65 72 2d 70 68 79 73 69 63 61 6c 2d 6c 65 6e 67 74 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" buffer-logical-start" stringcmp 0 = { drop 0 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 73 74 61 72 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" buffer-logical-length" stringcmp 0 = { drop 0 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 62 75 66 66 65 72 2d 6c 6f 67 69 63 61 6c 2d 6c 65 6e 67 74 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" input-buffer-refill" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 72 65 66 69 6c 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" input-buffer-next-source" stringcmp 0 = { drop 0" ~ " exit } if" 20 20 64 75 70 20 73 22 20 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6e 65 78 74 2d 73 6f 75 72 63 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" clear-buffer" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 63 6c 65 61 72 2d 62 75 66 66 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" zero-input-buffer-metadata" stringcmp 0 = { drop" ~ " -1 exit } if" 20 20 64 75 70 20 73 22 20 7a 65 72 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" allocate-input-buffer-metadata" stringcmp 0 = {" ~ " drop 1 exit } if" 20 20 64 75 70 20 73 22 20 61 6c 6c 6f 63 61 74 65 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 6d 65 74 61 64 61 74 61 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" allocate-input-buffer" stringcmp 0 = { drop 0 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 61 6c 6c 6f 63 61 74 65 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" attach-string-to-input-buffer" stringcmp 0 = {" ~ " drop -2 exit } if" 20 20 64 75 70 20 73 22 20 61 74 74 61 63 68 2d 73 74 72 69 6e 67 2d 74 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" consume-from" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 63 6f 6e 73 75 6d 65 2d 66 72 6f 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" peek-from" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 70 65 65 6b 2d 66 72 6f 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" key-from" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6b 65 79 2d 66 72 6f 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" normalize-buffer" stringcmp 0 = { drop -1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 6e 6f 72 6d 61 6c 69 7a 65 2d 62 75 66 66 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" compute-next-buffer-free-block" stringcmp 0 = {" ~ " drop 1 exit } if" 20 20 64 75 70 20 73 22 20 63 6f 6d 70 75 74 65 2d 6e 65 78 74 2d 62 75 66 66 65 72 2d 66 72 65 65 2d 62 6c 6f 63 6b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" refill-input-buffer-from-stdin" stringcmp 0 = {" ~ " drop -1 exit } if" 20 20 64 75 70 20 73 22 20 72 65 66 69 6c 6c 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 66 72 6f 6d 2d 73 74 64 69 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" main-input-buffer" stringcmp 0 = { drop 1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" consume" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 63 6f 6e 73 75 6d 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" peek" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 70 65 65 6b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" key" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 6b 65 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ From language/dynamic/interpret.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 69 6e 74 65 72 70 72 65 74 2e 65 2e 0a ~ " dup s" unroll-past-string" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 75 6e 72 6f 6c 6c 2d 70 61 73 74 2d 73 74 72 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" swap-past-string" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 77 61 70 2d 70 61 73 74 2d 73 74 72 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ The following are deliberate omissions: dropstring," 20 20 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 72 65 20 64 65 6c 69 62 65 72 61 74 65 20 6f 6d 69 73 73 69 6f 6e 73 3a 20 64 72 6f 70 73 74 72 69 6e 67 2c 0a ~ " ~ dropstring-with-result, accumulate-string." 20 20 7e 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 2c 20 61 63 63 75 6d 75 6c 61 74 65 2d 73 74 72 69 6e 67 2e 0a ~ " dup s" is-space" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 69 73 2d 73 70 61 63 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" is-alphanumeric" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 69 73 2d 61 6c 70 68 61 6e 75 6d 65 72 69 63 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ The following is a deliberate omission: word." 20 20 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 73 20 61 20 64 65 6c 69 62 65 72 61 74 65 20 6f 6d 69 73 73 69 6f 6e 3a 20 77 6f 72 64 2e 0a ~ " dup s" generalized-digit-value" stringcmp 0 = { drop 0" ~ " exit } if" 20 20 64 75 70 20 73 22 20 67 65 6e 65 72 61 6c 69 7a 65 64 2d 64 69 67 69 74 2d 76 61 6c 75 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ The following are deliberate omissions:" ~ " decode-generalized-digit," 20 20 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 72 65 20 64 65 6c 69 62 65 72 61 74 65 20 6f 6d 69 73 73 69 6f 6e 73 3a 20 64 65 63 6f 64 65 2d 67 65 6e 65 72 61 6c 69 7a 65 64 2d 64 69 67 69 74 2c 0a ~ " ~ read-base-unsigned, read-integer-unsigned," ~ " read-integer, read-decimal." 20 20 7e 20 72 65 61 64 2d 62 61 73 65 2d 75 6e 73 69 67 6e 65 64 2c 20 72 65 61 64 2d 69 6e 74 65 67 65 72 2d 75 6e 73 69 67 6e 65 64 2c 20 72 65 61 64 2d 69 6e 74 65 67 65 72 2c 20 72 65 61 64 2d 64 65 63 69 6d 61 6c 2e 0a ~ " dup s" interpreter-flags" stringcmp 0 = { drop 1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" [" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 5b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" ]" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 5d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" :" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 3a 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" ;" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 3b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" ;asm" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 3b 61 73 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" '" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" relink-main-input-buffer-to-stdin" stringcmp 0 = {" ~ " drop 0 exit } if" 20 20 64 75 70 20 73 22 20 72 65 6c 69 6e 6b 2d 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 74 6f 2d 73 74 64 69 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ The following is a deliberate omission: interpret." 20 20 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 73 20 61 20 64 65 6c 69 62 65 72 61 74 65 20 6f 6d 69 73 73 69 6f 6e 3a 20 69 6e 74 65 72 70 72 65 74 2e 0a ~ " dup s" quit" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 71 75 69 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ From language/dynamic/linux.e." 20 20 7e 20 46 72 6f 6d 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 6c 69 6e 75 78 2e 65 2e 0a ~ " dup s" allocate-timespec" stringcmp 0 = { drop 1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 61 6c 6c 6f 63 61 74 65 2d 74 69 6d 65 73 70 65 63 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" timespec-seconds" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 74 69 6d 65 73 70 65 63 2d 73 65 63 6f 6e 64 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" timespec-nanoseconds" stringcmp 0 = { drop 0 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 74 69 6d 65 73 70 65 63 2d 6e 61 6e 6f 73 65 63 6f 6e 64 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" nanosleep" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 6e 61 6e 6f 73 6c 65 65 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sys-sigaction" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 73 79 73 2d 73 69 67 61 63 74 69 6f 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sys-sigaltstack" stringcmp 0 = { drop -1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 79 73 2d 73 69 67 61 6c 74 73 74 61 63 6b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" allocate-sigaction" stringcmp 0 = { drop 1 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 61 6c 6c 6f 63 61 74 65 2d 73 69 67 61 63 74 69 6f 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sigaction-action" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 69 67 61 63 74 69 6f 6e 2d 61 63 74 69 6f 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sigaction-flags" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 69 67 61 63 74 69 6f 6e 2d 66 6c 61 67 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sigaction-restorer" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 69 67 61 63 74 69 6f 6e 2d 72 65 73 74 6f 72 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sigaction-mask" stringcmp 0 = { drop 0 exit } if" 20 20 64 75 70 20 73 22 20 73 69 67 61 63 74 69 6f 6e 2d 6d 61 73 6b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" allocate-sigaltstack" stringcmp 0 = { drop 1 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 61 6c 6c 6f 63 61 74 65 2d 73 69 67 61 6c 74 73 74 61 63 6b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sigaltstack-pointer" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 69 67 61 6c 74 73 74 61 63 6b 2d 70 6f 69 6e 74 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sigaltstack-flags" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 69 67 61 6c 74 73 74 61 63 6b 2d 66 6c 61 67 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" sigaltstack-size" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 73 69 67 61 6c 74 73 74 61 63 6b 2d 73 69 7a 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" prepare-signal-stack" stringcmp 0 = { drop 0 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 70 72 65 70 61 72 65 2d 73 69 67 6e 61 6c 2d 73 74 61 63 6b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ The following is a deliberate omission:" ~ " signal-return-trampoline." 20 20 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 73 20 61 20 64 65 6c 69 62 65 72 61 74 65 20 6f 6d 69 73 73 69 6f 6e 3a 20 73 69 67 6e 61 6c 2d 72 65 74 75 72 6e 2d 74 72 61 6d 70 6f 6c 69 6e 65 2e 0a ~ " dup s" wrap-signal-handler" stringcmp 0 = { drop 0 exit }" ~ " if" 20 20 64 75 70 20 73 22 20 77 72 61 70 2d 73 69 67 6e 61 6c 2d 68 61 6e 64 6c 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" bind-signal" stringcmp 0 = { drop -2 exit } if" 20 20 64 75 70 20 73 22 20 62 69 6e 64 2d 73 69 67 6e 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 32 20 65 78 69 74 20 7d 20 69 66 0a ~ " ~ The following is a deliberate omission:" ~ " handle-crash." 20 20 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 73 20 61 20 64 65 6c 69 62 65 72 61 74 65 20 6f 6d 69 73 73 69 6f 6e 3a 20 68 61 6e 64 6c 65 2d 63 72 61 73 68 2e 0a ~ " dup s" install-crash-handler" stringcmp 0 = { drop 0 exit" ~ " } if" 20 20 64 75 70 20 73 22 20 69 6e 73 74 61 6c 6c 2d 63 72 61 73 68 2d 68 61 6e 64 6c 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Created by warm-start in compilation/execution.e." 20 20 7e 20 43 72 65 61 74 65 64 20 62 79 20 77 61 72 6d 2d 73 74 61 72 74 20 69 6e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 65 78 65 63 75 74 69 6f 6e 2e 65 2e 0a ~ " dup s" log" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 6c 6f 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" s0" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 73 30 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" r0" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 72 30 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" latest" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 6c 61 74 65 73 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" here" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 68 65 72 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Word not provided statically, but used during the" ~ " log-load routine anyway." 20 20 7e 20 57 6f 72 64 20 6e 6f 74 20 70 72 6f 76 69 64 65 64 20 73 74 61 74 69 63 61 6c 6c 79 2c 20 62 75 74 20 75 73 65 64 20 64 75 72 69 6e 67 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 61 6e 79 77 61 79 2e 0a ~ " dup s" L@'" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 4c 40 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" L!'" stringcmp 0 = { drop -1 exit } if" 20 20 64 75 70 20 73 22 20 4c 21 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 2d 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" labels" stringcmp 0 = { drop 1 exit } if" 20 20 64 75 70 20 73 22 20 6c 61 62 65 6c 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ " dup s" allocate-transformation-state" stringcmp 0 = {" ~ " drop 1 exit } if" 20 20 64 75 70 20 73 22 20 61 6c 6c 6f 63 61 74 65 2d 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ If we get here, that's a problem. Emit an error" ~ " message to make sure" 20 20 7e 20 20 20 49 66 20 77 65 20 67 65 74 20 68 65 72 65 2c 20 74 68 61 74 27 73 20 61 20 70 72 6f 62 6c 65 6d 2e 20 45 6d 69 74 20 61 6e 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 0a ~ " ~ it's easy to diagnose. We also return a comically large" ~ " negative value," 20 20 7e 20 69 74 27 73 20 65 61 73 79 20 74 6f 20 64 69 61 67 6e 6f 73 65 2e 20 57 65 20 61 6c 73 6f 20 72 65 74 75 72 6e 20 61 20 63 6f 6d 69 63 61 6c 6c 79 20 6c 61 72 67 65 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 2c 0a ~ " ~ to make sure things fail as quickly as possible" ~ " afterwards." 20 20 7e 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 69 6e 67 73 20 66 61 69 6c 20 61 73 20 71 75 69 63 6b 6c 79 20 61 73 20 70 6f 73 73 69 62 6c 65 20 61 66 74 65 72 77 61 72 64 73 2e 0a ~ " ." No known stack delta: " emitstring newline" 20 20 2e 22 20 4e 6f 20 6b 6e 6f 77 6e 20 73 74 61 63 6b 20 64 65 6c 74 61 3a 20 22 20 65 6d 69 74 73 74 72 69 6e 67 20 6e 65 77 6c 69 6e 65 0a ~ " -256 ;" 20 20 2d 32 35 36 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (delta --)" 7e 20 28 64 65 6c 74 61 20 2d 2d 29 0a ~ ": transform-apply-stack-delta" 3a 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ " transformation-state" ~ " transformation-state-user-stack-depth @ +" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 40 20 2b 0a ~ " transformation-state" ~ " transformation-state-user-stack-depth ! ;" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 21 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Label transform implementation" 7e 20 4c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The following code is all part of implementing the" ~ " label transform. For" 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 20 69 73 20 61 6c 6c 20 70 61 72 74 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2e 20 46 6f 72 0a ~ "~ conceptual overview, see the top of this file." 7e 20 63 6f 6e 63 65 70 74 75 61 6c 20 6f 76 65 72 76 69 65 77 2c 20 73 65 65 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2e 0a ~ "" 0a ~ "" 0a ~ "~ This is the alternate version of "create" for use with" ~ " the label" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 63 72 65 61 74 65 22 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 74 68 65 20 6c 61 62 65 6c 0a ~ "~ transform. Its code is the same as the regular "create"" ~ " except as noted" 7e 20 74 72 61 6e 73 66 6f 72 6d 2e 20 49 74 73 20 63 6f 64 65 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 72 65 67 75 6c 61 72 20 22 63 72 65 61 74 65 22 20 65 78 63 65 70 74 20 61 73 20 6e 6f 74 65 64 0a ~ "~ below. It is likely to be extremely useful to read and" ~ " understand "create"" 7e 20 62 65 6c 6f 77 2e 20 49 74 20 69 73 20 6c 69 6b 65 6c 79 20 74 6f 20 62 65 20 65 78 74 72 65 6d 65 6c 79 20 75 73 65 66 75 6c 20 74 6f 20 72 65 61 64 20 61 6e 64 20 75 6e 64 65 72 73 74 61 6e 64 20 22 63 72 65 61 74 65 22 0a ~ "~ in language/dynamic/dynamic.e before attempting to" ~ " understand" 7e 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 20 62 65 66 6f 72 65 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 0a ~ "~ label-create-alternate." 7e 20 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 2e 0a ~ ": label-create-alternate" 3a 20 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ While we could put magic comments here, and be" ~ " guaranteed to catch every" 20 20 7e 20 20 20 57 68 69 6c 65 20 77 65 20 63 6f 75 6c 64 20 70 75 74 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 68 65 72 65 2c 20 61 6e 64 20 62 65 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 63 61 74 63 68 20 65 76 65 72 79 0a ~ " ~ word-defining word under the label transform, there's a" ~ " subtle thing where" 20 20 7e 20 77 6f 72 64 2d 64 65 66 69 6e 69 6e 67 20 77 6f 72 64 20 75 6e 64 65 72 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 72 65 27 73 20 61 20 73 75 62 74 6c 65 20 74 68 69 6e 67 20 77 68 65 72 65 0a ~ " ~ we need to make sure the "indent" command happens in" ~ " the same places it" 20 20 7e 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 22 69 6e 64 65 6e 74 22 20 63 6f 6d 6d 61 6e 64 20 68 61 70 70 65 6e 73 20 69 6e 20 74 68 65 20 73 61 6d 65 20 70 6c 61 63 65 73 20 69 74 0a ~ " ~ does when the same code runs under the log-load" ~ " transform, and only those" 20 20 7e 20 64 6f 65 73 20 77 68 65 6e 20 74 68 65 20 73 61 6d 65 20 63 6f 64 65 20 72 75 6e 73 20 75 6e 64 65 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2c 20 61 6e 64 20 6f 6e 6c 79 20 74 68 6f 73 65 0a ~ " ~ places. So, we do it in the callers of "create"" ~ " instead." 20 20 7e 20 70 6c 61 63 65 73 2e 20 53 6f 2c 20 77 65 20 64 6f 20 69 74 20 69 6e 20 74 68 65 20 63 61 6c 6c 65 72 73 20 6f 66 20 22 63 72 65 61 74 65 22 20 69 6e 73 74 65 61 64 2e 0a ~ " dup stringlen 1 +" 20 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 31 20 2b 0a ~ " ~ : provide-data" 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 64 61 74 61 0a ~ " dup 3unroll" 20 20 64 75 70 20 33 75 6e 72 6f 6c 6c 0a ~ " here @ 10 + swap memmove" 20 20 68 65 72 65 20 40 20 31 30 20 2b 20 73 77 61 70 20 6d 65 6d 6d 6f 76 65 0a ~ " here @" 20 20 68 65 72 65 20 40 0a ~ "" 0a ~ " ~ This value of "latest" is going into the generated" ~ " output, so we need" 20 20 7e 20 20 20 54 68 69 73 20 76 61 6c 75 65 20 6f 66 20 22 6c 61 74 65 73 74 22 20 69 73 20 67 6f 69 6e 67 20 69 6e 74 6f 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 6f 75 74 70 75 74 2c 20 73 6f 20 77 65 20 6e 65 65 64 0a ~ " ~ to map it to the target address space. It's stored in" ~ " the host address" 20 20 7e 20 74 6f 20 6d 61 70 20 69 74 20 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2e 20 49 74 27 73 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 68 6f 73 74 20 61 64 64 72 65 73 73 0a ~ " ~ space to make immediate words work as expected, so the" ~ " appropriate" 20 20 7e 20 73 70 61 63 65 20 74 6f 20 6d 61 6b 65 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 73 20 77 6f 72 6b 20 61 73 20 65 78 70 65 63 74 65 64 2c 20 73 6f 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 0a ~ " ~ conversion is host-address-space-to-target." 20 20 7e 20 63 6f 6e 76 65 72 73 69 6f 6e 20 69 73 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 74 61 72 67 65 74 2e 0a ~ " ~ : 8 #-- (previous entry pointer)" 20 20 7e 20 3a 20 38 20 23 2d 2d 20 28 70 72 65 76 69 6f 75 73 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ " latest @ host-address-space-to-target pack64" 20 20 6c 61 74 65 73 74 20 40 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 74 61 72 67 65 74 20 70 61 63 6b 36 34 0a ~ " ~ : 1 #-- (entry flags)" 20 20 7e 20 3a 20 31 20 23 2d 2d 20 28 65 6e 74 72 79 20 66 6c 61 67 73 29 0a ~ " 0 pack8" 20 20 30 20 70 61 63 6b 38 0a ~ " ~ : bidirectional-null-terminated entry name" 20 20 7e 20 3a 20 62 69 64 69 72 65 63 74 69 6f 6e 61 6c 2d 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 65 6e 74 72 79 20 6e 61 6d 65 0a ~ " 0 pack8" 20 20 30 20 70 61 63 6b 38 0a ~ " ~ : 1 data-adjust-output-point" 20 20 7e 20 3a 20 31 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " ~ : fresh-line" 20 20 7e 20 3a 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ " +" 20 20 2b 0a ~ " 8 packalign" 20 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " here @ latest !" 20 20 68 65 72 65 20 40 20 6c 61 74 65 73 74 20 21 0a ~ "" 0a ~ " ~ Now we're immediately after the word header, which is" ~ " where the codeword" 20 20 7e 20 20 20 4e 6f 77 20 77 65 27 72 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 74 68 65 20 77 6f 72 64 20 68 65 61 64 65 72 2c 20 77 68 69 63 68 20 69 73 20 77 68 65 72 65 20 74 68 65 20 63 6f 64 65 77 6f 72 64 0a ~ " ~ will be. This is the value the label should taken on," ~ " so we set it." 20 20 7e 20 77 69 6c 6c 20 62 65 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 76 61 6c 75 65 20 74 68 65 20 6c 61 62 65 6c 20 73 68 6f 75 6c 64 20 74 61 6b 65 6e 20 6f 6e 2c 20 73 6f 20 77 65 20 73 65 74 20 69 74 2e 0a ~ " dup host-address-space-to-offset" 20 20 64 75 70 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 6f 66 66 73 65 74 0a ~ " here @ 10 +" 20 20 68 65 72 65 20 40 20 31 30 20 2b 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " intern-label set-label" 20 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 20 73 65 74 2d 6c 61 62 65 6c 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " here ! ;" 20 20 68 65 72 65 20 21 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This is the alternate version of ":" for use with the" ~ " label transform. Its" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 3a 22 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2e 20 49 74 73 0a ~ "~ code is the same as the regular "create" except as noted" ~ " below. It is likely" 7e 20 63 6f 64 65 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 72 65 67 75 6c 61 72 20 22 63 72 65 61 74 65 22 20 65 78 63 65 70 74 20 61 73 20 6e 6f 74 65 64 20 62 65 6c 6f 77 2e 20 49 74 20 69 73 20 6c 69 6b 65 6c 79 0a ~ "~ to be extremely useful to read and understand ":" in" 7e 20 74 6f 20 62 65 20 65 78 74 72 65 6d 65 6c 79 20 75 73 65 66 75 6c 20 74 6f 20 72 65 61 64 20 61 6e 64 20 75 6e 64 65 72 73 74 61 6e 64 20 22 3a 22 20 69 6e 0a ~ "~ language/dynamic/dynamic.e before attempting to" ~ " understand" 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 20 62 65 66 6f 72 65 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 0a ~ "~ label-colon-alternate." 7e 20 6c 61 62 65 6c 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 2e 0a ~ ": label-colon-alternate" 3a 20 6c 61 62 65 6c 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ This calls label-create-alternate instead of "create"." 20 20 7e 20 54 68 69 73 20 63 61 6c 6c 73 20 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 69 6e 73 74 65 61 64 20 6f 66 20 22 63 72 65 61 74 65 22 2e 0a ~ " word value@" 20 20 77 6f 72 64 20 76 61 6c 75 65 40 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : provide-string-copy" 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 2d 63 6f 70 79 0a ~ " ~ : # is defined here via the label transform; this is" ~ " its entry header." 20 20 7e 20 3a 20 23 20 69 73 20 64 65 66 69 6e 65 64 20 68 65 72 65 20 76 69 61 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 3b 20 74 68 69 73 20 69 73 20 69 74 73 20 65 6e 74 72 79 20 68 65 61 64 65 72 2e 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ " label-create-alternate dropstring" 20 20 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ "" 0a ~ " ~ This looks up "docol" by label." 20 20 7e 20 54 68 69 73 20 6c 6f 6f 6b 73 20 75 70 20 22 64 6f 63 6f 6c 22 20 62 79 20 6c 61 62 65 6c 2e 0a ~ " ~ : 8 #-- (docol codeword)" 20 20 7e 20 3a 20 38 20 23 2d 2d 20 28 64 6f 63 6f 6c 20 63 6f 64 65 77 6f 72 64 29 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' docol-codeword-value" 20 20 4c 40 27 20 64 6f 63 6f 6c 2d 63 6f 64 65 77 6f 72 64 2d 76 61 6c 75 65 0a ~ " L@' origin" 20 20 4c 40 27 20 6f 72 69 67 69 6e 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " + ," 20 20 2b 20 2c 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " latest @ dup entry-flags@ 0x80 | swap entry-flags!" 20 20 6c 61 74 65 73 74 20 40 20 64 75 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 38 30 20 7c 20 73 77 61 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 21 0a ~ " ] ;" 20 20 5d 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ So, the way docol's user-facing entry is set up in" ~ " language/static/core.e," 7e 20 20 20 53 6f 2c 20 74 68 65 20 77 61 79 20 64 6f 63 6f 6c 27 73 20 75 73 65 72 2d 66 61 63 69 6e 67 20 65 6e 74 72 79 20 69 73 20 73 65 74 20 75 70 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 63 6f 72 65 2e 65 2c 0a ~ "~ it really wants to reference "here" to create its" ~ " codeword, but "here" is in" 7e 20 69 74 20 72 65 61 6c 6c 79 20 77 61 6e 74 73 20 74 6f 20 72 65 66 65 72 65 6e 63 65 20 22 68 65 72 65 22 20 74 6f 20 63 72 65 61 74 65 20 69 74 73 20 63 6f 64 65 77 6f 72 64 2c 20 62 75 74 20 22 68 65 72 65 22 20 69 73 20 69 6e 0a ~ "~ the host address space. We solve this by having it call" ~ " the word" 7e 20 74 68 65 20 68 6f 73 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2e 20 57 65 20 73 6f 6c 76 65 20 74 68 69 73 20 62 79 20 68 61 76 69 6e 67 20 69 74 20 63 61 6c 6c 20 74 68 65 20 77 6f 72 64 0a ~ "~ "self-codeword" and then patching around the address" ~ " space issue with" 7e 20 22 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 22 20 61 6e 64 20 74 68 65 6e 20 70 61 74 63 68 69 6e 67 20 61 72 6f 75 6e 64 20 74 68 65 20 61 64 64 72 65 73 73 20 73 70 61 63 65 20 69 73 73 75 65 20 77 69 74 68 0a ~ "~ alternates." 7e 20 61 6c 74 65 72 6e 61 74 65 73 2e 0a ~ "~" 7e 0a ~ "~ If we didn't have this fix, everything would appear to" ~ " work fine but the" 7e 20 20 20 49 66 20 77 65 20 64 69 64 6e 27 74 20 68 61 76 65 20 74 68 69 73 20 66 69 78 2c 20 65 76 65 72 79 74 68 69 6e 67 20 77 6f 75 6c 64 20 61 70 70 65 61 72 20 74 6f 20 77 6f 72 6b 20 66 69 6e 65 20 62 75 74 20 74 68 65 0a ~ "~ statically generated user-facing docol from the label" ~ " transform would have" 7e 20 73 74 61 74 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 20 75 73 65 72 2d 66 61 63 69 6e 67 20 64 6f 63 6f 6c 20 66 72 6f 6d 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 77 6f 75 6c 64 20 68 61 76 65 0a ~ "~ a wrong codeword, varying based on the host's memory" ~ " usage. It's never" 7e 20 61 20 77 72 6f 6e 67 20 63 6f 64 65 77 6f 72 64 2c 20 76 61 72 79 69 6e 67 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 68 6f 73 74 27 73 20 6d 65 6d 6f 72 79 20 75 73 61 67 65 2e 20 49 74 27 73 20 6e 65 76 65 72 0a ~ "~ actually called by evoke itself (it would crash" ~ " horribly), though it may" 7e 20 61 63 74 75 61 6c 6c 79 20 63 61 6c 6c 65 64 20 62 79 20 65 76 6f 6b 65 20 69 74 73 65 6c 66 20 28 69 74 20 77 6f 75 6c 64 20 63 72 61 73 68 20 68 6f 72 72 69 62 6c 79 29 2c 20 74 68 6f 75 67 68 20 69 74 20 6d 61 79 0a ~ "~ be from programs that use the facilities differently." ~ " It's a binary" 7e 20 62 65 20 66 72 6f 6d 20 70 72 6f 67 72 61 6d 73 20 74 68 61 74 20 75 73 65 20 74 68 65 20 66 61 63 69 6c 69 74 69 65 73 20 64 69 66 66 65 72 65 6e 74 6c 79 2e 20 49 74 27 73 20 61 20 62 69 6e 61 72 79 0a ~ "~ reproducibility issue - our only known one, in fact - so" ~ " it's worth fixing." 7e 20 72 65 70 72 6f 64 75 63 69 62 69 6c 69 74 79 20 69 73 73 75 65 20 2d 20 6f 75 72 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 6f 6e 65 2c 20 69 6e 20 66 61 63 74 20 2d 20 73 6f 20 69 74 27 73 20 77 6f 72 74 68 20 66 69 78 69 6e 67 2e 0a ~ ": label-self-codeword-alternate" 3a 20 6c 61 62 65 6c 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " here @ dup 8 + host-address-space-to-target pack64 here" ~ " !" 20 20 68 65 72 65 20 40 20 64 75 70 20 38 20 2b 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 74 61 72 67 65 74 20 70 61 63 6b 36 34 20 68 65 72 65 20 21 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This is the alternate version of ";" for use with the" ~ " label transform. Its" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 3b 22 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2e 20 49 74 73 0a ~ "~ code is the same as the regular "create" except as noted" ~ " below. It is likely" 7e 20 63 6f 64 65 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 72 65 67 75 6c 61 72 20 22 63 72 65 61 74 65 22 20 65 78 63 65 70 74 20 61 73 20 6e 6f 74 65 64 20 62 65 6c 6f 77 2e 20 49 74 20 69 73 20 6c 69 6b 65 6c 79 0a ~ "~ to be extremely useful to read and understand ";" in" 7e 20 74 6f 20 62 65 20 65 78 74 72 65 6d 65 6c 79 20 75 73 65 66 75 6c 20 74 6f 20 72 65 61 64 20 61 6e 64 20 75 6e 64 65 72 73 74 61 6e 64 20 22 3b 22 20 69 6e 0a ~ "~ language/dynamic/dynamic.e before attempting to" ~ " understand" 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 20 62 65 66 6f 72 65 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 0a ~ "~ label-semicolon-alternate." 7e 20 6c 61 62 65 6c 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 2e 0a ~ ": label-semicolon-alternate" 3a 20 6c 61 62 65 6c 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ This looks up "exit" by label." 20 20 7e 20 54 68 69 73 20 6c 6f 6f 6b 73 20 75 70 20 22 65 78 69 74 22 20 62 79 20 6c 61 62 65 6c 2e 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' exit" 20 20 4c 40 27 20 65 78 69 74 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 exit #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 65 78 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ "" 0a ~ " latest @ dup entry-flags@ 0x80 invert & swap" ~ " entry-flags!" 20 20 6c 61 74 65 73 74 20 40 20 64 75 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 38 30 20 69 6e 76 65 72 74 20 26 20 73 77 61 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 21 0a ~ "" 0a ~ " ~ Since [ is an immediate word, we have to go to extra" ~ " trouble to compile" 20 20 7e 20 20 20 53 69 6e 63 65 20 5b 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 77 65 20 68 61 76 65 20 74 6f 20 67 6f 20 74 6f 20 65 78 74 72 61 20 74 72 6f 75 62 6c 65 20 74 6f 20 63 6f 6d 70 69 6c 65 0a ~ " ~ it as part of ;." 20 20 7e 20 69 74 20 61 73 20 70 61 72 74 20 6f 66 20 3b 2e 0a ~ " [ ' [ entry-to-execution-token , ]" 20 20 5b 20 27 20 5b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This is the alternate version of ";asm" for use with" ~ " the label transform." 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 3b 61 73 6d 22 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~ Its code is the same as the regular "create" except as" ~ " noted below. It is" 7e 20 49 74 73 20 63 6f 64 65 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 72 65 67 75 6c 61 72 20 22 63 72 65 61 74 65 22 20 65 78 63 65 70 74 20 61 73 20 6e 6f 74 65 64 20 62 65 6c 6f 77 2e 20 49 74 20 69 73 0a ~ "~ likely to be extremely useful to read and understand" ~ " ";asm" in" 7e 20 6c 69 6b 65 6c 79 20 74 6f 20 62 65 20 65 78 74 72 65 6d 65 6c 79 20 75 73 65 66 75 6c 20 74 6f 20 72 65 61 64 20 61 6e 64 20 75 6e 64 65 72 73 74 61 6e 64 20 22 3b 61 73 6d 22 20 69 6e 0a ~ "~ language/dynamic/dynamic.e before attempting to" ~ " understand" 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 20 62 65 66 6f 72 65 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 0a ~ "~ label-semicolon-assembly-alternate." 7e 20 6c 61 62 65 6c 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 2d 61 6c 74 65 72 6e 61 74 65 2e 0a ~ ": label-semicolon-assembly-alternate" 3a 20 6c 61 62 65 6c 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " here @ pack-next 8 packalign" 20 20 68 65 72 65 20 40 20 70 61 63 6b 2d 6e 65 78 74 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " ~ : provide-data" 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 64 61 74 61 0a ~ " here !" 20 20 68 65 72 65 20 21 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ "" 0a ~ " latest @ dup dup entry-flags@ 0x80 invert & swap" ~ " entry-flags!" 20 20 6c 61 74 65 73 74 20 40 20 64 75 70 20 64 75 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 38 30 20 69 6e 76 65 72 74 20 26 20 73 77 61 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 21 0a ~ " entry-to-execution-token" 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " ~ The codeword needs to be transformed to the target" ~ " address space." 20 20 7e 20 54 68 65 20 63 6f 64 65 77 6f 72 64 20 6e 65 65 64 73 20 74 6f 20 62 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2e 0a ~ " ~ : provide-data" 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 64 61 74 61 0a ~ " ~ : data-set-output-point" 20 20 7e 20 3a 20 64 61 74 61 2d 73 65 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " ~ : delete-last-comment-at-output-point" 20 20 7e 20 3a 20 64 65 6c 65 74 65 2d 6c 61 73 74 2d 63 6f 6d 6d 65 6e 74 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " ~ : 8 #-- (self codeword)" 20 20 7e 20 3a 20 38 20 23 2d 2d 20 28 73 65 6c 66 20 63 6f 64 65 77 6f 72 64 29 0a ~ " dup 8 + host-address-space-to-target" 20 20 64 75 70 20 38 20 2b 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 74 61 72 67 65 74 0a ~ " swap !" 20 20 73 77 61 70 20 21 0a ~ " ~ : data-set-output-point" 20 20 7e 20 3a 20 64 61 74 61 2d 73 65 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ "" 0a ~ " ~ Since [ is an immediate word, we have to go to extra" ~ " trouble to compile" 20 20 7e 20 20 20 53 69 6e 63 65 20 5b 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 77 65 20 68 61 76 65 20 74 6f 20 67 6f 20 74 6f 20 65 78 74 72 61 20 74 72 6f 75 62 6c 65 20 74 6f 20 63 6f 6d 70 69 6c 65 0a ~ " ~ it as part of ;asm." 20 20 7e 20 69 74 20 61 73 20 70 61 72 74 20 6f 66 20 3b 61 73 6d 2e 0a ~ " [ ' [ entry-to-execution-token , ]" 20 20 5b 20 27 20 5b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ TODO there should really be an actual word that this" ~ " alternate is replacing" 7e 20 54 4f 44 4f 20 74 68 65 72 65 20 73 68 6f 75 6c 64 20 72 65 61 6c 6c 79 20 62 65 20 61 6e 20 61 63 74 75 61 6c 20 77 6f 72 64 20 74 68 61 74 20 74 68 69 73 20 61 6c 74 65 72 6e 61 74 65 20 69 73 20 72 65 70 6c 61 63 69 6e 67 0a ~ "~" 7e 0a ~ "~ If it existed, that word would be (string pointer --)." 7e 20 49 66 20 69 74 20 65 78 69 73 74 65 64 2c 20 74 68 61 74 20 77 6f 72 64 20 77 6f 75 6c 64 20 62 65 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 29 2e 0a ~ ": label-keyword-alternate" 3a 20 6c 61 62 65 6c 2d 6b 65 79 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : provide-string-copy" 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 2d 63 6f 70 79 0a ~ " ~ : # is defined here via the label transform; this is" ~ " its entry header." 20 20 7e 20 3a 20 23 20 69 73 20 64 65 66 69 6e 65 64 20 68 65 72 65 20 76 69 61 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 3b 20 74 68 69 73 20 69 73 20 69 74 73 20 65 6e 74 72 79 20 68 65 61 64 65 72 2e 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ " label-create-alternate" 20 20 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ "" 0a ~ " here @ dup" 20 20 68 65 72 65 20 40 20 64 75 70 0a ~ " ~ (self execution token, output point)" 20 20 7e 20 28 73 65 6c 66 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " dup 8 + host-address-space-to-target pack64" 20 20 64 75 70 20 38 20 2b 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 74 61 72 67 65 74 20 70 61 63 6b 36 34 0a ~ " swap host-address-space-to-target :rax mov-reg64-imm64" 20 20 73 77 61 70 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 74 61 72 67 65 74 20 3a 72 61 78 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 0a ~ " ~ (output point)" 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " :rax push-reg64" 20 20 3a 72 61 78 20 70 75 73 68 2d 72 65 67 36 34 0a ~ " pack-next" 20 20 70 61 63 6b 2d 6e 65 78 74 0a ~ " 8 packalign" 20 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " here !" 20 20 68 65 72 65 20 21 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ It's convenient to be able to work with strings in" ~ " label-transformed" 7e 20 20 20 49 74 27 73 20 63 6f 6e 76 65 6e 69 65 6e 74 20 74 6f 20 62 65 20 61 62 6c 65 20 74 6f 20 77 6f 72 6b 20 77 69 74 68 20 73 74 72 69 6e 67 73 20 69 6e 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 65 64 0a ~ "~ code. If we don't provide an alternate for it, we get" ~ " codeword pointers in" 7e 20 63 6f 64 65 2e 20 49 66 20 77 65 20 64 6f 6e 27 74 20 70 72 6f 76 69 64 65 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 66 6f 72 20 69 74 2c 20 77 65 20 67 65 74 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 73 20 69 6e 0a ~ "~ the host address space, which therefore don't work." 7e 20 74 68 65 20 68 6f 73 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2c 20 77 68 69 63 68 20 74 68 65 72 65 66 6f 72 65 20 64 6f 6e 27 74 20 77 6f 72 6b 2e 0a ~ ": label-string-alternate" 3a 20 6c 61 62 65 6c 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ Something subtle here: s" is state-dependent. That" ~ " is, it does different" 20 20 7e 20 20 20 53 6f 6d 65 74 68 69 6e 67 20 73 75 62 74 6c 65 20 68 65 72 65 3a 20 73 22 20 69 73 20 73 74 61 74 65 2d 64 65 70 65 6e 64 65 6e 74 2e 20 54 68 61 74 20 69 73 2c 20 69 74 20 64 6f 65 73 20 64 69 66 66 65 72 65 6e 74 0a ~ " ~ things depending on the interpreter flags. We would" ~ " really rather know" 20 20 7e 20 74 68 69 6e 67 73 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 66 6c 61 67 73 2e 20 57 65 20 77 6f 75 6c 64 20 72 65 61 6c 6c 79 20 72 61 74 68 65 72 20 6b 6e 6f 77 0a ~ " ~ which version we're getting, and also it would be best" ~ " if it didn't" 20 20 7e 20 77 68 69 63 68 20 76 65 72 73 69 6f 6e 20 77 65 27 72 65 20 67 65 74 74 69 6e 67 2c 20 61 6e 64 20 61 6c 73 6f 20 69 74 20 77 6f 75 6c 64 20 62 65 20 62 65 73 74 20 69 66 20 69 74 20 64 69 64 6e 27 74 0a ~ " ~ scribble on the output buffer. Fortunately we can" ~ " achieve both of these," 20 20 7e 20 73 63 72 69 62 62 6c 65 20 6f 6e 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 2e 20 46 6f 72 74 75 6e 61 74 65 6c 79 20 77 65 20 63 61 6e 20 61 63 68 69 65 76 65 20 62 6f 74 68 20 6f 66 20 74 68 65 73 65 2c 0a ~ " ~ by coercing things into a known state while calling" ~ " it." 20 20 7e 20 62 79 20 63 6f 65 72 63 69 6e 67 20 74 68 69 6e 67 73 20 69 6e 74 6f 20 61 20 6b 6e 6f 77 6e 20 73 74 61 74 65 20 77 68 69 6c 65 20 63 61 6c 6c 69 6e 67 20 69 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We could choose either version of s", but the" ~ " interpreted one is more" 20 20 7e 20 20 20 57 65 20 63 6f 75 6c 64 20 63 68 6f 6f 73 65 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 6f 66 20 73 22 2c 20 62 75 74 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 64 20 6f 6e 65 20 69 73 20 6d 6f 72 65 0a ~ " ~ convenient because it doesn't mess with a spurious" ~ " litstring invocation," 20 20 7e 20 63 6f 6e 76 65 6e 69 65 6e 74 20 62 65 63 61 75 73 65 20 69 74 20 64 6f 65 73 6e 27 74 20 6d 65 73 73 20 77 69 74 68 20 61 20 73 70 75 72 69 6f 75 73 20 6c 69 74 73 74 72 69 6e 67 20 69 6e 76 6f 63 61 74 69 6f 6e 2c 0a ~ " ~ just scribbled into scratch space after "here". Of" ~ " course, that raises the" 20 20 7e 20 6a 75 73 74 20 73 63 72 69 62 62 6c 65 64 20 69 6e 74 6f 20 73 63 72 61 74 63 68 20 73 70 61 63 65 20 61 66 74 65 72 20 22 68 65 72 65 22 2e 20 4f 66 20 63 6f 75 72 73 65 2c 20 74 68 61 74 20 72 61 69 73 65 73 20 74 68 65 0a ~ " ~ additional concern that we have the wrong "here", but" ~ " we can just swap" 20 20 7e 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 6f 6e 63 65 72 6e 20 74 68 61 74 20 77 65 20 68 61 76 65 20 74 68 65 20 77 72 6f 6e 67 20 22 68 65 72 65 22 2c 20 62 75 74 20 77 65 20 63 61 6e 20 6a 75 73 74 20 73 77 61 70 0a ~ " ~ that around, too." 20 20 7e 20 74 68 61 74 20 61 72 6f 75 6e 64 2c 20 74 6f 6f 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ This is all worth it to avoid reimplementing s". If" ~ " we had two" 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 61 6c 6c 20 77 6f 72 74 68 20 69 74 20 74 6f 20 61 76 6f 69 64 20 72 65 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 73 22 2e 20 49 66 20 77 65 20 68 61 64 20 74 77 6f 0a ~ " ~ implementations, they'd have to be kept in sync, and" ~ " it's an important" 20 20 7e 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2c 20 74 68 65 79 27 64 20 68 61 76 65 20 74 6f 20 62 65 20 6b 65 70 74 20 69 6e 20 73 79 6e 63 2c 20 61 6e 64 20 69 74 27 73 20 61 6e 20 69 6d 70 6f 72 74 61 6e 74 0a ~ " ~ user-facing word with semantics that are likely to" ~ " improve over time." 20 20 7e 20 75 73 65 72 2d 66 61 63 69 6e 67 20 77 6f 72 64 20 77 69 74 68 20 73 65 6d 61 6e 74 69 63 73 20 74 68 61 74 20 61 72 65 20 6c 69 6b 65 6c 79 20 74 6f 20 69 6d 70 72 6f 76 65 20 6f 76 65 72 20 74 69 6d 65 2e 0a ~ " interpreter-flags @" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 0a ~ " ' s" entry-to-execution-token" 20 20 27 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ Since [ is an immediate word, we have to go to extra" ~ " trouble to compile" 20 20 7e 20 20 20 53 69 6e 63 65 20 5b 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 77 65 20 68 61 76 65 20 74 6f 20 67 6f 20 74 6f 20 65 78 74 72 61 20 74 72 6f 75 62 6c 65 20 74 6f 20 63 6f 6d 70 69 6c 65 0a ~ " ~ it as part of the alternate." 20 20 7e 20 69 74 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 2e 0a ~ " [ ' [ entry-to-execution-token , ]" 20 20 5b 20 27 20 5b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " execute" 20 20 65 78 65 63 75 74 65 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " swap interpreter-flags !" 20 20 73 77 61 70 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 21 0a ~ "" 0a ~ " ~ Whew. What a mouthful." 20 20 7e 20 20 20 57 68 65 77 2e 20 57 68 61 74 20 61 20 6d 6f 75 74 68 66 75 6c 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Having done this, we have the string pointer on the" ~ " stack at transform" 20 20 7e 20 20 20 48 61 76 69 6e 67 20 64 6f 6e 65 20 74 68 69 73 2c 20 77 65 20 68 61 76 65 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 61 74 20 74 72 61 6e 73 66 6f 72 6d 0a ~ " ~ time, which with the label transform is the same as" ~ " immediate time. If" 20 20 7e 20 74 69 6d 65 2c 20 77 68 69 63 68 20 77 69 74 68 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 69 6d 6d 65 64 69 61 74 65 20 74 69 6d 65 2e 20 49 66 0a ~ " ~ we're in immediate mode, therefore, we've left the" ~ " string on the stack and" 20 20 7e 20 77 65 27 72 65 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2c 20 74 68 65 72 65 66 6f 72 65 2c 20 77 65 27 76 65 20 6c 65 66 74 20 74 68 65 20 73 74 72 69 6e 67 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 61 6e 64 0a ~ " ~ that's all we wanted. If we're in compile mode, it's" ~ " our job to output a" 20 20 7e 20 74 68 61 74 27 73 20 61 6c 6c 20 77 65 20 77 61 6e 74 65 64 2e 20 49 66 20 77 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 69 74 27 73 20 6f 75 72 20 6a 6f 62 20 74 6f 20 6f 75 74 70 75 74 20 61 0a ~ " ~ litstring invocation." 20 20 7e 20 6c 69 74 73 74 72 69 6e 67 20 69 6e 76 6f 63 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' litstring" 20 20 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ swap packstring 8 packalign here !" 20 20 20 20 68 65 72 65 20 40 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ ": label-dot-string-alternate" 3a 20 6c 61 62 65 6c 2d 64 6f 74 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ' label-string-alternate entry-to-execution-token" ~ " execute" 20 20 27 20 6c 61 62 65 6c 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ "" 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' emitstring" 20 20 20 20 4c 40 27 20 65 6d 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 emitstring" ~ " #-- (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 7e 20 3a 20 2d 38 20 65 6d 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " } { emitstring } if-else" 20 20 7d 20 7b 20 65 6d 69 74 73 74 72 69 6e 67 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ Because docol requires it, we provide a special" ~ " mini-version of the label" 7e 20 20 20 42 65 63 61 75 73 65 20 64 6f 63 6f 6c 20 72 65 71 75 69 72 65 73 20 69 74 2c 20 77 65 20 70 72 6f 76 69 64 65 20 61 20 73 70 65 63 69 61 6c 20 6d 69 6e 69 2d 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 0a ~ "~ system. We only do L@' and L!', because that's all we" ~ " need. These are real" 7e 20 73 79 73 74 65 6d 2e 20 57 65 20 6f 6e 6c 79 20 64 6f 20 4c 40 27 20 61 6e 64 20 4c 21 27 2c 20 62 65 63 61 75 73 65 20 74 68 61 74 27 73 20 61 6c 6c 20 77 65 20 6e 65 65 64 2e 20 54 68 65 73 65 20 61 72 65 20 72 65 61 6c 0a ~ "~ labels; there can be arbitrarily many of them, and they" ~ " can have forward" 7e 20 6c 61 62 65 6c 73 3b 20 74 68 65 72 65 20 63 61 6e 20 62 65 20 61 72 62 69 74 72 61 72 69 6c 79 20 6d 61 6e 79 20 6f 66 20 74 68 65 6d 2c 20 61 6e 64 20 74 68 65 79 20 63 61 6e 20 68 61 76 65 20 66 6f 72 77 61 72 64 0a ~ "~ references." 7e 20 72 65 66 65 72 65 6e 63 65 73 2e 0a ~ "~" 7e 0a ~ "~ The value that's accepted is in the host address space;" ~ " the label is set" 7e 20 20 20 54 68 65 20 76 61 6c 75 65 20 74 68 61 74 27 73 20 61 63 63 65 70 74 65 64 20 69 73 20 69 6e 20 74 68 65 20 68 6f 73 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 3b 20 74 68 65 20 6c 61 62 65 6c 20 69 73 20 73 65 74 0a ~ "~ to an offset; and the value that's returned is in the" ~ " target address space." 7e 20 74 6f 20 61 6e 20 6f 66 66 73 65 74 3b 20 61 6e 64 20 74 68 65 20 76 61 6c 75 65 20 74 68 61 74 27 73 20 72 65 74 75 72 6e 65 64 20 69 73 20 69 6e 20 74 68 65 20 74 61 72 67 65 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2e 0a ~ "~" 7e 0a ~ "~ (-- value)" 7e 20 28 2d 2d 20 76 61 6c 75 65 29 0a ~ ": label-L@'-alternate" 3a 20 6c 61 62 65 6c 2d 4c 40 27 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " word value@" 20 20 77 6f 72 64 20 76 61 6c 75 65 40 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " intern-label" 20 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 0a ~ " use-label" 20 20 75 73 65 2d 6c 61 62 65 6c 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " dropstring-with-result" 20 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ "" 0a ~ " offset-to-target-address-space" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ (value --)" 7e 20 28 76 61 6c 75 65 20 2d 2d 29 0a ~ ": label-L!'-alternate" 3a 20 6c 61 62 65 6c 2d 4c 21 27 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " host-address-space-to-offset" 20 20 68 6f 73 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 2d 74 6f 2d 6f 66 66 73 65 74 0a ~ "" 0a ~ " word value@" 20 20 77 6f 72 64 20 76 61 6c 75 65 40 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " intern-label" 20 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " dropstring-with-result" 20 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " set-label" 20 20 73 65 74 2d 6c 61 62 65 6c 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ We implement alternates of all the high-level" ~ " flow-control words for the" 7e 20 20 20 57 65 20 69 6d 70 6c 65 6d 65 6e 74 20 61 6c 74 65 72 6e 61 74 65 73 20 6f 66 20 61 6c 6c 20 74 68 65 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 20 66 6f 72 20 74 68 65 0a ~ "~ label transform: if, unless, if-else, forever, and while." ~ " We leave { and }" 7e 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 3a 20 69 66 2c 20 75 6e 6c 65 73 73 2c 20 69 66 2d 65 6c 73 65 2c 20 66 6f 72 65 76 65 72 2c 20 61 6e 64 20 77 68 69 6c 65 2e 20 57 65 20 6c 65 61 76 65 20 7b 20 61 6e 64 20 7d 0a ~ "~ as their usual implementations. The values { and } leave" ~ " on the stack will" 7e 20 61 73 20 74 68 65 69 72 20 75 73 75 61 6c 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2e 20 54 68 65 20 76 61 6c 75 65 73 20 7b 20 61 6e 64 20 7d 20 6c 65 61 76 65 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 77 69 6c 6c 0a ~ "~ be in the host address space, which is convenient anyway." ~ " Those values don't" 7e 20 62 65 20 69 6e 20 74 68 65 20 68 6f 73 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2c 20 77 68 69 63 68 20 69 73 20 63 6f 6e 76 65 6e 69 65 6e 74 20 61 6e 79 77 61 79 2e 20 54 68 6f 73 65 20 76 61 6c 75 65 73 20 64 6f 6e 27 74 0a ~ "~ make their way into the output, since everything is" ~ " relative, and the" 7e 20 6d 61 6b 65 20 74 68 65 69 72 20 77 61 79 20 69 6e 74 6f 20 74 68 65 20 6f 75 74 70 75 74 2c 20 73 69 6e 63 65 20 65 76 65 72 79 74 68 69 6e 67 20 69 73 20 72 65 6c 61 74 69 76 65 2c 20 61 6e 64 20 74 68 65 0a ~ "~ relative offsets are correct regardless. What we do need" ~ " to change, though," 7e 20 72 65 6c 61 74 69 76 65 20 6f 66 66 73 65 74 73 20 61 72 65 20 63 6f 72 72 65 63 74 20 72 65 67 61 72 64 6c 65 73 73 2e 20 57 68 61 74 20 77 65 20 64 6f 20 6e 65 65 64 20 74 6f 20 63 68 61 6e 67 65 2c 20 74 68 6f 75 67 68 2c 0a ~ "~ is the addresses of branch and 0branch. We need to" ~ " resolve these via label." 7e 20 69 73 20 74 68 65 20 61 64 64 72 65 73 73 65 73 20 6f 66 20 62 72 61 6e 63 68 20 61 6e 64 20 30 62 72 61 6e 63 68 2e 20 57 65 20 6e 65 65 64 20 74 6f 20 72 65 73 6f 6c 76 65 20 74 68 65 73 65 20 76 69 61 20 6c 61 62 65 6c 2e 0a ~ "~" 7e 0a ~ "~ (start pointer, length --)" 7e 20 28 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 20 2d 2d 29 0a ~ ": label-if-alternate" 3a 20 6c 61 62 65 6c 2d 69 66 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " 2dup swap dup 5 8 * + 3roll" 20 20 32 64 75 70 20 73 77 61 70 20 64 75 70 20 35 20 38 20 2a 20 2b 20 33 72 6f 6c 6c 0a ~ " ~ (start pointer, length, adjusted start pointer, start" ~ " pointer, length)" 20 20 7e 20 28 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 2c 20 61 64 6a 75 73 74 65 64 20 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 29 0a ~ " memmove" 20 20 6d 65 6d 6d 6f 76 65 0a ~ " ~ (start pointer, length)" 20 20 7e 20 28 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 29 0a ~ " swap here @ swap here ! swap" 20 20 73 77 61 70 20 68 65 72 65 20 40 20 73 77 61 70 20 68 65 72 65 20 21 20 73 77 61 70 0a ~ " ~ (old here, length)" 20 20 7e 20 28 6f 6c 64 20 68 65 72 65 2c 20 6c 65 6e 67 74 68 29 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' 0branch" 20 20 4c 40 27 20 30 62 72 61 6e 63 68 0a ~ " L@' !=" 20 20 4c 40 27 20 21 3d 0a ~ " L@' lit" 20 20 4c 40 27 20 6c 69 74 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 lit #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 0 ~ : provide-hex" 20 20 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " , ~ : -8 # #--" ~ " (integer literal)" 20 20 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " offset-to-target-address-space , ~ : -8 != #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 21 3d 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ The branch length needs to be one word longer than" ~ " the block length," 20 20 7e 20 20 20 54 68 65 20 62 72 61 6e 63 68 20 6c 65 6e 67 74 68 20 6e 65 65 64 73 20 74 6f 20 62 65 20 6f 6e 65 20 77 6f 72 64 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 74 68 65 20 62 6c 6f 63 6b 20 6c 65 6e 67 74 68 2c 0a ~ " ~ because the length field itself is part of the scope of" ~ " the branch." 20 20 7e 20 62 65 63 61 75 73 65 20 74 68 65 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 20 69 74 73 65 6c 66 20 69 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 73 63 6f 70 65 20 6f 66 20 74 68 65 20 62 72 61 6e 63 68 2e 0a ~ " offset-to-target-address-space , ~ : -8 0branch #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 30 62 72 61 6e 63 68 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " dup 8 + ~ : provide-hex" 20 20 64 75 70 20 38 20 2b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " ~ : 8 # #-- (branch offset)" 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 62 72 61 6e 63 68 20 6f 66 66 73 65 74 29 0a ~ " ," 20 20 2c 0a ~ " ~ (old here, length)" 20 20 7e 20 28 6f 6c 64 20 68 65 72 65 2c 20 6c 65 6e 67 74 68 29 0a ~ " drop 5 8 * + here !" 20 20 64 72 6f 70 20 35 20 38 20 2a 20 2b 20 68 65 72 65 20 21 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "~ (start pointer, length)" 7e 20 28 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 29 0a ~ ": label-unless-alternate" 3a 20 6c 61 62 65 6c 2d 75 6e 6c 65 73 73 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " 2dup swap dup 5 8 * + 3roll" 20 20 32 64 75 70 20 73 77 61 70 20 64 75 70 20 35 20 38 20 2a 20 2b 20 33 72 6f 6c 6c 0a ~ " ~ (start pointer, length, adjusted start pointer, start" ~ " pointer, length)" 20 20 7e 20 28 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 2c 20 61 64 6a 75 73 74 65 64 20 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 29 0a ~ " memmove" 20 20 6d 65 6d 6d 6f 76 65 0a ~ " ~ (start pointer, length)" 20 20 7e 20 28 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 29 0a ~ " swap here @ swap here ! swap" 20 20 73 77 61 70 20 68 65 72 65 20 40 20 73 77 61 70 20 68 65 72 65 20 21 20 73 77 61 70 0a ~ " ~ (old here, length)" 20 20 7e 20 28 6f 6c 64 20 68 65 72 65 2c 20 6c 65 6e 67 74 68 29 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' 0branch" 20 20 4c 40 27 20 30 62 72 61 6e 63 68 0a ~ " L@' =" 20 20 4c 40 27 20 3d 0a ~ " L@' lit" 20 20 4c 40 27 20 6c 69 74 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 lit #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 0 ~ : provide-hex" 20 20 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " , ~ : -8 # #--" ~ " (integer literal)" 20 20 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " offset-to-target-address-space , ~ : -8 = #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 3d 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ The branch length needs to be one word longer than" ~ " the block length," 20 20 7e 20 20 20 54 68 65 20 62 72 61 6e 63 68 20 6c 65 6e 67 74 68 20 6e 65 65 64 73 20 74 6f 20 62 65 20 6f 6e 65 20 77 6f 72 64 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 74 68 65 20 62 6c 6f 63 6b 20 6c 65 6e 67 74 68 2c 0a ~ " ~ because the length field itself is part of the scope of" ~ " the branch." 20 20 7e 20 62 65 63 61 75 73 65 20 74 68 65 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 20 69 74 73 65 6c 66 20 69 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 73 63 6f 70 65 20 6f 66 20 74 68 65 20 62 72 61 6e 63 68 2e 0a ~ " offset-to-target-address-space , ~ : -8 0branch #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 30 62 72 61 6e 63 68 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " dup 8 + ~ : provide-hex" 20 20 64 75 70 20 38 20 2b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " ~ : 8 # #-- (branch offset)" 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 62 72 61 6e 63 68 20 6f 66 66 73 65 74 29 0a ~ " ," 20 20 2c 0a ~ " ~ (old here, length)" 20 20 7e 20 28 6f 6c 64 20 68 65 72 65 2c 20 6c 65 6e 67 74 68 29 0a ~ " drop 5 8 * + here !" 20 20 64 72 6f 70 20 35 20 38 20 2a 20 2b 20 68 65 72 65 20 21 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "~ (true start, true length, false start, false length)" 7e 20 28 74 72 75 65 20 73 74 61 72 74 2c 20 74 72 75 65 20 6c 65 6e 67 74 68 2c 20 66 61 6c 73 65 20 73 74 61 72 74 2c 20 66 61 6c 73 65 20 6c 65 6e 67 74 68 29 0a ~ ": label-if-else-alternate" 3a 20 6c 61 62 65 6c 2d 69 66 2d 65 6c 73 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ First we slide the false-block forward, then the" ~ " true-block. We slide" 20 20 7e 20 20 20 46 69 72 73 74 20 77 65 20 73 6c 69 64 65 20 74 68 65 20 66 61 6c 73 65 2d 62 6c 6f 63 6b 20 66 6f 72 77 61 72 64 2c 20 74 68 65 6e 20 74 68 65 20 74 72 75 65 2d 62 6c 6f 63 6b 2e 20 57 65 20 73 6c 69 64 65 0a ~ " ~ them both directly into their final positions, leaving" ~ " space at the start" 20 20 7e 20 74 68 65 6d 20 62 6f 74 68 20 64 69 72 65 63 74 6c 79 20 69 6e 74 6f 20 74 68 65 69 72 20 66 69 6e 61 6c 20 70 6f 73 69 74 69 6f 6e 73 2c 20 6c 65 61 76 69 6e 67 20 73 70 61 63 65 20 61 74 20 74 68 65 20 73 74 61 72 74 0a ~ " ~ for a test and branch, and space in between for an" ~ " unconditional branch." 20 20 7e 20 66 6f 72 20 61 20 74 65 73 74 20 61 6e 64 20 62 72 61 6e 63 68 2c 20 61 6e 64 20 73 70 61 63 65 20 69 6e 20 62 65 74 77 65 65 6e 20 66 6f 72 20 61 6e 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 61 6e 63 68 2e 0a ~ " ~ Those spaces will take five words, and two words," ~ " respectively. So the" 20 20 7e 20 54 68 6f 73 65 20 73 70 61 63 65 73 20 77 69 6c 6c 20 74 61 6b 65 20 66 69 76 65 20 77 6f 72 64 73 2c 20 61 6e 64 20 74 77 6f 20 77 6f 72 64 73 2c 20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 20 53 6f 20 74 68 65 0a ~ " ~ false-block gets moved by seven words, and the" ~ " true-block gets moved by" 20 20 7e 20 66 61 6c 73 65 2d 62 6c 6f 63 6b 20 67 65 74 73 20 6d 6f 76 65 64 20 62 79 20 73 65 76 65 6e 20 77 6f 72 64 73 2c 20 61 6e 64 20 74 68 65 20 74 72 75 65 2d 62 6c 6f 63 6b 20 67 65 74 73 20 6d 6f 76 65 64 20 62 79 0a ~ " ~ five words." 20 20 7e 20 66 69 76 65 20 77 6f 72 64 73 2e 0a ~ " 2dup swap dup 7 8 * + 3roll memmove" 20 20 32 64 75 70 20 73 77 61 70 20 64 75 70 20 37 20 38 20 2a 20 2b 20 33 72 6f 6c 6c 20 6d 65 6d 6d 6f 76 65 0a ~ " 3 pick dup 5 8 * + 4 pick memmove" 20 20 33 20 70 69 63 6b 20 64 75 70 20 35 20 38 20 2a 20 2b 20 34 20 70 69 63 6b 20 6d 65 6d 6d 6f 76 65 0a ~ " ~ (true start, true length, false start, false length)" 20 20 7e 20 28 74 72 75 65 20 73 74 61 72 74 2c 20 74 72 75 65 20 6c 65 6e 67 74 68 2c 20 66 61 6c 73 65 20 73 74 61 72 74 2c 20 66 61 6c 73 65 20 6c 65 6e 67 74 68 29 0a ~ "" 0a ~ " ~ Now we write out the initial test-and-branch." 20 20 7e 20 4e 6f 77 20 77 65 20 77 72 69 74 65 20 6f 75 74 20 74 68 65 20 69 6e 69 74 69 61 6c 20 74 65 73 74 2d 61 6e 64 2d 62 72 61 6e 63 68 2e 0a ~ " 4 roll dup 5 unroll here @ 6 unroll here !" 20 20 34 20 72 6f 6c 6c 20 64 75 70 20 35 20 75 6e 72 6f 6c 6c 20 68 65 72 65 20 40 20 36 20 75 6e 72 6f 6c 6c 20 68 65 72 65 20 21 0a ~ " ~ (old here, true start, true length, false start, false" ~ " length)" 20 20 7e 20 28 6f 6c 64 20 68 65 72 65 2c 20 74 72 75 65 20 73 74 61 72 74 2c 20 74 72 75 65 20 6c 65 6e 67 74 68 2c 20 66 61 6c 73 65 20 73 74 61 72 74 2c 20 66 61 6c 73 65 20 6c 65 6e 67 74 68 29 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' 0branch" 20 20 4c 40 27 20 30 62 72 61 6e 63 68 0a ~ " L@' !=" 20 20 4c 40 27 20 21 3d 0a ~ " L@' lit" 20 20 4c 40 27 20 6c 69 74 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 lit #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 0 ~ : provide-hex" 20 20 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " , ~ : -8 # #--" ~ " (integer literal)" 20 20 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " offset-to-target-address-space , ~ : -8 != #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 21 3d 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ Branch past the length field, the true-block, and the" ~ " unconditional" 20 20 7e 20 20 20 42 72 61 6e 63 68 20 70 61 73 74 20 74 68 65 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 2c 20 74 68 65 20 74 72 75 65 2d 62 6c 6f 63 6b 2c 20 61 6e 64 20 74 68 65 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 0a ~ " ~ branch in the middle." 20 20 7e 20 62 72 61 6e 63 68 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 2e 0a ~ " offset-to-target-address-space , ~ : -8 0branch #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 30 62 72 61 6e 63 68 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 3roll dup 4 unroll 3 8 * + ~ : provide-hex" 20 20 33 72 6f 6c 6c 20 64 75 70 20 34 20 75 6e 72 6f 6c 6c 20 33 20 38 20 2a 20 2b 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " ~ : 8 # #-- (branch offset)" 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 62 72 61 6e 63 68 20 6f 66 66 73 65 74 29 0a ~ " ," 20 20 2c 0a ~ "" 0a ~ " ~ Next, write out the unconditional branch in the" ~ " middle." 20 20 7e 20 4e 65 78 74 2c 20 77 72 69 74 65 20 6f 75 74 20 74 68 65 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 61 6e 63 68 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 2e 0a ~ " swap dup 3unroll 5 8 * + here !" 20 20 73 77 61 70 20 64 75 70 20 33 75 6e 72 6f 6c 6c 20 35 20 38 20 2a 20 2b 20 68 65 72 65 20 21 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' branch" 20 20 4c 40 27 20 62 72 61 6e 63 68 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 branch #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 62 72 61 6e 63 68 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ Branch past the length field and the false-block." 20 20 7e 20 42 72 61 6e 63 68 20 70 61 73 74 20 74 68 65 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 20 61 6e 64 20 74 68 65 20 66 61 6c 73 65 2d 62 6c 6f 63 6b 2e 0a ~ " dup 8 + ~ : provide-hex" 20 20 64 75 70 20 38 20 2b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " ~ : 8 # #-- (branch offset)" 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 62 72 61 6e 63 68 20 6f 66 66 73 65 74 29 0a ~ " ," 20 20 2c 0a ~ "" 0a ~ " ~ Set "here" to point to the true end." 20 20 7e 20 53 65 74 20 22 68 65 72 65 22 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 74 72 75 65 20 65 6e 64 2e 0a ~ " drop drop drop drop 7 8 * + here !" 20 20 64 72 6f 70 20 64 72 6f 70 20 64 72 6f 70 20 64 72 6f 70 20 37 20 38 20 2a 20 2b 20 68 65 72 65 20 21 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "~ (start, length --)" 7e 20 28 73 74 61 72 74 2c 20 6c 65 6e 67 74 68 20 2d 2d 29 0a ~ ": label-forever-alternate" 3a 20 6c 61 62 65 6c 2d 66 6f 72 65 76 65 72 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' branch" 20 20 4c 40 27 20 62 72 61 6e 63 68 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 branch #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 62 72 61 6e 63 68 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 8 + -1 * ~ : provide-hex" 20 20 38 20 2b 20 2d 31 20 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " ~ : 8 # #-- (branch offset)" 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 62 72 61 6e 63 68 20 6f 66 66 73 65 74 29 0a ~ " , drop" 20 20 2c 20 64 72 6f 70 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "~ (test start, test length, body start, body length --)" 7e 20 28 74 65 73 74 20 73 74 61 72 74 2c 20 74 65 73 74 20 6c 65 6e 67 74 68 2c 20 62 6f 64 79 20 73 74 61 72 74 2c 20 62 6f 64 79 20 6c 65 6e 67 74 68 20 2d 2d 29 0a ~ ": label-while-alternate" 3a 20 6c 61 62 65 6c 2d 77 68 69 6c 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ The conditional branch needs five words." 20 20 7e 20 54 68 65 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 61 6e 63 68 20 6e 65 65 64 73 20 66 69 76 65 20 77 6f 72 64 73 2e 0a ~ " 2dup swap dup 5 8 * + 3roll memmove" 20 20 32 64 75 70 20 73 77 61 70 20 64 75 70 20 35 20 38 20 2a 20 2b 20 33 72 6f 6c 6c 20 6d 65 6d 6d 6f 76 65 0a ~ " here @ 5 unroll swap dup 3unroll here !" 20 20 68 65 72 65 20 40 20 35 20 75 6e 72 6f 6c 6c 20 73 77 61 70 20 64 75 70 20 33 75 6e 72 6f 6c 6c 20 68 65 72 65 20 21 0a ~ " ~ (old here, test start, test length, body start, body" ~ " length)" 20 20 7e 20 28 6f 6c 64 20 68 65 72 65 2c 20 74 65 73 74 20 73 74 61 72 74 2c 20 74 65 73 74 20 6c 65 6e 67 74 68 2c 20 62 6f 64 79 20 73 74 61 72 74 2c 20 62 6f 64 79 20 6c 65 6e 67 74 68 29 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' 0branch" 20 20 4c 40 27 20 30 62 72 61 6e 63 68 0a ~ " L@' !=" 20 20 4c 40 27 20 21 3d 0a ~ " L@' lit" 20 20 4c 40 27 20 6c 69 74 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 lit #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 0 ~ : provide-hex" 20 20 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " , ~ : -8 # #--" ~ " (integer literal)" 20 20 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " offset-to-target-address-space , ~ : -8 != #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 21 3d 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ Branch past the length field, the body, and the" ~ " unconditional branch." 20 20 7e 20 42 72 61 6e 63 68 20 70 61 73 74 20 74 68 65 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 2c 20 74 68 65 20 62 6f 64 79 2c 20 61 6e 64 20 74 68 65 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 61 6e 63 68 2e 0a ~ " offset-to-target-address-space , ~ : -8 0branch #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 30 62 72 61 6e 63 68 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " dup 3 8 * + ~ : provide-hex" 20 20 64 75 70 20 33 20 38 20 2a 20 2b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " ~ : 8 # #-- (branch offset)" 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 62 72 61 6e 63 68 20 6f 66 66 73 65 74 29 0a ~ " ," 20 20 2c 0a ~ " ~ Set "here" to the new end." 20 20 7e 20 53 65 74 20 22 68 65 72 65 22 20 74 6f 20 74 68 65 20 6e 65 77 20 65 6e 64 2e 0a ~ " 5 8 * 6 roll + here !" 20 20 35 20 38 20 2a 20 36 20 72 6f 6c 6c 20 2b 20 68 65 72 65 20 21 0a ~ " ~ (test start, test length, body start, body length)" 20 20 7e 20 28 74 65 73 74 20 73 74 61 72 74 2c 20 74 65 73 74 20 6c 65 6e 67 74 68 2c 20 62 6f 64 79 20 73 74 61 72 74 2c 20 62 6f 64 79 20 6c 65 6e 67 74 68 29 0a ~ " ~ Unconditionally branch backwards past the branch" ~ " word, the body, the" 20 20 7e 20 20 20 55 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 62 72 61 6e 63 68 20 62 61 63 6b 77 61 72 64 73 20 70 61 73 74 20 74 68 65 20 62 72 61 6e 63 68 20 77 6f 72 64 2c 20 74 68 65 20 62 6f 64 79 2c 20 74 68 65 0a ~ " ~ conditional branch, and the test." 20 20 7e 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 61 6e 63 68 2c 20 61 6e 64 20 74 68 65 20 74 65 73 74 2e 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' branch" 20 20 4c 40 27 20 62 72 61 6e 63 68 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 branch #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 62 72 61 6e 63 68 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 6 8 * + swap drop + swap drop -1 * ~ : provide-hex" 20 20 36 20 38 20 2a 20 2b 20 73 77 61 70 20 64 72 6f 70 20 2b 20 73 77 61 70 20 64 72 6f 70 20 2d 31 20 2a 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " ~ : 8 # #-- (branch offset)" 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 62 72 61 6e 63 68 20 6f 66 66 73 65 74 29 0a ~ " ," 20 20 2c 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This implements the label transform for a single word." ~ " It is directly" 7e 20 20 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 66 6f 72 20 61 20 73 69 6e 67 6c 65 20 77 6f 72 64 2e 20 49 74 20 69 73 20 64 69 72 65 63 74 6c 79 0a ~ "~ analogous to "interpret", and reading" ~ " language/dynamic/dynamic.e may help in" 7e 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 22 69 6e 74 65 72 70 72 65 74 22 2c 20 61 6e 64 20 72 65 61 64 69 6e 67 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 20 6d 61 79 20 68 65 6c 70 20 69 6e 0a ~ "~ understanding it, though it's meant to still make sense" ~ " on its own." 7e 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 20 69 74 2c 20 74 68 6f 75 67 68 20 69 74 27 73 20 6d 65 61 6e 74 20 74 6f 20 73 74 69 6c 6c 20 6d 61 6b 65 20 73 65 6e 73 65 20 6f 6e 20 69 74 73 20 6f 77 6e 2e 0a ~ "~" 7e 0a ~ "~ It expects to be called from "label-transform", below," ~ " which loops." 7e 20 49 74 20 65 78 70 65 63 74 73 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 22 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 22 2c 20 62 65 6c 6f 77 2c 20 77 68 69 63 68 20 6c 6f 6f 70 73 2e 0a ~ "~" 7e 0a ~ "~ (-- done)" 7e 20 28 2d 2d 20 64 6f 6e 65 29 0a ~ ": label-transform-one" 3a 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 0a ~ " word" 20 20 77 6f 72 64 0a ~ "" 0a ~ " ~ If no word was returned, end the transformation." 20 20 7e 20 49 66 20 6e 6f 20 77 6f 72 64 20 77 61 73 20 72 65 74 75 72 6e 65 64 2c 20 65 6e 64 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ " dup 0 = { drop 1 exit } if" 20 20 64 75 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ The string is on the top of the stack, so to get a" ~ " pointer to it we get" 20 20 7e 20 54 68 65 20 73 74 72 69 6e 67 20 69 73 20 6f 6e 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 73 74 61 63 6b 2c 20 73 6f 20 74 6f 20 67 65 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 69 74 20 77 65 20 67 65 74 0a ~ " ~ the stack address." 20 20 7e 20 74 68 65 20 73 74 61 63 6b 20 61 64 64 72 65 73 73 2e 0a ~ " ~ (string)" 20 20 7e 20 28 73 74 72 69 6e 67 29 0a ~ " value@" 20 20 76 61 6c 75 65 40 0a ~ "" 0a ~ " ~ Check whether it's one of the words we have" ~ " alternates for, and look up" 20 20 7e 20 20 20 43 68 65 63 6b 20 77 68 65 74 68 65 72 20 69 74 27 73 20 6f 6e 65 20 6f 66 20 74 68 65 20 77 6f 72 64 73 20 77 65 20 68 61 76 65 20 61 6c 74 65 72 6e 61 74 65 73 20 66 6f 72 2c 20 61 6e 64 20 6c 6f 6f 6b 20 75 70 0a ~ " ~ the alternate if so." 20 20 7e 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 69 66 20 73 6f 2e 0a ~ " dup 0 swap" 20 20 64 75 70 20 30 20 73 77 61 70 0a ~ " ~ (name as stack string, name pointer, placeholder, name" ~ " pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 2c 20 70 6c 61 63 65 68 6f 6c 64 65 72 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ " dup s" create" stringcmp 0 = { swap drop '" ~ " label-create-alternate swap } if" 20 20 64 75 70 20 73 22 20 63 72 65 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" :" stringcmp 0 = { swap drop '" ~ " label-colon-alternate swap } if" 20 20 64 75 70 20 73 22 20 3a 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" self-codeword" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' label-self-codeword-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ;" stringcmp 0 = { swap drop '" ~ " label-semicolon-alternate swap } if" 20 20 64 75 70 20 73 22 20 3b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ;asm" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 3b 61 73 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' label-semicolon-assembly-alternate swap }" ~ " if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " ~ It is nontrivial to construct a string with a" ~ " double-quote in it." 20 20 7e 20 49 74 20 69 73 20 6e 6f 6e 74 72 69 76 69 61 6c 20 74 6f 20 63 6f 6e 73 74 72 75 63 74 20 61 20 73 74 72 69 6e 67 20 77 69 74 68 20 61 20 64 6f 75 62 6c 65 2d 71 75 6f 74 65 20 69 6e 20 69 74 2e 0a ~ " dup ' s" entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' label-string-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup ' ." entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 2e 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' label-dot-string-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 64 6f 74 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" L@'" stringcmp 0 = { swap drop '" ~ " label-L@'-alternate swap } if" 20 20 64 75 70 20 73 22 20 4c 40 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 4c 40 27 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" L!'" stringcmp 0 = { swap drop '" ~ " label-L!'-alternate swap } if" 20 20 64 75 70 20 73 22 20 4c 21 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 4c 21 27 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" keyword" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 6b 65 79 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' label-keyword-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 6b 65 79 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" if" stringcmp 0 = { swap drop ' label-if-alternate" ~ " swap } if" 20 20 64 75 70 20 73 22 20 69 66 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 69 66 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" unless" stringcmp 0 = { swap drop '" ~ " label-unless-alternate swap } if" 20 20 64 75 70 20 73 22 20 75 6e 6c 65 73 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 75 6e 6c 65 73 73 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" if-else" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 69 66 2d 65 6c 73 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' label-if-else-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 69 66 2d 65 6c 73 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" forever" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 66 6f 72 65 76 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' label-forever-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 66 6f 72 65 76 65 72 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" while" stringcmp 0 = { swap drop '" ~ " label-while-alternate swap } if" 20 20 64 75 70 20 73 22 20 77 68 69 6c 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 61 62 65 6c 2d 77 68 69 6c 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " drop swap" 20 20 64 72 6f 70 20 73 77 61 70 0a ~ " ~ (name as stack string, 0 or alternate entry pointer," ~ " name pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 30 20 6f 72 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ If an alternate was found, the alternate will be used" ~ " in immediate mode." 20 20 7e 20 20 20 49 66 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 77 61 73 20 66 6f 75 6e 64 2c 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 0a ~ " ~ If not, we look up the word in the regular," ~ " non-transformed dictionary" 20 20 7e 20 49 66 20 6e 6f 74 2c 20 77 65 20 6c 6f 6f 6b 20 75 70 20 74 68 65 20 77 6f 72 64 20 69 6e 20 74 68 65 20 72 65 67 75 6c 61 72 2c 20 6e 6f 6e 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 64 69 63 74 69 6f 6e 61 72 79 0a ~ " ~ and use that for immediate mode." 20 20 7e 20 61 6e 64 20 75 73 65 20 74 68 61 74 20 66 6f 72 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 0a ~ " over { dup" 20 20 6f 76 65 72 20 7b 20 64 75 70 0a ~ " transformation-state" ~ " transformation-state-saved-latest @ swap find-in" 20 20 20 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 40 20 73 77 61 70 20 66 69 6e 64 2d 69 6e 0a ~ " 3roll drop swap } unless" 20 20 20 20 20 20 20 20 20 33 72 6f 6c 6c 20 64 72 6f 70 20 73 77 61 70 20 7d 20 75 6e 6c 65 73 73 0a ~ " ~ (name as stack string, immediate entry pointer, name" ~ " pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ In regular "interpret", we would check whether we" ~ " found the word before" 20 20 7e 20 20 20 49 6e 20 72 65 67 75 6c 61 72 20 22 69 6e 74 65 72 70 72 65 74 22 2c 20 77 65 20 77 6f 75 6c 64 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 77 65 20 66 6f 75 6e 64 20 74 68 65 20 77 6f 72 64 20 62 65 66 6f 72 65 0a ~ " ~ checking the mode. However, we have three different" ~ " places words could" 20 20 7e 20 63 68 65 63 6b 69 6e 67 20 74 68 65 20 6d 6f 64 65 2e 20 48 6f 77 65 76 65 72 2c 20 77 65 20 68 61 76 65 20 74 68 72 65 65 20 64 69 66 66 65 72 65 6e 74 20 70 6c 61 63 65 73 20 77 6f 72 64 73 20 63 6f 75 6c 64 0a ~ " ~ come from, so that's not a simple notion. So, we check" ~ " the mode first." 20 20 7e 20 63 6f 6d 65 20 66 72 6f 6d 2c 20 73 6f 20 74 68 61 74 27 73 20 6e 6f 74 20 61 20 73 69 6d 70 6c 65 20 6e 6f 74 69 6f 6e 2e 20 53 6f 2c 20 77 65 20 63 68 65 63 6b 20 74 68 65 20 6d 6f 64 65 20 66 69 72 73 74 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ If we're in compile mode, there's still a chance" ~ " it's an immediate" 20 20 20 20 7e 20 20 20 49 66 20 77 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 74 68 65 72 65 27 73 20 73 74 69 6c 6c 20 61 20 63 68 61 6e 63 65 20 69 74 27 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 0a ~ " ~ word. First check whether we have an immediate entry," ~ " then if so, check" 20 20 20 20 7e 20 77 6f 72 64 2e 20 46 69 72 73 74 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 77 65 20 68 61 76 65 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 2c 20 74 68 65 6e 20 69 66 20 73 6f 2c 20 63 68 65 63 6b 0a ~ " ~ that entry's flags. Notice that this means the" ~ " generated code can't" 20 20 20 20 7e 20 74 68 61 74 20 65 6e 74 72 79 27 73 20 66 6c 61 67 73 2e 20 4e 6f 74 69 63 65 20 74 68 61 74 20 74 68 69 73 20 6d 65 61 6e 73 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 63 61 6e 27 74 0a ~ " ~ override an immediate word with a non-immediate word" ~ " of the same name." 20 20 20 20 7e 20 6f 76 65 72 72 69 64 65 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 20 77 69 74 68 20 61 20 6e 6f 6e 2d 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 20 6f 66 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 2e 0a ~ " over dup { entry-flags@ 0x01 & not } { not } if-else" 20 20 20 20 6f 76 65 72 20 64 75 70 20 7b 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 30 31 20 26 20 6e 6f 74 20 7d 20 7b 20 6e 6f 74 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " {" 20 20 20 20 7b 0a ~ " ~ Either there was no immediate entry, or the" ~ " immediate entry wasn't" 20 20 20 20 20 20 7e 20 20 20 45 69 74 68 65 72 20 74 68 65 72 65 20 77 61 73 20 6e 6f 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 2c 20 6f 72 20 74 68 65 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 20 77 61 73 6e 27 74 0a ~ " ~ flagged as an immediate word. So we check whether" ~ " this could be a" 20 20 20 20 20 20 7e 20 66 6c 61 67 67 65 64 20 61 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2e 20 53 6f 20 77 65 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 74 68 69 73 20 63 6f 75 6c 64 20 62 65 20 61 0a ~ " ~ compilation." 20 20 20 20 20 20 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2e 0a ~ " ~" 20 20 20 20 20 20 7e 0a ~ " ~ To do this, we need to look the word up in the" ~ " output buffer. We" 20 20 20 20 20 20 7e 20 20 20 54 6f 20 64 6f 20 74 68 69 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6c 6f 6f 6b 20 74 68 65 20 77 6f 72 64 20 75 70 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 2e 20 57 65 0a ~ " ~ can't easily traverse the next-entry pointers in" ~ " the output buffer's" 20 20 20 20 20 20 7e 20 63 61 6e 27 74 20 65 61 73 69 6c 79 20 74 72 61 76 65 72 73 65 20 74 68 65 20 6e 65 78 74 2d 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 73 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 27 73 0a ~ " ~ dictionary, so we check the label. Since we don't" ~ " know the word's name" 20 20 20 20 20 20 7e 20 64 69 63 74 69 6f 6e 61 72 79 2c 20 73 6f 20 77 65 20 63 68 65 63 6b 20 74 68 65 20 6c 61 62 65 6c 2e 20 53 69 6e 63 65 20 77 65 20 64 6f 6e 27 74 20 6b 6e 6f 77 20 74 68 65 20 77 6f 72 64 27 73 20 6e 61 6d 65 0a ~ " ~ statically, this is a rare scenario where we can't" ~ " use the abbreviated" 20 20 20 20 20 20 7e 20 73 74 61 74 69 63 61 6c 6c 79 2c 20 74 68 69 73 20 69 73 20 61 20 72 61 72 65 20 73 63 65 6e 61 72 69 6f 20 77 68 65 72 65 20 77 65 20 63 61 6e 27 74 20 75 73 65 20 74 68 65 20 61 62 62 72 65 76 69 61 74 65 64 0a ~ " ~ label syntax, but that's easy enough." 20 20 20 20 20 20 7e 20 6c 61 62 65 6c 20 73 79 6e 74 61 78 2c 20 62 75 74 20 74 68 61 74 27 73 20 65 61 73 79 20 65 6e 6f 75 67 68 2e 0a ~ " ~" 20 20 20 20 20 20 7e 0a ~ " ~ Even though we've ruled out the possibility that" ~ " the word is only" 20 20 20 20 20 20 7e 20 20 20 45 76 65 6e 20 74 68 6f 75 67 68 20 77 65 27 76 65 20 72 75 6c 65 64 20 6f 75 74 20 74 68 65 20 70 6f 73 73 69 62 69 6c 69 74 79 20 74 68 61 74 20 74 68 65 20 77 6f 72 64 20 69 73 20 6f 6e 6c 79 0a ~ " ~ ever used immediately, it is still possible that" ~ " there's some reason" 20 20 20 20 20 20 7e 20 65 76 65 72 20 75 73 65 64 20 69 6d 6d 65 64 69 61 74 65 6c 79 2c 20 69 74 20 69 73 20 73 74 69 6c 6c 20 70 6f 73 73 69 62 6c 65 20 74 68 61 74 20 74 68 65 72 65 27 73 20 73 6f 6d 65 20 72 65 61 73 6f 6e 0a ~ " ~ the word doesn't exist. In particular, it could be" ~ " an integer literal." 20 20 20 20 20 20 7e 20 74 68 65 20 77 6f 72 64 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 2e 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 69 74 20 63 6f 75 6c 64 20 62 65 20 61 6e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 2e 0a ~ " ~ If we were to call use-label first, that would" ~ " count as a requirement" 20 20 20 20 20 20 7e 20 49 66 20 77 65 20 77 65 72 65 20 74 6f 20 63 61 6c 6c 20 75 73 65 2d 6c 61 62 65 6c 20 66 69 72 73 74 2c 20 74 68 61 74 20 77 6f 75 6c 64 20 63 6f 75 6e 74 20 61 73 20 61 20 72 65 71 75 69 72 65 6d 65 6e 74 0a ~ " ~ that the label must eventually be set. We don't" ~ " want to require that" 20 20 20 20 20 20 7e 20 74 68 61 74 20 74 68 65 20 6c 61 62 65 6c 20 6d 75 73 74 20 65 76 65 6e 74 75 61 6c 6c 79 20 62 65 20 73 65 74 2e 20 57 65 20 64 6f 6e 27 74 20 77 61 6e 74 20 74 6f 20 72 65 71 75 69 72 65 20 74 68 61 74 0a ~ " ~ quite yet, so we call find-label." 20 20 20 20 20 20 7e 20 71 75 69 74 65 20 79 65 74 2c 20 73 6f 20 77 65 20 63 61 6c 6c 20 66 69 6e 64 2d 6c 61 62 65 6c 2e 0a ~ " ~" 20 20 20 20 20 20 7e 0a ~ " ~ This check is the means by which forward" ~ " references are disallowed:" 20 20 20 20 20 20 7e 20 20 20 54 68 69 73 20 63 68 65 63 6b 20 69 73 20 74 68 65 20 6d 65 61 6e 73 20 62 79 20 77 68 69 63 68 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 73 20 61 72 65 20 64 69 73 61 6c 6c 6f 77 65 64 3a 0a ~ " ~ On the very first pass, a forward-referenced label" ~ " won't exist yet, so" 20 20 20 20 20 20 7e 20 4f 6e 20 74 68 65 20 76 65 72 79 20 66 69 72 73 74 20 70 61 73 73 2c 20 61 20 66 6f 72 77 61 72 64 2d 72 65 66 65 72 65 6e 63 65 64 20 6c 61 62 65 6c 20 77 6f 6e 27 74 20 65 78 69 73 74 20 79 65 74 2c 20 73 6f 0a ~ " ~ transform will give a "no such word" error, which" ~ " in an ideal world" 20 20 20 20 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 20 77 69 6c 6c 20 67 69 76 65 20 61 20 22 6e 6f 20 73 75 63 68 20 77 6f 72 64 22 20 65 72 72 6f 72 2c 20 77 68 69 63 68 20 69 6e 20 61 6e 20 69 64 65 61 6c 20 77 6f 72 6c 64 0a ~ " ~ would prevent there from being a subsequent pass," ~ " but at the very" 20 20 20 20 20 20 7e 20 77 6f 75 6c 64 20 70 72 65 76 65 6e 74 20 74 68 65 72 65 20 66 72 6f 6d 20 62 65 69 6e 67 20 61 20 73 75 62 73 65 71 75 65 6e 74 20 70 61 73 73 2c 20 62 75 74 20 61 74 20 74 68 65 20 76 65 72 79 0a ~ " ~ least it will ensure the output isn't a valid ELF." 20 20 20 20 20 20 7e 20 6c 65 61 73 74 20 69 74 20 77 69 6c 6c 20 65 6e 73 75 72 65 20 74 68 65 20 6f 75 74 70 75 74 20 69 73 6e 27 74 20 61 20 76 61 6c 69 64 20 45 4c 46 2e 0a ~ " dup" 20 20 20 20 20 20 64 75 70 0a ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " find-label" 20 20 20 20 20 20 66 69 6e 64 2d 6c 61 62 65 6c 0a ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " {" 20 20 20 20 20 20 7b 0a ~ " ~ It exists, so we declare our use of it (that's" ~ " also the only way to" 20 20 20 20 20 20 20 20 7e 20 20 20 49 74 20 65 78 69 73 74 73 2c 20 73 6f 20 77 65 20 64 65 63 6c 61 72 65 20 6f 75 72 20 75 73 65 20 6f 66 20 69 74 20 28 74 68 61 74 27 73 20 61 6c 73 6f 20 74 68 65 20 6f 6e 6c 79 20 77 61 79 20 74 6f 0a ~ " ~ get a value for it)." 20 20 20 20 20 20 20 20 7e 20 67 65 74 20 61 20 76 61 6c 75 65 20 66 6f 72 20 69 74 29 2e 0a ~ " ~ : provide-string-copy" 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 2d 63 6f 70 79 0a ~ " swap-transform-variables" 20 20 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " intern-label use-label" 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 20 75 73 65 2d 6c 61 62 65 6c 0a ~ " swap-transform-variables" 20 20 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ Labels point to codewords (because that's what" 20 20 20 20 20 20 20 20 7e 20 20 20 4c 61 62 65 6c 73 20 70 6f 69 6e 74 20 74 6f 20 63 6f 64 65 77 6f 72 64 73 20 28 62 65 63 61 75 73 65 20 74 68 61 74 27 73 20 77 68 61 74 0a ~ " ~ label-create-alternate does), which is already" ~ " what we want to" 20 20 20 20 20 20 20 20 7e 20 6c 61 62 65 6c 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 64 6f 65 73 29 2c 20 77 68 69 63 68 20 69 73 20 61 6c 72 65 61 64 79 20 77 68 61 74 20 77 65 20 77 61 6e 74 20 74 6f 0a ~ " ~ output." 20 20 20 20 20 20 20 20 7e 20 6f 75 74 70 75 74 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 7e 0a ~ " ~ An important caveat: Though it would require" ~ " something weird to be" 20 20 20 20 20 20 20 20 7e 20 20 20 41 6e 20 69 6d 70 6f 72 74 61 6e 74 20 63 61 76 65 61 74 3a 20 54 68 6f 75 67 68 20 69 74 20 77 6f 75 6c 64 20 72 65 71 75 69 72 65 20 73 6f 6d 65 74 68 69 6e 67 20 77 65 69 72 64 20 74 6f 20 62 65 0a ~ " ~ happening, such as a forced forward reference," ~ " the label may be" 20 20 20 20 20 20 20 20 7e 20 68 61 70 70 65 6e 69 6e 67 2c 20 73 75 63 68 20 61 73 20 61 20 66 6f 72 63 65 64 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 2c 20 74 68 65 20 6c 61 62 65 6c 20 6d 61 79 20 62 65 0a ~ " ~ zero! We need to allow for that possibility by" ~ " not examining the" 20 20 20 20 20 20 20 20 7e 20 7a 65 72 6f 21 20 57 65 20 6e 65 65 64 20 74 6f 20 61 6c 6c 6f 77 20 66 6f 72 20 74 68 61 74 20 70 6f 73 73 69 62 69 6c 69 74 79 20 62 79 20 6e 6f 74 20 65 78 61 6d 69 6e 69 6e 67 20 74 68 65 0a ~ " ~ contents of a nonexistent entry." 20 20 20 20 20 20 20 20 7e 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 61 20 6e 6f 6e 65 78 69 73 74 65 6e 74 20 65 6e 74 72 79 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 7e 0a ~ " ~ Fortunately we don't have to look at it, just" ~ " append it to the log" 20 20 20 20 20 20 20 20 7e 20 20 20 46 6f 72 74 75 6e 61 74 65 6c 79 20 77 65 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 6c 6f 6f 6b 20 61 74 20 69 74 2c 20 6a 75 73 74 20 61 70 70 65 6e 64 20 69 74 20 74 6f 20 74 68 65 20 6c 6f 67 0a ~ " ~ and clean up." 20 20 20 20 20 20 20 20 7e 20 61 6e 64 20 63 6c 65 61 6e 20 75 70 2e 0a ~ " ~ : 8 # #-- (codeword pointer)" 20 20 20 20 20 20 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space , drop dropstring 0" ~ " exit" 20 20 20 20 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 20 30 20 65 78 69 74 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ If we got here, we're in compile mode, no label" ~ " was found, and even" 20 20 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 67 6f 74 20 68 65 72 65 2c 20 77 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 6e 6f 20 6c 61 62 65 6c 20 77 61 73 20 66 6f 75 6e 64 2c 20 61 6e 64 20 65 76 65 6e 0a ~ " ~ if there was a candidate for an immediate word it" ~ " wasn't flagged as" 20 20 20 20 20 20 7e 20 69 66 20 74 68 65 72 65 20 77 61 73 20 61 20 63 61 6e 64 69 64 61 74 65 20 66 6f 72 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 20 69 74 20 77 61 73 6e 27 74 20 66 6c 61 67 67 65 64 20 61 73 0a ~ " ~ immediate. There are two possibilities: It's" ~ " genuinely missing, or it's" 20 20 20 20 20 20 7e 20 69 6d 6d 65 64 69 61 74 65 2e 20 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 70 6f 73 73 69 62 69 6c 69 74 69 65 73 3a 20 49 74 27 73 20 67 65 6e 75 69 6e 65 6c 79 20 6d 69 73 73 69 6e 67 2c 20 6f 72 20 69 74 27 73 0a ~ " ~ an integer literal. We decline to run the candidate" ~ " immediate entry," 20 20 20 20 20 20 7e 20 61 6e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 2e 20 57 65 20 64 65 63 6c 69 6e 65 20 74 6f 20 72 75 6e 20 74 68 65 20 63 61 6e 64 69 64 61 74 65 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 2c 0a ~ " ~ even if it exists, because that's not the correct" ~ " semantics." 20 20 20 20 20 20 7e 20 65 76 65 6e 20 69 66 20 69 74 20 65 78 69 73 74 73 2c 20 62 65 63 61 75 73 65 20 74 68 61 74 27 73 20 6e 6f 74 20 74 68 65 20 63 6f 72 72 65 63 74 20 73 65 6d 61 6e 74 69 63 73 2e 0a ~ " ~" 20 20 20 20 20 20 7e 0a ~ " ~ If the word is genuinely missing, we want to make" ~ " sure we make it" 20 20 20 20 20 20 7e 20 20 20 49 66 20 74 68 65 20 77 6f 72 64 20 69 73 20 67 65 6e 75 69 6e 65 6c 79 20 6d 69 73 73 69 6e 67 2c 20 77 65 20 77 61 6e 74 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 77 65 20 6d 61 6b 65 20 69 74 0a ~ " ~ all the way to the not-found error-handling code at" ~ " the end, because" 20 20 20 20 20 20 7e 20 61 6c 6c 20 74 68 65 20 77 61 79 20 74 6f 20 74 68 65 20 6e 6f 74 2d 66 6f 75 6e 64 20 65 72 72 6f 72 2d 68 61 6e 64 6c 69 6e 67 20 63 6f 64 65 20 61 74 20 74 68 65 20 65 6e 64 2c 20 62 65 63 61 75 73 65 0a ~ " ~ that will be way easier to debug than doing the" ~ " wrong thing will. Way," 20 20 20 20 20 20 7e 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 77 61 79 20 65 61 73 69 65 72 20 74 6f 20 64 65 62 75 67 20 74 68 61 6e 20 64 6f 69 6e 67 20 74 68 65 20 77 72 6f 6e 67 20 74 68 69 6e 67 20 77 69 6c 6c 2e 20 57 61 79 2c 0a ~ " ~ way easier. Far less staring at numbers." 20 20 20 20 20 20 7e 20 77 61 79 20 65 61 73 69 65 72 2e 20 46 61 72 20 6c 65 73 73 20 73 74 61 72 69 6e 67 20 61 74 20 6e 75 6d 62 65 72 73 2e 0a ~ " ~" 20 20 20 20 20 20 7e 0a ~ " ~ Anyway, we no longer need the immediate entry" ~ " pointer, so we drop" 20 20 20 20 20 20 7e 20 20 20 41 6e 79 77 61 79 2c 20 77 65 20 6e 6f 20 6c 6f 6e 67 65 72 20 6e 65 65 64 20 74 68 65 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 73 6f 20 77 65 20 64 72 6f 70 0a ~ " ~ it." 20 20 20 20 20 20 7e 20 69 74 2e 0a ~ " drop drop" 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ If we get here, we're in compile mode, but there" ~ " was a candidate" 20 20 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 67 65 74 20 68 65 72 65 2c 20 77 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 62 75 74 20 74 68 65 72 65 20 77 61 73 20 61 20 63 61 6e 64 69 64 61 74 65 0a ~ " ~ entry for an immediate word, and it was indeed" ~ " flagged as immediate." 20 20 20 20 20 20 7e 20 65 6e 74 72 79 20 66 6f 72 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 61 6e 64 20 69 74 20 77 61 73 20 69 6e 64 65 65 64 20 66 6c 61 67 67 65 64 20 61 73 20 69 6d 6d 65 64 69 61 74 65 2e 0a ~ " ~ So, we run it and exit." 20 20 20 20 20 20 7e 20 53 6f 2c 20 77 65 20 72 75 6e 20 69 74 20 61 6e 64 20 65 78 69 74 2e 0a ~ " drop dropstring-with-result entry-to-execution-token" ~ " execute" 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " ~ This is the end of the compile-mode branch. As you" ~ " can see by tracing" 20 20 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 6f 6d 70 69 6c 65 2d 6d 6f 64 65 20 62 72 61 6e 63 68 2e 20 41 73 20 79 6f 75 20 63 61 6e 20 73 65 65 20 62 79 20 74 72 61 63 69 6e 67 0a ~ " ~ through all the above cases, if we got here, the two" ~ " possibilities are" 20 20 20 20 7e 20 74 68 72 6f 75 67 68 20 61 6c 6c 20 74 68 65 20 61 62 6f 76 65 20 63 61 73 65 73 2c 20 69 66 20 77 65 20 67 6f 74 20 68 65 72 65 2c 20 74 68 65 20 74 77 6f 20 70 6f 73 73 69 62 69 6c 69 74 69 65 73 20 61 72 65 0a ~ " ~ that the word is genuinely missing, or it's an" ~ " integer literal." 20 20 20 20 7e 20 74 68 61 74 20 74 68 65 20 77 6f 72 64 20 69 73 20 67 65 6e 75 69 6e 65 6c 79 20 6d 69 73 73 69 6e 67 2c 20 6f 72 20 69 74 27 73 20 61 6e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ Please notice that these are the same two" ~ " possibilities remaining at" 20 20 20 20 7e 20 20 20 50 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 65 73 65 20 61 72 65 20 74 68 65 20 73 61 6d 65 20 74 77 6f 20 70 6f 73 73 69 62 69 6c 69 74 69 65 73 20 72 65 6d 61 69 6e 69 6e 67 20 61 74 0a ~ " ~ the end of the immediate-mode branch, below." 20 20 20 20 7e 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 69 6d 6d 65 64 69 61 74 65 2d 6d 6f 64 65 20 62 72 61 6e 63 68 2c 20 62 65 6c 6f 77 2e 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ If we got here, we're in interpret mode. There are" ~ " three" 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 67 6f 74 20 68 65 72 65 2c 20 77 65 27 72 65 20 69 6e 20 69 6e 74 65 72 70 72 65 74 20 6d 6f 64 65 2e 20 54 68 65 72 65 20 61 72 65 20 74 68 72 65 65 0a ~ " ~ possibilities: there's an immediate word which we" ~ " should run; it's an" 20 20 20 20 7e 20 70 6f 73 73 69 62 69 6c 69 74 69 65 73 3a 20 74 68 65 72 65 27 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 20 77 68 69 63 68 20 77 65 20 73 68 6f 75 6c 64 20 72 75 6e 3b 20 69 74 27 73 20 61 6e 0a ~ " ~ integer literal; or the word is genuinely missing." 20 20 20 20 7e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 3b 20 6f 72 20 74 68 65 20 77 6f 72 64 20 69 73 20 67 65 6e 75 69 6e 65 6c 79 20 6d 69 73 73 69 6e 67 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ If the immediate entry pointer is non-zero, run it" ~ " and exit." 20 20 20 20 7e 20 20 20 49 66 20 74 68 65 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 69 73 20 6e 6f 6e 2d 7a 65 72 6f 2c 20 72 75 6e 20 69 74 20 61 6e 64 20 65 78 69 74 2e 0a ~ " over {" 20 20 20 20 6f 76 65 72 20 7b 0a ~ " drop dropstring-with-result entry-to-execution-token" ~ " execute" 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ There was no immediate word, so either it's an" ~ " integer literal or" 20 20 20 20 7e 20 20 20 54 68 65 72 65 20 77 61 73 20 6e 6f 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 73 6f 20 65 69 74 68 65 72 20 69 74 27 73 20 61 6e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 20 6f 72 0a ~ " ~ the word is genuinely missing. Please notice that" ~ " these are the same two" 20 20 20 20 7e 20 74 68 65 20 77 6f 72 64 20 69 73 20 67 65 6e 75 69 6e 65 6c 79 20 6d 69 73 73 69 6e 67 2e 20 50 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 65 73 65 20 61 72 65 20 74 68 65 20 73 61 6d 65 20 74 77 6f 0a ~ " ~ possibilities remaining at the end of the" ~ " compile-mode branch, above." 20 20 20 20 7e 20 70 6f 73 73 69 62 69 6c 69 74 69 65 73 20 72 65 6d 61 69 6e 69 6e 67 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 6f 6d 70 69 6c 65 2d 6d 6f 64 65 20 62 72 61 6e 63 68 2c 20 61 62 6f 76 65 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ We no longer need the immediate-mode pointer, so" ~ " drop it." 20 20 20 20 7e 20 20 20 57 65 20 6e 6f 20 6c 6f 6e 67 65 72 20 6e 65 65 64 20 74 68 65 20 69 6d 6d 65 64 69 61 74 65 2d 6d 6f 64 65 20 70 6f 69 6e 74 65 72 2c 20 73 6f 20 64 72 6f 70 20 69 74 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ~ (name as stack string)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " ~ If we got here, one of two things is true: the word" ~ " is an integer" 20 20 7e 20 20 20 49 66 20 77 65 20 67 6f 74 20 68 65 72 65 2c 20 6f 6e 65 20 6f 66 20 74 77 6f 20 74 68 69 6e 67 73 20 69 73 20 74 72 75 65 3a 20 74 68 65 20 77 6f 72 64 20 69 73 20 61 6e 20 69 6e 74 65 67 65 72 0a ~ " ~ literal, or it's genuinely missing. We know this" ~ " because both the mode" 20 20 7e 20 6c 69 74 65 72 61 6c 2c 20 6f 72 20 69 74 27 73 20 67 65 6e 75 69 6e 65 6c 79 20 6d 69 73 73 69 6e 67 2e 20 57 65 20 6b 6e 6f 77 20 74 68 69 73 20 62 65 63 61 75 73 65 20 62 6f 74 68 20 74 68 65 20 6d 6f 64 65 0a ~ " ~ cases above end with these as the only two remaining" ~ " possibilities. So" 20 20 7e 20 63 61 73 65 73 20 61 62 6f 76 65 20 65 6e 64 20 77 69 74 68 20 74 68 65 73 65 20 61 73 20 74 68 65 20 6f 6e 6c 79 20 74 77 6f 20 72 65 6d 61 69 6e 69 6e 67 20 70 6f 73 73 69 62 69 6c 69 74 69 65 73 2e 20 53 6f 0a ~ " ~" 20 20 7e 0a ~ " ~ Check whether it's an integer literal. As before, we" ~ " get the stack" 20 20 7e 20 20 20 43 68 65 63 6b 20 77 68 65 74 68 65 72 20 69 74 27 73 20 61 6e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 2e 20 41 73 20 62 65 66 6f 72 65 2c 20 77 65 20 67 65 74 20 74 68 65 20 73 74 61 63 6b 0a ~ " ~ address and use it as a string pointer." 20 20 7e 20 61 64 64 72 65 73 73 20 61 6e 64 20 75 73 65 20 69 74 20 61 73 20 61 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2e 0a ~ " value@ read-integer 0 = {" 20 20 76 61 6c 75 65 40 20 72 65 61 64 2d 69 6e 74 65 67 65 72 20 30 20 3d 20 7b 0a ~ " ~ It's a number." 20 20 20 20 7e 20 49 74 27 73 20 61 20 6e 75 6d 62 65 72 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode; append first "lit", then the" ~ " number, to the" 20 20 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 3b 20 61 70 70 65 6e 64 20 66 69 72 73 74 20 22 6c 69 74 22 2c 20 74 68 65 6e 20 74 68 65 20 6e 75 6d 62 65 72 2c 20 74 6f 20 74 68 65 0a ~ " ~ log. The version of "lit" we use is found by label," ~ " so it'll be the" 20 20 20 20 20 20 7e 20 6c 6f 67 2e 20 54 68 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 6c 69 74 22 20 77 65 20 75 73 65 20 69 73 20 66 6f 75 6e 64 20 62 79 20 6c 61 62 65 6c 2c 20 73 6f 20 69 74 27 6c 6c 20 62 65 20 74 68 65 0a ~ " ~ one that exists when this code is ultimately run." 20 20 20 20 20 20 7e 20 6f 6e 65 20 74 68 61 74 20 65 78 69 73 74 73 20 77 68 65 6e 20 74 68 69 73 20 63 6f 64 65 20 69 73 20 75 6c 74 69 6d 61 74 65 6c 79 20 72 75 6e 2e 0a ~ " dropstring-with-result" 20 20 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ "" 0a ~ " ~ We look up "lit" as a label." 20 20 20 20 20 20 7e 20 57 65 20 6c 6f 6f 6b 20 75 70 20 22 6c 69 74 22 20 61 73 20 61 20 6c 61 62 65 6c 2e 0a ~ " swap-transform-variables L@' lit" ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 4c 40 27 20 6c 69 74 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space" 20 20 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 0a ~ " ~ : 8 lit #-- (codeword pointer)" 20 20 20 20 20 20 7e 20 3a 20 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ," 20 20 20 20 20 20 2c 0a ~ " ~ : provide-hex" 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " ~ : 8 # #-- (integer literal)" 20 20 20 20 20 20 7e 20 3a 20 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " ," 20 20 20 20 20 20 2c 0a ~ " 0 exit" 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ We're in interpret mode; push the number to the" ~ " stack. Or at least, that's" 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 69 6e 74 65 72 70 72 65 74 20 6d 6f 64 65 3b 20 70 75 73 68 20 74 68 65 20 6e 75 6d 62 65 72 20 74 6f 20 74 68 65 20 73 74 61 63 6b 2e 20 4f 72 20 61 74 20 6c 65 61 73 74 2c 20 74 68 61 74 27 73 ~ "" 0a ~ " ~ what the code we're interpreting will see. Really" ~ " it's already on the" 20 20 20 20 7e 20 77 68 61 74 20 74 68 65 20 63 6f 64 65 20 77 65 27 72 65 20 69 6e 74 65 72 70 72 65 74 69 6e 67 20 77 69 6c 6c 20 73 65 65 2e 20 52 65 61 6c 6c 79 20 69 74 27 73 20 61 6c 72 65 61 64 79 20 6f 6e 20 74 68 65 0a ~ " ~ stack, just clean everything else up and leave it" ~ " there." 20 20 20 20 7e 20 73 74 61 63 6b 2c 20 6a 75 73 74 20 63 6c 65 61 6e 20 65 76 65 72 79 74 68 69 6e 67 20 65 6c 73 65 20 75 70 20 61 6e 64 20 6c 65 61 76 65 20 69 74 20 74 68 65 72 65 2e 0a ~ " dropstring-with-result" 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " 0 exit" 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ If it's neither in the dictionary nor a number, just" ~ " print an error." 20 20 7e 20 20 20 49 66 20 69 74 27 73 20 6e 65 69 74 68 65 72 20 69 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 6e 6f 72 20 61 20 6e 75 6d 62 65 72 2c 20 6a 75 73 74 20 70 72 69 6e 74 20 61 6e 20 65 72 72 6f 72 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ It's really important, when maintaining this code, to" ~ " make sure that all" 20 20 7e 20 20 20 49 74 27 73 20 72 65 61 6c 6c 79 20 69 6d 70 6f 72 74 61 6e 74 2c 20 77 68 65 6e 20 6d 61 69 6e 74 61 69 6e 69 6e 67 20 74 68 69 73 20 63 6f 64 65 2c 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 61 6c 6c 0a ~ " ~ the possible ways the word can fail to exist, end up" ~ " here. Doing anything" 20 20 7e 20 74 68 65 20 70 6f 73 73 69 62 6c 65 20 77 61 79 73 20 74 68 65 20 77 6f 72 64 20 63 61 6e 20 66 61 69 6c 20 74 6f 20 65 78 69 73 74 2c 20 65 6e 64 20 75 70 20 68 65 72 65 2e 20 44 6f 69 6e 67 20 61 6e 79 74 68 69 6e 67 0a ~ " ~ else is going to result in many hours of trying to" ~ " untangle the" 20 20 7e 20 65 6c 73 65 20 69 73 20 67 6f 69 6e 67 20 74 6f 20 72 65 73 75 6c 74 20 69 6e 20 6d 61 6e 79 20 68 6f 75 72 73 20 6f 66 20 74 72 79 69 6e 67 20 74 6f 20 75 6e 74 61 6e 67 6c 65 20 74 68 65 0a ~ " ~ consequences of incorrect behavior, after-the-fact." 20 20 7e 20 63 6f 6e 73 65 71 75 65 6e 63 65 73 20 6f 66 20 69 6e 63 6f 72 72 65 63 74 20 62 65 68 61 76 69 6f 72 2c 20 61 66 74 65 72 2d 74 68 65 2d 66 61 63 74 2e 0a ~ " s" No such word: " emitstring value@ emitstring newline" ~ " dropstring 0 ;" 20 20 73 22 20 4e 6f 20 73 75 63 68 20 77 6f 72 64 3a 20 22 20 65 6d 69 74 73 74 72 69 6e 67 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 20 6e 65 77 6c 69 6e 65 20 64 72 6f 70 73 74 72 69 6e 67 20 30 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This implements the label transform for all words in a" ~ " region given as an" 7e 20 20 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 66 6f 72 20 61 6c 6c 20 77 6f 72 64 73 20 69 6e 20 61 20 72 65 67 69 6f 6e 20 67 69 76 65 6e 20 61 73 20 61 6e 0a ~ "~ input string. It is directly analogous to "quit", in" ~ " interpet.e, but is far" 7e 20 69 6e 70 75 74 20 73 74 72 69 6e 67 2e 20 49 74 20 69 73 20 64 69 72 65 63 74 6c 79 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 22 71 75 69 74 22 2c 20 69 6e 20 69 6e 74 65 72 70 65 74 2e 65 2c 20 62 75 74 20 69 73 20 66 61 72 0a ~ "~ more complex." 7e 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 78 2e 0a ~ "~" 7e 0a ~ "~ (output buffer start, output point, input string pointer" 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 69 6e 70 75 74 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 0a ~ "~ -- output buffer start, output point, final entry" ~ " pointer)" 7e 20 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 66 69 6e 61 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ ": label-transform" 3a 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ :" ~ " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ~ "~~~~~~~~~~~~~" 20 20 7e 20 3a 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : This is the start of a long block of code which has" ~ " been processed by" 20 20 7e 20 3a 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 61 20 6c 6f 6e 67 20 62 6c 6f 63 6b 20 6f 66 20 63 6f 64 65 20 77 68 69 63 68 20 68 61 73 20 62 65 65 6e 20 70 72 6f 63 65 73 73 65 64 20 62 79 0a ~ " ~ : the label transform, meaning it consists of" ~ " ready-to-run Forth word" 20 20 7e 20 3a 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 6d 65 61 6e 69 6e 67 20 69 74 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 72 65 61 64 79 2d 74 6f 2d 72 75 6e 20 46 6f 72 74 68 20 77 6f 72 64 0a ~ " ~ : definitions that reference each other by address," ~ " suitable for direct" 20 20 7e 20 3a 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 74 68 61 74 20 72 65 66 65 72 65 6e 63 65 20 65 61 63 68 20 6f 74 68 65 72 20 62 79 20 61 64 64 72 65 73 73 2c 20 73 75 69 74 61 62 6c 65 20 66 6f 72 20 64 69 72 65 63 74 0a ~ " ~ : execution as soon as the cold-start routine has set" ~ " up the basic" 20 20 7e 20 3a 20 65 78 65 63 75 74 69 6f 6e 20 61 73 20 73 6f 6f 6e 20 61 73 20 74 68 65 20 63 6f 6c 64 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 68 61 73 20 73 65 74 20 75 70 20 74 68 65 20 62 61 73 69 63 0a ~ " ~ : registers, flags, and memory areas that form" ~ " Evocation's internal ABI." 20 20 7e 20 3a 20 72 65 67 69 73 74 65 72 73 2c 20 66 6c 61 67 73 2c 20 61 6e 64 20 6d 65 6d 6f 72 79 20 61 72 65 61 73 20 74 68 61 74 20 66 6f 72 6d 20 45 76 6f 63 61 74 69 6f 6e 27 73 20 69 6e 74 65 72 6e 61 6c 20 41 42 49 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : Each word definition consists of a dictionary entry" ~ " header, a" 20 20 7e 20 3a 20 20 20 45 61 63 68 20 77 6f 72 64 20 64 65 66 69 6e 69 74 69 6f 6e 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 61 20 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 79 20 68 65 61 64 65 72 2c 20 61 0a ~ " ~ : codeword, and a word body. For words implemented as" ~ " Forth code, the" 20 20 7e 20 3a 20 63 6f 64 65 77 6f 72 64 2c 20 61 6e 64 20 61 20 77 6f 72 64 20 62 6f 64 79 2e 20 46 6f 72 20 77 6f 72 64 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 61 73 20 46 6f 72 74 68 20 63 6f 64 65 2c 20 74 68 65 0a ~ " ~ : codeword points to the "docol" routine, and the word" ~ " body is an array of" 20 20 7e 20 3a 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 22 64 6f 63 6f 6c 22 20 72 6f 75 74 69 6e 65 2c 20 61 6e 64 20 74 68 65 20 77 6f 72 64 20 62 6f 64 79 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 0a ~ " ~ : pointers to the codewords of other words," ~ " occasionally interspersed with" 20 20 7e 20 3a 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 20 63 6f 64 65 77 6f 72 64 73 20 6f 66 20 6f 74 68 65 72 20 77 6f 72 64 73 2c 20 6f 63 63 61 73 69 6f 6e 61 6c 6c 79 20 69 6e 74 65 72 73 70 65 72 73 65 64 20 77 69 74 68 0a ~ " ~ : literal values. For words implemented as machine" ~ " code, the codeword" 20 20 7e 20 3a 20 6c 69 74 65 72 61 6c 20 76 61 6c 75 65 73 2e 20 46 6f 72 20 77 6f 72 64 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 61 73 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 2c 20 74 68 65 20 63 6f 64 65 77 6f 72 64 0a ~ " ~ : points to the start of the body, and the body is the" ~ " machine code." 20 20 7e 20 3a 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 62 6f 64 79 2c 20 61 6e 64 20 74 68 65 20 62 6f 64 79 20 69 73 20 74 68 65 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : All the word entry headers in this code link to" ~ " each other, from last" 20 20 7e 20 3a 20 20 20 41 6c 6c 20 74 68 65 20 77 6f 72 64 20 65 6e 74 72 79 20 68 65 61 64 65 72 73 20 69 6e 20 74 68 69 73 20 63 6f 64 65 20 6c 69 6e 6b 20 74 6f 20 65 61 63 68 20 6f 74 68 65 72 2c 20 66 72 6f 6d 20 6c 61 73 74 0a ~ " ~ : backwards to first, forming an Evocation dictionary." 20 20 7e 20 3a 20 62 61 63 6b 77 61 72 64 73 20 74 6f 20 66 69 72 73 74 2c 20 66 6f 72 6d 69 6e 67 20 61 6e 20 45 76 6f 63 61 74 69 6f 6e 20 64 69 63 74 69 6f 6e 61 72 79 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : The warm-start routine relies on words defined by" ~ " the label transform," 20 20 7e 20 3a 20 20 20 54 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 72 65 6c 69 65 73 20 6f 6e 20 77 6f 72 64 73 20 64 65 66 69 6e 65 64 20 62 79 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 0a ~ " ~ : as does the log-load routine." 20 20 7e 20 3a 20 61 73 20 64 6f 65 73 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 2e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " main-input-buffer dup push-input-buffer" 20 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 64 75 70 20 70 75 73 68 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ " swap attach-string-to-input-buffer" 20 20 73 77 61 70 20 61 74 74 61 63 68 2d 73 74 72 69 6e 67 2d 74 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ "" 0a ~ " ~ Save the old values of "here" and "latest", and set" ~ " the initial values" 20 20 7e 20 20 20 53 61 76 65 20 74 68 65 20 6f 6c 64 20 76 61 6c 75 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 2c 20 61 6e 64 20 73 65 74 20 74 68 65 20 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 73 0a ~ " ~ of the internal ones. These values need to persist" ~ " across iterations," 20 20 7e 20 6f 66 20 74 68 65 20 69 6e 74 65 72 6e 61 6c 20 6f 6e 65 73 2e 20 54 68 65 73 65 20 76 61 6c 75 65 73 20 6e 65 65 64 20 74 6f 20 70 65 72 73 69 73 74 20 61 63 72 6f 73 73 20 69 74 65 72 61 74 69 6f 6e 73 2c 0a ~ " ~ since client code will make its own updates to them and" ~ " then rely on those" 20 20 7e 20 73 69 6e 63 65 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 77 69 6c 6c 20 6d 61 6b 65 20 69 74 73 20 6f 77 6e 20 75 70 64 61 74 65 73 20 74 6f 20 74 68 65 6d 20 61 6e 64 20 74 68 65 6e 20 72 65 6c 79 20 6f 6e 20 74 68 6f 73 65 0a ~ " ~ updates having taken effect. So we do the swap just" ~ " once, here outside the" 20 20 7e 20 75 70 64 61 74 65 73 20 68 61 76 69 6e 67 20 74 61 6b 65 6e 20 65 66 66 65 63 74 2e 20 53 6f 20 77 65 20 64 6f 20 74 68 65 20 73 77 61 70 20 6a 75 73 74 20 6f 6e 63 65 2c 20 68 65 72 65 20 6f 75 74 73 69 64 65 20 74 68 65 0a ~ " ~ loop, and set it back when the loop ends." 20 20 7e 20 6c 6f 6f 70 2c 20 61 6e 64 20 73 65 74 20 69 74 20 62 61 63 6b 20 77 68 65 6e 20 74 68 65 20 6c 6f 6f 70 20 65 6e 64 73 2e 0a ~ " here @ transformation-state" ~ " transformation-state-saved-here !" 20 20 68 65 72 65 20 40 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 21 0a ~ " latest @ transformation-state" ~ " transformation-state-saved-latest !" 20 20 6c 61 74 65 73 74 20 40 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 21 0a ~ " swap transformation-state" ~ " transformation-state-output-buffer-start !" 20 20 73 77 61 70 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 21 0a ~ " here !" 20 20 68 65 72 65 20 21 0a ~ " 0 latest !" 20 20 30 20 6c 61 74 65 73 74 20 21 0a ~ " ~ Now the stack has nothing of ours on it, so client code" ~ " can do its thing." 20 20 7e 20 4e 6f 77 20 74 68 65 20 73 74 61 63 6b 20 68 61 73 20 6e 6f 74 68 69 6e 67 20 6f 66 20 6f 75 72 73 20 6f 6e 20 69 74 2c 20 73 6f 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 63 61 6e 20 64 6f 20 69 74 73 20 74 68 69 6e 67 2e 0a ~ "" 0a ~ " ~ It's important that the stack has nothing of ours on" ~ " it that persists" 20 20 7e 20 20 20 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 61 74 20 74 68 65 20 73 74 61 63 6b 20 68 61 73 20 6e 6f 74 68 69 6e 67 20 6f 66 20 6f 75 72 73 20 6f 6e 20 69 74 20 74 68 61 74 20 70 65 72 73 69 73 74 73 0a ~ " ~ across iterations, so that client code can add and" ~ " remove stuff there as" 20 20 7e 20 61 63 72 6f 73 73 20 69 74 65 72 61 74 69 6f 6e 73 2c 20 73 6f 20 74 68 61 74 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 63 61 6e 20 61 64 64 20 61 6e 64 20 72 65 6d 6f 76 65 20 73 74 75 66 66 20 74 68 65 72 65 20 61 73 0a ~ " ~ it sees fit." 20 20 7e 20 69 74 20 73 65 65 73 20 66 69 74 2e 0a ~ " { label-transform-one" 20 20 7b 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 0a ~ " ~ (..., done)" 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 64 6f 6e 65 29 0a ~ "" 0a ~ " ~ When the loop is done, get the real values of "here"" ~ " and "latest"" 20 20 20 20 7e 20 20 57 68 65 6e 20 74 68 65 20 6c 6f 6f 70 20 69 73 20 64 6f 6e 65 2c 20 67 65 74 20 74 68 65 20 72 65 61 6c 20 76 61 6c 75 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 0a ~ " ~ back. The internal "here" is also the output point," ~ " and will become our" 20 20 20 20 7e 20 62 61 63 6b 2e 20 54 68 65 20 69 6e 74 65 72 6e 61 6c 20 22 68 65 72 65 22 20 69 73 20 61 6c 73 6f 20 74 68 65 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 61 6e 64 20 77 69 6c 6c 20 62 65 63 6f 6d 65 20 6f 75 72 0a ~ " ~ return value. The internal "latest" is returned as a" ~ " result." 20 20 20 20 7e 20 72 65 74 75 72 6e 20 76 61 6c 75 65 2e 20 54 68 65 20 69 6e 74 65 72 6e 61 6c 20 22 6c 61 74 65 73 74 22 20 69 73 20 72 65 74 75 72 6e 65 64 20 61 73 20 61 20 72 65 73 75 6c 74 2e 0a ~ " { transformation-state" ~ " transformation-state-output-buffer-start @" 20 20 20 20 7b 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 0a ~ " here @" 20 20 20 20 20 20 68 65 72 65 20 40 0a ~ " latest @ 3unroll" 20 20 20 20 20 20 6c 61 74 65 73 74 20 40 20 33 75 6e 72 6f 6c 6c 0a ~ " transformation-state transformation-state-saved-here" ~ " @ here !" 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 40 20 68 65 72 65 20 21 0a ~ " transformation-state" ~ " transformation-state-saved-latest @ latest !" 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 40 20 6c 61 74 65 73 74 20 21 0a ~ " ~ (final entry pointer, output buffer start, output" ~ " point)" 20 20 20 20 20 20 7e 20 28 66 69 6e 61 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ Though we don't actually use transformation-state" ~ " outside of this" 20 20 20 20 20 20 7e 20 20 20 54 68 6f 75 67 68 20 77 65 20 64 6f 6e 27 74 20 61 63 74 75 61 6c 6c 79 20 75 73 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 6f 75 74 73 69 64 65 20 6f 66 20 74 68 69 73 0a ~ " ~ invocation, for tidiness we zero it out." 20 20 20 20 20 20 7e 20 69 6e 76 6f 63 61 74 69 6f 6e 2c 20 66 6f 72 20 74 69 64 69 6e 65 73 73 20 77 65 20 7a 65 72 6f 20 69 74 20 6f 75 74 2e 0a ~ " 0 transformation-state" ~ " transformation-state-saved-here !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-saved-latest !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-output-buffer-start !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 21 0a ~ "" 0a ~ " ~ Also put the input source back how it was." 20 20 20 20 20 20 7e 20 20 41 6c 73 6f 20 70 75 74 20 74 68 65 20 69 6e 70 75 74 20 73 6f 75 72 63 65 20 62 61 63 6b 20 68 6f 77 20 69 74 20 77 61 73 2e 0a ~ " main-input-buffer pop-input-buffer" 20 20 20 20 20 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 70 6f 70 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ "" 0a ~ " 3roll 2 pick -" 20 20 20 20 20 20 33 72 6f 6c 6c 20 32 20 70 69 63 6b 20 2d 0a ~ " ~ (output buffer start, output point, final entry" ~ " offset)" 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 66 69 6e 61 6c 20 65 6e 74 72 79 20 6f 66 66 73 65 74 29 0a ~ "" 0a ~ " exit } if } forever ;" 20 20 20 20 20 20 65 78 69 74 20 7d 20 69 66 20 7d 20 66 6f 72 65 76 65 72 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Log-load transform implementation" 7e 20 4c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The following code is all part of implementing the" ~ " log-load transform." 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 20 69 73 20 61 6c 6c 20 70 61 72 74 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~ For conceptual overview, see the top of this file." 7e 20 46 6f 72 20 63 6f 6e 63 65 70 74 75 61 6c 20 6f 76 65 72 76 69 65 77 2c 20 73 65 65 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2e 0a ~ "" 0a ~ "" 0a ~ "~ This outputs code that performs a roll of a given size," ~ " for use by the" 7e 20 20 20 54 68 69 73 20 6f 75 74 70 75 74 73 20 63 6f 64 65 20 74 68 61 74 20 70 65 72 66 6f 72 6d 73 20 61 20 72 6f 6c 6c 20 6f 66 20 61 20 67 69 76 65 6e 20 73 69 7a 65 2c 20 66 6f 72 20 75 73 65 20 62 79 20 74 68 65 0a ~ "~ words that rely on the tracked user stack depth." 7e 20 77 6f 72 64 73 20 74 68 61 74 20 72 65 6c 79 20 6f 6e 20 74 68 65 20 74 72 61 63 6b 65 64 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 2e 0a ~ "~" 7e 0a ~ "~ (amount to roll by --)" 7e 20 28 61 6d 6f 75 6e 74 20 74 6f 20 72 6f 6c 6c 20 62 79 20 2d 2d 29 0a ~ ": log-load-roll" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 0a ~ " ~ A roll of size 1 is an nop, and a roll of size 0" ~ " crashes." 20 20 7e 20 41 20 72 6f 6c 6c 20 6f 66 20 73 69 7a 65 20 31 20 69 73 20 61 6e 20 6e 6f 70 2c 20 61 6e 64 20 61 20 72 6f 6c 6c 20 6f 66 20 73 69 7a 65 20 30 20 63 72 61 73 68 65 73 2e 0a ~ " dup 2 > { drop exit } if" 20 20 64 75 70 20 32 20 3e 20 7b 20 64 72 6f 70 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ A roll of size 2 is equivalent to a swap, and we" ~ " compile it as one for" 20 20 7e 20 20 20 41 20 72 6f 6c 6c 20 6f 66 20 73 69 7a 65 20 32 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 73 77 61 70 2c 20 61 6e 64 20 77 65 20 63 6f 6d 70 69 6c 65 20 69 74 20 61 73 20 6f 6e 65 20 66 6f 72 0a ~ " ~ clarity when reading the hexdump." 20 20 7e 20 63 6c 61 72 69 74 79 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 74 68 65 20 68 65 78 64 75 6d 70 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Yes, clarity when reading the hexdump." 20 20 7e 20 20 20 59 65 73 2c 20 63 6c 61 72 69 74 79 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 74 68 65 20 68 65 78 64 75 6d 70 2e 0a ~ " dup 2 = {" 20 20 64 75 70 20 32 20 3d 20 7b 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' swap" 20 20 20 20 4c 40 27 20 73 77 61 70 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 swap #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' roll" 20 20 4c 40 27 20 72 6f 6c 6c 0a ~ " L@' lit" 20 20 4c 40 27 20 6c 69 74 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 lit #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " swap ~ : provide-hex" 20 20 73 77 61 70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " , ~ : -8 # #--" ~ " (integer literal)" 20 20 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " offset-to-target-address-space , ~ : -8 roll #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 72 6f 6c 6c 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This outputs code that perfoms an unroll of a given" ~ " size, for use by the" 7e 20 20 20 54 68 69 73 20 6f 75 74 70 75 74 73 20 63 6f 64 65 20 74 68 61 74 20 70 65 72 66 6f 6d 73 20 61 6e 20 75 6e 72 6f 6c 6c 20 6f 66 20 61 20 67 69 76 65 6e 20 73 69 7a 65 2c 20 66 6f 72 20 75 73 65 20 62 79 20 74 68 65 0a ~ "~ words that rely on the tracked user stack depth." 7e 20 77 6f 72 64 73 20 74 68 61 74 20 72 65 6c 79 20 6f 6e 20 74 68 65 20 74 72 61 63 6b 65 64 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 2e 0a ~ "" 0a ~ "~ (amount to unroll by --)" 7e 20 28 61 6d 6f 75 6e 74 20 74 6f 20 75 6e 72 6f 6c 6c 20 62 79 20 2d 2d 29 0a ~ ": log-load-unroll" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 0a ~ " ~ An unroll of size 1 is an nop, and an unroll of size 0" ~ " crashes." 20 20 7e 20 41 6e 20 75 6e 72 6f 6c 6c 20 6f 66 20 73 69 7a 65 20 31 20 69 73 20 61 6e 20 6e 6f 70 2c 20 61 6e 64 20 61 6e 20 75 6e 72 6f 6c 6c 20 6f 66 20 73 69 7a 65 20 30 20 63 72 61 73 68 65 73 2e 0a ~ " dup 2 > { drop exit } if" 20 20 64 75 70 20 32 20 3e 20 7b 20 64 72 6f 70 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Yes, clarity when reading the hexdump! What's so weird" ~ " about that? :)" 20 20 7e 20 59 65 73 2c 20 63 6c 61 72 69 74 79 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 74 68 65 20 68 65 78 64 75 6d 70 21 20 57 68 61 74 27 73 20 73 6f 20 77 65 69 72 64 20 61 62 6f 75 74 20 74 68 61 74 3f 20 3a 29 0a ~ " dup 2 = {" 20 20 64 75 70 20 32 20 3d 20 7b 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' swap" 20 20 20 20 4c 40 27 20 73 77 61 70 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 swap #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' unroll" 20 20 4c 40 27 20 75 6e 72 6f 6c 6c 0a ~ " L@' lit" 20 20 4c 40 27 20 6c 69 74 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 lit #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " swap ~ : provide-hex" 20 20 73 77 61 70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " , ~ : -8 # #--" ~ " (integer literal)" 20 20 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " offset-to-target-address-space , ~ : -8 unroll #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 75 6e 72 6f 6c 6c 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This checks the tracked user stack depth and outputs an" ~ " appropriate roll" 7e 20 20 20 54 68 69 73 20 63 68 65 63 6b 73 20 74 68 65 20 74 72 61 63 6b 65 64 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 61 6e 64 20 6f 75 74 70 75 74 73 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 72 6f 6c 6c 0a ~ "~ to put the log address on top, as preparation for calling" ~ " something that" 7e 20 74 6f 20 70 75 74 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 20 6f 6e 20 74 6f 70 2c 20 61 73 20 70 72 65 70 61 72 61 74 69 6f 6e 20 66 6f 72 20 63 61 6c 6c 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 0a ~ "~ relies on it." 7e 20 72 65 6c 69 65 73 20 6f 6e 20 69 74 2e 0a ~ ": log-load-roll-log-address" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " transformation-state" ~ " transformation-state-user-stack-depth @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 40 0a ~ " ~ The amount we're rolling includes the log address," ~ " which is not a user" 20 20 7e 20 20 20 54 68 65 20 61 6d 6f 75 6e 74 20 77 65 27 72 65 20 72 6f 6c 6c 69 6e 67 20 69 6e 63 6c 75 64 65 73 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 2c 20 77 68 69 63 68 20 69 73 20 6e 6f 74 20 61 20 75 73 65 72 0a ~ " ~ value, so we add 1." 20 20 7e 20 76 61 6c 75 65 2c 20 73 6f 20 77 65 20 61 64 64 20 31 2e 0a ~ " 1 +" 20 20 31 20 2b 0a ~ " log-load-roll ;" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This checks the tracked user stack depth and outputs an" ~ " appropriate unroll" 7e 20 20 20 54 68 69 73 20 63 68 65 63 6b 73 20 74 68 65 20 74 72 61 63 6b 65 64 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 61 6e 64 20 6f 75 74 70 75 74 73 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 75 6e 72 6f 6c 6c 0a ~ "~ to put the log address back at the bottom, as cleanup" ~ " after calling" 7e 20 74 6f 20 70 75 74 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 20 62 61 63 6b 20 61 74 20 74 68 65 20 62 6f 74 74 6f 6d 2c 20 61 73 20 63 6c 65 61 6e 75 70 20 61 66 74 65 72 20 63 61 6c 6c 69 6e 67 0a ~ "~ something that relies on it." 7e 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 72 65 6c 69 65 73 20 6f 6e 20 69 74 2e 0a ~ ": log-load-unroll-log-address" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " transformation-state" ~ " transformation-state-user-stack-depth @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 40 0a ~ " ~ The amount we're rolling includes the log address," ~ " which is not a user" 20 20 7e 20 20 20 54 68 65 20 61 6d 6f 75 6e 74 20 77 65 27 72 65 20 72 6f 6c 6c 69 6e 67 20 69 6e 63 6c 75 64 65 73 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 2c 20 77 68 69 63 68 20 69 73 20 6e 6f 74 20 61 20 75 73 65 72 0a ~ " ~ value, so we add 1." 20 20 7e 20 76 61 6c 75 65 2c 20 73 6f 20 77 65 20 61 64 64 20 31 2e 0a ~ " 1 +" 20 20 31 20 2b 0a ~ " log-load-unroll ;" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This checks the tracked user stack depth and outputs an" ~ " appropriate roll" 7e 20 20 20 54 68 69 73 20 63 68 65 63 6b 73 20 74 68 65 20 74 72 61 63 6b 65 64 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 61 6e 64 20 6f 75 74 70 75 74 73 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 72 6f 6c 6c 0a ~ "~ to put the saved label value on top, as preparation for" ~ " calling something" 7e 20 74 6f 20 70 75 74 20 74 68 65 20 73 61 76 65 64 20 6c 61 62 65 6c 20 76 61 6c 75 65 20 6f 6e 20 74 6f 70 2c 20 61 73 20 70 72 65 70 61 72 61 74 69 6f 6e 20 66 6f 72 20 63 61 6c 6c 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 0a ~ "~ that consumes it." 7e 20 74 68 61 74 20 63 6f 6e 73 75 6d 65 73 20 69 74 2e 0a ~ ": log-load-roll-saved-label" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 73 61 76 65 64 2d 6c 61 62 65 6c 0a ~ " transformation-state" ~ " transformation-state-user-stack-depth @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 40 0a ~ " ~ The amount we're rolling includes both the log" ~ " address and the label" 20 20 7e 20 20 20 54 68 65 20 61 6d 6f 75 6e 74 20 77 65 27 72 65 20 72 6f 6c 6c 69 6e 67 20 69 6e 63 6c 75 64 65 73 20 62 6f 74 68 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 20 61 6e 64 20 74 68 65 20 6c 61 62 65 6c 0a ~ " ~ value, neither of which are user values, so we add 2." 20 20 7e 20 76 61 6c 75 65 2c 20 6e 65 69 74 68 65 72 20 6f 66 20 77 68 69 63 68 20 61 72 65 20 75 73 65 72 20 76 61 6c 75 65 73 2c 20 73 6f 20 77 65 20 61 64 64 20 32 2e 0a ~ " 2 +" 20 20 32 20 2b 0a ~ " log-load-roll ;" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This checks the tracked user stack depth and outputs an" ~ " appropriate unroll" 7e 20 20 20 54 68 69 73 20 63 68 65 63 6b 73 20 74 68 65 20 74 72 61 63 6b 65 64 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 61 6e 64 20 6f 75 74 70 75 74 73 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 75 6e 72 6f 6c 6c 0a ~ "~ to put a saved label value on the bottom, as a way of" ~ " safely storing it away" 7e 20 74 6f 20 70 75 74 20 61 20 73 61 76 65 64 20 6c 61 62 65 6c 20 76 61 6c 75 65 20 6f 6e 20 74 68 65 20 62 6f 74 74 6f 6d 2c 20 61 73 20 61 20 77 61 79 20 6f 66 20 73 61 66 65 6c 79 20 73 74 6f 72 69 6e 67 20 69 74 20 61 77 61 79 0a ~ "~ when it's newly generated." 7e 20 77 68 65 6e 20 69 74 27 73 20 6e 65 77 6c 79 20 67 65 6e 65 72 61 74 65 64 2e 0a ~ ": log-load-unroll-saved-label" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 73 61 76 65 64 2d 6c 61 62 65 6c 0a ~ " transformation-state" ~ " transformation-state-user-stack-depth @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 40 0a ~ " ~ The amount we're rolling includes both the log" ~ " address and the label" 20 20 7e 20 20 20 54 68 65 20 61 6d 6f 75 6e 74 20 77 65 27 72 65 20 72 6f 6c 6c 69 6e 67 20 69 6e 63 6c 75 64 65 73 20 62 6f 74 68 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 20 61 6e 64 20 74 68 65 20 6c 61 62 65 6c 0a ~ " ~ value, neither of which are user values, so we add 2." 20 20 7e 20 76 61 6c 75 65 2c 20 6e 65 69 74 68 65 72 20 6f 66 20 77 68 69 63 68 20 61 72 65 20 75 73 65 72 20 76 61 6c 75 65 73 2c 20 73 6f 20 77 65 20 61 64 64 20 32 2e 0a ~ " 2 +" 20 20 32 20 2b 0a ~ " log-load-unroll ;" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (name pointer --)" 7e 20 28 6e 61 6d 65 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": log-load-compile-dynamic-word" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ Looking these up in reverse order saves us some stack" ~ " juggling. Does it" 20 20 7e 20 20 20 4c 6f 6f 6b 69 6e 67 20 74 68 65 73 65 20 75 70 20 69 6e 20 72 65 76 65 72 73 65 20 6f 72 64 65 72 20 73 61 76 65 73 20 75 73 20 73 6f 6d 65 20 73 74 61 63 6b 20 6a 75 67 67 6c 69 6e 67 2e 20 44 6f 65 73 20 69 74 0a ~ " ~ help readability, or hurt it? Who can say..." 20 20 7e 20 68 65 6c 70 20 72 65 61 64 61 62 69 6c 69 74 79 2c 20 6f 72 20 68 75 72 74 20 69 74 3f 20 57 68 6f 20 63 61 6e 20 73 61 79 2e 2e 2e 0a ~ " L@' log-load-comma" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' log-load-find-execution-token" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " L@' litstring" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ (name pointer, log-load-comma," ~ " log-load-find-execution-token, litstring)" 20 20 7e 20 28 6e 61 6d 65 20 70 6f 69 6e 74 65 72 2c 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2c 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 2c 20 6c 69 74 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " ~ The overall stack delta of this sequence is 0." 20 20 7e 20 54 68 65 20 6f 76 65 72 61 6c 6c 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 73 65 71 75 65 6e 63 65 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 3roll here @ swap packstring 8 packalign here !" 20 20 33 72 6f 6c 6c 20 68 65 72 65 20 40 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " log-load-unroll-log-address ;" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ When we want the log-load routine to run a word that" ~ " wasn't statically" 7e 20 20 20 57 68 65 6e 20 77 65 20 77 61 6e 74 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 74 6f 20 72 75 6e 20 61 20 77 6f 72 64 20 74 68 61 74 20 77 61 73 6e 27 74 20 73 74 61 74 69 63 61 6c 6c 79 0a ~ "~ compiled-in to the target executable, we output code that" ~ " looks up the word" 7e 20 63 6f 6d 70 69 6c 65 64 2d 69 6e 20 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 65 78 65 63 75 74 61 62 6c 65 2c 20 77 65 20 6f 75 74 70 75 74 20 63 6f 64 65 20 74 68 61 74 20 6c 6f 6f 6b 73 20 75 70 20 74 68 65 20 77 6f 72 64 0a ~ "~ by name on the log, then calls it." 7e 20 62 79 20 6e 61 6d 65 20 6f 6e 20 74 68 65 20 6c 6f 67 2c 20 74 68 65 6e 20 63 61 6c 6c 73 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ We update the user stack depth as we go, to account for" ~ " our internal" 7e 20 20 20 57 65 20 75 70 64 61 74 65 20 74 68 65 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 20 61 73 20 77 65 20 67 6f 2c 20 74 6f 20 61 63 63 6f 75 6e 74 20 66 6f 72 20 6f 75 72 20 69 6e 74 65 72 6e 61 6c 0a ~ "~ needs. The last thing our generated code does is execute" ~ " the word we were" 7e 20 6e 65 65 64 73 2e 20 54 68 65 20 6c 61 73 74 20 74 68 69 6e 67 20 6f 75 72 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 64 6f 65 73 20 69 73 20 65 78 65 63 75 74 65 20 74 68 65 20 77 6f 72 64 20 77 65 20 77 65 72 65 0a ~ "~ asked to, and we have no way of knowing what its stack" ~ " delta will be, so" 7e 20 61 73 6b 65 64 20 74 6f 2c 20 61 6e 64 20 77 65 20 68 61 76 65 20 6e 6f 20 77 61 79 20 6f 66 20 6b 6e 6f 77 69 6e 67 20 77 68 61 74 20 69 74 73 20 73 74 61 63 6b 20 64 65 6c 74 61 20 77 69 6c 6c 20 62 65 2c 20 73 6f 0a ~ "~ that final delta is our caller's responsibility. The" ~ " caller should only" 7e 20 74 68 61 74 20 66 69 6e 61 6c 20 64 65 6c 74 61 20 69 73 20 6f 75 72 20 63 61 6c 6c 65 72 27 73 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 2e 20 54 68 65 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 0a ~ "~ consider the delta of the word it requested itself; we" ~ " handle everything" 7e 20 63 6f 6e 73 69 64 65 72 20 74 68 65 20 64 65 6c 74 61 20 6f 66 20 74 68 65 20 77 6f 72 64 20 69 74 20 72 65 71 75 65 73 74 65 64 20 69 74 73 65 6c 66 3b 20 77 65 20 68 61 6e 64 6c 65 20 65 76 65 72 79 74 68 69 6e 67 0a ~ "~ pertaining to retrieving, and then consuming, its" ~ " execution token." 7e 20 70 65 72 74 61 69 6e 69 6e 67 20 74 6f 20 72 65 74 72 69 65 76 69 6e 67 2c 20 61 6e 64 20 74 68 65 6e 20 63 6f 6e 73 75 6d 69 6e 67 2c 20 69 74 73 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2e 0a ~ "~" 7e 0a ~ "~ (name pointer --)" 7e 20 28 6e 61 6d 65 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": log-load-execute-dynamic-word" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 65 78 65 63 75 74 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ This is reverse order again." 20 20 7e 20 54 68 69 73 20 69 73 20 72 65 76 65 72 73 65 20 6f 72 64 65 72 20 61 67 61 69 6e 2e 0a ~ " L@' swap" 20 20 4c 40 27 20 73 77 61 70 0a ~ " L@' log-load-find-execution-token" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " L@' litstring" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ (name pointer, swap, log-load-find-execution-token," ~ " litstring)" 20 20 7e 20 28 6e 61 6d 65 20 70 6f 69 6e 74 65 72 2c 20 73 77 61 70 2c 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 2c 20 6c 69 74 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 3roll here @ swap packstring 8 packalign here !" 20 20 33 72 6f 6c 6c 20 68 65 72 65 20 40 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space , ~ : -8 swap #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Now the execution token is on the stack, immediately" ~ " below the log" 20 20 7e 20 20 20 4e 6f 77 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 69 73 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 2c 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 62 65 6c 6f 77 20 74 68 65 20 6c 6f 67 0a ~ " ~ address, so we apply a delta for it." 20 20 7e 20 61 64 64 72 65 73 73 2c 20 73 6f 20 77 65 20 61 70 70 6c 79 20 61 20 64 65 6c 74 61 20 66 6f 72 20 69 74 2e 0a ~ " 1 transform-apply-stack-delta" 20 20 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' execute" 20 20 4c 40 27 20 65 78 65 63 75 74 65 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 execute #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 65 78 65 63 75 74 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Invoking execute consumes the execution token, which" ~ " is a delta of -1." 20 20 7e 20 20 20 49 6e 76 6f 6b 69 6e 67 20 65 78 65 63 75 74 65 20 63 6f 6e 73 75 6d 65 73 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 77 68 69 63 68 20 69 73 20 61 20 64 65 6c 74 61 20 6f 66 20 2d 31 2e 0a ~ " ~ Any additional delta is our caller's responsibility," ~ " per above." 20 20 7e 20 41 6e 79 20 61 64 64 69 74 69 6f 6e 61 6c 20 64 65 6c 74 61 20 69 73 20 6f 75 72 20 63 61 6c 6c 65 72 27 73 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 2c 20 70 65 72 20 61 62 6f 76 65 2e 0a ~ " -1 transform-apply-stack-delta ;" 20 20 2d 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ We generate code that looks up "docol" by name, runs it" ~ " to get the" 7e 20 20 20 57 65 20 67 65 6e 65 72 61 74 65 20 63 6f 64 65 20 74 68 61 74 20 6c 6f 6f 6b 73 20 75 70 20 22 64 6f 63 6f 6c 22 20 62 79 20 6e 61 6d 65 2c 20 72 75 6e 73 20 69 74 20 74 6f 20 67 65 74 20 74 68 65 0a ~ "~ codeword pointer, then finally appends it to the entry." 7e 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 2c 20 74 68 65 6e 20 66 69 6e 61 6c 6c 79 20 61 70 70 65 6e 64 73 20 69 74 20 74 6f 20 74 68 65 20 65 6e 74 72 79 2e 0a ~ "~" 7e 0a ~ "~ This one's unusual in that it first executes the word," ~ " then compiles the" 7e 20 20 20 54 68 69 73 20 6f 6e 65 27 73 20 75 6e 75 73 75 61 6c 20 69 6e 20 74 68 61 74 20 69 74 20 66 69 72 73 74 20 65 78 65 63 75 74 65 73 20 74 68 65 20 77 6f 72 64 2c 20 74 68 65 6e 20 63 6f 6d 70 69 6c 65 73 20 74 68 65 0a ~ "~ result. To avoid rolling and unrolling repeatedly, we" ~ " implement it as a" 7e 20 72 65 73 75 6c 74 2e 20 54 6f 20 61 76 6f 69 64 20 72 6f 6c 6c 69 6e 67 20 61 6e 64 20 75 6e 72 6f 6c 6c 69 6e 67 20 72 65 70 65 61 74 65 64 6c 79 2c 20 77 65 20 69 6d 70 6c 65 6d 65 6e 74 20 69 74 20 61 73 20 61 0a ~ "~ special case. For clarity's sake we put the code here," ~ " with the other" 7e 20 73 70 65 63 69 61 6c 20 63 61 73 65 2e 20 46 6f 72 20 63 6c 61 72 69 74 79 27 73 20 73 61 6b 65 20 77 65 20 70 75 74 20 74 68 65 20 63 6f 64 65 20 68 65 72 65 2c 20 77 69 74 68 20 74 68 65 20 6f 74 68 65 72 0a ~ "~ dynamic word stuff." 7e 20 64 79 6e 61 6d 69 63 20 77 6f 72 64 20 73 74 75 66 66 2e 0a ~ "~" 7e 0a ~ ": log-load-compile-docol" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 6f 63 6f 6c 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ As usual, we do these in reverse." 20 20 7e 20 41 73 20 75 73 75 61 6c 2c 20 77 65 20 64 6f 20 74 68 65 73 65 20 69 6e 20 72 65 76 65 72 73 65 2e 0a ~ " L@' log-load-comma" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' execute" 20 20 4c 40 27 20 65 78 65 63 75 74 65 0a ~ " L@' log-load-find-execution-token" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " L@' litstring" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ The overall stack delta of this sequence is 0." 20 20 7e 20 54 68 65 20 6f 76 65 72 61 6c 6c 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 73 65 71 75 65 6e 63 65 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ s" docol" packstring 8 packalign here !" 20 20 68 65 72 65 20 40 20 73 22 20 64 6f 63 6f 6c 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space , ~ : -8 execute #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 65 78 65 63 75 74 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " log-load-unroll-log-address ;" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ There's one more compilation case, where we wish to" ~ " compile an integer" 7e 20 20 20 54 68 65 72 65 27 73 20 6f 6e 65 20 6d 6f 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 63 61 73 65 2c 20 77 68 65 72 65 20 77 65 20 77 69 73 68 20 74 6f 20 63 6f 6d 70 69 6c 65 20 61 6e 20 69 6e 74 65 67 65 72 0a ~ "~ literal. Again, for clarity, we do it here." 7e 20 6c 69 74 65 72 61 6c 2e 20 41 67 61 69 6e 2c 20 66 6f 72 20 63 6c 61 72 69 74 79 2c 20 77 65 20 64 6f 20 69 74 20 68 65 72 65 2e 0a ~ "~" 7e 0a ~ "~ (integer value --)" 7e 20 28 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 2d 2d 29 0a ~ ": log-load-compile-literal" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 6c 69 74 65 72 61 6c 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ As usual, we do these in reverse." 20 20 7e 20 41 73 20 75 73 75 61 6c 2c 20 77 65 20 64 6f 20 74 68 65 73 65 20 69 6e 20 72 65 76 65 72 73 65 2e 0a ~ " L@' log-load-comma" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' lit" 20 20 4c 40 27 20 6c 69 74 0a ~ " L@' log-load-comma" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' log-load-find-execution-token" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " L@' litstring" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ The overall stack delta of this sequence is 0." 20 20 7e 20 54 68 65 20 6f 76 65 72 61 6c 6c 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 73 65 71 75 65 6e 63 65 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ s" lit" packstring 8 packalign here !" 20 20 68 65 72 65 20 40 20 73 22 20 6c 69 74 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space , ~ : -8 lit #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " swap ~ : provide-hex" 20 20 73 77 61 70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " , ~ : -8 # #--" ~ " (integer literal)" 20 20 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " log-load-unroll-log-address ;" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This is the alternate version of "create" for use with" ~ " the log-load" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 63 72 65 61 74 65 22 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ "~ transform. This one is quite unlike the regular "create";" ~ " rather than" 7e 20 74 72 61 6e 73 66 6f 72 6d 2e 20 54 68 69 73 20 6f 6e 65 20 69 73 20 71 75 69 74 65 20 75 6e 6c 69 6b 65 20 74 68 65 20 72 65 67 75 6c 61 72 20 22 63 72 65 61 74 65 22 3b 20 72 61 74 68 65 72 20 74 68 61 6e 0a ~ "~ creating an entry on the log directly, its job is to" ~ " output words which," 7e 20 63 72 65 61 74 69 6e 67 20 61 6e 20 65 6e 74 72 79 20 6f 6e 20 74 68 65 20 6c 6f 67 20 64 69 72 65 63 74 6c 79 2c 20 69 74 73 20 6a 6f 62 20 69 73 20 74 6f 20 6f 75 74 70 75 74 20 77 6f 72 64 73 20 77 68 69 63 68 2c 0a ~ "~ when they're later executed, will do create's job." 7e 20 77 68 65 6e 20 74 68 65 79 27 72 65 20 6c 61 74 65 72 20 65 78 65 63 75 74 65 64 2c 20 77 69 6c 6c 20 64 6f 20 63 72 65 61 74 65 27 73 20 6a 6f 62 2e 0a ~ "~" 7e 0a ~ "~ In practice that means outputting a codeword pointer to" ~ " run a" 7e 20 20 20 49 6e 20 70 72 61 63 74 69 63 65 20 74 68 61 74 20 6d 65 61 6e 73 20 6f 75 74 70 75 74 74 69 6e 67 20 61 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 20 74 6f 20 72 75 6e 20 61 0a ~ "~ statically-compiled word that does the work. The" ~ " implementation of" 7e 20 73 74 61 74 69 63 61 6c 6c 79 2d 63 6f 6d 70 69 6c 65 64 20 77 6f 72 64 20 74 68 61 74 20 64 6f 65 73 20 74 68 65 20 77 6f 72 6b 2e 20 54 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 0a ~ "~ log-load-create is in language/static/log-load.e." 7e 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 20 69 73 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 6c 6f 67 2d 6c 6f 61 64 2e 65 2e 0a ~ "~" 7e 0a ~ "~ It's worth keeping in mind that this alternate only" ~ " gets called for" 7e 20 20 20 49 74 27 73 20 77 6f 72 74 68 20 6b 65 65 70 69 6e 67 20 69 6e 20 6d 69 6e 64 20 74 68 61 74 20 74 68 69 73 20 61 6c 74 65 72 6e 61 74 65 20 6f 6e 6c 79 20 67 65 74 73 20 63 61 6c 6c 65 64 20 66 6f 72 0a ~ "~ manual invocations of "create". It isn't called from the" ~ " colon alternate." 7e 20 6d 61 6e 75 61 6c 20 69 6e 76 6f 63 61 74 69 6f 6e 73 20 6f 66 20 22 63 72 65 61 74 65 22 2e 20 49 74 20 69 73 6e 27 74 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 74 68 65 20 63 6f 6c 6f 6e 20 61 6c 74 65 72 6e 61 74 65 2e 0a ~ ": log-load-create-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ In immediate mode, we have special behavior because" ~ " this is fundamental" 20 20 7e 20 20 20 49 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2c 20 77 65 20 68 61 76 65 20 73 70 65 63 69 61 6c 20 62 65 68 61 76 69 6f 72 20 62 65 63 61 75 73 65 20 74 68 69 73 20 69 73 20 66 75 6e 64 61 6d 65 6e 74 61 6c 0a ~ " ~ to bootstrapping the log. In compile mode, we compile a" ~ " dynamic call," 20 20 7e 20 74 6f 20 62 6f 6f 74 73 74 72 61 70 70 69 6e 67 20 74 68 65 20 6c 6f 67 2e 20 49 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 77 65 20 63 6f 6d 70 69 6c 65 20 61 20 64 79 6e 61 6d 69 63 20 63 61 6c 6c 2c 0a ~ " ~ which is the same thing that would happen if we didn't" ~ " have an alternate" 20 20 7e 20 77 68 69 63 68 20 69 73 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 20 74 68 61 74 20 77 6f 75 6c 64 20 68 61 70 70 65 6e 20 69 66 20 77 65 20 64 69 64 6e 27 74 20 68 61 76 65 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ at all." 20 20 7e 20 61 74 20 61 6c 6c 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ Notice that when we're in compile mode, we aren't" ~ " actually defining a" 20 20 20 20 7e 20 20 20 4e 6f 74 69 63 65 20 74 68 61 74 20 77 68 65 6e 20 77 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 77 65 20 61 72 65 6e 27 74 20 61 63 74 75 61 6c 6c 79 20 64 65 66 69 6e 69 6e 67 20 61 0a ~ " ~ word at the time the log-load routine runs, so we" ~ " don't have magic" 20 20 20 20 7e 20 77 6f 72 64 20 61 74 20 74 68 65 20 74 69 6d 65 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 72 75 6e 73 2c 20 73 6f 20 77 65 20 64 6f 6e 27 74 20 68 61 76 65 20 6d 61 67 69 63 0a ~ " ~ comments." 20 20 20 20 7e 20 63 6f 6d 6d 65 6e 74 73 2e 0a ~ " s" create" log-load-compile-dynamic-word" 20 20 20 20 73 22 20 63 72 65 61 74 65 22 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ : blank-line" 20 20 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : create" 20 20 20 20 7e 20 3a 20 63 72 65 61 74 65 0a ~ " log-load-roll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-create" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 0a ~ " L@' swap" 20 20 20 20 4c 40 27 20 73 77 61 70 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ The overall stack delta of this sequence is 0." 20 20 20 20 7e 20 54 68 65 20 6f 76 65 72 61 6c 6c 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 73 65 71 75 65 6e 63 65 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space , ~ : -8 swap #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-create #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ We've consumed a string pointer from the stack, so" ~ " that's a delta of -1." 20 20 20 20 7e 20 57 65 27 76 65 20 63 6f 6e 73 75 6d 65 64 20 61 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 66 72 6f 6d 20 74 68 65 20 73 74 61 63 6b 2c 20 73 6f 20 74 68 61 74 27 73 20 61 20 64 65 6c 74 61 20 6f 66 20 2d 31 2e 0a ~ " -1 transform-apply-stack-delta" 20 20 20 20 2d 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ~ : blank-line" 20 20 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " } if-else ;" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This is the alternate version of ":" for use with the" ~ " log-load transform." 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 3a 22 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~ Its code is the same as the regular ":" except as noted" ~ " below. It is likely" 7e 20 49 74 73 20 63 6f 64 65 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 72 65 67 75 6c 61 72 20 22 3a 22 20 65 78 63 65 70 74 20 61 73 20 6e 6f 74 65 64 20 62 65 6c 6f 77 2e 20 49 74 20 69 73 20 6c 69 6b 65 6c 79 0a ~ "~ to be extremely useful to read and understand ":" in" 7e 20 74 6f 20 62 65 20 65 78 74 72 65 6d 65 6c 79 20 75 73 65 66 75 6c 20 74 6f 20 72 65 61 64 20 61 6e 64 20 75 6e 64 65 72 73 74 61 6e 64 20 22 3a 22 20 69 6e 0a ~ "~ language/dynamic/dynamic.e before attempting to" ~ " understand" 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 20 62 65 66 6f 72 65 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 0a ~ "~ "log-load-colon-alternate"." 7e 20 22 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 22 2e 0a ~ ": log-load-colon-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " word value@" 20 20 77 6f 72 64 20 76 61 6c 75 65 40 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : provide-string-copy" 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 2d 63 6f 70 79 0a ~ " ~ : # is defined here via the log-load transform." 20 20 7e 20 3a 20 23 20 69 73 20 64 65 66 69 6e 65 64 20 68 65 72 65 20 76 69 61 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ "" 0a ~ " ~ Calling log-load-create-alternate would result in" ~ " some redundant rolling" 20 20 7e 20 20 20 43 61 6c 6c 69 6e 67 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 77 6f 75 6c 64 20 72 65 73 75 6c 74 20 69 6e 20 73 6f 6d 65 20 72 65 64 75 6e 64 61 6e 74 20 72 6f 6c 6c 69 6e 67 0a ~ " ~ and unrolling, so we do it together like this instead." 20 20 7e 20 61 6e 64 20 75 6e 72 6f 6c 6c 69 6e 67 2c 20 73 6f 20 77 65 20 64 6f 20 69 74 20 74 6f 67 65 74 68 65 72 20 6c 69 6b 65 20 74 68 69 73 20 69 6e 73 74 65 61 64 2e 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-create" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 0a ~ " L@' litstring" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ The overall stack delta of this sequence is 0." 20 20 7e 20 54 68 65 20 6f 76 65 72 61 6c 6c 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 73 65 71 75 65 6e 63 65 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " swap here @ swap packstring 8 packalign here !" 20 20 73 77 61 70 20 68 65 72 65 20 40 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-create #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " dropstring" 20 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ "" 0a ~ " ~ We generate code that looks up "docol" by name, runs" ~ " it to get the" 20 20 7e 20 20 20 57 65 20 67 65 6e 65 72 61 74 65 20 63 6f 64 65 20 74 68 61 74 20 6c 6f 6f 6b 73 20 75 70 20 22 64 6f 63 6f 6c 22 20 62 79 20 6e 61 6d 65 2c 20 72 75 6e 73 20 69 74 20 74 6f 20 67 65 74 20 74 68 65 0a ~ " ~ codeword pointer, then finally appends it to the" ~ " entry." 20 20 7e 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 2c 20 74 68 65 6e 20 66 69 6e 61 6c 6c 79 20 61 70 70 65 6e 64 73 20 69 74 20 74 6f 20 74 68 65 20 65 6e 74 72 79 2e 0a ~ " log-load-compile-docol" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 6f 63 6f 6c 0a ~ "" 0a ~ " ~ This is where we would mark the entry hidden, but we" ~ " don't do that. It" 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 77 68 65 72 65 20 77 65 20 77 6f 75 6c 64 20 6d 61 72 6b 20 74 68 65 20 65 6e 74 72 79 20 68 69 64 64 65 6e 2c 20 62 75 74 20 77 65 20 64 6f 6e 27 74 20 64 6f 20 74 68 61 74 2e 20 49 74 0a ~ " ~ won't shadow anything and it won't be called until the" ~ " entire log-load" 20 20 7e 20 77 6f 6e 27 74 20 73 68 61 64 6f 77 20 61 6e 79 74 68 69 6e 67 20 61 6e 64 20 69 74 20 77 6f 6e 27 74 20 62 65 20 63 61 6c 6c 65 64 20 75 6e 74 69 6c 20 74 68 65 20 65 6e 74 69 72 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ " ~ routine has finished." 20 20 7e 20 72 6f 75 74 69 6e 65 20 68 61 73 20 66 69 6e 69 73 68 65 64 2e 0a ~ "" 0a ~ " ~ Switching between immediate and compile mode is one" ~ " of the very few" 20 20 7e 20 20 20 53 77 69 74 63 68 69 6e 67 20 62 65 74 77 65 65 6e 20 69 6d 6d 65 64 69 61 74 65 20 61 6e 64 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 20 69 73 20 6f 6e 65 20 6f 66 20 74 68 65 20 76 65 72 79 20 66 65 77 0a ~ " ~ things that happens NOW, while the log-load transform" ~ " is actually running." 20 20 7e 20 74 68 69 6e 67 73 20 74 68 61 74 20 68 61 70 70 65 6e 73 20 4e 4f 57 2c 20 77 68 69 6c 65 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 61 63 74 75 61 6c 6c 79 20 72 75 6e 6e 69 6e 67 2e 0a ~ " ]" 20 20 5d 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ See notes on label-self-codeword-alternate for what" ~ " problem this is" 7e 20 20 20 53 65 65 20 6e 6f 74 65 73 20 6f 6e 20 6c 61 62 65 6c 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 66 6f 72 20 77 68 61 74 20 70 72 6f 62 6c 65 6d 20 74 68 69 73 20 69 73 0a ~ "~ solving." 7e 20 73 6f 6c 76 69 6e 67 2e 0a ~ "~" 7e 0a ~ "~ Since self-codeword's real definition is in" ~ " language/dynamic/dynamic.e," 7e 20 20 20 53 69 6e 63 65 20 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 27 73 20 72 65 61 6c 20 64 65 66 69 6e 69 74 69 6f 6e 20 69 73 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 2c 0a ~ "~ which absolutely cannot be loaded yet at the time we" ~ " output docol at the" 7e 20 77 68 69 63 68 20 61 62 73 6f 6c 75 74 65 6c 79 20 63 61 6e 6e 6f 74 20 62 65 20 6c 6f 61 64 65 64 20 79 65 74 20 61 74 20 74 68 65 20 74 69 6d 65 20 77 65 20 6f 75 74 70 75 74 20 64 6f 63 6f 6c 20 61 74 20 74 68 65 0a ~ "~ very beginning of language/static/core.e, we need to" ~ " provide an alternate" 7e 20 76 65 72 79 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 63 6f 72 65 2e 65 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 70 72 6f 76 69 64 65 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 0a ~ "~ for the log-load transform as well, even though only the" ~ " label transform has" 7e 20 66 6f 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 61 73 20 77 65 6c 6c 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 6f 6e 6c 79 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 68 61 73 0a ~ "~ the reproducibility issue." 7e 20 74 68 65 20 72 65 70 72 6f 64 75 63 69 62 69 6c 69 74 79 20 69 73 73 75 65 2e 0a ~ ": log-load-self-codeword-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ It's important to remember, this is not an immediate" ~ " word! It needs to" 20 20 7e 20 20 20 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 74 6f 20 72 65 6d 65 6d 62 65 72 2c 20 74 68 69 73 20 69 73 20 6e 6f 74 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 21 20 49 74 20 6e 65 65 64 73 20 74 6f 0a ~ " ~ produce correct compiled output, when invoked in" ~ " compile mode. Since it's" 20 20 7e 20 70 72 6f 64 75 63 65 20 63 6f 72 72 65 63 74 20 63 6f 6d 70 69 6c 65 64 20 6f 75 74 70 75 74 2c 20 77 68 65 6e 20 69 6e 76 6f 6b 65 64 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 20 53 69 6e 63 65 20 69 74 27 73 0a ~ " ~ also a regular word that exists, correct output is a" ~ " reference to the" 20 20 7e 20 61 6c 73 6f 20 61 20 72 65 67 75 6c 61 72 20 77 6f 72 64 20 74 68 61 74 20 65 78 69 73 74 73 2c 20 63 6f 72 72 65 63 74 20 6f 75 74 70 75 74 20 69 73 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 0a ~ " ~ non-alternate version." 20 20 7e 20 6e 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " s" self-codeword" log-load-compile-dynamic-word" 20 20 20 20 73 22 20 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 22 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " } {" 20 20 7d 20 7b 0a ~ " log-load-roll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-self-codeword" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-self-codeword #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This is the alternate version of ";" for use with the" ~ " log-load transform." 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 3b 22 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~ Its code is the same as the regular ";" except as noted" ~ " below. It is" 7e 20 49 74 73 20 63 6f 64 65 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 72 65 67 75 6c 61 72 20 22 3b 22 20 65 78 63 65 70 74 20 61 73 20 6e 6f 74 65 64 20 62 65 6c 6f 77 2e 20 49 74 20 69 73 0a ~ "~ likely to be extremely useful to read and understand ";"" ~ " in" 7e 20 6c 69 6b 65 6c 79 20 74 6f 20 62 65 20 65 78 74 72 65 6d 65 6c 79 20 75 73 65 66 75 6c 20 74 6f 20 72 65 61 64 20 61 6e 64 20 75 6e 64 65 72 73 74 61 6e 64 20 22 3b 22 20 69 6e 0a ~ "~ language/dynamic/dynamic.e before attempting to" ~ " understand" 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 20 62 65 66 6f 72 65 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 0a ~ "~ "log-load-semicolon-alternate"." 7e 20 22 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 22 2e 0a ~ ": log-load-semicolon-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ We generate code that looks up "exit" by name and" ~ " appends it to the" 20 20 7e 20 20 20 57 65 20 67 65 6e 65 72 61 74 65 20 63 6f 64 65 20 74 68 61 74 20 6c 6f 6f 6b 73 20 75 70 20 22 65 78 69 74 22 20 62 79 20 6e 61 6d 65 20 61 6e 64 20 61 70 70 65 6e 64 73 20 69 74 20 74 6f 20 74 68 65 0a ~ " ~ entry." 20 20 7e 20 65 6e 74 72 79 2e 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ As usual, we do these in reverse." 20 20 7e 20 41 73 20 75 73 75 61 6c 2c 20 77 65 20 64 6f 20 74 68 65 73 65 20 69 6e 20 72 65 76 65 72 73 65 2e 0a ~ " L@' log-load-comma" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' log-load-find-execution-token" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " L@' litstring" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ The overall stack delta of this sequence is 0." 20 20 7e 20 54 68 65 20 6f 76 65 72 61 6c 6c 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 73 65 71 75 65 6e 63 65 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ s" exit" packstring 8 packalign here !" 20 20 68 65 72 65 20 40 20 73 22 20 65 78 69 74 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ "" 0a ~ " ~ This is where we would unhide the entry, but again, we" ~ " don't do that." 20 20 7e 20 54 68 69 73 20 69 73 20 77 68 65 72 65 20 77 65 20 77 6f 75 6c 64 20 75 6e 68 69 64 65 20 74 68 65 20 65 6e 74 72 79 2c 20 62 75 74 20 61 67 61 69 6e 2c 20 77 65 20 64 6f 6e 27 74 20 64 6f 20 74 68 61 74 2e 0a ~ "" 0a ~ " ~ Since [ is an immediate word, we have to go to extra" ~ " trouble to compile" 20 20 7e 20 20 20 53 69 6e 63 65 20 5b 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 77 65 20 68 61 76 65 20 74 6f 20 67 6f 20 74 6f 20 65 78 74 72 61 20 74 72 6f 75 62 6c 65 20 74 6f 20 63 6f 6d 70 69 6c 65 0a ~ " ~ it as part of ;." 20 20 7e 20 69 74 20 61 73 20 70 61 72 74 20 6f 66 20 3b 2e 0a ~ " [ ' [ entry-to-execution-token , ]" 20 20 5b 20 27 20 5b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This is the alternate version of ";asm" for use with" ~ " the log-load" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 3b 61 73 6d 22 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ "~ transform. Its code is the same as the regular "create"" ~ " except as noted" 7e 20 74 72 61 6e 73 66 6f 72 6d 2e 20 49 74 73 20 63 6f 64 65 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 72 65 67 75 6c 61 72 20 22 63 72 65 61 74 65 22 20 65 78 63 65 70 74 20 61 73 20 6e 6f 74 65 64 0a ~ "~ below. It is likely to be extremely useful to read and" ~ " understand ";asm" in" 7e 20 62 65 6c 6f 77 2e 20 49 74 20 69 73 20 6c 69 6b 65 6c 79 20 74 6f 20 62 65 20 65 78 74 72 65 6d 65 6c 79 20 75 73 65 66 75 6c 20 74 6f 20 72 65 61 64 20 61 6e 64 20 75 6e 64 65 72 73 74 61 6e 64 20 22 3b 61 73 6d 22 20 69 6e 0a ~ "~ language/dynamic/dynamic.e before attempting to" ~ " understand "log-load;asm"." 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 20 62 65 66 6f 72 65 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 22 6c 6f 67 2d 6c 6f 61 64 3b 61 73 6d 22 2e 0a ~ ": log-load-semicolon-assembly-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ We generate code that statically invokes" ~ " log-load-semicolon-assembly," 20 20 7e 20 20 20 57 65 20 67 65 6e 65 72 61 74 65 20 63 6f 64 65 20 74 68 61 74 20 73 74 61 74 69 63 61 6c 6c 79 20 69 6e 76 6f 6b 65 73 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 2c 0a ~ " ~ which does all the actual work. There's quite a few" ~ " steps, so it makes" 20 20 7e 20 77 68 69 63 68 20 64 6f 65 73 20 61 6c 6c 20 74 68 65 20 61 63 74 75 61 6c 20 77 6f 72 6b 2e 20 54 68 65 72 65 27 73 20 71 75 69 74 65 20 61 20 66 65 77 20 73 74 65 70 73 2c 20 73 6f 20 69 74 20 6d 61 6b 65 73 0a ~ " ~ sense to have a word that bundles them up." 20 20 7e 20 73 65 6e 73 65 20 74 6f 20 68 61 76 65 20 61 20 77 6f 72 64 20 74 68 61 74 20 62 75 6e 64 6c 65 73 20 74 68 65 6d 20 75 70 2e 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ As usual, we do these in reverse." 20 20 7e 20 41 73 20 75 73 75 61 6c 2c 20 77 65 20 64 6f 20 74 68 65 73 65 20 69 6e 20 72 65 76 65 72 73 65 2e 0a ~ " L@' log-load-semicolon-assembly" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ The stack delta of this call is 0." 20 20 7e 20 54 68 65 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 63 61 6c 6c 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-semicolon-assembly #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ "" 0a ~ " ~ This is where we would unhide the entry, but again, we" ~ " don't do that." 20 20 7e 20 54 68 69 73 20 69 73 20 77 68 65 72 65 20 77 65 20 77 6f 75 6c 64 20 75 6e 68 69 64 65 20 74 68 65 20 65 6e 74 72 79 2c 20 62 75 74 20 61 67 61 69 6e 2c 20 77 65 20 64 6f 6e 27 74 20 64 6f 20 74 68 61 74 2e 0a ~ "" 0a ~ " ~ Since [ is an immediate word, we have to go to extra" ~ " trouble to compile" 20 20 7e 20 20 20 53 69 6e 63 65 20 5b 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 77 65 20 68 61 76 65 20 74 6f 20 67 6f 20 74 6f 20 65 78 74 72 61 20 74 72 6f 75 62 6c 65 20 74 6f 20 63 6f 6d 70 69 6c 65 0a ~ " ~ it as part of ;." 20 20 7e 20 69 74 20 61 73 20 70 61 72 74 20 6f 66 20 3b 2e 0a ~ " [ ' [ entry-to-execution-token , ]" 20 20 5b 20 27 20 5b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This just does the same thing [ always does, but having" ~ " it as an alternate" 7e 20 20 20 54 68 69 73 20 6a 75 73 74 20 64 6f 65 73 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 20 5b 20 61 6c 77 61 79 73 20 64 6f 65 73 2c 20 62 75 74 20 68 61 76 69 6e 67 20 69 74 20 61 73 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 0a ~ "~ means it happens at transformation time, which is sooner" ~ " than "immediate"" 7e 20 6d 65 61 6e 73 20 69 74 20 68 61 70 70 65 6e 73 20 61 74 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 74 69 6d 65 2c 20 77 68 69 63 68 20 69 73 20 73 6f 6f 6e 65 72 20 74 68 61 6e 20 22 69 6d 6d 65 64 69 61 74 65 22 0a ~ "~ time. The log load transform is weird like that, it has" ~ " three different" 7e 20 74 69 6d 65 2e 20 54 68 65 20 6c 6f 67 20 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 77 65 69 72 64 20 6c 69 6b 65 20 74 68 61 74 2c 20 69 74 20 68 61 73 20 74 68 72 65 65 20 64 69 66 66 65 72 65 6e 74 0a ~ "~ times things can happen, rather than the usual two." 7e 20 74 69 6d 65 73 20 74 68 69 6e 67 73 20 63 61 6e 20 68 61 70 70 65 6e 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 74 68 65 20 75 73 75 61 6c 20 74 77 6f 2e 0a ~ ": log-load-left-square-brace-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 65 66 74 2d 73 71 75 61 72 65 2d 62 72 61 63 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ Since [ is an immediate word, we have to go to extra" ~ " trouble to compile" 20 20 7e 20 20 20 53 69 6e 63 65 20 5b 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 77 65 20 68 61 76 65 20 74 6f 20 67 6f 20 74 6f 20 65 78 74 72 61 20 74 72 6f 75 62 6c 65 20 74 6f 20 63 6f 6d 70 69 6c 65 0a ~ " ~ it as part of the alternate." 20 20 7e 20 69 74 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 2e 0a ~ " [ ' [ entry-to-execution-token , ]" 20 20 5b 20 27 20 5b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "~ We need this one, too. It's not even an immediate word" ~ " normally!" 7e 20 57 65 20 6e 65 65 64 20 74 68 69 73 20 6f 6e 65 2c 20 74 6f 6f 2e 20 49 74 27 73 20 6e 6f 74 20 65 76 65 6e 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 20 6e 6f 72 6d 61 6c 6c 79 21 0a ~ ": log-load-right-square-brace-alternate ] ; make-immediate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 72 69 67 68 74 2d 73 71 75 61 72 65 2d 62 72 61 63 65 2d 61 6c 74 65 72 6e 61 74 65 20 5d 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ ": log-load-comma-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ In immediate mode, we have special behavior because" ~ " of the "here" magic." 20 20 7e 20 20 20 49 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2c 20 77 65 20 68 61 76 65 20 73 70 65 63 69 61 6c 20 62 65 68 61 76 69 6f 72 20 62 65 63 61 75 73 65 20 6f 66 20 74 68 65 20 22 68 65 72 65 22 20 6d 61 67 69 63 2e 0a ~ " ~ In compile mode, we compile a dynamic call, which is" ~ " the same thing that" 20 20 7e 20 49 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 77 65 20 63 6f 6d 70 69 6c 65 20 61 20 64 79 6e 61 6d 69 63 20 63 61 6c 6c 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 20 74 68 61 74 0a ~ " ~ would happen if we didn't have an alternate at all." 20 20 7e 20 77 6f 75 6c 64 20 68 61 70 70 65 6e 20 69 66 20 77 65 20 64 69 64 6e 27 74 20 68 61 76 65 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 61 74 20 61 6c 6c 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " s" ," log-load-compile-dynamic-word" 20 20 20 20 73 22 20 2c 22 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " } {" 20 20 7d 20 7b 0a ~ " log-load-roll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-comma" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' swap" 20 20 20 20 4c 40 27 20 73 77 61 70 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 swap #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ We consumed the value, so we apply a delta." 20 20 20 20 7e 20 20 20 57 65 20 63 6f 6e 73 75 6d 65 64 20 74 68 65 20 76 61 6c 75 65 2c 20 73 6f 20 77 65 20 61 70 70 6c 79 20 61 20 64 65 6c 74 61 2e 0a ~ " -1 transform-apply-stack-delta" 20 20 20 20 2d 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ ": log-load-variable-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ In immediate mode, we have special behavior because" ~ " of the "here" magic." 20 20 7e 20 20 20 49 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2c 20 77 65 20 68 61 76 65 20 73 70 65 63 69 61 6c 20 62 65 68 61 76 69 6f 72 20 62 65 63 61 75 73 65 20 6f 66 20 74 68 65 20 22 68 65 72 65 22 20 6d 61 67 69 63 2e 0a ~ " ~ In compile mode, we compile a dynamic call, which is" ~ " the same thing that" 20 20 7e 20 49 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 77 65 20 63 6f 6d 70 69 6c 65 20 61 20 64 79 6e 61 6d 69 63 20 63 61 6c 6c 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 20 74 68 61 74 0a ~ " ~ would happen if we didn't have an alternate at all." 20 20 7e 20 77 6f 75 6c 64 20 68 61 70 70 65 6e 20 69 66 20 77 65 20 64 69 64 6e 27 74 20 68 61 76 65 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 61 74 20 61 6c 6c 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " s" variable" log-load-compile-dynamic-word" 20 20 20 20 73 22 20 76 61 72 69 61 62 6c 65 22 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ Calling log-load-create-alternate would result in" ~ " some redundant rolling" 20 20 20 20 7e 20 20 20 43 61 6c 6c 69 6e 67 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 77 6f 75 6c 64 20 72 65 73 75 6c 74 20 69 6e 20 73 6f 6d 65 20 72 65 64 75 6e 64 61 6e 74 20 72 6f 6c 6c 69 6e 67 ~ "" 0a ~ " ~ and unrolling, so we do it together like this" ~ " instead." 20 20 20 20 7e 20 61 6e 64 20 75 6e 72 6f 6c 6c 69 6e 67 2c 20 73 6f 20 77 65 20 64 6f 20 69 74 20 74 6f 67 65 74 68 65 72 20 6c 69 6b 65 20 74 68 69 73 20 69 6e 73 74 65 61 64 2e 0a ~ " log-load-roll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-variable" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 0a ~ " L@' 3unroll" 20 20 20 20 4c 40 27 20 33 75 6e 72 6f 6c 6c 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 3unroll #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 33 75 6e 72 6f 6c 6c 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-variable #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ We consumed the string and address, so we apply a" ~ " delta." 20 20 20 20 7e 20 20 20 57 65 20 63 6f 6e 73 75 6d 65 64 20 74 68 65 20 73 74 72 69 6e 67 20 61 6e 64 20 61 64 64 72 65 73 73 2c 20 73 6f 20 77 65 20 61 70 70 6c 79 20 61 20 64 65 6c 74 61 2e 0a ~ " -2 transform-apply-stack-delta" 20 20 20 20 2d 32 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ ": log-load-keyword-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 6b 65 79 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ In immediate mode, we have special behavior because" ~ " of the "here" magic." 20 20 7e 20 20 20 49 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2c 20 77 65 20 68 61 76 65 20 73 70 65 63 69 61 6c 20 62 65 68 61 76 69 6f 72 20 62 65 63 61 75 73 65 20 6f 66 20 74 68 65 20 22 68 65 72 65 22 20 6d 61 67 69 63 2e 0a ~ " ~ In compile mode, we compile a dynamic call, which is" ~ " the same thing that" 20 20 7e 20 49 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 77 65 20 63 6f 6d 70 69 6c 65 20 61 20 64 79 6e 61 6d 69 63 20 63 61 6c 6c 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 20 74 68 61 74 0a ~ " ~ would happen if we didn't have an alternate at all." 20 20 7e 20 77 6f 75 6c 64 20 68 61 70 70 65 6e 20 69 66 20 77 65 20 64 69 64 6e 27 74 20 68 61 76 65 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 61 74 20 61 6c 6c 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " s" keyword" log-load-compile-dynamic-word" 20 20 20 20 73 22 20 6b 65 79 77 6f 72 64 22 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ Calling log-load-create-alternate would result in" ~ " some redundant rolling" 20 20 20 20 7e 20 20 20 43 61 6c 6c 69 6e 67 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 77 6f 75 6c 64 20 72 65 73 75 6c 74 20 69 6e 20 73 6f 6d 65 20 72 65 64 75 6e 64 61 6e 74 20 72 6f 6c 6c 69 6e 67 ~ "" 0a ~ " ~ and unrolling, so we do it together like this" ~ " instead." 20 20 20 20 7e 20 61 6e 64 20 75 6e 72 6f 6c 6c 69 6e 67 2c 20 73 6f 20 77 65 20 64 6f 20 69 74 20 74 6f 67 65 74 68 65 72 20 6c 69 6b 65 20 74 68 69 73 20 69 6e 73 74 65 61 64 2e 0a ~ " log-load-roll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-keyword" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 6b 65 79 77 6f 72 64 0a ~ " L@' swap" 20 20 20 20 4c 40 27 20 73 77 61 70 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 swap #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-keyword #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 6b 65 79 77 6f 72 64 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ We consumed the string, so we apply a delta." 20 20 20 20 7e 20 20 20 57 65 20 63 6f 6e 73 75 6d 65 64 20 74 68 65 20 73 74 72 69 6e 67 2c 20 73 6f 20 77 65 20 61 70 70 6c 79 20 61 20 64 65 6c 74 61 2e 0a ~ " -1 transform-apply-stack-delta" 20 20 20 20 2d 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ Yeah comments have to go." 7e 20 59 65 61 68 20 63 6f 6d 6d 65 6e 74 73 20 68 61 76 65 20 74 6f 20 67 6f 2e 0a ~ ": log-load-tilde-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ' ~ entry-to-execution-token execute" 20 20 27 20 7e 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ Strings are important and must happen now, now, now." 7e 20 53 74 72 69 6e 67 73 20 61 72 65 20 69 6d 70 6f 72 74 61 6e 74 20 61 6e 64 20 6d 75 73 74 20 68 61 70 70 65 6e 20 6e 6f 77 2c 20 6e 6f 77 2c 20 6e 6f 77 2e 0a ~ ": log-load-string-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ Wrapping s" is surprisingly difficult; see" ~ " label-string-alternate" 20 20 7e 20 20 20 57 72 61 70 70 69 6e 67 20 73 22 20 69 73 20 73 75 72 70 72 69 73 69 6e 67 6c 79 20 64 69 66 66 69 63 75 6c 74 3b 20 73 65 65 20 6c 61 62 65 6c 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ for detailed notes on how that works. Once we've" ~ " finished the" 20 20 7e 20 66 6f 72 20 64 65 74 61 69 6c 65 64 20 6e 6f 74 65 73 20 6f 6e 20 68 6f 77 20 74 68 61 74 20 77 6f 72 6b 73 2e 20 4f 6e 63 65 20 77 65 27 76 65 20 66 69 6e 69 73 68 65 64 20 74 68 65 0a ~ " ~ transform-time part, our implementations will diverge," ~ " but this first bit" 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 2d 74 69 6d 65 20 70 61 72 74 2c 20 6f 75 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 77 69 6c 6c 20 64 69 76 65 72 67 65 2c 20 62 75 74 20 74 68 69 73 20 66 69 72 73 74 20 62 69 74 0a ~ " ~ is the same." 20 20 7e 20 69 73 20 74 68 65 20 73 61 6d 65 2e 0a ~ " interpreter-flags @" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 0a ~ " ' s" entry-to-execution-token" 20 20 27 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ Since [ is an immediate word, we have to go to extra" ~ " trouble to compile" 20 20 7e 20 20 20 53 69 6e 63 65 20 5b 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 77 65 20 68 61 76 65 20 74 6f 20 67 6f 20 74 6f 20 65 78 74 72 61 20 74 72 6f 75 62 6c 65 20 74 6f 20 63 6f 6d 70 69 6c 65 0a ~ " ~ it as part of the alternate." 20 20 7e 20 69 74 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 2e 0a ~ " [ ' [ entry-to-execution-token , ]" 20 20 5b 20 27 20 5b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " execute" 20 20 65 78 65 63 75 74 65 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " swap interpreter-flags !" 20 20 73 77 61 70 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 21 0a ~ "" 0a ~ " ~ Nope, doing it twice didn't make that any less of a" ~ " mouthful." 20 20 7e 20 20 20 4e 6f 70 65 2c 20 64 6f 69 6e 67 20 69 74 20 74 77 69 63 65 20 64 69 64 6e 27 74 20 6d 61 6b 65 20 74 68 61 74 20 61 6e 79 20 6c 65 73 73 20 6f 66 20 61 20 6d 6f 75 74 68 66 75 6c 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Having done this, we have the string pointer on the" ~ " stack at transform" 20 20 7e 20 20 20 48 61 76 69 6e 67 20 64 6f 6e 65 20 74 68 69 73 2c 20 77 65 20 68 61 76 65 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 61 74 20 74 72 61 6e 73 66 6f 72 6d 0a ~ " ~ time (not, mind you, at log-load time, as yet). Now it" ~ " is our job to" 20 20 7e 20 74 69 6d 65 20 28 6e 6f 74 2c 20 6d 69 6e 64 20 79 6f 75 2c 20 61 74 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 2c 20 61 73 20 79 65 74 29 2e 20 4e 6f 77 20 69 74 20 69 73 20 6f 75 72 20 6a 6f 62 20 74 6f 0a ~ " ~ either compile it, or invoke it "immediately". Recall" ~ " that the log-load" 20 20 7e 20 65 69 74 68 65 72 20 63 6f 6d 70 69 6c 65 20 69 74 2c 20 6f 72 20 69 6e 76 6f 6b 65 20 69 74 20 22 69 6d 6d 65 64 69 61 74 65 6c 79 22 2e 20 52 65 63 61 6c 6c 20 74 68 61 74 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ " ~ transform's "immediate" time, which we also call" ~ " log-load time, is" 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 22 69 6d 6d 65 64 69 61 74 65 22 20 74 69 6d 65 2c 20 77 68 69 63 68 20 77 65 20 61 6c 73 6f 20 63 61 6c 6c 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 2c 20 69 73 0a ~ " ~ analogous to the label transform's "compile" time. The" ~ " log-load" 20 20 7e 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 22 63 6f 6d 70 69 6c 65 22 20 74 69 6d 65 2e 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ " ~ transform's "compile" time is an additional layer of" ~ " indirection." 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 22 63 6f 6d 70 69 6c 65 22 20 74 69 6d 65 20 69 73 20 61 6e 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 61 79 65 72 20 6f 66 20 69 6e 64 69 72 65 63 74 69 6f 6e 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ No matter which mode we're in, the first thing we" ~ " want to do is get the" 20 20 7e 20 20 20 4e 6f 20 6d 61 74 74 65 72 20 77 68 69 63 68 20 6d 6f 64 65 20 77 65 27 72 65 20 69 6e 2c 20 74 68 65 20 66 69 72 73 74 20 74 68 69 6e 67 20 77 65 20 77 61 6e 74 20 74 6f 20 64 6f 20 69 73 20 67 65 74 20 74 68 65 0a ~ " ~ string onto the value stack at log-load time. So we" ~ " compile code to do" 20 20 7e 20 73 74 72 69 6e 67 20 6f 6e 74 6f 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 20 61 74 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 2e 20 53 6f 20 77 65 20 63 6f 6d 70 69 6c 65 20 63 6f 64 65 20 74 6f 20 64 6f 0a ~ " ~ that, first. We do that using the static "litstring"," ~ " which we find by" 20 20 7e 20 74 68 61 74 2c 20 66 69 72 73 74 2e 20 57 65 20 64 6f 20 74 68 61 74 20 75 73 69 6e 67 20 74 68 65 20 73 74 61 74 69 63 20 22 6c 69 74 73 74 72 69 6e 67 22 2c 20 77 68 69 63 68 20 77 65 20 66 69 6e 64 20 62 79 0a ~ " ~ label." 20 20 7e 20 6c 61 62 65 6c 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ If this is all too twisty, it might be helpful to go" ~ " re-read the" 20 20 7e 20 20 20 49 66 20 74 68 69 73 20 69 73 20 61 6c 6c 20 74 6f 6f 20 74 77 69 73 74 79 2c 20 69 74 20 6d 69 67 68 74 20 62 65 20 68 65 6c 70 66 75 6c 20 74 6f 20 67 6f 20 72 65 2d 72 65 61 64 20 74 68 65 0a ~ " ~ definition of log-load-compile-literal, which does a" ~ " simpler version of" 20 20 7e 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 6c 69 74 65 72 61 6c 2c 20 77 68 69 63 68 20 64 6f 65 73 20 61 20 73 69 6d 70 6c 65 72 20 76 65 72 73 69 6f 6e 20 6f 66 0a ~ " ~ this same task (because integers are easier than" ~ " strings)." 20 20 7e 20 74 68 69 73 20 73 61 6d 65 20 74 61 73 6b 20 28 62 65 63 61 75 73 65 20 69 6e 74 65 67 65 72 73 20 61 72 65 20 65 61 73 69 65 72 20 74 68 61 6e 20 73 74 72 69 6e 67 73 29 2e 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' litstring" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ swap packstring 8 packalign here !" 20 20 68 65 72 65 20 40 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ "" 0a ~ " ~ Now the string pointer is on the stack at log-load" ~ " time, so we apply a" 20 20 7e 20 20 20 4e 6f 77 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 69 73 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 61 74 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 2c 20 73 6f 20 77 65 20 61 70 70 6c 79 20 61 0a ~ " ~ delta for it." 20 20 7e 20 64 65 6c 74 61 20 66 6f 72 20 69 74 2e 0a ~ " 1 transform-apply-stack-delta" 20 20 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " ~ If we're in immediate mode, we're done! Yay! Putting" ~ " the string on the" 20 20 7e 20 20 20 49 66 20 77 65 27 72 65 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2c 20 77 65 27 72 65 20 64 6f 6e 65 21 20 59 61 79 21 20 50 75 74 74 69 6e 67 20 74 68 65 20 73 74 72 69 6e 67 20 6f 6e 20 74 68 65 0a ~ " ~ stack at log-load time is what we wanted. If not..." 20 20 7e 20 73 74 61 63 6b 20 61 74 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 20 69 73 20 77 68 61 74 20 77 65 20 77 61 6e 74 65 64 2e 20 49 66 20 6e 6f 74 2e 2e 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode, so we need to look up the" ~ " ultimate, dynamic," 20 20 20 20 7e 20 20 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 73 6f 20 77 65 20 6e 65 65 64 20 74 6f 20 6c 6f 6f 6b 20 75 70 20 74 68 65 20 75 6c 74 69 6d 61 74 65 2c 20 64 79 6e 61 6d 69 63 2c 0a ~ " ~ log-based, super-atomic space rocket copy of" ~ " "litstring" and use that." 20 20 20 20 7e 20 6c 6f 67 2d 62 61 73 65 64 2c 20 73 75 70 65 72 2d 61 74 6f 6d 69 63 20 73 70 61 63 65 20 72 6f 63 6b 65 74 20 63 6f 70 79 20 6f 66 20 22 6c 69 74 73 74 72 69 6e 67 22 20 61 6e 64 20 75 73 65 20 74 68 61 74 2e 0a ~ " ~ We could call log-load-compile-dynamic-word here," ~ " but, as usual, it" 20 20 20 20 7e 20 57 65 20 63 6f 75 6c 64 20 63 61 6c 6c 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 20 68 65 72 65 2c 20 62 75 74 2c 20 61 73 20 75 73 75 61 6c 2c 20 69 74 0a ~ " ~ would produce some excessive rolling and unrolling," ~ " so we do its job" 20 20 20 20 7e 20 77 6f 75 6c 64 20 70 72 6f 64 75 63 65 20 73 6f 6d 65 20 65 78 63 65 73 73 69 76 65 20 72 6f 6c 6c 69 6e 67 20 61 6e 64 20 75 6e 72 6f 6c 6c 69 6e 67 2c 20 73 6f 20 77 65 20 64 6f 20 69 74 73 20 6a 6f 62 0a ~ " ~ ourselves instead." 20 20 20 20 7e 20 6f 75 72 73 65 6c 76 65 73 20 69 6e 73 74 65 61 64 2e 0a ~ " log-load-roll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ As usual, we do these in reverse." 20 20 20 20 7e 20 41 73 20 75 73 75 61 6c 2c 20 77 65 20 64 6f 20 74 68 65 73 65 20 69 6e 20 72 65 76 65 72 73 65 2e 0a ~ " L@' log-load-comma-string" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2d 73 74 72 69 6e 67 0a ~ " L@' swap" 20 20 20 20 4c 40 27 20 73 77 61 70 0a ~ " L@' log-load-comma" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' log-load-find-execution-token" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " L@' litstring" 20 20 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ The overall stack delta of this sequence is 0." 20 20 20 20 7e 20 54 68 65 20 6f 76 65 72 61 6c 6c 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 73 65 71 75 65 6e 63 65 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ s" litstring" packstring 8 packalign here !" 20 20 20 20 68 65 72 65 20 40 20 73 22 20 6c 69 74 73 74 72 69 6e 67 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space , ~ : -8 swap #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma-string #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2d 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ We consumed the string pointer at log-load time, so" ~ " we apply a delta" 20 20 20 20 7e 20 20 20 57 65 20 63 6f 6e 73 75 6d 65 64 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 61 74 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 2c 20 73 6f 20 77 65 20 61 70 70 6c 79 20 61 20 64 65 6c 74 61 0a ~ " ~ for it." 20 20 20 20 7e 20 66 6f 72 20 69 74 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ Notice by the way how the nearby calls to" ~ " log-load-unroll-log-address" 20 20 20 20 7e 20 20 20 4e 6f 74 69 63 65 20 62 79 20 74 68 65 20 77 61 79 20 68 6f 77 20 74 68 65 20 6e 65 61 72 62 79 20 63 61 6c 6c 73 20 74 6f 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ~ rely on this being split into two deltas like this," ~ " even though they" 20 20 20 20 7e 20 72 65 6c 79 20 6f 6e 20 74 68 69 73 20 62 65 69 6e 67 20 73 70 6c 69 74 20 69 6e 74 6f 20 74 77 6f 20 64 65 6c 74 61 73 20 6c 69 6b 65 20 74 68 69 73 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 74 68 65 79 0a ~ " ~ net out to zero; we aren't doing it just for kicks." 20 20 20 20 7e 20 6e 65 74 20 6f 75 74 20 74 6f 20 7a 65 72 6f 3b 20 77 65 20 61 72 65 6e 27 74 20 64 6f 69 6e 67 20 69 74 20 6a 75 73 74 20 66 6f 72 20 6b 69 63 6b 73 2e 0a ~ " -1 transform-apply-stack-delta" 20 20 20 20 2d 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ ": log-load-dot-string-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 64 6f 74 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ' log-load-string-alternate entry-to-execution-token" ~ " execute" 20 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ "" 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ Hey look, it's the one time we're doing something" ~ " simple enough that" 20 20 20 20 7e 20 20 20 48 65 79 20 6c 6f 6f 6b 2c 20 69 74 27 73 20 74 68 65 20 6f 6e 65 20 74 69 6d 65 20 77 65 27 72 65 20 64 6f 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 73 69 6d 70 6c 65 20 65 6e 6f 75 67 68 20 74 68 61 74 0a ~ " ~ we can actually benefit from" ~ " log-load-compile-dynamic-word as something" 20 20 20 20 7e 20 77 65 20 63 61 6e 20 61 63 74 75 61 6c 6c 79 20 62 65 6e 65 66 69 74 20 66 72 6f 6d 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 20 61 73 20 73 6f 6d 65 74 68 69 6e 67 0a ~ " ~ more than an example to start from. :)" 20 20 20 20 7e 20 6d 6f 72 65 20 74 68 61 6e 20 61 6e 20 65 78 61 6d 70 6c 65 20 74 6f 20 73 74 61 72 74 20 66 72 6f 6d 2e 20 3a 29 0a ~ " s" emitstring" log-load-compile-dynamic-word" 20 20 20 20 73 22 20 65 6d 69 74 73 74 72 69 6e 67 22 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " } {" 20 20 7d 20 7b 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' emitstring" 20 20 20 20 4c 40 27 20 65 6d 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 emitstring #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 65 6d 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ No matter what mode we're in, we read a name at" ~ " transform time. Then we" 7e 20 20 20 4e 6f 20 6d 61 74 74 65 72 20 77 68 61 74 20 6d 6f 64 65 20 77 65 27 72 65 20 69 6e 2c 20 77 65 20 72 65 61 64 20 61 20 6e 61 6d 65 20 61 74 20 74 72 61 6e 73 66 6f 72 6d 20 74 69 6d 65 2e 20 54 68 65 6e 20 77 65 0a ~ "~ look up the name at either log-load time or runtime," ~ " depending." 7e 20 6c 6f 6f 6b 20 75 70 20 74 68 65 20 6e 61 6d 65 20 61 74 20 65 69 74 68 65 72 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 20 6f 72 20 72 75 6e 74 69 6d 65 2c 20 64 65 70 65 6e 64 69 6e 67 2e 0a ~ ": log-load-tick-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 74 69 63 6b 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ Read the name." 20 20 7e 20 52 65 61 64 20 74 68 65 20 6e 61 6d 65 2e 0a ~ " word value@" 20 20 77 6f 72 64 20 76 61 6c 75 65 40 0a ~ "" 0a ~ " ~ Get the name onto the stack at log-load time." 20 20 7e 20 47 65 74 20 74 68 65 20 6e 61 6d 65 20 6f 6e 74 6f 20 74 68 65 20 73 74 61 63 6b 20 61 74 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 2e 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' litstring" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space , ~ : -8 litstring #--" ~ " (codeword pointer)" 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ swap packstring 8 packalign here !" 20 20 68 65 72 65 20 40 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ "" 0a ~ " ~ Apply a delta for the string pointer." 20 20 7e 20 41 70 70 6c 79 20 61 20 64 65 6c 74 61 20 66 6f 72 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2e 0a ~ " 1 transform-apply-stack-delta" 20 20 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " dropstring" 20 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ "" 0a ~ " ~ Now break out the remaining behavior based on mode." 20 20 7e 20 4e 6f 77 20 62 72 65 61 6b 20 6f 75 74 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 62 65 68 61 76 69 6f 72 20 62 61 73 65 64 20 6f 6e 20 6d 6f 64 65 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " log-load-roll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-comma" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' log-load-find-execution-token" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " L@' litstring" 20 20 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " L@' log-load-comma-string" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2d 73 74 72 69 6e 67 0a ~ " L@' swap" 20 20 20 20 4c 40 27 20 73 77 61 70 0a ~ " L@' log-load-comma" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 0a ~ " L@' log-load-find-execution-token" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " L@' litstring" 20 20 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ The overall stack delta of this sequence is 0." 20 20 20 20 7e 20 54 68 65 20 6f 76 65 72 61 6c 6c 20 73 74 61 63 6b 20 64 65 6c 74 61 20 6f 66 20 74 68 69 73 20 73 65 71 75 65 6e 63 65 20 69 73 20 30 2e 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ s" litstring" packstring 8 packalign here !" 20 20 20 20 68 65 72 65 20 40 20 73 22 20 6c 69 74 73 74 72 69 6e 67 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space , ~ : -8 swap #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma-string #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2d 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " here @ s" find" packstring 8 packalign here !" 20 20 20 20 68 65 72 65 20 40 20 73 22 20 66 69 6e 64 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-comma #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ We consumed the string pointer at log-load time, so" ~ " we apply a delta" 20 20 20 20 7e 20 20 20 57 65 20 63 6f 6e 73 75 6d 65 64 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 61 74 20 6c 6f 67 2d 6c 6f 61 64 20 74 69 6d 65 2c 20 73 6f 20 77 65 20 61 70 70 6c 79 20 61 20 64 65 6c 74 61 0a ~ " ~ for it. As in log-load-string-alternate, this needs" ~ " to be split into" 20 20 20 20 7e 20 66 6f 72 20 69 74 2e 20 41 73 20 69 6e 20 6c 6f 67 2d 6c 6f 61 64 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 2c 20 74 68 69 73 20 6e 65 65 64 73 20 74 6f 20 62 65 20 73 70 6c 69 74 20 69 6e 74 6f 0a ~ " ~ two parts like this." 20 20 20 20 7e 20 74 77 6f 20 70 61 72 74 73 20 6c 69 6b 65 20 74 68 69 73 2e 0a ~ " -1 transform-apply-stack-delta" 20 20 20 20 2d 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " } {" 20 20 7d 20 7b 0a ~ " log-load-roll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-find" 20 20 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-find #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ We leave an execution token on the log-load-time" ~ " stack, so no delta" 20 20 20 20 7e 20 20 20 57 65 20 6c 65 61 76 65 20 61 6e 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 6f 6e 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 2d 74 69 6d 65 20 73 74 61 63 6b 2c 20 73 6f 20 6e 6f 20 64 65 6c 74 61 0a ~ " ~ needed." 20 20 20 20 7e 20 6e 65 65 64 65 64 2e 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ Because docol requires it, we provide a special" ~ " mini-version of the label" 7e 20 20 20 42 65 63 61 75 73 65 20 64 6f 63 6f 6c 20 72 65 71 75 69 72 65 73 20 69 74 2c 20 77 65 20 70 72 6f 76 69 64 65 20 61 20 73 70 65 63 69 61 6c 20 6d 69 6e 69 2d 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 0a ~ "~ system. We only do L@' and L!', because that's all we" ~ " need. Unlike the" 7e 20 73 79 73 74 65 6d 2e 20 57 65 20 6f 6e 6c 79 20 64 6f 20 4c 40 27 20 61 6e 64 20 4c 21 27 2c 20 62 65 63 61 75 73 65 20 74 68 61 74 27 73 20 61 6c 6c 20 77 65 20 6e 65 65 64 2e 20 55 6e 6c 69 6b 65 20 74 68 65 0a ~ "~ version of this feature for the label transform, for the" ~ " log-load transform," 7e 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 69 73 20 66 65 61 74 75 72 65 20 66 6f 72 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 66 6f 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2c 0a ~ "~ we heavily restrict the use-case." 7e 20 77 65 20 68 65 61 76 69 6c 79 20 72 65 73 74 72 69 63 74 20 74 68 65 20 75 73 65 2d 63 61 73 65 2e 0a ~ "~" 7e 0a ~ "~ The implementation strategy is that we ignore the label" ~ " name, and store" 7e 20 20 20 54 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 73 74 72 61 74 65 67 79 20 69 73 20 74 68 61 74 20 77 65 20 69 67 6e 6f 72 65 20 74 68 65 20 6c 61 62 65 6c 20 6e 61 6d 65 2c 20 61 6e 64 20 73 74 6f 72 65 0a ~ "~ the value on the stack when the generated log-load" ~ " routine runs. So, each" 7e 20 74 68 65 20 76 61 6c 75 65 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 77 68 65 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 72 75 6e 73 2e 20 53 6f 2c 20 65 61 63 68 0a ~ "~ instance of L@' must be closely followed by a matching" ~ " instance of L!'. Each" 7e 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 4c 40 27 20 6d 75 73 74 20 62 65 20 63 6c 6f 73 65 6c 79 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 6d 61 74 63 68 69 6e 67 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 4c 21 27 2e 20 45 61 63 68 0a ~ "~ label can only ever be used exactly once, and it must be" ~ " a backward" 7e 20 6c 61 62 65 6c 20 63 61 6e 20 6f 6e 6c 79 20 65 76 65 72 20 62 65 20 75 73 65 64 20 65 78 61 63 74 6c 79 20 6f 6e 63 65 2c 20 61 6e 64 20 69 74 20 6d 75 73 74 20 62 65 20 61 20 62 61 63 6b 77 61 72 64 0a ~ "~ reference. Furthermore, the stack is used in a very" ~ " specific way, which the" 7e 20 72 65 66 65 72 65 6e 63 65 2e 20 46 75 72 74 68 65 72 6d 6f 72 65 2c 20 74 68 65 20 73 74 61 63 6b 20 69 73 20 75 73 65 64 20 69 6e 20 61 20 76 65 72 79 20 73 70 65 63 69 66 69 63 20 77 61 79 2c 20 77 68 69 63 68 20 74 68 65 0a ~ "~ transformed code must be compatible with. The easiest way" ~ " to explain it is" 7e 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 6d 75 73 74 20 62 65 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 2e 20 54 68 65 20 65 61 73 69 65 73 74 20 77 61 79 20 74 6f 20 65 78 70 6c 61 69 6e 20 69 74 20 69 73 0a ~ "~ by showing the interface of these words from the" ~ " transformed code's" 7e 20 62 79 20 73 68 6f 77 69 6e 67 20 74 68 65 20 69 6e 74 65 72 66 61 63 65 20 6f 66 20 74 68 65 73 65 20 77 6f 72 64 73 20 66 72 6f 6d 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 27 73 0a ~ "~ perspective:" 7e 20 70 65 72 73 70 65 63 74 69 76 65 3a 0a ~ "~" 7e 0a ~ "~ L!' is (preserved values, ..., ..., value of label" 7e 20 20 20 4c 21 27 20 69 73 20 28 70 72 65 73 65 72 76 65 64 20 76 61 6c 75 65 73 2c 20 2e 2e 2e 2c 20 2e 2e 2e 2c 20 76 61 6c 75 65 20 6f 66 20 6c 61 62 65 6c 0a ~ "~ -- value of label, preserved values, ..., ...)" 7e 20 20 20 20 20 20 20 20 20 20 20 2d 2d 20 76 61 6c 75 65 20 6f 66 20 6c 61 62 65 6c 2c 20 70 72 65 73 65 72 76 65 64 20 76 61 6c 75 65 73 2c 20 2e 2e 2e 2c 20 2e 2e 2e 29 0a ~ "~ L@' is (value of label, preserved values, ..., ...)" 7e 20 20 20 4c 40 27 20 69 73 20 28 76 61 6c 75 65 20 6f 66 20 6c 61 62 65 6c 2c 20 70 72 65 73 65 72 76 65 64 20 76 61 6c 75 65 73 2c 20 2e 2e 2e 2c 20 2e 2e 2e 29 0a ~ "~ -- preserved values, ..., ..., value of label)" 7e 20 20 20 20 20 20 20 20 20 20 20 2d 2d 20 70 72 65 73 65 72 76 65 64 20 76 61 6c 75 65 73 2c 20 2e 2e 2e 2c 20 2e 2e 2e 2c 20 76 61 6c 75 65 20 6f 66 20 6c 61 62 65 6c 29 0a ~ "~" 7e 0a ~ "~ The preserved values are simply more items on the" ~ " stack, which the" 7e 20 20 20 54 68 65 20 70 72 65 73 65 72 76 65 64 20 76 61 6c 75 65 73 20 61 72 65 20 73 69 6d 70 6c 79 20 6d 6f 72 65 20 69 74 65 6d 73 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 2c 20 77 68 69 63 68 20 74 68 65 0a ~ "~ alternates take pains not to interfere with. The" ~ " alternates output a roll or" 7e 20 61 6c 74 65 72 6e 61 74 65 73 20 74 61 6b 65 20 70 61 69 6e 73 20 6e 6f 74 20 74 6f 20 69 6e 74 65 72 66 65 72 65 20 77 69 74 68 2e 20 54 68 65 20 61 6c 74 65 72 6e 61 74 65 73 20 6f 75 74 70 75 74 20 61 20 72 6f 6c 6c 20 6f 72 0a ~ "~ unroll of an appropriate size. Hopefully, in reading" ~ " this, you have the" 7e 20 75 6e 72 6f 6c 6c 20 6f 66 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 73 69 7a 65 2e 20 48 6f 70 65 66 75 6c 6c 79 2c 20 69 6e 20 72 65 61 64 69 6e 67 20 74 68 69 73 2c 20 79 6f 75 20 68 61 76 65 20 74 68 65 0a ~ "~ question: How can the alternates possibly know what size" ~ " is appropriate?" 7e 20 71 75 65 73 74 69 6f 6e 3a 20 48 6f 77 20 63 61 6e 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 73 20 70 6f 73 73 69 62 6c 79 20 6b 6e 6f 77 20 77 68 61 74 20 73 69 7a 65 20 69 73 20 61 70 70 72 6f 70 72 69 61 74 65 3f 0a ~ "~ The answer is that the log-load transform carefully" ~ " tracks how many items" 7e 20 54 68 65 20 61 6e 73 77 65 72 20 69 73 20 74 68 61 74 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 63 61 72 65 66 75 6c 6c 79 20 74 72 61 63 6b 73 20 68 6f 77 20 6d 61 6e 79 20 69 74 65 6d 73 0a ~ "~ the transformed code is expected to have on the stack," ~ " based on its" 7e 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 69 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 68 61 76 65 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 2c 20 62 61 73 65 64 20 6f 6e 20 69 74 73 0a ~ "~ hardcoded understanding of each word that's expected to" ~ " be relevant, looked" 7e 20 68 61 72 64 63 6f 64 65 64 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 20 6f 66 20 65 61 63 68 20 77 6f 72 64 20 74 68 61 74 27 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 72 65 6c 65 76 61 6e 74 2c 20 6c 6f 6f 6b 65 64 0a ~ "~ up by the word's name. The number of items is stored in" ~ " the user-stack-depth" 7e 20 75 70 20 62 79 20 74 68 65 20 77 6f 72 64 27 73 20 6e 61 6d 65 2e 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 69 74 65 6d 73 20 69 73 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 0a ~ "~ field of transformation-state." 7e 20 66 69 65 6c 64 20 6f 66 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2e 0a ~ "~" 7e 0a ~ "~ There is no adjustment done on the saved value, since" ~ " it's created in the" 7e 20 20 20 54 68 65 72 65 20 69 73 20 6e 6f 20 61 64 6a 75 73 74 6d 65 6e 74 20 64 6f 6e 65 20 6f 6e 20 74 68 65 20 73 61 76 65 64 20 76 61 6c 75 65 2c 20 73 69 6e 63 65 20 69 74 27 73 20 63 72 65 61 74 65 64 20 69 6e 20 74 68 65 0a ~ "~ target address space and then also used in the target" ~ " address space. It" 7e 20 74 61 72 67 65 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 20 61 6e 64 20 74 68 65 6e 20 61 6c 73 6f 20 75 73 65 64 20 69 6e 20 74 68 65 20 74 61 72 67 65 74 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2e 20 49 74 0a ~ "~ wouldn't actually be necessary to use this at all, since" ~ " checking "here"" 7e 20 77 6f 75 6c 64 6e 27 74 20 61 63 74 75 61 6c 6c 79 20 62 65 20 6e 65 63 65 73 73 61 72 79 20 74 6f 20 75 73 65 20 74 68 69 73 20 61 74 20 61 6c 6c 2c 20 73 69 6e 63 65 20 63 68 65 63 6b 69 6e 67 20 22 68 65 72 65 22 0a ~ "~ would be sufficient, but then the code would have to do" ~ " something different" 7e 20 77 6f 75 6c 64 20 62 65 20 73 75 66 66 69 63 69 65 6e 74 2c 20 62 75 74 20 74 68 65 6e 20 74 68 65 20 63 6f 64 65 20 77 6f 75 6c 64 20 68 61 76 65 20 74 6f 20 64 6f 20 73 6f 6d 65 74 68 69 6e 67 20 64 69 66 66 65 72 65 6e 74 0a ~ "~ depending on which transform it's running under, and" ~ " there'd have to be a" 7e 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 69 63 68 20 74 72 61 6e 73 66 6f 72 6d 20 69 74 27 73 20 72 75 6e 6e 69 6e 67 20 75 6e 64 65 72 2c 20 61 6e 64 20 74 68 65 72 65 27 64 20 68 61 76 65 20 74 6f 20 62 65 20 61 0a ~ "~ mechanism for that." 7e 20 6d 65 63 68 61 6e 69 73 6d 20 66 6f 72 20 74 68 61 74 2e 0a ~ "~" 7e 0a ~ "~ This is sufficient to implement docol, and that's" ~ " probably the only thing" 7e 20 20 20 54 68 69 73 20 69 73 20 73 75 66 66 69 63 69 65 6e 74 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 64 6f 63 6f 6c 2c 20 61 6e 64 20 74 68 61 74 27 73 20 70 72 6f 62 61 62 6c 79 20 74 68 65 20 6f 6e 6c 79 20 74 68 69 6e 67 0a ~ "~ it should be used for." 7e 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 66 6f 72 2e 0a ~ ": log-load-L@'-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 4c 40 27 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " word dropstring" 20 20 77 6f 72 64 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " log-load-roll-saved-label" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 73 61 76 65 64 2d 6c 61 62 65 6c 0a ~ " ~ We now begin thinking of the label value as user" ~ " data, so we need to" 20 20 7e 20 20 20 57 65 20 6e 6f 77 20 62 65 67 69 6e 20 74 68 69 6e 6b 69 6e 67 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 20 76 61 6c 75 65 20 61 73 20 75 73 65 72 20 64 61 74 61 2c 20 73 6f 20 77 65 20 6e 65 65 64 20 74 6f 0a ~ " ~ notate that appropriately." 20 20 7e 20 6e 6f 74 61 74 65 20 74 68 61 74 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a ~ " 1 transform-apply-stack-delta" 20 20 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ ": log-load-L!'-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 4c 21 27 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " word dropstring" 20 20 77 6f 72 64 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " ~ We cease to think of the label value as user data, so" ~ " we need to notate" 20 20 7e 20 20 20 57 65 20 63 65 61 73 65 20 74 6f 20 74 68 69 6e 6b 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 20 76 61 6c 75 65 20 61 73 20 75 73 65 72 20 64 61 74 61 2c 20 73 6f 20 77 65 20 6e 65 65 64 20 74 6f 20 6e 6f 74 61 74 65 0a ~ " ~ that appropriately." 20 20 7e 20 74 68 61 74 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a ~ " -1 transform-apply-stack-delta" 20 20 2d 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ " log-load-unroll-saved-label" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 73 61 76 65 64 2d 6c 61 62 65 6c 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ Not to be outdone by the label transform, the log-load" ~ " transform also" 7e 20 20 20 4e 6f 74 20 74 6f 20 62 65 20 6f 75 74 64 6f 6e 65 20 62 79 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 61 6c 73 6f 0a ~ "~ offers alternates of all the high-level flow-control" ~ " words: if, unless," 7e 20 6f 66 66 65 72 73 20 61 6c 74 65 72 6e 61 74 65 73 20 6f 66 20 61 6c 6c 20 74 68 65 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 3a 20 69 66 2c 20 75 6e 6c 65 73 73 2c 0a ~ "~ if-else, forever, and while. Unlike the label transform," ~ " we also need to" 7e 20 69 66 2d 65 6c 73 65 2c 20 66 6f 72 65 76 65 72 2c 20 61 6e 64 20 77 68 69 6c 65 2e 20 55 6e 6c 69 6b 65 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 77 65 20 61 6c 73 6f 20 6e 65 65 64 20 74 6f 0a ~ "~ implement alternates of { and }, because their values" ~ " need to be on the" 7e 20 69 6d 70 6c 65 6d 65 6e 74 20 61 6c 74 65 72 6e 61 74 65 73 20 6f 66 20 7b 20 61 6e 64 20 7d 2c 20 62 65 63 61 75 73 65 20 74 68 65 69 72 20 76 61 6c 75 65 73 20 6e 65 65 64 20 74 6f 20 62 65 20 6f 6e 20 74 68 65 0a ~ "~ stack at log-load "immediate" time, not at transform" ~ " time." 7e 20 73 74 61 63 6b 20 61 74 20 6c 6f 67 2d 6c 6f 61 64 20 22 69 6d 6d 65 64 69 61 74 65 22 20 74 69 6d 65 2c 20 6e 6f 74 20 61 74 20 74 72 61 6e 73 66 6f 72 6d 20 74 69 6d 65 2e 0a ~ "~" 7e 0a ~ "~ Anyway, most of the implementation is deferred to" ~ " pre-packaged words in" 7e 20 20 20 41 6e 79 77 61 79 2c 20 6d 6f 73 74 20 6f 66 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 69 73 20 64 65 66 65 72 72 65 64 20 74 6f 20 70 72 65 2d 70 61 63 6b 61 67 65 64 20 77 6f 72 64 73 20 69 6e 0a ~ "~ language/static/log-load.e." 7e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 6c 6f 67 2d 6c 6f 61 64 2e 65 2e 0a ~ ": log-load-left-curly-brace-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 65 66 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-left-curly-brace" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 65 66 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-left-curly-brace #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 65 66 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ It pushes a start pointer onto the stack." 20 20 7e 20 49 74 20 70 75 73 68 65 73 20 61 20 73 74 61 72 74 20 70 6f 69 6e 74 65 72 20 6f 6e 74 6f 20 74 68 65 20 73 74 61 63 6b 2e 0a ~ " 1 transform-apply-stack-delta" 20 20 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ~ : {" 20 20 7e 20 3a 20 7b 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ ": log-load-right-curly-brace-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 72 69 67 68 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ " ~ : }" 20 20 7e 20 3a 20 7d 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-right-curly-brace" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 72 69 67 68 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-right-curly-brace #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 72 69 67 68 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ It pushes a length value onto the stack." 20 20 7e 20 49 74 20 70 75 73 68 65 73 20 61 20 6c 65 6e 67 74 68 20 76 61 6c 75 65 20 6f 6e 74 6f 20 74 68 65 20 73 74 61 63 6b 2e 0a ~ " 1 transform-apply-stack-delta" 20 20 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ (start pointer, length --)" 7e 20 28 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 20 2d 2d 29 0a ~ ": log-load-if-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 69 66 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ : if" 20 20 7e 20 3a 20 69 66 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-if" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 69 66 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-if #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 69 66 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ It pops the start and length." 20 20 7e 20 49 74 20 70 6f 70 73 20 74 68 65 20 73 74 61 72 74 20 61 6e 64 20 6c 65 6e 67 74 68 2e 0a ~ " -2 transform-apply-stack-delta" 20 20 2d 32 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ (start pointer, length)" 7e 20 28 73 74 61 72 74 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 29 0a ~ ": log-load-unless-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 6c 65 73 73 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ : unless" 20 20 7e 20 3a 20 75 6e 6c 65 73 73 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-unless" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 6c 65 73 73 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-unless #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 6c 65 73 73 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ It pops the start and length." 20 20 7e 20 49 74 20 70 6f 70 73 20 74 68 65 20 73 74 61 72 74 20 61 6e 64 20 6c 65 6e 67 74 68 2e 0a ~ " -2 transform-apply-stack-delta" 20 20 2d 32 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ (true start, true length, false start, false length)" 7e 20 28 74 72 75 65 20 73 74 61 72 74 2c 20 74 72 75 65 20 6c 65 6e 67 74 68 2c 20 66 61 6c 73 65 20 73 74 61 72 74 2c 20 66 61 6c 73 65 20 6c 65 6e 67 74 68 29 0a ~ ": log-load-if-else-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 69 66 2d 65 6c 73 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ : if-else" 20 20 7e 20 3a 20 69 66 2d 65 6c 73 65 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-if-else" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 69 66 2d 65 6c 73 65 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-if-else #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 69 66 2d 65 6c 73 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ It pops two pairs of start and length." 20 20 7e 20 49 74 20 70 6f 70 73 20 74 77 6f 20 70 61 69 72 73 20 6f 66 20 73 74 61 72 74 20 61 6e 64 20 6c 65 6e 67 74 68 2e 0a ~ " -4 transform-apply-stack-delta" 20 20 2d 34 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ (start, length --)" 7e 20 28 73 74 61 72 74 2c 20 6c 65 6e 67 74 68 20 2d 2d 29 0a ~ ": log-load-forever-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 66 6f 72 65 76 65 72 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ : forever" 20 20 7e 20 3a 20 66 6f 72 65 76 65 72 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-forever" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 6f 72 65 76 65 72 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-forever #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 6f 72 65 76 65 72 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ It pops the start and length." 20 20 7e 20 49 74 20 70 6f 70 73 20 74 68 65 20 73 74 61 72 74 20 61 6e 64 20 6c 65 6e 67 74 68 2e 0a ~ " -2 transform-apply-stack-delta" 20 20 2d 32 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ (test start, test length, body start, body length --)" 7e 20 28 74 65 73 74 20 73 74 61 72 74 2c 20 74 65 73 74 20 6c 65 6e 67 74 68 2c 20 62 6f 64 79 20 73 74 61 72 74 2c 20 62 6f 64 79 20 6c 65 6e 67 74 68 20 2d 2d 29 0a ~ ": log-load-while-alternate" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 77 68 69 6c 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ : while" 20 20 7e 20 3a 20 77 68 69 6c 65 0a ~ " log-load-roll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ "" 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " L@' log-load-while" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 77 68 69 6c 65 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " offset-to-target-address-space ," 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 log-load-while #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 77 68 69 6c 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ It pops two pairs of start and length." 20 20 7e 20 49 74 20 70 6f 70 73 20 74 77 6f 20 70 61 69 72 73 20 6f 66 20 73 74 61 72 74 20 61 6e 64 20 6c 65 6e 67 74 68 2e 0a ~ " -4 transform-apply-stack-delta" 20 20 2d 34 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ "" 0a ~ " log-load-unroll-log-address" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 72 6f 6c 6c 2d 6c 6f 67 2d 61 64 64 72 65 73 73 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This implements the log-load transform for a single" ~ " word. It is directly" 7e 20 20 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 66 6f 72 20 61 20 73 69 6e 67 6c 65 20 77 6f 72 64 2e 20 49 74 20 69 73 20 64 69 72 65 63 74 6c 79 0a ~ "~ analogous to "interpret", and reading" ~ " language/dynamic/interpret.e may help" 7e 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 22 69 6e 74 65 72 70 72 65 74 22 2c 20 61 6e 64 20 72 65 61 64 69 6e 67 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 69 6e 74 65 72 70 72 65 74 2e 65 20 6d 61 79 20 68 65 6c 70 0a ~ "~ in understanding it, though it's meant to still make" ~ " sense on its own." 7e 20 69 6e 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 20 69 74 2c 20 74 68 6f 75 67 68 20 69 74 27 73 20 6d 65 61 6e 74 20 74 6f 20 73 74 69 6c 6c 20 6d 61 6b 65 20 73 65 6e 73 65 20 6f 6e 20 69 74 73 20 6f 77 6e 2e 0a ~ "~" 7e 0a ~ "~ It expects to be called from "log-load-transform", below," ~ " which loops." 7e 20 49 74 20 65 78 70 65 63 74 73 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 22 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 22 2c 20 62 65 6c 6f 77 2c 20 77 68 69 63 68 20 6c 6f 6f 70 73 2e 0a ~ "~" 7e 0a ~ "~ (-- done)" 7e 20 28 2d 2d 20 64 6f 6e 65 29 0a ~ ": log-load-transform-one" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 0a ~ " word" 20 20 77 6f 72 64 0a ~ "" 0a ~ " ~ If no word was returned, end the transformation." 20 20 7e 20 49 66 20 6e 6f 20 77 6f 72 64 20 77 61 73 20 72 65 74 75 72 6e 65 64 2c 20 65 6e 64 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ " dup 0 = { drop 1 exit } if" 20 20 64 75 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ The string is on the top of the stack, so to get a" ~ " pointer to it we get" 20 20 7e 20 54 68 65 20 73 74 72 69 6e 67 20 69 73 20 6f 6e 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 73 74 61 63 6b 2c 20 73 6f 20 74 6f 20 67 65 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 69 74 20 77 65 20 67 65 74 0a ~ " ~ the stack address." 20 20 7e 20 74 68 65 20 73 74 61 63 6b 20 61 64 64 72 65 73 73 2e 0a ~ " ~ (string)" 20 20 7e 20 28 73 74 72 69 6e 67 29 0a ~ " value@" 20 20 76 61 6c 75 65 40 0a ~ "" 0a ~ " ~ Check whether it's one of the words we have" ~ " alternates for, and look up" 20 20 7e 20 20 20 43 68 65 63 6b 20 77 68 65 74 68 65 72 20 69 74 27 73 20 6f 6e 65 20 6f 66 20 74 68 65 20 77 6f 72 64 73 20 77 65 20 68 61 76 65 20 61 6c 74 65 72 6e 61 74 65 73 20 66 6f 72 2c 20 61 6e 64 20 6c 6f 6f 6b 20 75 70 0a ~ " ~ the alternate if so." 20 20 7e 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 69 66 20 73 6f 2e 0a ~ " 0 swap" 20 20 30 20 73 77 61 70 0a ~ " ~ (name as stack string, placeholder, name pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 70 6c 61 63 65 68 6f 6c 64 65 72 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ " dup s" create" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 63 72 65 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-create-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" :" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 3a 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-colon-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" self-codeword" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-self-codeword-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ;" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 3b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-semicolon-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ;asm" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 3b 61 73 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-semicolon-assembly-alternate swap" ~ " } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" [" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 5b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-left-square-brace-alternate swap }" ~ " if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 65 66 74 2d 73 71 75 61 72 65 2d 62 72 61 63 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ]" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 5d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-right-square-brace-alternate swap" ~ " } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 72 69 67 68 74 2d 73 71 75 61 72 65 2d 62 72 61 63 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ," stringcmp 0 = { swap drop '" ~ " log-load-comma-alternate swap } if" 20 20 64 75 70 20 73 22 20 2c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 6d 61 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" variable" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 76 61 72 69 61 62 6c 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-variable-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" keyword" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 6b 65 79 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-keyword-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 6b 65 79 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ~" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 7e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-tilde-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " ~ It is nontrivial to construct a string with a" ~ " double-quote in it." 20 20 7e 20 49 74 20 69 73 20 6e 6f 6e 74 72 69 76 69 61 6c 20 74 6f 20 63 6f 6e 73 74 72 75 63 74 20 61 20 73 74 72 69 6e 67 20 77 69 74 68 20 61 20 64 6f 75 62 6c 65 2d 71 75 6f 74 65 20 69 6e 20 69 74 2e 0a ~ " dup ' s" entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-string-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup ' ." entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 2e 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-dot-string-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 64 6f 74 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup ' ' entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 27 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-tick-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 74 69 63 6b 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" L@'" stringcmp 0 = { swap drop '" ~ " log-load-L@'-alternate swap } if" 20 20 64 75 70 20 73 22 20 4c 40 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 4c 40 27 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" L!'" stringcmp 0 = { swap drop '" ~ " log-load-L!'-alternate swap } if" 20 20 64 75 70 20 73 22 20 4c 21 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 4c 21 27 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" {" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 7b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-left-curly-brace-alternate swap }" ~ " if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 65 66 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" }" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 7d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-right-curly-brace-alternate swap }" ~ " if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 72 69 67 68 74 2d 63 75 72 6c 79 2d 62 72 61 63 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" if" stringcmp 0 = { swap drop '" ~ " log-load-if-alternate swap } if" 20 20 64 75 70 20 73 22 20 69 66 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 69 66 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" unless" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 75 6e 6c 65 73 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-unless-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 75 6e 6c 65 73 73 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" if-else" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 69 66 2d 65 6c 73 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-if-else-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 69 66 2d 65 6c 73 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" forever" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 66 6f 72 65 76 65 72 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' log-load-forever-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 6f 72 65 76 65 72 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" while" stringcmp 0 = { swap drop '" ~ " log-load-while-alternate swap } if" 20 20 64 75 70 20 73 22 20 77 68 69 6c 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 6c 6f 67 2d 6c 6f 61 64 2d 77 68 69 6c 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " ~ (name as stack string, 0 or alternate entry pointer," ~ " name pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 30 20 6f 72 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ If we have an alternate, we want to run that now," ~ " regardless of what" 20 20 7e 20 20 20 49 66 20 77 65 20 68 61 76 65 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 2c 20 77 65 20 77 61 6e 74 20 74 6f 20 72 75 6e 20 74 68 61 74 20 6e 6f 77 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 61 74 0a ~ " ~ mode we're in. They're all flagged as immediate, but we" ~ " don't even bother" 20 20 7e 20 6d 6f 64 65 20 77 65 27 72 65 20 69 6e 2e 20 54 68 65 79 27 72 65 20 61 6c 6c 20 66 6c 61 67 67 65 64 20 61 73 20 69 6d 6d 65 64 69 61 74 65 2c 20 62 75 74 20 77 65 20 64 6f 6e 27 74 20 65 76 65 6e 20 62 6f 74 68 65 72 0a ~ " ~ checking, because it doesn't fully describe their" ~ " behavior anyway. With" 20 20 7e 20 63 68 65 63 6b 69 6e 67 2c 20 62 65 63 61 75 73 65 20 69 74 20 64 6f 65 73 6e 27 74 20 66 75 6c 6c 79 20 64 65 73 63 72 69 62 65 20 74 68 65 69 72 20 62 65 68 61 76 69 6f 72 20 61 6e 79 77 61 79 2e 20 57 69 74 68 0a ~ " ~ this transform there's three potential times at which" ~ " we might execute" 20 20 7e 20 74 68 69 73 20 74 72 61 6e 73 66 6f 72 6d 20 74 68 65 72 65 27 73 20 74 68 72 65 65 20 70 6f 74 65 6e 74 69 61 6c 20 74 69 6d 65 73 20 61 74 20 77 68 69 63 68 20 77 65 20 6d 69 67 68 74 20 65 78 65 63 75 74 65 0a ~ " ~ things, not two. The alternates are more immediate than" ~ " immediate; they" 20 20 7e 20 74 68 69 6e 67 73 2c 20 6e 6f 74 20 74 77 6f 2e 20 54 68 65 20 61 6c 74 65 72 6e 61 74 65 73 20 61 72 65 20 6d 6f 72 65 20 69 6d 6d 65 64 69 61 74 65 20 74 68 61 6e 20 69 6d 6d 65 64 69 61 74 65 3b 20 74 68 65 79 0a ~ " ~ run NOW, during the transformation." 20 20 7e 20 72 75 6e 20 4e 4f 57 2c 20 64 75 72 69 6e 67 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ " over {" 20 20 6f 76 65 72 20 7b 0a ~ " drop dropstring-with-result" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token execute" 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " drop drop" 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " ~ (name as stack string)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " ~ Now we might have a compiled word, an immediate word," ~ " or an integer" 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 6d 69 67 68 74 20 68 61 76 65 20 61 20 63 6f 6d 70 69 6c 65 64 20 77 6f 72 64 2c 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 6f 72 20 61 6e 20 69 6e 74 65 67 65 72 0a ~ " ~ literal. Recall that the word won't actually be looked" ~ " up until the" 20 20 7e 20 6c 69 74 65 72 61 6c 2e 20 52 65 63 61 6c 6c 20 74 68 61 74 20 74 68 65 20 77 6f 72 64 20 77 6f 6e 27 74 20 61 63 74 75 61 6c 6c 79 20 62 65 20 6c 6f 6f 6b 65 64 20 75 70 20 75 6e 74 69 6c 20 74 68 65 0a ~ " ~ routine we're producing is run - that's the whole point" ~ " - so there's no" 20 20 7e 20 72 6f 75 74 69 6e 65 20 77 65 27 72 65 20 70 72 6f 64 75 63 69 6e 67 20 69 73 20 72 75 6e 20 2d 20 74 68 61 74 27 73 20 74 68 65 20 77 68 6f 6c 65 20 70 6f 69 6e 74 20 2d 20 73 6f 20 74 68 65 72 65 27 73 20 6e 6f 0a ~ " ~ check we can perform now that will tell us whether the" ~ " word we have exists" 20 20 7e 20 63 68 65 63 6b 20 77 65 20 63 61 6e 20 70 65 72 66 6f 72 6d 20 6e 6f 77 20 74 68 61 74 20 77 69 6c 6c 20 74 65 6c 6c 20 75 73 20 77 68 65 74 68 65 72 20 74 68 65 20 77 6f 72 64 20 77 65 20 68 61 76 65 20 65 78 69 73 74 73 0a ~ " ~ in the eventual log. Instead, we invert the usual" ~ " fallback order and" 20 20 7e 20 69 6e 20 74 68 65 20 65 76 65 6e 74 75 61 6c 20 6c 6f 67 2e 20 49 6e 73 74 65 61 64 2c 20 77 65 20 69 6e 76 65 72 74 20 74 68 65 20 75 73 75 61 6c 20 66 61 6c 6c 62 61 63 6b 20 6f 72 64 65 72 20 61 6e 64 0a ~ " ~ check whether the word could be an integer literal. If" ~ " it is, we'll" 20 20 7e 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 74 68 65 20 77 6f 72 64 20 63 6f 75 6c 64 20 62 65 20 61 6e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 2e 20 49 66 20 69 74 20 69 73 2c 20 77 65 27 6c 6c 0a ~ " ~ handle that; if not, we'll assume it'll eventually" ~ " exist." 20 20 7e 20 68 61 6e 64 6c 65 20 74 68 61 74 3b 20 69 66 20 6e 6f 74 2c 20 77 65 27 6c 6c 20 61 73 73 75 6d 65 20 69 74 27 6c 6c 20 65 76 65 6e 74 75 61 6c 6c 79 20 65 78 69 73 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ This means that code that's run with the log-load" ~ " transform can't" 20 20 7e 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 63 6f 64 65 20 74 68 61 74 27 73 20 72 75 6e 20 77 69 74 68 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 63 61 6e 27 74 0a ~ " ~ shadow an integer literal with a word definition. Oh," ~ " so limiting." 20 20 7e 20 73 68 61 64 6f 77 20 61 6e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 20 77 69 74 68 20 61 20 77 6f 72 64 20 64 65 66 69 6e 69 74 69 6f 6e 2e 20 4f 68 2c 20 73 6f 20 6c 69 6d 69 74 69 6e 67 2e 0a ~ " value@ read-integer 0 = {" 20 20 76 61 6c 75 65 40 20 72 65 61 64 2d 69 6e 74 65 67 65 72 20 30 20 3d 20 7b 0a ~ " ~ It's a number." 20 20 20 20 7e 20 49 74 27 73 20 61 20 6e 75 6d 62 65 72 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ (name as stack string, integer value)" 20 20 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 29 0a ~ " dropstring-with-result" 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " ~ (integer value)" 20 20 20 20 7e 20 28 69 6e 74 65 67 65 72 20 76 61 6c 75 65 29 0a ~ "" 0a ~ " interpreter-flags @ 0x01 & {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode, so we want to generate code" ~ " which will compile" 20 20 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 73 6f 20 77 65 20 77 61 6e 74 20 74 6f 20 67 65 6e 65 72 61 74 65 20 63 6f 64 65 20 77 68 69 63 68 20 77 69 6c 6c 20 63 6f 6d 70 69 6c 65 0a ~ " ~ the number." 20 20 20 20 20 20 7e 20 74 68 65 20 6e 75 6d 62 65 72 2e 0a ~ " log-load-compile-literal" 20 20 20 20 20 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 6c 69 74 65 72 61 6c 0a ~ " 0 exit" 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ We're in interpret mode, so we want to generate" ~ " code which will push" 20 20 20 20 7e 20 20 20 57 65 27 72 65 20 69 6e 20 69 6e 74 65 72 70 72 65 74 20 6d 6f 64 65 2c 20 73 6f 20 77 65 20 77 61 6e 74 20 74 6f 20 67 65 6e 65 72 61 74 65 20 63 6f 64 65 20 77 68 69 63 68 20 77 69 6c 6c 20 70 75 73 68 0a ~ " ~ the number to the stack." 20 20 20 20 7e 20 74 68 65 20 6e 75 6d 62 65 72 20 74 6f 20 74 68 65 20 73 74 61 63 6b 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ This is an immediate effect, so once we've done it," ~ " we update the user" 20 20 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 65 66 66 65 63 74 2c 20 73 6f 20 6f 6e 63 65 20 77 65 27 76 65 20 64 6f 6e 65 20 69 74 2c 20 77 65 20 75 70 64 61 74 65 20 74 68 65 20 75 73 65 72 0a ~ " ~ stack depth. An integer literal is a stack-depth" ~ " delta of 1." 20 20 20 20 7e 20 73 74 61 63 6b 20 64 65 70 74 68 2e 20 41 6e 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 20 69 73 20 61 20 73 74 61 63 6b 2d 64 65 70 74 68 20 64 65 6c 74 61 20 6f 66 20 31 2e 0a ~ " swap-transform-variables L@' lit" ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 4c 40 27 20 6c 69 74 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " offset-to-target-address-space , ~ : -8 lit #--" ~ " (codeword pointer)" 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 20 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ : provide-hex" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " , ~ : -8 # #--" ~ " (integer literal)" 20 20 20 20 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " 1 transform-apply-stack-delta" 20 20 20 20 31 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ " 0 exit" 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " ~ (name as stack string)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " ~ We know it's a regular word, and we're assuming it" ~ " will exist at" 20 20 7e 20 20 20 57 65 20 6b 6e 6f 77 20 69 74 27 73 20 61 20 72 65 67 75 6c 61 72 20 77 6f 72 64 2c 20 61 6e 64 20 77 65 27 72 65 20 61 73 73 75 6d 69 6e 67 20 69 74 20 77 69 6c 6c 20 65 78 69 73 74 20 61 74 0a ~ " ~ runtime. We of course have no way to check what flags" ~ " it will have, which" 20 20 7e 20 72 75 6e 74 69 6d 65 2e 20 57 65 20 6f 66 20 63 6f 75 72 73 65 20 68 61 76 65 20 6e 6f 20 77 61 79 20 74 6f 20 63 68 65 63 6b 20 77 68 61 74 20 66 6c 61 67 73 20 69 74 20 77 69 6c 6c 20 68 61 76 65 2c 20 77 68 69 63 68 0a ~ " ~ means immediate words don't work with this transform." ~ " We still treat it" 20 20 7e 20 6d 65 61 6e 73 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 73 20 64 6f 6e 27 74 20 77 6f 72 6b 20 77 69 74 68 20 74 68 69 73 20 74 72 61 6e 73 66 6f 72 6d 2e 20 57 65 20 73 74 69 6c 6c 20 74 72 65 61 74 20 69 74 0a ~ " ~ differently based on whether we're in compile mode." 20 20 7e 20 64 69 66 66 65 72 65 6e 74 6c 79 20 62 61 73 65 64 20 6f 6e 20 77 68 65 74 68 65 72 20 77 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode. We compile code that" ~ " compiles the word." 20 20 20 20 7e 20 20 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 20 57 65 20 63 6f 6d 70 69 6c 65 20 63 6f 64 65 20 74 68 61 74 20 63 6f 6d 70 69 6c 65 73 20 74 68 65 20 77 6f 72 64 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ Since that's not an immediate effect, we don't need" ~ " to update the" 20 20 20 20 7e 20 20 20 53 69 6e 63 65 20 74 68 61 74 27 73 20 6e 6f 74 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 65 66 66 65 63 74 2c 20 77 65 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 75 70 64 61 74 65 20 74 68 65 0a ~ " ~ user stack depth. Instead, this is a key spot where" ~ " we rely on that" 20 20 20 20 7e 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 2e 20 49 6e 73 74 65 61 64 2c 20 74 68 69 73 20 69 73 20 61 20 6b 65 79 20 73 70 6f 74 20 77 68 65 72 65 20 77 65 20 72 65 6c 79 20 6f 6e 20 74 68 61 74 0a ~ " ~ knowledge, to roll and unroll the log address." 20 20 20 20 7e 20 6b 6e 6f 77 6c 65 64 67 65 2c 20 74 6f 20 72 6f 6c 6c 20 61 6e 64 20 75 6e 72 6f 6c 6c 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 2e 0a ~ " value@ log-load-compile-dynamic-word" 20 20 20 20 76 61 6c 75 65 40 20 6c 6f 67 2d 6c 6f 61 64 2d 63 6f 6d 70 69 6c 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " dropstring 0 exit" 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 20 30 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " ~ (name as stack string)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " ~ At this point we know we're in immediate mode and" ~ " have a regular word." 20 20 7e 20 20 20 41 74 20 74 68 69 73 20 70 6f 69 6e 74 20 77 65 20 6b 6e 6f 77 20 77 65 27 72 65 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 20 61 6e 64 20 68 61 76 65 20 61 20 72 65 67 75 6c 61 72 20 77 6f 72 64 2e 0a ~ " ~ While we still have the name pointer handy, we check" ~ " what delta this word" 20 20 7e 20 57 68 69 6c 65 20 77 65 20 73 74 69 6c 6c 20 68 61 76 65 20 74 68 65 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 20 68 61 6e 64 79 2c 20 77 65 20 63 68 65 63 6b 20 77 68 61 74 20 64 65 6c 74 61 20 74 68 69 73 20 77 6f 72 64 0a ~ " ~ will cause for the user stack depth, when run. See" 20 20 7e 20 77 69 6c 6c 20 63 61 75 73 65 20 66 6f 72 20 74 68 65 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 2c 20 77 68 65 6e 20 72 75 6e 2e 20 53 65 65 0a ~ " ~ transform-get-stack-delta for more explanation of this." ~ " We keep track of" 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 2d 67 65 74 2d 73 74 61 63 6b 2d 64 65 6c 74 61 20 66 6f 72 20 6d 6f 72 65 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 2e 20 57 65 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 0a ~ " ~ the proposed delta until we actually process the word," ~ " down below." 20 20 7e 20 74 68 65 20 70 72 6f 70 6f 73 65 64 20 64 65 6c 74 61 20 75 6e 74 69 6c 20 77 65 20 61 63 74 75 61 6c 6c 79 20 70 72 6f 63 65 73 73 20 74 68 65 20 77 6f 72 64 2c 20 64 6f 77 6e 20 62 65 6c 6f 77 2e 0a ~ " value@ dup transform-get-stack-delta swap" 20 20 76 61 6c 75 65 40 20 64 75 70 20 74 72 61 6e 73 66 6f 72 6d 2d 67 65 74 2d 73 74 61 63 6b 2d 64 65 6c 74 61 20 73 77 61 70 0a ~ " ~ (name as stack string, proposed stack depth delta, name" ~ " pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 70 72 6f 70 6f 73 65 64 20 73 74 61 63 6b 20 64 65 70 74 68 20 64 65 6c 74 61 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ We're in immediate mode. We compile code that runs" ~ " the word immediately." 20 20 7e 20 20 20 57 65 27 72 65 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 20 57 65 20 63 6f 6d 70 69 6c 65 20 63 6f 64 65 20 74 68 61 74 20 72 75 6e 73 20 74 68 65 20 77 6f 72 64 20 69 6d 6d 65 64 69 61 74 65 6c 79 2e 0a ~ " ~ We check whether there's a label for the word; if there" ~ " is, we'll output" 20 20 7e 20 57 65 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 74 68 65 72 65 27 73 20 61 20 6c 61 62 65 6c 20 66 6f 72 20 74 68 65 20 77 6f 72 64 3b 20 69 66 20 74 68 65 72 65 20 69 73 2c 20 77 65 27 6c 6c 20 6f 75 74 70 75 74 0a ~ " ~ that. Otherwise we'll output code that looks it up in" ~ " the log and runs it." 20 20 7e 20 74 68 61 74 2e 20 4f 74 68 65 72 77 69 73 65 20 77 65 27 6c 6c 20 6f 75 74 70 75 74 20 63 6f 64 65 20 74 68 61 74 20 6c 6f 6f 6b 73 20 69 74 20 75 70 20 69 6e 20 74 68 65 20 6c 6f 67 20 61 6e 64 20 72 75 6e 73 20 69 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Just like in label-transform, we use find-label to" ~ " check whether a label" 20 20 7e 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 69 6e 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2c 20 77 65 20 75 73 65 20 66 69 6e 64 2d 6c 61 62 65 6c 20 74 6f 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 61 20 6c 61 62 65 6c 0a ~ " ~ exists without declaring a dependency on it, then if it" ~ " does, we do" 20 20 7e 20 65 78 69 73 74 73 20 77 69 74 68 6f 75 74 20 64 65 63 6c 61 72 69 6e 67 20 61 20 64 65 70 65 6e 64 65 6e 63 79 20 6f 6e 20 69 74 2c 20 74 68 65 6e 20 69 66 20 69 74 20 64 6f 65 73 2c 20 77 65 20 64 6f 0a ~ " ~ use-label to ask for its value." 20 20 7e 20 75 73 65 2d 6c 61 62 65 6c 20 74 6f 20 61 73 6b 20 66 6f 72 20 69 74 73 20 76 61 6c 75 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ There's one additional wrinkle to remember here:" ~ " We're running inside" 20 20 7e 20 20 20 54 68 65 72 65 27 73 20 6f 6e 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 77 72 69 6e 6b 6c 65 20 74 6f 20 72 65 6d 65 6d 62 65 72 20 68 65 72 65 3a 20 57 65 27 72 65 20 72 75 6e 6e 69 6e 67 20 69 6e 73 69 64 65 0a ~ " ~ the label loop, and warm-start appears before all the" ~ " normal words in the" 20 20 7e 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 2c 20 61 6e 64 20 77 61 72 6d 2d 73 74 61 72 74 20 61 70 70 65 61 72 73 20 62 65 66 6f 72 65 20 61 6c 6c 20 74 68 65 20 6e 6f 72 6d 61 6c 20 77 6f 72 64 73 20 69 6e 20 74 68 65 0a ~ " ~ executable. So all the labels we'll be checking are" ~ " forwared references," 20 20 7e 20 65 78 65 63 75 74 61 62 6c 65 2e 20 53 6f 20 61 6c 6c 20 74 68 65 20 6c 61 62 65 6c 73 20 77 65 27 6c 6c 20 62 65 20 63 68 65 63 6b 69 6e 67 20 61 72 65 20 66 6f 72 77 61 72 65 64 20 72 65 66 65 72 65 6e 63 65 73 2c 0a ~ " ~ and on the very first pass they definitely won't be" ~ " defined. That's fine" 20 20 7e 20 61 6e 64 20 6f 6e 20 74 68 65 20 76 65 72 79 20 66 69 72 73 74 20 70 61 73 73 20 74 68 65 79 20 64 65 66 69 6e 69 74 65 6c 79 20 77 6f 6e 27 74 20 62 65 20 64 65 66 69 6e 65 64 2e 20 54 68 61 74 27 73 20 66 69 6e 65 0a ~ " ~ though, they will exist on all subsequent passes, so" ~ " things will" 20 20 7e 20 74 68 6f 75 67 68 2c 20 74 68 65 79 20 77 69 6c 6c 20 65 78 69 73 74 20 6f 6e 20 61 6c 6c 20 73 75 62 73 65 71 75 65 6e 74 20 70 61 73 73 65 73 2c 20 73 6f 20 74 68 69 6e 67 73 20 77 69 6c 6c 0a ~ " ~ definitely still converge." 20 20 7e 20 64 65 66 69 6e 69 74 65 6c 79 20 73 74 69 6c 6c 20 63 6f 6e 76 65 72 67 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ The first pass will never accidentally think it" ~ " succeeded, because even" 20 20 7e 20 20 20 54 68 65 20 66 69 72 73 74 20 70 61 73 73 20 77 69 6c 6c 20 6e 65 76 65 72 20 61 63 63 69 64 65 6e 74 61 6c 6c 79 20 74 68 69 6e 6b 20 69 74 20 73 75 63 63 65 65 64 65 64 2c 20 62 65 63 61 75 73 65 20 65 76 65 6e 0a ~ " ~ the reference to L' cold-start from the ELF header is a" ~ " forward reference" 20 20 7e 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 4c 27 20 63 6f 6c 64 2d 73 74 61 72 74 20 66 72 6f 6d 20 74 68 65 20 45 4c 46 20 68 65 61 64 65 72 20 69 73 20 61 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 0a ~ " ~ and won't exist on the first pass." 20 20 7e 20 61 6e 64 20 77 6f 6e 27 74 20 65 78 69 73 74 20 6f 6e 20 74 68 65 20 66 69 72 73 74 20 70 61 73 73 2e 0a ~ " dup" 20 20 64 75 70 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " find-label" 20 20 66 69 6e 64 2d 6c 61 62 65 6c 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " {" 20 20 7b 0a ~ " ~ Again just like in label-transform, we declare our" ~ " use of the label" 20 20 20 20 7e 20 20 20 41 67 61 69 6e 20 6a 75 73 74 20 6c 69 6b 65 20 69 6e 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2c 20 77 65 20 64 65 63 6c 61 72 65 20 6f 75 72 20 75 73 65 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 0a ~ " ~ and get a value for it." 20 20 20 20 7e 20 61 6e 64 20 67 65 74 20 61 20 76 61 6c 75 65 20 66 6f 72 20 69 74 2e 0a ~ " ~ : provide-string-copy" 20 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 2d 63 6f 70 79 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " intern-label use-label" 20 20 20 20 69 6e 74 65 72 6e 2d 6c 61 62 65 6c 20 75 73 65 2d 6c 61 62 65 6c 0a ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ (name as stack string, proposed stack depth delta," ~ " label value)" 20 20 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 70 72 6f 70 6f 73 65 64 20 73 74 61 63 6b 20 64 65 70 74 68 20 64 65 6c 74 61 2c 20 6c 61 62 65 6c 20 76 61 6c 75 65 29 0a ~ "" 0a ~ " ~ Like in label-transform, this is a codeword" ~ " pointer, so we just output" 20 20 20 20 7e 20 20 20 4c 69 6b 65 20 69 6e 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 69 73 20 69 73 20 61 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 2c 20 73 6f 20 77 65 20 6a 75 73 74 20 6f 75 74 70 75 74 0a ~ " ~ it directly. Also as before, because we don't have to" ~ " examine it, we" 20 20 20 20 7e 20 69 74 20 64 69 72 65 63 74 6c 79 2e 20 41 6c 73 6f 20 61 73 20 62 65 66 6f 72 65 2c 20 62 65 63 61 75 73 65 20 77 65 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 65 78 61 6d 69 6e 65 20 69 74 2c 20 77 65 0a ~ " ~ don't have to do anything special in the case where" ~ " it's zero due to the" 20 20 20 20 7e 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 73 70 65 63 69 61 6c 20 69 6e 20 74 68 65 20 63 61 73 65 20 77 68 65 72 65 20 69 74 27 73 20 7a 65 72 6f 20 64 75 65 20 74 6f 20 74 68 65 0a ~ " ~ way the label loop works." 20 20 20 20 7e 20 77 61 79 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 77 6f 72 6b 73 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ This is an immediate effect, so once we've done" ~ " that, we update the" 20 20 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 65 66 66 65 63 74 2c 20 73 6f 20 6f 6e 63 65 20 77 65 27 76 65 20 64 6f 6e 65 20 74 68 61 74 2c 20 77 65 20 75 70 64 61 74 65 20 74 68 65 0a ~ " ~ user stack depth." 20 20 20 20 7e 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 2e 0a ~ " offset-to-target-address-space ," 20 20 20 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 2c 0a ~ " ~ : -8 # #-- (codeword pointer)" 20 20 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " transform-apply-stack-delta" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ " dropstring 0 exit" 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 20 30 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " ~ (name as stack string, proposed stack depth delta, name" ~ " pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 70 72 6f 70 6f 73 65 64 20 73 74 61 63 6b 20 64 65 70 74 68 20 64 65 6c 74 61 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ There's no label for the word; that means it wasn't" ~ " statically" 20 20 7e 20 20 20 54 68 65 72 65 27 73 20 6e 6f 20 6c 61 62 65 6c 20 66 6f 72 20 74 68 65 20 77 6f 72 64 3b 20 74 68 61 74 20 6d 65 61 6e 73 20 69 74 20 77 61 73 6e 27 74 20 73 74 61 74 69 63 61 6c 6c 79 0a ~ " ~ compiled-in to the target executable. So we output code" ~ " that looks up the" 20 20 7e 20 63 6f 6d 70 69 6c 65 64 2d 69 6e 20 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 65 78 65 63 75 74 61 62 6c 65 2e 20 53 6f 20 77 65 20 6f 75 74 70 75 74 20 63 6f 64 65 20 74 68 61 74 20 6c 6f 6f 6b 73 20 75 70 20 74 68 65 0a ~ " ~ word by name on the log, then calls it." 20 20 7e 20 77 6f 72 64 20 62 79 20 6e 61 6d 65 20 6f 6e 20 74 68 65 20 6c 6f 67 2c 20 74 68 65 6e 20 63 61 6c 6c 73 20 69 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ This is also an immediate effect, despite being" ~ " distinct from the above" 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 61 6c 73 6f 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 65 66 66 65 63 74 2c 20 64 65 73 70 69 74 65 20 62 65 69 6e 67 20 64 69 73 74 69 6e 63 74 20 66 72 6f 6d 20 74 68 65 20 61 62 6f 76 65 0a ~ " ~ case, so once we've done that, we update the user stack" ~ " depth." 20 20 7e 20 63 61 73 65 2c 20 73 6f 20 6f 6e 63 65 20 77 65 27 76 65 20 64 6f 6e 65 20 74 68 61 74 2c 20 77 65 20 75 70 64 61 74 65 20 74 68 65 20 75 73 65 72 20 73 74 61 63 6b 20 64 65 70 74 68 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ There's no such thing as not finding the word, with" ~ " this transform. So" 20 20 7e 20 20 20 54 68 65 72 65 27 73 20 6e 6f 20 73 75 63 68 20 74 68 69 6e 67 20 61 73 20 6e 6f 74 20 66 69 6e 64 69 6e 67 20 74 68 65 20 77 6f 72 64 2c 20 77 69 74 68 20 74 68 69 73 20 74 72 61 6e 73 66 6f 72 6d 2e 20 53 6f 0a ~ " ~ once we're done, we just exit." 20 20 7e 20 6f 6e 63 65 20 77 65 27 72 65 20 64 6f 6e 65 2c 20 77 65 20 6a 75 73 74 20 65 78 69 74 2e 0a ~ " log-load-execute-dynamic-word" 20 20 6c 6f 67 2d 6c 6f 61 64 2d 65 78 65 63 75 74 65 2d 64 79 6e 61 6d 69 63 2d 77 6f 72 64 0a ~ " transform-apply-stack-delta" 20 20 74 72 61 6e 73 66 6f 72 6d 2d 61 70 70 6c 79 2d 73 74 61 63 6b 2d 64 65 6c 74 61 0a ~ " dropstring 0 ;" 20 20 64 72 6f 70 73 74 72 69 6e 67 20 30 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This implements the log-load transform for all words in" ~ " a region given as" 7e 20 20 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 66 6f 72 20 61 6c 6c 20 77 6f 72 64 73 20 69 6e 20 61 20 72 65 67 69 6f 6e 20 67 69 76 65 6e 20 61 73 0a ~ "~ an input string. It is directly analogous to "quit", in" 7e 20 61 6e 20 69 6e 70 75 74 20 73 74 72 69 6e 67 2e 20 49 74 20 69 73 20 64 69 72 65 63 74 6c 79 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 22 71 75 69 74 22 2c 20 69 6e 0a ~ "~ language/dynamic/interpret.e, but is far more complex." 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 69 6e 74 65 72 70 72 65 74 2e 65 2c 20 62 75 74 20 69 73 20 66 61 72 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 78 2e 0a ~ "~" 7e 0a ~ "~ (output buffer start, output point, input string pointer" 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 69 6e 70 75 74 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 0a ~ "~ -- output buffer start, output point)" 7e 20 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": log-load-transform" 3a 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : This is the start of the log-load routine, which is" ~ " a long block of" 20 20 7e 20 3a 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 2c 20 77 68 69 63 68 20 69 73 20 61 20 6c 6f 6e 67 20 62 6c 6f 63 6b 20 6f 66 0a ~ " ~ : code that has been processed by the log-load" ~ " transform. It is part of" 20 20 7e 20 3a 20 63 6f 64 65 20 74 68 61 74 20 68 61 73 20 62 65 65 6e 20 70 72 6f 63 65 73 73 65 64 20 62 79 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2e 20 49 74 20 69 73 20 70 61 72 74 20 6f 66 0a ~ " ~ : the warm-start routine, which does other things" ~ " before and after it." 20 20 7e 20 3a 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2c 20 77 68 69 63 68 20 64 6f 65 73 20 6f 74 68 65 72 20 74 68 69 6e 67 73 20 62 65 66 6f 72 65 20 61 6e 64 20 61 66 74 65 72 20 69 74 2e 0a ~ " ~ : For clarity's sake, to avoid weird nesting, the" ~ " section header above" 20 20 7e 20 3a 20 46 6f 72 20 63 6c 61 72 69 74 79 27 73 20 73 61 6b 65 2c 20 74 6f 20 61 76 6f 69 64 20 77 65 69 72 64 20 6e 65 73 74 69 6e 67 2c 20 74 68 65 20 73 65 63 74 69 6f 6e 20 68 65 61 64 65 72 20 61 62 6f 76 65 0a ~ " ~ : calls this the warm-start section of the executable," ~ " but in a sense it" 20 20 7e 20 3a 20 63 61 6c 6c 73 20 74 68 69 73 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 73 65 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 2c 20 62 75 74 20 69 6e 20 61 20 73 65 6e 73 65 20 69 74 0a ~ " ~ : might be more accurate to call it the log-load" ~ " section." 20 20 7e 20 3a 20 6d 69 67 68 74 20 62 65 20 6d 6f 72 65 20 61 63 63 75 72 61 74 65 20 74 6f 20 63 61 6c 6c 20 69 74 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 73 65 63 74 69 6f 6e 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : The routine is interpreted Forth code, just as the" ~ " warm-start routine" 20 20 7e 20 3a 20 20 20 54 68 65 20 72 6f 75 74 69 6e 65 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 46 6f 72 74 68 20 63 6f 64 65 2c 20 6a 75 73 74 20 61 73 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 0a ~ " ~ : as a whole is; see above." 20 20 7e 20 3a 20 61 73 20 61 20 77 68 6f 6c 65 20 69 73 3b 20 73 65 65 20 61 62 6f 76 65 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : The job of the log-load routine is to create" ~ " runnable code in the" 20 20 7e 20 3a 20 20 20 54 68 65 20 6a 6f 62 20 6f 66 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 69 73 20 74 6f 20 63 72 65 61 74 65 20 72 75 6e 6e 61 62 6c 65 20 63 6f 64 65 20 69 6e 20 74 68 65 0a ~ " ~ : dynamic log, at runtime. The normal way to create a" ~ " Forth executable" 20 20 7e 20 3a 20 64 79 6e 61 6d 69 63 20 6c 6f 67 2c 20 61 74 20 72 75 6e 74 69 6d 65 2e 20 54 68 65 20 6e 6f 72 6d 61 6c 20 77 61 79 20 74 6f 20 63 72 65 61 74 65 20 61 20 46 6f 72 74 68 20 65 78 65 63 75 74 61 62 6c 65 0a ~ " ~ : is to use label-transformed code to implement a" ~ " minimal set of" 20 20 7e 20 3a 20 69 73 20 74 6f 20 75 73 65 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 61 20 6d 69 6e 69 6d 61 6c 20 73 65 74 20 6f 66 0a ~ " ~ : functionality needed for the log-load routine to run," ~ " then invoke the" 20 20 7e 20 3a 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20 6e 65 65 64 65 64 20 66 6f 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 74 6f 20 72 75 6e 2c 20 74 68 65 6e 20 69 6e 76 6f 6b 65 20 74 68 65 0a ~ " ~ : log-load routine to copy a more complete set of" ~ " functionality into" 20 20 7e 20 3a 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 74 6f 20 63 6f 70 79 20 61 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 74 65 20 73 65 74 20 6f 66 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20 69 6e 74 6f 0a ~ " ~ : memory." 20 20 7e 20 3a 20 6d 65 6d 6f 72 79 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : The log-load routine is super important, but also" ~ " extremely verbose," 20 20 7e 20 3a 20 20 20 54 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 69 73 20 73 75 70 65 72 20 69 6d 70 6f 72 74 61 6e 74 2c 20 62 75 74 20 61 6c 73 6f 20 65 78 74 72 65 6d 65 6c 79 20 76 65 72 62 6f 73 65 2c 0a ~ " ~ : which necessarily makes it hard to read. If you're" ~ " skimming this file" 20 20 7e 20 3a 20 77 68 69 63 68 20 6e 65 63 65 73 73 61 72 69 6c 79 20 6d 61 6b 65 73 20 69 74 20 68 61 72 64 20 74 6f 20 72 65 61 64 2e 20 49 66 20 79 6f 75 27 72 65 20 73 6b 69 6d 6d 69 6e 67 20 74 68 69 73 20 66 69 6c 65 0a ~ " ~ : for the first time to get a sense of what it" ~ " contains, you might want" 20 20 7e 20 3a 20 66 6f 72 20 74 68 65 20 66 69 72 73 74 20 74 69 6d 65 20 74 6f 20 67 65 74 20 61 20 73 65 6e 73 65 20 6f 66 20 77 68 61 74 20 69 74 20 63 6f 6e 74 61 69 6e 73 2c 20 79 6f 75 20 6d 69 67 68 74 20 77 61 6e 74 0a ~ " ~ : to search for the words "label transform" to get to" ~ " the stuff that makes" 20 20 7e 20 3a 20 74 6f 20 73 65 61 72 63 68 20 66 6f 72 20 74 68 65 20 77 6f 72 64 73 20 22 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 22 20 74 6f 20 67 65 74 20 74 6f 20 74 68 65 20 73 74 75 66 66 20 74 68 61 74 20 6d 61 6b 65 73 0a ~ " ~ : better introductory reading." 20 20 7e 20 3a 20 62 65 74 74 65 72 20 69 6e 74 72 6f 64 75 63 74 6f 72 79 20 72 65 61 64 69 6e 67 2e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "" 0a ~ " main-input-buffer dup push-input-buffer" 20 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 64 75 70 20 70 75 73 68 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ " swap attach-string-to-input-buffer" 20 20 73 77 61 70 20 61 74 74 61 63 68 2d 73 74 72 69 6e 67 2d 74 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ "" 0a ~ " ~ Save the old values of "here" and "latest", and set" ~ " the initial values" 20 20 7e 20 20 20 53 61 76 65 20 74 68 65 20 6f 6c 64 20 76 61 6c 75 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 2c 20 61 6e 64 20 73 65 74 20 74 68 65 20 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 73 0a ~ " ~ of the internal ones. These values need to persist" ~ " across iterations," 20 20 7e 20 6f 66 20 74 68 65 20 69 6e 74 65 72 6e 61 6c 20 6f 6e 65 73 2e 20 54 68 65 73 65 20 76 61 6c 75 65 73 20 6e 65 65 64 20 74 6f 20 70 65 72 73 69 73 74 20 61 63 72 6f 73 73 20 69 74 65 72 61 74 69 6f 6e 73 2c 0a ~ " ~ since client code will make its own updates to them and" ~ " then rely on those" 20 20 7e 20 73 69 6e 63 65 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 77 69 6c 6c 20 6d 61 6b 65 20 69 74 73 20 6f 77 6e 20 75 70 64 61 74 65 73 20 74 6f 20 74 68 65 6d 20 61 6e 64 20 74 68 65 6e 20 72 65 6c 79 20 6f 6e 20 74 68 6f 73 65 0a ~ " ~ updates having taken effect. So we do the swap just" ~ " once, here outside the" 20 20 7e 20 75 70 64 61 74 65 73 20 68 61 76 69 6e 67 20 74 61 6b 65 6e 20 65 66 66 65 63 74 2e 20 53 6f 20 77 65 20 64 6f 20 74 68 65 20 73 77 61 70 20 6a 75 73 74 20 6f 6e 63 65 2c 20 68 65 72 65 20 6f 75 74 73 69 64 65 20 74 68 65 0a ~ " ~ loop, and set it back when the loop ends." 20 20 7e 20 6c 6f 6f 70 2c 20 61 6e 64 20 73 65 74 20 69 74 20 62 61 63 6b 20 77 68 65 6e 20 74 68 65 20 6c 6f 6f 70 20 65 6e 64 73 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We also take this opportunity to initialize the" ~ " output-buffer-start and" 20 20 7e 20 20 20 57 65 20 61 6c 73 6f 20 74 61 6b 65 20 74 68 69 73 20 6f 70 70 6f 72 74 75 6e 69 74 79 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 74 68 65 20 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 61 6e 64 0a ~ " ~ user-stack-depth fields of transformation-state." 20 20 7e 20 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 66 69 65 6c 64 73 20 6f 66 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2e 0a ~ " here @ transformation-state" ~ " transformation-state-saved-here !" 20 20 68 65 72 65 20 40 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 21 0a ~ " latest @ transformation-state" ~ " transformation-state-saved-latest !" 20 20 6c 61 74 65 73 74 20 40 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 21 0a ~ " swap transformation-state" ~ " transformation-state-output-buffer-start !" 20 20 73 77 61 70 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-user-stack-depth !" 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 21 0a ~ " here !" 20 20 68 65 72 65 20 21 0a ~ " 0 latest !" 20 20 30 20 6c 61 74 65 73 74 20 21 0a ~ " ~ Now the stack has nothing of ours on it, so client code" ~ " can do its thing." 20 20 7e 20 4e 6f 77 20 74 68 65 20 73 74 61 63 6b 20 68 61 73 20 6e 6f 74 68 69 6e 67 20 6f 66 20 6f 75 72 73 20 6f 6e 20 69 74 2c 20 73 6f 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 63 61 6e 20 64 6f 20 69 74 73 20 74 68 69 6e 67 2e 0a ~ "" 0a ~ " ~ It's important that the stack has nothing of ours on" ~ " it that persists" 20 20 7e 20 20 20 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 61 74 20 74 68 65 20 73 74 61 63 6b 20 68 61 73 20 6e 6f 74 68 69 6e 67 20 6f 66 20 6f 75 72 73 20 6f 6e 20 69 74 20 74 68 61 74 20 70 65 72 73 69 73 74 73 0a ~ " ~ across iterations, so that client code can add and" ~ " remove stuff there as" 20 20 7e 20 61 63 72 6f 73 73 20 69 74 65 72 61 74 69 6f 6e 73 2c 20 73 6f 20 74 68 61 74 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 63 61 6e 20 61 64 64 20 61 6e 64 20 72 65 6d 6f 76 65 20 73 74 75 66 66 20 74 68 65 72 65 20 61 73 0a ~ " ~ it sees fit." 20 20 7e 20 69 74 20 73 65 65 73 20 66 69 74 2e 0a ~ " { log-load-transform-one" 20 20 7b 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 0a ~ " ~ (..., done)" 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 64 6f 6e 65 29 0a ~ "" 0a ~ " ~ When the loop is done, get the real values of "here"" ~ " and "latest"" 20 20 20 20 7e 20 20 57 68 65 6e 20 74 68 65 20 6c 6f 6f 70 20 69 73 20 64 6f 6e 65 2c 20 67 65 74 20 74 68 65 20 72 65 61 6c 20 76 61 6c 75 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 0a ~ " ~ back. The internal "here" is also the output point," ~ " and will become our" 20 20 20 20 7e 20 62 61 63 6b 2e 20 54 68 65 20 69 6e 74 65 72 6e 61 6c 20 22 68 65 72 65 22 20 69 73 20 61 6c 73 6f 20 74 68 65 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 61 6e 64 20 77 69 6c 6c 20 62 65 63 6f 6d 65 20 6f 75 72 0a ~ " ~ return value. The internal "latest" is discarded." 20 20 20 20 7e 20 72 65 74 75 72 6e 20 76 61 6c 75 65 2e 20 54 68 65 20 69 6e 74 65 72 6e 61 6c 20 22 6c 61 74 65 73 74 22 20 69 73 20 64 69 73 63 61 72 64 65 64 2e 0a ~ " { transformation-state" ~ " transformation-state-output-buffer-start @" 20 20 20 20 7b 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 0a ~ " here @" 20 20 20 20 20 20 68 65 72 65 20 40 0a ~ " transformation-state transformation-state-saved-here" ~ " @ here !" 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 40 20 68 65 72 65 20 21 0a ~ " transformation-state" ~ " transformation-state-saved-latest @ latest !" 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 40 20 6c 61 74 65 73 74 20 21 0a ~ " ~ (output buffer start, output point)" 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ Though we don't actually use transformation-state" ~ " outside of this" 20 20 20 20 20 20 7e 20 20 20 54 68 6f 75 67 68 20 77 65 20 64 6f 6e 27 74 20 61 63 74 75 61 6c 6c 79 20 75 73 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 6f 75 74 73 69 64 65 20 6f 66 20 74 68 69 73 0a ~ " ~ invocation, for tidiness we zero it out." 20 20 20 20 20 20 7e 20 69 6e 76 6f 63 61 74 69 6f 6e 2c 20 66 6f 72 20 74 69 64 69 6e 65 73 73 20 77 65 20 7a 65 72 6f 20 69 74 20 6f 75 74 2e 0a ~ " 0 transformation-state" ~ " transformation-state-saved-here !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-saved-latest !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-output-buffer-start !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-user-stack-depth !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 21 0a ~ "" 0a ~ " ~ Also put the input source back how it was." 20 20 20 20 20 20 7e 20 20 41 6c 73 6f 20 70 75 74 20 74 68 65 20 69 6e 70 75 74 20 73 6f 75 72 63 65 20 62 61 63 6b 20 68 6f 77 20 69 74 20 77 61 73 2e 0a ~ " main-input-buffer pop-input-buffer" 20 20 20 20 20 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 70 6f 70 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ "" 0a ~ " exit } if } forever ;" 20 20 20 20 20 20 65 78 69 74 20 7d 20 69 66 20 7d 20 66 6f 72 65 76 65 72 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Hex transform implementation" 7e 20 48 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The following code is all part of implementing the hex" ~ " transform. For" 7e 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 20 69 73 20 61 6c 6c 20 70 61 72 74 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 46 6f 72 0a ~ "~ conceptual overview, see the top of this file." 7e 20 63 6f 6e 63 65 70 74 75 61 6c 20 6f 76 65 72 76 69 65 77 2c 20 73 65 65 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2e 0a ~ "~" 7e 0a ~ "~ The hex transform operates under some very complex" ~ " memory-management" 7e 20 20 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 6f 70 65 72 61 74 65 73 20 75 6e 64 65 72 20 73 6f 6d 65 20 76 65 72 79 20 63 6f 6d 70 6c 65 78 20 6d 65 6d 6f 72 79 2d 6d 61 6e 61 67 65 6d 65 6e 74 0a ~ "~ assumptions, even compared to the other transforms, so" ~ " it's worth going over" 7e 20 61 73 73 75 6d 70 74 69 6f 6e 73 2c 20 65 76 65 6e 20 63 6f 6d 70 61 72 65 64 20 74 6f 20 74 68 65 20 6f 74 68 65 72 20 74 72 61 6e 73 66 6f 72 6d 73 2c 20 73 6f 20 69 74 27 73 20 77 6f 72 74 68 20 67 6f 69 6e 67 20 6f 76 65 72 0a ~ "~ all that and studying how it comes together, even though" ~ " much of it is" 7e 20 61 6c 6c 20 74 68 61 74 20 61 6e 64 20 73 74 75 64 79 69 6e 67 20 68 6f 77 20 69 74 20 63 6f 6d 65 73 20 74 6f 67 65 74 68 65 72 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 6d 75 63 68 20 6f 66 20 69 74 20 69 73 0a ~ "~ material that has been explained elsewhere. This" ~ " explanation is here with" 7e 20 6d 61 74 65 72 69 61 6c 20 74 68 61 74 20 68 61 73 20 62 65 65 6e 20 65 78 70 6c 61 69 6e 65 64 20 65 6c 73 65 77 68 65 72 65 2e 20 54 68 69 73 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 69 73 20 68 65 72 65 20 77 69 74 68 0a ~ "~ the implementation details rather than at the top of the" ~ " file, because it's" 7e 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 64 65 74 61 69 6c 73 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 74 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 66 69 6c 65 2c 20 62 65 63 61 75 73 65 20 69 74 27 73 0a ~ "~ only necessary to understanding how to modify the" ~ " transform, not how to use" 7e 20 6f 6e 6c 79 20 6e 65 63 65 73 73 61 72 79 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 20 68 6f 77 20 74 6f 20 6d 6f 64 69 66 79 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 2c 20 6e 6f 74 20 68 6f 77 20 74 6f 20 75 73 65 0a ~ "~ it." 7e 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ This is the bit of the hex transform where all the" ~ " memory-management" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 62 69 74 20 6f 66 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 77 68 65 72 65 20 61 6c 6c 20 74 68 65 20 6d 65 6d 6f 72 79 2d 6d 61 6e 61 67 65 6d 65 6e 74 0a ~ "~ assumptions are in play at once, so, a quick refresher." ~ " The transform" 7e 20 61 73 73 75 6d 70 74 69 6f 6e 73 20 61 72 65 20 69 6e 20 70 6c 61 79 20 61 74 20 6f 6e 63 65 2c 20 73 6f 2c 20 61 20 71 75 69 63 6b 20 72 65 66 72 65 73 68 65 72 2e 20 54 68 65 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ itself is running in the outer context; hex-trace and its" ~ " siblings are" 7e 20 69 74 73 65 6c 66 20 69 73 20 72 75 6e 6e 69 6e 67 20 69 6e 20 74 68 65 20 6f 75 74 65 72 20 63 6f 6e 74 65 78 74 3b 20 68 65 78 2d 74 72 61 63 65 20 61 6e 64 20 69 74 73 20 73 69 62 6c 69 6e 67 73 20 61 72 65 0a ~ "~ part of Evocation's main log and dictionary. This is also" ~ " true for the" 7e 20 70 61 72 74 20 6f 66 20 45 76 6f 63 61 74 69 6f 6e 27 73 20 6d 61 69 6e 20 6c 6f 67 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 79 2e 20 54 68 69 73 20 69 73 20 61 6c 73 6f 20 74 72 75 65 20 66 6f 72 20 74 68 65 0a ~ "~ label and log-load transforms. Evocation has two global" ~ " variables," 7e 20 6c 61 62 65 6c 20 61 6e 64 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 73 2e 20 45 76 6f 63 61 74 69 6f 6e 20 68 61 73 20 74 77 6f 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 73 2c 0a ~ "~ "here" and "latest", which are the root of all references" ~ " to the log and" 7e 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 2c 20 77 68 69 63 68 20 61 72 65 20 74 68 65 20 72 6f 6f 74 20 6f 66 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 74 68 65 20 6c 6f 67 20 61 6e 64 0a ~ "~ dictionary, respectively. Remember, the log is the" ~ " structure used for" 7e 20 64 69 63 74 69 6f 6e 61 72 79 2c 20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 20 52 65 6d 65 6d 62 65 72 2c 20 74 68 65 20 6c 6f 67 20 69 73 20 74 68 65 20 73 74 72 75 63 74 75 72 65 20 75 73 65 64 20 66 6f 72 0a ~ "~ memory allocation, and the dictionary, which forms the" ~ " majority of the" 7e 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 69 6f 6e 2c 20 61 6e 64 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 2c 20 77 68 69 63 68 20 66 6f 72 6d 73 20 74 68 65 20 6d 61 6a 6f 72 69 74 79 20 6f 66 20 74 68 65 0a ~ "~ log, is the structure used for looking up words by name." 7e 20 6c 6f 67 2c 20 69 73 20 74 68 65 20 73 74 72 75 63 74 75 72 65 20 75 73 65 64 20 66 6f 72 20 6c 6f 6f 6b 69 6e 67 20 75 70 20 77 6f 72 64 73 20 62 79 20 6e 61 6d 65 2e 0a ~ "~" 7e 0a ~ "~ Every transform, in its various ways, is changing what" ~ " it means to" 7e 20 20 20 45 76 65 72 79 20 74 72 61 6e 73 66 6f 72 6d 2c 20 69 6e 20 69 74 73 20 76 61 72 69 6f 75 73 20 77 61 79 73 2c 20 69 73 20 63 68 61 6e 67 69 6e 67 20 77 68 61 74 20 69 74 20 6d 65 61 6e 73 20 74 6f 0a ~ "~ "execute" and "compile" code; therefore, when the" ~ " transforms are invoked," 7e 20 22 65 78 65 63 75 74 65 22 20 61 6e 64 20 22 63 6f 6d 70 69 6c 65 22 20 63 6f 64 65 3b 20 74 68 65 72 65 66 6f 72 65 2c 20 77 68 65 6e 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 73 20 61 72 65 20 69 6e 76 6f 6b 65 64 2c 0a ~ "~ they are passed an "output buffer" which is used as the" ~ " destination for" 7e 20 74 68 65 79 20 61 72 65 20 70 61 73 73 65 64 20 61 6e 20 22 6f 75 74 70 75 74 20 62 75 66 66 65 72 22 20 77 68 69 63 68 20 69 73 20 75 73 65 64 20 61 73 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 66 6f 72 0a ~ "~ any compilation that occurs, and any scratch space that" ~ " is needed. When" 7e 20 61 6e 79 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 74 68 61 74 20 6f 63 63 75 72 73 2c 20 61 6e 64 20 61 6e 79 20 73 63 72 61 74 63 68 20 73 70 61 63 65 20 74 68 61 74 20 69 73 20 6e 65 65 64 65 64 2e 20 57 68 65 6e 0a ~ "~ more than one transform is running at once (such as when" ~ " the hex transform" 7e 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 72 75 6e 6e 69 6e 67 20 61 74 20 6f 6e 63 65 20 28 73 75 63 68 20 61 73 20 77 68 65 6e 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ operates on code that is itself running the label" ~ " transform), each" 7e 20 6f 70 65 72 61 74 65 73 20 6f 6e 20 63 6f 64 65 20 74 68 61 74 20 69 73 20 69 74 73 65 6c 66 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 29 2c 20 65 61 63 68 0a ~ "~ transform has its own separate output buffer." 7e 20 74 72 61 6e 73 66 6f 72 6d 20 68 61 73 20 69 74 73 20 6f 77 6e 20 73 65 70 61 72 61 74 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 2e 0a ~ "~" 7e 0a ~ "~ Furthermore, the transformation facility helps each" ~ " transform to swap out" 7e 20 20 20 46 75 72 74 68 65 72 6d 6f 72 65 2c 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 66 61 63 69 6c 69 74 79 20 68 65 6c 70 73 20 65 61 63 68 20 74 72 61 6e 73 66 6f 72 6d 20 74 6f 20 73 77 61 70 20 6f 75 74 0a ~ "~ the values of "here" and "latest", and restore them" ~ " later, so that the code" 7e 20 74 68 65 20 76 61 6c 75 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 2c 20 61 6e 64 20 72 65 73 74 6f 72 65 20 74 68 65 6d 20 6c 61 74 65 72 2c 20 73 6f 20 74 68 61 74 20 74 68 65 20 63 6f 64 65 0a ~ "~ being transformed will see the output buffer as if it is" ~ " the "real" log, and" 7e 20 62 65 69 6e 67 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 77 69 6c 6c 20 73 65 65 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 61 73 20 69 66 20 69 74 20 69 73 20 74 68 65 20 22 72 65 61 6c 22 20 6c 6f 67 2c 20 61 6e 64 0a ~ "~ will see the separate dictionary stored within the output" ~ " buffer as if it is" 7e 20 77 69 6c 6c 20 73 65 65 20 74 68 65 20 73 65 70 61 72 61 74 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 74 6f 72 65 64 20 77 69 74 68 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 61 73 20 69 66 20 69 74 20 69 73 0a ~ "~ the "real" dictionary." 7e 20 74 68 65 20 22 72 65 61 6c 22 20 64 69 63 74 69 6f 6e 61 72 79 2e 0a ~ "~" 7e 0a ~ "~ All this stuff about the output buffer applies to every" ~ " transform. The" 7e 20 20 20 41 6c 6c 20 74 68 69 73 20 73 74 75 66 66 20 61 62 6f 75 74 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 61 70 70 6c 69 65 73 20 74 6f 20 65 76 65 72 79 20 74 72 61 6e 73 66 6f 72 6d 2e 20 54 68 65 0a ~ "~ hex transform takes it one step further, and as such" ~ " there are two" 7e 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 74 61 6b 65 73 20 69 74 20 6f 6e 65 20 73 74 65 70 20 66 75 72 74 68 65 72 2c 20 61 6e 64 20 61 73 20 73 75 63 68 20 74 68 65 72 65 20 61 72 65 20 74 77 6f 0a ~ "~ additional memory regions that are important to" ~ " understanding it. The first" 7e 20 61 64 64 69 74 69 6f 6e 61 6c 20 6d 65 6d 6f 72 79 20 72 65 67 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 69 6d 70 6f 72 74 61 6e 74 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 20 69 74 2e 20 54 68 65 20 66 69 72 73 74 0a ~ "~ is the label-loop buffer, which is allocated out of the" ~ " inner log, and used" 7e 20 69 73 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2c 20 77 68 69 63 68 20 69 73 20 61 6c 6c 6f 63 61 74 65 64 20 6f 75 74 20 6f 66 20 74 68 65 20 69 6e 6e 65 72 20 6c 6f 67 2c 20 61 6e 64 20 75 73 65 64 0a ~ "~ to hold draft versions of the binary output that the" ~ " inner compilation" 7e 20 74 6f 20 68 6f 6c 64 20 64 72 61 66 74 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 74 68 65 20 62 69 6e 61 72 79 20 6f 75 74 70 75 74 20 74 68 61 74 20 74 68 65 20 69 6e 6e 65 72 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 0a ~ "~ process would eventually emit to the standard output" ~ " stream, if it were" 7e 20 70 72 6f 63 65 73 73 20 77 6f 75 6c 64 20 65 76 65 6e 74 75 61 6c 6c 79 20 65 6d 69 74 20 74 6f 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 20 73 74 72 65 61 6d 2c 20 69 66 20 69 74 20 77 65 72 65 0a ~ "~ being allowed to emit output in the normal way. The" ~ " second is the output" 7e 20 62 65 69 6e 67 20 61 6c 6c 6f 77 65 64 20 74 6f 20 65 6d 69 74 20 6f 75 74 70 75 74 20 69 6e 20 74 68 65 20 6e 6f 72 6d 61 6c 20 77 61 79 2e 20 54 68 65 20 73 65 63 6f 6e 64 20 69 73 20 74 68 65 20 6f 75 74 70 75 74 0a ~ "~ metadata buffer, which is allocated out of the outer log," ~ " and used to hold" 7e 20 6d 65 74 61 64 61 74 61 20 62 75 66 66 65 72 2c 20 77 68 69 63 68 20 69 73 20 61 6c 6c 6f 63 61 74 65 64 20 6f 75 74 20 6f 66 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 2c 20 61 6e 64 20 75 73 65 64 20 74 6f 20 68 6f 6c 64 0a ~ "~ metadata such as comments and formatting pertaining to" ~ " code structure, which" 7e 20 6d 65 74 61 64 61 74 61 20 73 75 63 68 20 61 73 20 63 6f 6d 6d 65 6e 74 73 20 61 6e 64 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 65 72 74 61 69 6e 69 6e 67 20 74 6f 20 63 6f 64 65 20 73 74 72 75 63 74 75 72 65 2c 20 77 68 69 63 68 0a ~ "~ will need to be referenced when actually outputting the" ~ " final hex dump." 7e 20 77 69 6c 6c 20 6e 65 65 64 20 74 6f 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 77 68 65 6e 20 61 63 74 75 61 6c 6c 79 20 6f 75 74 70 75 74 74 69 6e 67 20 74 68 65 20 66 69 6e 61 6c 20 68 65 78 20 64 75 6d 70 2e 0a ~ "~" 7e 0a ~ "~ So, the label-loop buffer can be thought of as scratch" ~ " space for the" 7e 20 20 20 53 6f 2c 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 63 61 6e 20 62 65 20 74 68 6f 75 67 68 74 20 6f 66 20 61 73 20 73 63 72 61 74 63 68 20 73 70 61 63 65 20 66 6f 72 20 74 68 65 0a ~ "~ compiled binary output from the code being transformed," ~ " and the output" 7e 20 63 6f 6d 70 69 6c 65 64 20 62 69 6e 61 72 79 20 6f 75 74 70 75 74 20 66 72 6f 6d 20 74 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 74 72 61 6e 73 66 6f 72 6d 65 64 2c 20 61 6e 64 20 74 68 65 20 6f 75 74 70 75 74 0a ~ "~ metadata buffer can be thought of as the scratch space" ~ " for the formatted hex" 7e 20 6d 65 74 61 64 61 74 61 20 62 75 66 66 65 72 20 63 61 6e 20 62 65 20 74 68 6f 75 67 68 74 20 6f 66 20 61 73 20 74 68 65 20 73 63 72 61 74 63 68 20 73 70 61 63 65 20 66 6f 72 20 74 68 65 20 66 6f 72 6d 61 74 74 65 64 20 68 65 78 0a ~ "~ dump that will be made out of that output. It's important" ~ " not to confuse" 7e 20 64 75 6d 70 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 6d 61 64 65 20 6f 75 74 20 6f 66 20 74 68 61 74 20 6f 75 74 70 75 74 2e 20 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 6e 6f 74 20 74 6f 20 63 6f 6e 66 75 73 65 0a ~ "~ either of them with the output buffer, which is the" ~ " scratch space used as" 7e 20 65 69 74 68 65 72 20 6f 66 20 74 68 65 6d 20 77 69 74 68 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 20 73 63 72 61 74 63 68 20 73 70 61 63 65 20 75 73 65 64 20 61 73 0a ~ "~ part of the compilation process." 7e 20 70 61 72 74 20 6f 66 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 2e 0a ~ "~" 7e 0a ~ "~ Confusingly, the output buffer and the label-loop" ~ " buffer both contain" 7e 20 20 20 43 6f 6e 66 75 73 69 6e 67 6c 79 2c 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 61 6e 64 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 62 6f 74 68 20 63 6f 6e 74 61 69 6e 0a ~ "~ logs and dictionaries, at least potentially, if the code" ~ " being compiled is" 7e 20 6c 6f 67 73 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 69 65 73 2c 20 61 74 20 6c 65 61 73 74 20 70 6f 74 65 6e 74 69 61 6c 6c 79 2c 20 69 66 20 74 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 20 69 73 0a ~ "~ Forth code. It is also possible to use the hex transform" ~ " on assembly code," 7e 20 46 6f 72 74 68 20 63 6f 64 65 2e 20 49 74 20 69 73 20 61 6c 73 6f 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 75 73 65 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 6f 6e 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2c 0a ~ "~ in which case the label-loop buffer won't have a log in" ~ " it but the output" 7e 20 69 6e 20 77 68 69 63 68 20 63 61 73 65 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 77 6f 6e 27 74 20 68 61 76 65 20 61 20 6c 6f 67 20 69 6e 20 69 74 20 62 75 74 20 74 68 65 20 6f 75 74 70 75 74 0a ~ "~ buffer still will. In practice, the hex transform" ~ " frequently winds up" 7e 20 62 75 66 66 65 72 20 73 74 69 6c 6c 20 77 69 6c 6c 2e 20 49 6e 20 70 72 61 63 74 69 63 65 2c 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 66 72 65 71 75 65 6e 74 6c 79 20 77 69 6e 64 73 20 75 70 0a ~ "~ needing to be careful about the log and dictionary in the" ~ " output buffer, but" 7e 20 6e 65 65 64 69 6e 67 20 74 6f 20 62 65 20 63 61 72 65 66 75 6c 20 61 62 6f 75 74 20 74 68 65 20 6c 6f 67 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 79 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 2c 20 62 75 74 0a ~ "~ rarely does anything that directly touches the log and" ~ " dictionary in the" 7e 20 72 61 72 65 6c 79 20 64 6f 65 73 20 61 6e 79 74 68 69 6e 67 20 74 68 61 74 20 64 69 72 65 63 74 6c 79 20 74 6f 75 63 68 65 73 20 74 68 65 20 6c 6f 67 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 79 20 69 6e 20 74 68 65 0a ~ "~ label-loop buffer, so you can usually ignore the latter" ~ " when reading this" 7e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2c 20 73 6f 20 79 6f 75 20 63 61 6e 20 75 73 75 61 6c 6c 79 20 69 67 6e 6f 72 65 20 74 68 65 20 6c 61 74 74 65 72 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 74 68 69 73 0a ~ "~ code." 7e 20 63 6f 64 65 2e 0a ~ "~" 7e 0a ~ "~ Allocating the output buffer and output metadata buffer" ~ " is the" 7e 20 20 20 41 6c 6c 6f 63 61 74 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 61 6e 64 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 62 75 66 66 65 72 20 69 73 20 74 68 65 0a ~ "~ responsibility of the caller of hex-transform. Allocating" ~ " the label-loop" 7e 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 6f 66 20 74 68 65 20 63 61 6c 6c 65 72 20 6f 66 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2e 20 41 6c 6c 6f 63 61 74 69 6e 67 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 0a ~ "~ buffer is the responsibility of label-loop, which is" ~ " called by the code" 7e 20 62 75 66 66 65 72 20 69 73 20 74 68 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 6f 66 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2c 20 77 68 69 63 68 20 69 73 20 63 61 6c 6c 65 64 20 62 79 20 74 68 65 20 63 6f 64 65 0a ~ "~ being transformed, but the hex transform intervenes in" ~ " that allocation to" 7e 20 62 65 69 6e 67 20 74 72 61 6e 73 66 6f 72 6d 65 64 2c 20 62 75 74 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 69 6e 74 65 72 76 65 6e 65 73 20 69 6e 20 74 68 61 74 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 74 6f 0a ~ "~ save information about it." 7e 20 73 61 76 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ The output buffer is referenced during the transform" ~ " via the" 7e 20 20 20 54 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 69 73 20 72 65 66 65 72 65 6e 63 65 64 20 64 75 72 69 6e 67 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 76 69 61 20 74 68 65 0a ~ "~ transformation-state-output-buffer-start field of the" ~ " global" 7e 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 66 69 65 6c 64 20 6f 66 20 74 68 65 20 67 6c 6f 62 61 6c 0a ~ "~ "transformation-state" variable, and the output metadata" ~ " buffer is" 7e 20 22 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 22 20 76 61 72 69 61 62 6c 65 2c 20 61 6e 64 20 74 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 62 75 66 66 65 72 20 69 73 0a ~ "~ referenced via the transformation-state-output-metadata" ~ " field of that same" 7e 20 72 65 66 65 72 65 6e 63 65 64 20 76 69 61 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 66 69 65 6c 64 20 6f 66 20 74 68 61 74 20 73 61 6d 65 0a ~ "~ variable. The label-loop buffer is referenced from the" 7e 20 76 61 72 69 61 62 6c 65 2e 20 54 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 69 73 20 72 65 66 65 72 65 6e 63 65 64 20 66 72 6f 6d 20 74 68 65 0a ~ "~ hex-output-metadata-label-loop-buffer-start and -length" ~ " fields of the" 7e 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 61 6e 64 20 2d 6c 65 6e 67 74 68 20 66 69 65 6c 64 73 20 6f 66 20 74 68 65 0a ~ "~ output metadata's top-level header, and the code being" ~ " transformed passes" 7e 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 27 73 20 74 6f 70 2d 6c 65 76 65 6c 20 68 65 61 64 65 72 2c 20 61 6e 64 20 74 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 70 61 73 73 65 73 0a ~ "~ around its own reference to that same buffer." 7e 20 61 72 6f 75 6e 64 20 69 74 73 20 6f 77 6e 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 61 74 20 73 61 6d 65 20 62 75 66 66 65 72 2e 0a ~ "~" 7e 0a ~ "~ Finally, recall that, when Evocation itself is the" ~ " thing being" 7e 20 20 20 46 69 6e 61 6c 6c 79 2c 20 72 65 63 61 6c 6c 20 74 68 61 74 2c 20 77 68 65 6e 20 45 76 6f 63 61 74 69 6f 6e 20 69 74 73 65 6c 66 20 69 73 20 74 68 65 20 74 68 69 6e 67 20 62 65 69 6e 67 0a ~ "~ transformed, the code under transformation includes its" ~ " own copy of the" 7e 20 74 72 61 6e 73 66 6f 72 6d 65 64 2c 20 74 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 69 6e 63 6c 75 64 65 73 20 69 74 73 20 6f 77 6e 20 63 6f 70 79 20 6f 66 20 74 68 65 0a ~ "~ transformation facility, along with all the rest of" ~ " Evocation. When the code" 7e 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 66 61 63 69 6c 69 74 79 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 61 6c 6c 20 74 68 65 20 72 65 73 74 20 6f 66 20 45 76 6f 63 61 74 69 6f 6e 2e 20 57 68 65 6e 20 74 68 65 20 63 6f 64 65 0a ~ "~ under transformation invokes the label and log-load" ~ " transforms, it will do" 7e 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 69 6e 76 6f 6b 65 73 20 74 68 65 20 6c 61 62 65 6c 20 61 6e 64 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 73 2c 20 69 74 20 77 69 6c 6c 20 64 6f 0a ~ "~ so using the copies of those transforms which have been" ~ " transformed by the" 7e 20 73 6f 20 75 73 69 6e 67 20 74 68 65 20 63 6f 70 69 65 73 20 6f 66 20 74 68 6f 73 65 20 74 72 61 6e 73 66 6f 72 6d 73 20 77 68 69 63 68 20 68 61 76 65 20 62 65 65 6e 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 62 79 20 74 68 65 0a ~ "~ hex transform. The same goes for most Evocation internals" ~ " invoked by the" 7e 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 54 68 65 20 73 61 6d 65 20 67 6f 65 73 20 66 6f 72 20 6d 6f 73 74 20 45 76 6f 63 61 74 69 6f 6e 20 69 6e 74 65 72 6e 61 6c 73 20 69 6e 76 6f 6b 65 64 20 62 79 20 74 68 65 0a ~ "~ compilation process, except for whatever specific" ~ " exceptions the hex" 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 2c 20 65 78 63 65 70 74 20 66 6f 72 20 77 68 61 74 65 76 65 72 20 73 70 65 63 69 66 69 63 20 65 78 63 65 70 74 69 6f 6e 73 20 74 68 65 20 68 65 78 0a ~ "~ transform creates. Do not confuse the inner copies of" ~ " anything with the" 7e 20 74 72 61 6e 73 66 6f 72 6d 20 63 72 65 61 74 65 73 2e 20 44 6f 20 6e 6f 74 20 63 6f 6e 66 75 73 65 20 74 68 65 20 69 6e 6e 65 72 20 63 6f 70 69 65 73 20 6f 66 20 61 6e 79 74 68 69 6e 67 20 77 69 74 68 20 74 68 65 0a ~ "~ outer copies. Also try not to worry too much about the" ~ " inner-inner copies," 7e 20 6f 75 74 65 72 20 63 6f 70 69 65 73 2e 20 41 6c 73 6f 20 74 72 79 20 6e 6f 74 20 74 6f 20 77 6f 72 72 79 20 74 6f 6f 20 6d 75 63 68 20 61 62 6f 75 74 20 74 68 65 20 69 6e 6e 65 72 2d 69 6e 6e 65 72 20 63 6f 70 69 65 73 2c 0a ~ "~ let the inner transforms deal with them." 7e 20 6c 65 74 20 74 68 65 20 69 6e 6e 65 72 20 74 72 61 6e 73 66 6f 72 6d 73 20 64 65 61 6c 20 77 69 74 68 20 74 68 65 6d 2e 0a ~ "~" 7e 0a ~ "~ Got all that background fresh in your mind? Okay, time" ~ " to get concrete!" 7e 20 20 20 47 6f 74 20 61 6c 6c 20 74 68 61 74 20 62 61 63 6b 67 72 6f 75 6e 64 20 66 72 65 73 68 20 69 6e 20 79 6f 75 72 20 6d 69 6e 64 3f 20 4f 6b 61 79 2c 20 74 69 6d 65 20 74 6f 20 67 65 74 20 63 6f 6e 63 72 65 74 65 21 0a ~ "~ The output metadata is a header structure followed by an" ~ " array of entry" 7e 20 54 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 69 73 20 61 20 68 65 61 64 65 72 20 73 74 72 75 63 74 75 72 65 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 6e 20 61 72 72 61 79 20 6f 66 20 65 6e 74 72 79 0a ~ "~ structures, as follows:" 7e 20 73 74 72 75 63 74 75 72 65 73 2c 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a ~ "~" 7e 0a ~ "~ (header start)" 7e 20 28 68 65 61 64 65 72 20 73 74 61 72 74 29 0a ~ "~ 0x00 - 0x07 Label-loop" ~ " buffer start" 7e 20 20 20 20 20 20 20 20 20 20 20 30 78 30 30 20 2d 20 30 78 30 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 73 74 61 72 74 0a ~ "~ 0x08 - 0x0f Label-loop" ~ " buffer length" 7e 20 20 20 20 20 20 20 20 20 20 20 30 78 30 38 20 2d 20 30 78 30 66 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 6c 65 6e 67 74 68 0a ~ "~ (entry start)" 7e 20 28 65 6e 74 72 79 20 73 74 61 72 74 29 0a ~ "~ ... + 0x00 - ... + 0x07 Data pointer" 7e 20 20 20 20 20 2e 2e 2e 20 2b 20 30 78 30 30 20 2d 20 2e 2e 2e 20 2b 20 30 78 30 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 61 74 61 20 70 6f 69 6e 74 65 72 0a ~ "~ ... + 0x08 - ... + 0x0f Referenced data" ~ " length" 7e 20 20 20 20 20 2e 2e 2e 20 2b 20 30 78 30 38 20 2d 20 2e 2e 2e 20 2b 20 30 78 30 66 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 66 65 72 65 6e 63 65 64 20 64 61 74 61 20 6c 65 6e 67 74 68 0a ~ "~ ... + 0x10 - ... + 0x17 String pointer" 7e 20 20 20 20 20 2e 2e 2e 20 2b 20 30 78 31 30 20 2d 20 2e 2e 2e 20 2b 20 30 78 31 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 0a ~ "~ (entry fields repeat at successive offsets, until...)" 7e 20 28 65 6e 74 72 79 20 66 69 65 6c 64 73 20 72 65 70 65 61 74 20 61 74 20 73 75 63 63 65 73 73 69 76 65 20 6f 66 66 73 65 74 73 2c 20 75 6e 74 69 6c 2e 2e 2e 29 0a ~ "~ ... + 0x00 - ... + 0x07 (end) Zero, used as a" ~ " delimiter" 7e 20 20 20 20 20 2e 2e 2e 20 2b 20 30 78 30 30 20 2d 20 2e 2e 2e 20 2b 20 30 78 30 37 20 28 65 6e 64 29 20 20 20 20 20 20 20 20 20 5a 65 72 6f 2c 20 75 73 65 64 20 61 73 20 61 20 64 65 6c 69 6d 69 74 65 72 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~ Magic comment syntax" 7e 20 4d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 73 79 6e 74 61 78 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ How, the sufficiently determined reader may ask, does" ~ " all this output" 7e 20 20 20 48 6f 77 2c 20 74 68 65 20 73 75 66 66 69 63 69 65 6e 74 6c 79 20 64 65 74 65 72 6d 69 6e 65 64 20 72 65 61 64 65 72 20 6d 61 79 20 61 73 6b 2c 20 64 6f 65 73 20 61 6c 6c 20 74 68 69 73 20 6f 75 74 70 75 74 0a ~ "~ metadata get created? Surely, the reader may rightly" ~ " think, creating" 7e 20 6d 65 74 61 64 61 74 61 20 67 65 74 20 63 72 65 61 74 65 64 3f 20 53 75 72 65 6c 79 2c 20 74 68 65 20 72 65 61 64 65 72 20 6d 61 79 20 72 69 67 68 74 6c 79 20 74 68 69 6e 6b 2c 20 63 72 65 61 74 69 6e 67 0a ~ "~ metadata entries which fully describe a compilation" ~ " process must entail" 7e 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 77 68 69 63 68 20 66 75 6c 6c 79 20 64 65 73 63 72 69 62 65 20 61 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 6d 75 73 74 20 65 6e 74 61 69 6c 0a ~ "~ gathering and synthesizing information from disparate" ~ " stages of that" 7e 20 67 61 74 68 65 72 69 6e 67 20 61 6e 64 20 73 79 6e 74 68 65 73 69 7a 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 72 6f 6d 20 64 69 73 70 61 72 61 74 65 20 73 74 61 67 65 73 20 6f 66 20 74 68 61 74 0a ~ "~ process, which seems quite involved." 7e 20 70 72 6f 63 65 73 73 2c 20 77 68 69 63 68 20 73 65 65 6d 73 20 71 75 69 74 65 20 69 6e 76 6f 6c 76 65 64 2e 0a ~ "~" 7e 0a ~ "~ That is correct: It is quite involved. It would be nice" ~ " if there were a" 7e 20 20 20 54 68 61 74 20 69 73 20 63 6f 72 72 65 63 74 3a 20 49 74 20 69 73 20 71 75 69 74 65 20 69 6e 76 6f 6c 76 65 64 2e 20 49 74 20 77 6f 75 6c 64 20 62 65 20 6e 69 63 65 20 69 66 20 74 68 65 72 65 20 77 65 72 65 20 61 0a ~ "~ simple trick, but this appears to be essential" ~ " complexity. Several" 7e 20 73 69 6d 70 6c 65 20 74 72 69 63 6b 2c 20 62 75 74 20 74 68 69 73 20 61 70 70 65 61 72 73 20 74 6f 20 62 65 20 65 73 73 65 6e 74 69 61 6c 20 63 6f 6d 70 6c 65 78 69 74 79 2e 20 53 65 76 65 72 61 6c 0a ~ "~ approaches were considered. In principle it would be" ~ " possible to have a" 7e 20 61 70 70 72 6f 61 63 68 65 73 20 77 65 72 65 20 63 6f 6e 73 69 64 65 72 65 64 2e 20 49 6e 20 70 72 69 6e 63 69 70 6c 65 20 69 74 20 77 6f 75 6c 64 20 62 65 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 68 61 76 65 20 61 0a ~ "~ specific trap defined here in this file for every word" ~ " that generates" 7e 20 73 70 65 63 69 66 69 63 20 74 72 61 70 20 64 65 66 69 6e 65 64 20 68 65 72 65 20 69 6e 20 74 68 69 73 20 66 69 6c 65 20 66 6f 72 20 65 76 65 72 79 20 77 6f 72 64 20 74 68 61 74 20 67 65 6e 65 72 61 74 65 73 0a ~ "~ nontrivial output, and keep knowledge of what information" ~ " to gather from" 7e 20 6e 6f 6e 74 72 69 76 69 61 6c 20 6f 75 74 70 75 74 2c 20 61 6e 64 20 6b 65 65 70 20 6b 6e 6f 77 6c 65 64 67 65 20 6f 66 20 77 68 61 74 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 6f 20 67 61 74 68 65 72 20 66 72 6f 6d 0a ~ "~ those words in the trap definitions. However, that would" ~ " bind the important" 7e 20 74 68 6f 73 65 20 77 6f 72 64 73 20 69 6e 20 74 68 65 20 74 72 61 70 20 64 65 66 69 6e 69 74 69 6f 6e 73 2e 20 48 6f 77 65 76 65 72 2c 20 74 68 61 74 20 77 6f 75 6c 64 20 62 69 6e 64 20 74 68 65 20 69 6d 70 6f 72 74 61 6e 74 0a ~ "~ semantics quite closely to the already-overwhelming topic" ~ " of the" 7e 20 73 65 6d 61 6e 74 69 63 73 20 71 75 69 74 65 20 63 6c 6f 73 65 6c 79 20 74 6f 20 74 68 65 20 61 6c 72 65 61 64 79 2d 6f 76 65 72 77 68 65 6c 6d 69 6e 67 20 74 6f 70 69 63 20 6f 66 20 74 68 65 0a ~ "~ transformation data structures, and make it all but" ~ " impossible to port" 7e 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 2c 20 61 6e 64 20 6d 61 6b 65 20 69 74 20 61 6c 6c 20 62 75 74 20 69 6d 70 6f 73 73 69 62 6c 65 20 74 6f 20 70 6f 72 74 0a ~ "~ Evocation to a new architecture. The knowledge we wish to" ~ " capture is really" 7e 20 45 76 6f 63 61 74 69 6f 6e 20 74 6f 20 61 20 6e 65 77 20 61 72 63 68 69 74 65 63 74 75 72 65 2e 20 54 68 65 20 6b 6e 6f 77 6c 65 64 67 65 20 77 65 20 77 69 73 68 20 74 6f 20 63 61 70 74 75 72 65 20 69 73 20 72 65 61 6c 6c 79 0a ~ "~ knowledge about an instruction set architecture, not" ~ " about data structures." 7e 20 6b 6e 6f 77 6c 65 64 67 65 20 61 62 6f 75 74 20 61 6e 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 73 65 74 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 6e 6f 74 20 61 62 6f 75 74 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 2e 0a ~ "~" 7e 0a ~ "~ Instead, following the principle that different kinds" ~ " of knowledge on the" 7e 20 20 20 49 6e 73 74 65 61 64 2c 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 70 72 69 6e 63 69 70 6c 65 20 74 68 61 74 20 64 69 66 66 65 72 65 6e 74 20 6b 69 6e 64 73 20 6f 66 20 6b 6e 6f 77 6c 65 64 67 65 20 6f 6e 20 74 68 65 0a ~ "~ same topic should live close together, we've defined a" ~ " magic-comment syntax" 7e 20 73 61 6d 65 20 74 6f 70 69 63 20 73 68 6f 75 6c 64 20 6c 69 76 65 20 63 6c 6f 73 65 20 74 6f 67 65 74 68 65 72 2c 20 77 65 27 76 65 20 64 65 66 69 6e 65 64 20 61 20 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 20 73 79 6e 74 61 78 0a ~ "~ which allows the assembly-language words in" ~ " language/static/amd64.e to" 7e 20 77 68 69 63 68 20 61 6c 6c 6f 77 73 20 74 68 65 20 61 73 73 65 6d 62 6c 79 2d 6c 61 6e 67 75 61 67 65 20 77 6f 72 64 73 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 61 6d 64 36 34 2e 65 20 74 6f 0a ~ "~ describe their own metadata, and is versatile enough to" ~ " do the same for" 7e 20 64 65 73 63 72 69 62 65 20 74 68 65 69 72 20 6f 77 6e 20 6d 65 74 61 64 61 74 61 2c 20 61 6e 64 20 69 73 20 76 65 72 73 61 74 69 6c 65 20 65 6e 6f 75 67 68 20 74 6f 20 64 6f 20 74 68 65 20 73 61 6d 65 20 66 6f 72 0a ~ "~ future architectures." 7e 20 66 75 74 75 72 65 20 61 72 63 68 69 74 65 63 74 75 72 65 73 2e 0a ~ "~" 7e 0a ~ "~ When the compiler operates normally, without the hex" ~ " transform, these" 7e 20 20 20 57 68 65 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6f 70 65 72 61 74 65 73 20 6e 6f 72 6d 61 6c 6c 79 2c 20 77 69 74 68 6f 75 74 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 73 65 0a ~ "~ magic comments are simply regular comments, and are" ~ " discarded as the" 7e 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 73 69 6d 70 6c 79 20 72 65 67 75 6c 61 72 20 63 6f 6d 6d 65 6e 74 73 2c 20 61 6e 64 20 61 72 65 20 64 69 73 63 61 72 64 65 64 20 61 73 20 74 68 65 0a ~ "~ interpreter finds them. When the compiler runs under the" ~ " hex transform, they" 7e 20 69 6e 74 65 72 70 72 65 74 65 72 20 66 69 6e 64 73 20 74 68 65 6d 2e 20 57 68 65 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 72 75 6e 73 20 75 6e 64 65 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 79 0a ~ "~ are instead recognized as commands to be processed by the" ~ " hex transform." 7e 20 61 72 65 20 69 6e 73 74 65 61 64 20 72 65 63 6f 67 6e 69 7a 65 64 20 61 73 20 63 6f 6d 6d 61 6e 64 73 20 74 6f 20 62 65 20 70 72 6f 63 65 73 73 65 64 20 62 79 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~ Magic comments can only appear in the body of a word" ~ " being compiled, not at" 7e 20 4d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 63 61 6e 20 6f 6e 6c 79 20 61 70 70 65 61 72 20 69 6e 20 74 68 65 20 62 6f 64 79 20 6f 66 20 61 20 77 6f 72 64 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 2c 20 6e 6f 74 20 61 74 0a ~ "~ the top level. The hex transform intervenes in the" ~ " compilation process to" 7e 20 74 68 65 20 74 6f 70 20 6c 65 76 65 6c 2e 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 69 6e 74 65 72 76 65 6e 65 73 20 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 74 6f 0a ~ "~ insert calls to its own internal words, which are" ~ " executed, not when the" 7e 20 69 6e 73 65 72 74 20 63 61 6c 6c 73 20 74 6f 20 69 74 73 20 6f 77 6e 20 69 6e 74 65 72 6e 61 6c 20 77 6f 72 64 73 2c 20 77 68 69 63 68 20 61 72 65 20 65 78 65 63 75 74 65 64 2c 20 6e 6f 74 20 77 68 65 6e 20 74 68 65 0a ~ "~ comment is read, but later, when the word it was compiled" ~ " into is called." 7e 20 63 6f 6d 6d 65 6e 74 20 69 73 20 72 65 61 64 2c 20 62 75 74 20 6c 61 74 65 72 2c 20 77 68 65 6e 20 74 68 65 20 77 6f 72 64 20 69 74 20 77 61 73 20 63 6f 6d 70 69 6c 65 64 20 69 6e 74 6f 20 69 73 20 63 61 6c 6c 65 64 2e 0a ~ "~ When the word in question is itself part of the compiler," ~ " the magic comments" 7e 20 57 68 65 6e 20 74 68 65 20 77 6f 72 64 20 69 6e 20 71 75 65 73 74 69 6f 6e 20 69 73 20 69 74 73 65 6c 66 20 70 61 72 74 20 6f 66 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 74 68 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 0a ~ "~ will be able to see and work with all the state that" ~ " exists as it runs, and" 7e 20 77 69 6c 6c 20 62 65 20 61 62 6c 65 20 74 6f 20 73 65 65 20 61 6e 64 20 77 6f 72 6b 20 77 69 74 68 20 61 6c 6c 20 74 68 65 20 73 74 61 74 65 20 74 68 61 74 20 65 78 69 73 74 73 20 61 73 20 69 74 20 72 75 6e 73 2c 20 61 6e 64 0a ~ "~ gather it as they wish." 7e 20 67 61 74 68 65 72 20 69 74 20 61 73 20 74 68 65 79 20 77 69 73 68 2e 0a ~ "~" 7e 0a ~ "~ There are several kinds of magic comment. All of them" ~ " begin with the" 7e 20 20 20 54 68 65 72 65 20 61 72 65 20 73 65 76 65 72 61 6c 20 6b 69 6e 64 73 20 6f 66 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 2e 20 41 6c 6c 20 6f 66 20 74 68 65 6d 20 62 65 67 69 6e 20 77 69 74 68 20 74 68 65 0a ~ "~ characters : and space as the first two characters of the" ~ " comment body (and" 7e 20 63 68 61 72 61 63 74 65 72 73 20 3a 20 61 6e 64 20 73 70 61 63 65 20 61 73 20 74 68 65 20 66 69 72 73 74 20 74 77 6f 20 63 68 61 72 61 63 74 65 72 73 20 6f 66 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 62 6f 64 79 20 28 61 6e 64 0a ~ "~ don't forget that there's a space after ~, as well). The" ~ " syntax on the rest" 7e 20 64 6f 6e 27 74 20 66 6f 72 67 65 74 20 74 68 61 74 20 74 68 65 72 65 27 73 20 61 20 73 70 61 63 65 20 61 66 74 65 72 20 7e 2c 20 61 73 20 77 65 6c 6c 29 2e 20 54 68 65 20 73 79 6e 74 61 78 20 6f 6e 20 74 68 65 20 72 65 73 74 0a ~ "~ of the line determines what type of command it is." 7e 20 6f 66 20 74 68 65 20 6c 69 6e 65 20 64 65 74 65 72 6d 69 6e 65 73 20 77 68 61 74 20 74 79 70 65 20 6f 66 20 63 6f 6d 6d 61 6e 64 20 69 74 20 69 73 2e 0a ~ "~" 7e 0a ~ "~ Here are some examples:" 7e 20 20 20 48 65 72 65 20 61 72 65 20 73 6f 6d 65 20 65 78 61 6d 70 6c 65 73 3a 0a ~ "~" 7e 0a ~ "~ ~ : Intriguing commentary goes here." 7e 20 20 20 7e 20 3a 20 49 6e 74 72 69 67 75 69 6e 67 20 63 6f 6d 6d 65 6e 74 61 72 79 20 67 6f 65 73 20 68 65 72 65 2e 0a ~ "~ ~ : 5 This comment describes the next five bytes of" ~ " output." 7e 20 20 20 7e 20 3a 20 35 20 54 68 69 73 20 63 6f 6d 6d 65 6e 74 20 64 65 73 63 72 69 62 65 73 20 74 68 65 20 6e 65 78 74 20 66 69 76 65 20 62 79 74 65 73 20 6f 66 20 6f 75 74 70 75 74 2e 0a ~ "~ 777 pack32 ~ : -4 This comment describes the previous" ~ " four bytes." 7e 20 20 20 37 37 37 20 70 61 63 6b 33 32 20 7e 20 3a 20 2d 34 20 54 68 69 73 20 63 6f 6d 6d 65 6e 74 20 64 65 73 63 72 69 62 65 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 66 6f 75 72 20 62 79 74 65 73 2e 0a ~ "~" 7e 0a ~ "~ ~ : indent" 7e 20 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ "~ ~ : deindent" 7e 20 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ "~ ~ : fresh-line" 7e 20 20 20 7e 20 3a 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ "~ ~ : blank-line" 7e 20 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ "~" 7e 0a ~ "~ ~ : 1 adjust-length" 7e 20 20 20 7e 20 3a 20 31 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 0a ~ "~ ~ : -10 adjust-start" 7e 20 20 20 7e 20 3a 20 2d 31 30 20 61 64 6a 75 73 74 2d 73 74 61 72 74 0a ~ "~ ~ : 1 data-adjust-length" 7e 20 20 20 7e 20 3a 20 31 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 0a ~ "~ ~ : -1 data-adjust-start" 7e 20 20 20 7e 20 3a 20 2d 31 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 73 74 61 72 74 0a ~ "~" 7e 0a ~ "~ ~ : 0x1000 set-output-point" 7e 20 20 20 7e 20 3a 20 30 78 31 30 30 30 20 73 65 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ "~ ~ : 8 adjust-output-point" 7e 20 20 20 7e 20 3a 20 38 20 61 64 6a 75 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ "~ ~ : data-set-output-point" 7e 20 20 20 7e 20 3a 20 64 61 74 61 2d 73 65 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ "~ ~ : 1 data-adjust-output-point" 7e 20 20 20 7e 20 3a 20 31 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ "~" 7e 0a ~ "~ ~ : 1 suppress" 7e 20 20 20 7e 20 3a 20 31 20 73 75 70 70 72 65 73 73 0a ~ "~ ~ : delete-first-comment-at-output-point" 7e 20 20 20 7e 20 3a 20 64 65 6c 65 74 65 2d 66 69 72 73 74 2d 63 6f 6d 6d 65 6e 74 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ "~ ~ : delete-last-comment-at-output-point" 7e 20 20 20 7e 20 3a 20 64 65 6c 65 74 65 2d 6c 61 73 74 2d 63 6f 6d 6d 65 6e 74 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ "~" 7e 0a ~ "~ ~ : Do a thing with # and # ?" 7e 20 20 20 7e 20 3a 20 44 6f 20 61 20 74 68 69 6e 67 20 77 69 74 68 20 23 20 61 6e 64 20 23 20 3f 0a ~ "~ ~ : provide-decimal" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 64 65 63 69 6d 61 6c 0a ~ "~ ~ : provide-hex" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ "~ ~ : provide-hex8" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 38 0a ~ "~ ~ : provide-hex16" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 31 36 0a ~ "~ ~ : provide-hex32" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 33 32 0a ~ "~ ~ : provide-hex64" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 36 34 0a ~ "~ ~ : provide-string" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 0a ~ "~ ~ : provide-string-copy" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 2d 63 6f 70 79 0a ~ "~ ~ : provide-keyword" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 6b 65 79 77 6f 72 64 0a ~ "~ ~ : provide-data" 7e 20 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 64 61 74 61 0a ~ "~ ~ : drop-subitem" 7e 20 20 20 7e 20 3a 20 64 72 6f 70 2d 73 75 62 69 74 65 6d 0a ~ "~ ~ : swap-subitems" 7e 20 20 20 7e 20 3a 20 73 77 61 70 2d 73 75 62 69 74 65 6d 73 0a ~ "~ ~ : 3 roll-subitems" 7e 20 20 20 7e 20 3a 20 33 20 72 6f 6c 6c 2d 73 75 62 69 74 65 6d 73 0a ~ "~" 7e 0a ~ "~ By the way, the reason it's possible to write these" ~ " examples is that" 7e 20 20 20 42 79 20 74 68 65 20 77 61 79 2c 20 74 68 65 20 72 65 61 73 6f 6e 20 69 74 27 73 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 77 72 69 74 65 20 74 68 65 73 65 20 65 78 61 6d 70 6c 65 73 20 69 73 20 74 68 61 74 0a ~ "~ they're all embedded within an outer comment, the text" ~ " you're reading, so" 7e 20 74 68 65 79 27 72 65 20 61 6c 6c 20 65 6d 62 65 64 64 65 64 20 77 69 74 68 69 6e 20 61 6e 20 6f 75 74 65 72 20 63 6f 6d 6d 65 6e 74 2c 20 74 68 65 20 74 65 78 74 20 79 6f 75 27 72 65 20 72 65 61 64 69 6e 67 2c 20 73 6f 0a ~ "~ they don't look like real magic comments to the hex" ~ " transform. Hopefully" 7e 20 74 68 65 79 20 64 6f 6e 27 74 20 6c 6f 6f 6b 20 6c 69 6b 65 20 72 65 61 6c 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 74 6f 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 48 6f 70 65 66 75 6c 6c 79 0a ~ "~ that's not too confusing; there isn't really another" ~ " way." 7e 20 74 68 61 74 27 73 20 6e 6f 74 20 74 6f 6f 20 63 6f 6e 66 75 73 69 6e 67 3b 20 74 68 65 72 65 20 69 73 6e 27 74 20 72 65 61 6c 6c 79 20 61 6e 6f 74 68 65 72 20 77 61 79 2e 0a ~ "~" 7e 0a ~ "~ So. You'll have noticed that some magic comments seem" ~ " to be descriptive" 7e 20 20 20 53 6f 2e 20 59 6f 75 27 6c 6c 20 68 61 76 65 20 6e 6f 74 69 63 65 64 20 74 68 61 74 20 73 6f 6d 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 73 65 65 6d 20 74 6f 20 62 65 20 64 65 73 63 72 69 70 74 69 76 65 0a ~ "~ text, and others seem to be commands. Every magic" ~ " comment, in one way or" 7e 20 74 65 78 74 2c 20 61 6e 64 20 6f 74 68 65 72 73 20 73 65 65 6d 20 74 6f 20 62 65 20 63 6f 6d 6d 61 6e 64 73 2e 20 45 76 65 72 79 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 2c 20 69 6e 20 6f 6e 65 20 77 61 79 20 6f 72 0a ~ "~ another, creates or manipulates the metadata entries," ~ " which are stored in" 7e 20 61 6e 6f 74 68 65 72 2c 20 63 72 65 61 74 65 73 20 6f 72 20 6d 61 6e 69 70 75 6c 61 74 65 73 20 74 68 65 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 2c 20 77 68 69 63 68 20 61 72 65 20 73 74 6f 72 65 64 20 69 6e 0a ~ "~ an array inside the output metadata as global mutable" ~ " state. There are" 7e 20 61 6e 20 61 72 72 61 79 20 69 6e 73 69 64 65 20 74 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 61 73 20 67 6c 6f 62 61 6c 20 6d 75 74 61 62 6c 65 20 73 74 61 74 65 2e 20 54 68 65 72 65 20 61 72 65 0a ~ "~ several phases of processing, and if you've gotten this" ~ " far, you likely need" 7e 20 73 65 76 65 72 61 6c 20 70 68 61 73 65 73 20 6f 66 20 70 72 6f 63 65 73 73 69 6e 67 2c 20 61 6e 64 20 69 66 20 79 6f 75 27 76 65 20 67 6f 74 74 65 6e 20 74 68 69 73 20 66 61 72 2c 20 79 6f 75 20 6c 69 6b 65 6c 79 20 6e 65 65 64 0a ~ "~ to understand what they are and what order they happen" ~ " in." 7e 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 77 68 61 74 20 74 68 65 79 20 61 72 65 20 61 6e 64 20 77 68 61 74 20 6f 72 64 65 72 20 74 68 65 79 20 68 61 70 70 65 6e 20 69 6e 2e 0a ~ "~" 7e 0a ~ "~ The simplest kind of comment is the "line comment", the" ~ " first example" 7e 20 20 20 54 68 65 20 73 69 6d 70 6c 65 73 74 20 6b 69 6e 64 20 6f 66 20 63 6f 6d 6d 65 6e 74 20 69 73 20 74 68 65 20 22 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 22 2c 20 74 68 65 20 66 69 72 73 74 20 65 78 61 6d 70 6c 65 0a ~ "~ above. Any comment that doesn't match some more-specific" ~ " syntax is treated" 7e 20 61 62 6f 76 65 2e 20 41 6e 79 20 63 6f 6d 6d 65 6e 74 20 74 68 61 74 20 64 6f 65 73 6e 27 74 20 6d 61 74 63 68 20 73 6f 6d 65 20 6d 6f 72 65 2d 73 70 65 63 69 66 69 63 20 73 79 6e 74 61 78 20 69 73 20 74 72 65 61 74 65 64 0a ~ "~ as a line comment. It has not escaped Irenes' notice that" ~ " this means your" 7e 20 61 73 20 61 20 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 2e 20 49 74 20 68 61 73 20 6e 6f 74 20 65 73 63 61 70 65 64 20 49 72 65 6e 65 73 27 20 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 69 73 20 6d 65 61 6e 73 20 79 6f 75 72 0a ~ "~ syntax errors will seem to half-work; sorry about that." ~ " When a line comment" 7e 20 73 79 6e 74 61 78 20 65 72 72 6f 72 73 20 77 69 6c 6c 20 73 65 65 6d 20 74 6f 20 68 61 6c 66 2d 77 6f 72 6b 3b 20 73 6f 72 72 79 20 61 62 6f 75 74 20 74 68 61 74 2e 20 57 68 65 6e 20 61 20 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 0a ~ "~ is executed, it creates a metadata entry at the end of" ~ " the array of entries," 7e 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 69 74 20 63 72 65 61 74 65 73 20 61 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 61 72 72 61 79 20 6f 66 20 65 6e 74 72 69 65 73 2c 0a ~ "~ of -entry-type-line-comment, attached to the latest" ~ " output point." 7e 20 6f 66 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 2c 20 61 74 74 61 63 68 65 64 20 74 6f 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2e 0a ~ "~" 7e 0a ~ "~ This is the general pattern: Any magic comment that" ~ " creates a metadata" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 67 65 6e 65 72 61 6c 20 70 61 74 74 65 72 6e 3a 20 41 6e 79 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 74 68 61 74 20 63 72 65 61 74 65 73 20 61 20 6d 65 74 61 64 61 74 61 0a ~ "~ entry will always create it at the end of the entry" ~ " array, and will always" 7e 20 65 6e 74 72 79 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 63 72 65 61 74 65 20 69 74 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 2c 20 61 6e 64 20 77 69 6c 6c 20 61 6c 77 61 79 73 0a ~ "~ attach it to the latest output point as of the time the" ~ " comment executes." 7e 20 61 74 74 61 63 68 20 69 74 20 74 6f 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 61 73 20 6f 66 20 74 68 65 20 74 69 6d 65 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 65 78 65 63 75 74 65 73 2e 0a ~ "~ Notice that, although the entry array will eventually be" ~ " sorted by the" 7e 20 4e 6f 74 69 63 65 20 74 68 61 74 2c 20 61 6c 74 68 6f 75 67 68 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 20 77 69 6c 6c 20 65 76 65 6e 74 75 61 6c 6c 79 20 62 65 20 73 6f 72 74 65 64 20 62 79 20 74 68 65 0a ~ "~ addresses entries are attached to, at the time entries" ~ " are created they're" 7e 20 61 64 64 72 65 73 73 65 73 20 65 6e 74 72 69 65 73 20 61 72 65 20 61 74 74 61 63 68 65 64 20 74 6f 2c 20 61 74 20 74 68 65 20 74 69 6d 65 20 65 6e 74 72 69 65 73 20 61 72 65 20 63 72 65 61 74 65 64 20 74 68 65 79 27 72 65 0a ~ "~ simply appended. This is rarely an important distinction," ~ " but when it is, it" 7e 20 73 69 6d 70 6c 79 20 61 70 70 65 6e 64 65 64 2e 20 54 68 69 73 20 69 73 20 72 61 72 65 6c 79 20 61 6e 20 69 6d 70 6f 72 74 61 6e 74 20 64 69 73 74 69 6e 63 74 69 6f 6e 2c 20 62 75 74 20 77 68 65 6e 20 69 74 20 69 73 2c 20 69 74 0a ~ "~ is." 7e 20 69 73 2e 0a ~ "~" 7e 0a ~ "~ What is the latest output point? Well, the hex" ~ " transform has trapped all" 7e 20 20 20 57 68 61 74 20 69 73 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 3f 20 57 65 6c 6c 2c 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 68 61 73 20 74 72 61 70 70 65 64 20 61 6c 6c 0a ~ "~ the words from core that compilation processes use to" ~ " directly append bytes" 7e 20 74 68 65 20 77 6f 72 64 73 20 66 72 6f 6d 20 63 6f 72 65 20 74 68 61 74 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 65 73 20 75 73 65 20 74 6f 20 64 69 72 65 63 74 6c 79 20 61 70 70 65 6e 64 20 62 79 74 65 73 0a ~ "~ to the label-loop buffer, including pack8, packstring," ~ " and the variants" 7e 20 74 6f 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2c 20 69 6e 63 6c 75 64 69 6e 67 20 70 61 63 6b 38 2c 20 70 61 63 6b 73 74 72 69 6e 67 2c 20 61 6e 64 20 74 68 65 20 76 61 72 69 61 6e 74 73 0a ~ "~ thereof. The traps are able to tell when the destination" ~ " is in the" 7e 20 74 68 65 72 65 6f 66 2e 20 54 68 65 20 74 72 61 70 73 20 61 72 65 20 61 62 6c 65 20 74 6f 20 74 65 6c 6c 20 77 68 65 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 69 73 20 69 6e 20 74 68 65 0a ~ "~ label-loop buffer, and they ignore any writes that" ~ " aren't. The traps keep" 7e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2c 20 61 6e 64 20 74 68 65 79 20 69 67 6e 6f 72 65 20 61 6e 79 20 77 72 69 74 65 73 20 74 68 61 74 20 61 72 65 6e 27 74 2e 20 54 68 65 20 74 72 61 70 73 20 6b 65 65 70 0a ~ "~ track of the next address AFTER whatever was just" ~ " written, and store that" 7e 20 74 72 61 63 6b 20 6f 66 20 74 68 65 20 6e 65 78 74 20 61 64 64 72 65 73 73 20 41 46 54 45 52 20 77 68 61 74 65 76 65 72 20 77 61 73 20 6a 75 73 74 20 77 72 69 74 74 65 6e 2c 20 61 6e 64 20 73 74 6f 72 65 20 74 68 61 74 0a ~ "~ in the output metadata header so magic comments can make" ~ " use of it." 7e 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 68 65 61 64 65 72 20 73 6f 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 63 61 6e 20 6d 61 6b 65 20 75 73 65 20 6f 66 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ It's necessary to take this sneaky approach, because" ~ " the compiler is free" 7e 20 20 20 49 74 27 73 20 6e 65 63 65 73 73 61 72 79 20 74 6f 20 74 61 6b 65 20 74 68 69 73 20 73 6e 65 61 6b 79 20 61 70 70 72 6f 61 63 68 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 66 72 65 65 0a ~ "~ to write things in any order it wants; the label loop" ~ " goes back to the start" 7e 20 74 6f 20 77 72 69 74 65 20 74 68 69 6e 67 73 20 69 6e 20 61 6e 79 20 6f 72 64 65 72 20 69 74 20 77 61 6e 74 73 3b 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 67 6f 65 73 20 62 61 63 6b 20 74 6f 20 74 68 65 20 73 74 61 72 74 0a ~ "~ every so often, and the high-level flow-control words" ~ " even slide things" 7e 20 65 76 65 72 79 20 73 6f 20 6f 66 74 65 6e 2c 20 61 6e 64 20 74 68 65 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 20 65 76 65 6e 20 73 6c 69 64 65 20 74 68 69 6e 67 73 0a ~ "~ around after the fact. The compiler is also free to pass" ~ " around addresses" 7e 20 61 72 6f 75 6e 64 20 61 66 74 65 72 20 74 68 65 20 66 61 63 74 2e 20 54 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 61 6c 73 6f 20 66 72 65 65 20 74 6f 20 70 61 73 73 20 61 72 6f 75 6e 64 20 61 64 64 72 65 73 73 65 73 0a ~ "~ however it wants within itself, and without restricting" ~ " that, there's no way" 7e 20 68 6f 77 65 76 65 72 20 69 74 20 77 61 6e 74 73 20 77 69 74 68 69 6e 20 69 74 73 65 6c 66 2c 20 61 6e 64 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6e 67 20 74 68 61 74 2c 20 74 68 65 72 65 27 73 20 6e 6f 20 77 61 79 0a ~ "~ for the hex transform to know which value represents the" ~ " place stuff MIGHT" 7e 20 66 6f 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 74 6f 20 6b 6e 6f 77 20 77 68 69 63 68 20 76 61 6c 75 65 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 70 6c 61 63 65 20 73 74 75 66 66 20 4d 49 47 48 54 0a ~ "~ be written to." 7e 20 62 65 20 77 72 69 74 74 65 6e 20 74 6f 2e 0a ~ "~" 7e 0a ~ "~ The semantics of the latest output point are simple" ~ " enough that they're" 7e 20 20 20 54 68 65 20 73 65 6d 61 6e 74 69 63 73 20 6f 66 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 61 72 65 20 73 69 6d 70 6c 65 20 65 6e 6f 75 67 68 20 74 68 61 74 20 74 68 65 79 27 72 65 0a ~ "~ easy to keep in mind while writing magic comments. In" ~ " practice, the output" 7e 20 65 61 73 79 20 74 6f 20 6b 65 65 70 20 69 6e 20 6d 69 6e 64 20 77 68 69 6c 65 20 77 72 69 74 69 6e 67 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 2e 20 49 6e 20 70 72 61 63 74 69 63 65 2c 20 74 68 65 20 6f 75 74 70 75 74 0a ~ "~ point is almost never the cause of confusion about the" ~ " behavior of magic" 7e 20 70 6f 69 6e 74 20 69 73 20 61 6c 6d 6f 73 74 20 6e 65 76 65 72 20 74 68 65 20 63 61 75 73 65 20 6f 66 20 63 6f 6e 66 75 73 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 6d 61 67 69 63 0a ~ "~ comments, but it's important to know about since it's the" ~ " input the whole" 7e 20 63 6f 6d 6d 65 6e 74 73 2c 20 62 75 74 20 69 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 74 6f 20 6b 6e 6f 77 20 61 62 6f 75 74 20 73 69 6e 63 65 20 69 74 27 73 20 74 68 65 20 69 6e 70 75 74 20 74 68 65 20 77 68 6f 6c 65 0a ~ "~ thing starts with." 7e 20 74 68 69 6e 67 20 73 74 61 72 74 73 20 77 69 74 68 2e 0a ~ "~" 7e 0a ~ "~ Now, one thing to keep in mind is that every metadata" ~ " entry has both an" 7e 20 20 20 4e 6f 77 2c 20 6f 6e 65 20 74 68 69 6e 67 20 74 6f 20 6b 65 65 70 20 69 6e 20 6d 69 6e 64 20 69 73 20 74 68 61 74 20 65 76 65 72 79 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 68 61 73 20 62 6f 74 68 20 61 6e 0a ~ "~ address in the label-loop buffer that it attaches to, and" ~ " a length field." 7e 20 61 64 64 72 65 73 73 20 69 6e 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 74 68 61 74 20 69 74 20 61 74 74 61 63 68 65 73 20 74 6f 2c 20 61 6e 64 20 61 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 2e 0a ~ "~ Line comments insert themselves in between lines of" ~ " output in the hex dump," 7e 20 4c 69 6e 65 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 73 65 72 74 20 74 68 65 6d 73 65 6c 76 65 73 20 69 6e 20 62 65 74 77 65 65 6e 20 6c 69 6e 65 73 20 6f 66 20 6f 75 74 70 75 74 20 69 6e 20 74 68 65 20 68 65 78 20 64 75 6d 70 2c 0a ~ "~ and don't otherwise affect the surrounding formatting, so" ~ " they don't need to" 7e 20 61 6e 64 20 64 6f 6e 27 74 20 6f 74 68 65 72 77 69 73 65 20 61 66 66 65 63 74 20 74 68 65 20 73 75 72 72 6f 75 6e 64 69 6e 67 20 66 6f 72 6d 61 74 74 69 6e 67 2c 20 73 6f 20 74 68 65 79 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 0a ~ "~ make use of the length and it's always set to zero." 7e 20 6d 61 6b 65 20 75 73 65 20 6f 66 20 74 68 65 20 6c 65 6e 67 74 68 20 61 6e 64 20 69 74 27 73 20 61 6c 77 61 79 73 20 73 65 74 20 74 6f 20 7a 65 72 6f 2e 0a ~ "~" 7e 0a ~ "~ Now the second example above, which starts with the" ~ " number 5 before its" 7e 20 20 20 4e 6f 77 20 74 68 65 20 73 65 63 6f 6e 64 20 65 78 61 6d 70 6c 65 20 61 62 6f 76 65 2c 20 77 68 69 63 68 20 73 74 61 72 74 73 20 77 69 74 68 20 74 68 65 20 6e 75 6d 62 65 72 20 35 20 62 65 66 6f 72 65 20 69 74 73 0a ~ "~ descriptive text. When the first space-separated word of" ~ " a magic comment's" 7e 20 64 65 73 63 72 69 70 74 69 76 65 20 74 65 78 74 2e 20 57 68 65 6e 20 74 68 65 20 66 69 72 73 74 20 73 70 61 63 65 2d 73 65 70 61 72 61 74 65 64 20 77 6f 72 64 20 6f 66 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 27 73 0a ~ "~ body is a valid integer literal, this is taken as a" ~ " parameter; different" 7e 20 62 6f 64 79 20 69 73 20 61 20 76 61 6c 69 64 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 2c 20 74 68 69 73 20 69 73 20 74 61 6b 65 6e 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 3b 20 64 69 66 66 65 72 65 6e 74 0a ~ "~ types of magic comment use that parameter in different" ~ " ways. The parameter" 7e 20 74 79 70 65 73 20 6f 66 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 75 73 65 20 74 68 61 74 20 70 61 72 61 6d 65 74 65 72 20 69 6e 20 64 69 66 66 65 72 65 6e 74 20 77 61 79 73 2e 20 54 68 65 20 70 61 72 61 6d 65 74 65 72 0a ~ "~ can be positive or negative, and can be written in any" ~ " base Evocation" 7e 20 63 61 6e 20 62 65 20 70 6f 73 69 74 69 76 65 20 6f 72 20 6e 65 67 61 74 69 76 65 2c 20 61 6e 64 20 63 61 6e 20 62 65 20 77 72 69 74 74 65 6e 20 69 6e 20 61 6e 79 20 62 61 73 65 20 45 76 6f 63 61 74 69 6f 6e 0a ~ "~ normally supports." 7e 20 6e 6f 72 6d 61 6c 6c 79 20 73 75 70 70 6f 72 74 73 2e 0a ~ "~" 7e 0a ~ "~ When a parameter is given (even if it's zero), and the" ~ " comment doesn't" 7e 20 20 20 57 68 65 6e 20 61 20 70 61 72 61 6d 65 74 65 72 20 69 73 20 67 69 76 65 6e 20 28 65 76 65 6e 20 69 66 20 69 74 27 73 20 7a 65 72 6f 29 2c 20 61 6e 64 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 64 6f 65 73 6e 27 74 0a ~ "~ match some other more-specific syntax, it's treated as a" ~ " "suffix comment"." 7e 20 6d 61 74 63 68 20 73 6f 6d 65 20 6f 74 68 65 72 20 6d 6f 72 65 2d 73 70 65 63 69 66 69 63 20 73 79 6e 74 61 78 2c 20 69 74 27 73 20 74 72 65 61 74 65 64 20 61 73 20 61 20 22 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 22 2e 0a ~ "~ Much like a line comment, when a suffix comment is" ~ " executed, it creates a" 7e 20 4d 75 63 68 20 6c 69 6b 65 20 61 20 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 2c 20 77 68 65 6e 20 61 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 69 74 20 63 72 65 61 74 65 73 20 61 0a ~ "~ metadata entry at the end, of -entry-type-suffix-comment," ~ " attached to the" 7e 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 61 74 20 74 68 65 20 65 6e 64 2c 20 6f 66 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 2c 20 61 74 74 61 63 68 65 64 20 74 6f 20 74 68 65 0a ~ "~ latest output point. The command uses the parameter as" ~ " the initial value of" 7e 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2e 20 54 68 65 20 63 6f 6d 6d 61 6e 64 20 75 73 65 73 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 61 73 20 74 68 65 20 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 20 6f 66 0a ~ "~ the entry's length field, but it's worth being aware that" ~ " other commands may" 7e 20 74 68 65 20 65 6e 74 72 79 27 73 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 2c 20 62 75 74 20 69 74 27 73 20 77 6f 72 74 68 20 62 65 69 6e 67 20 61 77 61 72 65 20 74 68 61 74 20 6f 74 68 65 72 20 63 6f 6d 6d 61 6e 64 73 20 6d 61 79 0a ~ "~ change it later." 7e 20 63 68 61 6e 67 65 20 69 74 20 6c 61 74 65 72 2e 0a ~ "~" 7e 0a ~ "~ It's called a suffix comment because, when all the" ~ " passes described below" 7e 20 20 20 49 74 27 73 20 63 61 6c 6c 65 64 20 61 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 62 65 63 61 75 73 65 2c 20 77 68 65 6e 20 61 6c 6c 20 74 68 65 20 70 61 73 73 65 73 20 64 65 73 63 72 69 62 65 64 20 62 65 6c 6f 77 0a ~ "~ have run and the formatting happens, it will appear at" ~ " the end of a line of" 7e 20 68 61 76 65 20 72 75 6e 20 61 6e 64 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 68 61 70 70 65 6e 73 2c 20 69 74 20 77 69 6c 6c 20 61 70 70 65 61 72 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 61 20 6c 69 6e 65 20 6f 66 0a ~ "~ text, after the byte values it's attached to. Things like" ~ " assembly-language" 7e 20 74 65 78 74 2c 20 61 66 74 65 72 20 74 68 65 20 62 79 74 65 20 76 61 6c 75 65 73 20 69 74 27 73 20 61 74 74 61 63 68 65 64 20 74 6f 2e 20 54 68 69 6e 67 73 20 6c 69 6b 65 20 61 73 73 65 6d 62 6c 79 2d 6c 61 6e 67 75 61 67 65 0a ~ "~ instructions should almost always be suffix comments," ~ " because this makes it" 7e 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 73 68 6f 75 6c 64 20 61 6c 6d 6f 73 74 20 61 6c 77 61 79 73 20 62 65 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 73 2c 20 62 65 63 61 75 73 65 20 74 68 69 73 20 6d 61 6b 65 73 20 69 74 0a ~ "~ easy for a human reader to see which bytes of machine" ~ " code go with them." 7e 20 65 61 73 79 20 66 6f 72 20 61 20 68 75 6d 61 6e 20 72 65 61 64 65 72 20 74 6f 20 73 65 65 20 77 68 69 63 68 20 62 79 74 65 73 20 6f 66 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 67 6f 20 77 69 74 68 20 74 68 65 6d 2e 0a ~ "~" 7e 0a ~ "~ There's also an implicit way to create a suffix" ~ " comment, which is to have" 7e 20 20 20 54 68 65 72 65 27 73 20 61 6c 73 6f 20 61 6e 20 69 6d 70 6c 69 63 69 74 20 77 61 79 20 74 6f 20 63 72 65 61 74 65 20 61 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 2c 20 77 68 69 63 68 20 69 73 20 74 6f 20 68 61 76 65 0a ~ "~ non-blank words of any kind on the line prior to the" ~ " magic comment. In this" 7e 20 6e 6f 6e 2d 62 6c 61 6e 6b 20 77 6f 72 64 73 20 6f 66 20 61 6e 79 20 6b 69 6e 64 20 6f 6e 20 74 68 65 20 6c 69 6e 65 20 70 72 69 6f 72 20 74 6f 20 74 68 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 2e 20 49 6e 20 74 68 69 73 0a ~ "~ case, the default is to be a suffix comment rather than a" ~ " line comment." 7e 20 63 61 73 65 2c 20 74 68 65 20 64 65 66 61 75 6c 74 20 69 73 20 74 6f 20 62 65 20 61 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 20 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 2e 0a ~ "~ Suffix comments created this way will have zero length." 7e 20 53 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 73 20 63 72 65 61 74 65 64 20 74 68 69 73 20 77 61 79 20 77 69 6c 6c 20 68 61 76 65 20 7a 65 72 6f 20 6c 65 6e 67 74 68 2e 0a ~ "~" 7e 0a ~ "~ Before we move on from magic comments that produce" ~ " descriptive text, also" 7e 20 20 20 42 65 66 6f 72 65 20 77 65 20 6d 6f 76 65 20 6f 6e 20 66 72 6f 6d 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 74 68 61 74 20 70 72 6f 64 75 63 65 20 64 65 73 63 72 69 70 74 69 76 65 20 74 65 78 74 2c 20 61 6c 73 6f 0a ~ "~ look at the third example above. This is another suffix" ~ " comment, but it's" 7e 20 6c 6f 6f 6b 20 61 74 20 74 68 65 20 74 68 69 72 64 20 65 78 61 6d 70 6c 65 20 61 62 6f 76 65 2e 20 54 68 69 73 20 69 73 20 61 6e 6f 74 68 65 72 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 2c 20 62 75 74 20 69 74 27 73 0a ~ "~ got a negative number as its parameter. It's got a bit of" ~ " code on the line" 7e 20 67 6f 74 20 61 20 6e 65 67 61 74 69 76 65 20 6e 75 6d 62 65 72 20 61 73 20 69 74 73 20 70 61 72 61 6d 65 74 65 72 2e 20 49 74 27 73 20 67 6f 74 20 61 20 62 69 74 20 6f 66 20 63 6f 64 65 20 6f 6e 20 74 68 65 20 6c 69 6e 65 0a ~ "~ before it, to illustrate the typical way these negative" ~ " parameters are used." 7e 20 62 65 66 6f 72 65 20 69 74 2c 20 74 6f 20 69 6c 6c 75 73 74 72 61 74 65 20 74 68 65 20 74 79 70 69 63 61 6c 20 77 61 79 20 74 68 65 73 65 20 6e 65 67 61 74 69 76 65 20 70 61 72 61 6d 65 74 65 72 73 20 61 72 65 20 75 73 65 64 2e 0a ~ "~ Just as a suffix comment with a positive length describes" ~ " a span of bytes" 7e 20 4a 75 73 74 20 61 73 20 61 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 77 69 74 68 20 61 20 70 6f 73 69 74 69 76 65 20 6c 65 6e 67 74 68 20 64 65 73 63 72 69 62 65 73 20 61 20 73 70 61 6e 20 6f 66 20 62 79 74 65 73 0a ~ "~ with its start anchored at the address the comment is" ~ " attached to, so when" 7e 20 77 69 74 68 20 69 74 73 20 73 74 61 72 74 20 61 6e 63 68 6f 72 65 64 20 61 74 20 74 68 65 20 61 64 64 72 65 73 73 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 69 73 20 61 74 74 61 63 68 65 64 20 74 6f 2c 20 73 6f 20 77 68 65 6e 0a ~ "~ the length is negative, the span of bytes has its END" ~ " anchored at the" 7e 20 74 68 65 20 6c 65 6e 67 74 68 20 69 73 20 6e 65 67 61 74 69 76 65 2c 20 74 68 65 20 73 70 61 6e 20 6f 66 20 62 79 74 65 73 20 68 61 73 20 69 74 73 20 45 4e 44 20 61 6e 63 68 6f 72 65 64 20 61 74 20 74 68 65 0a ~ "~ address." 7e 20 61 64 64 72 65 73 73 2e 0a ~ "~" 7e 0a ~ "~ You can see examples of how this syntax is useful in" ~ " compilation/elf.e," 7e 20 20 20 59 6f 75 20 63 61 6e 20 73 65 65 20 65 78 61 6d 70 6c 65 73 20 6f 66 20 68 6f 77 20 74 68 69 73 20 73 79 6e 74 61 78 20 69 73 20 75 73 65 66 75 6c 20 69 6e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 65 6c 66 2e 65 2c 0a ~ "~ where it describes fields of various header structures." ~ " When it fits the" 7e 20 77 68 65 72 65 20 69 74 20 64 65 73 63 72 69 62 65 73 20 66 69 65 6c 64 73 20 6f 66 20 76 61 72 69 6f 75 73 20 68 65 61 64 65 72 20 73 74 72 75 63 74 75 72 65 73 2e 20 57 68 65 6e 20 69 74 20 66 69 74 73 20 74 68 65 0a ~ "~ situation, this notation is concise and easy to visually" ~ " skim both in the" 7e 20 73 69 74 75 61 74 69 6f 6e 2c 20 74 68 69 73 20 6e 6f 74 61 74 69 6f 6e 20 69 73 20 63 6f 6e 63 69 73 65 20 61 6e 64 20 65 61 73 79 20 74 6f 20 76 69 73 75 61 6c 6c 79 20 73 6b 69 6d 20 62 6f 74 68 20 69 6e 20 74 68 65 0a ~ "~ actual source code, and in the generated hex dump." 7e 20 61 63 74 75 61 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 61 6e 64 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 68 65 78 20 64 75 6d 70 2e 0a ~ "~" 7e 0a ~ "~ Now let's look at some magic comments that do more" ~ " interesting things." 7e 20 20 20 4e 6f 77 20 6c 65 74 27 73 20 6c 6f 6f 6b 20 61 74 20 73 6f 6d 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 74 68 61 74 20 64 6f 20 6d 6f 72 65 20 69 6e 74 65 72 65 73 74 69 6e 67 20 74 68 69 6e 67 73 2e 0a ~ "~ The two commands "indent" and "deindent" both create an" ~ " entry of" 7e 20 54 68 65 20 74 77 6f 20 63 6f 6d 6d 61 6e 64 73 20 22 69 6e 64 65 6e 74 22 20 61 6e 64 20 22 64 65 69 6e 64 65 6e 74 22 20 62 6f 74 68 20 63 72 65 61 74 65 20 61 6e 20 65 6e 74 72 79 20 6f 66 0a ~ "~ -entry-type-indent. Neither takes a parameter as part of" ~ " the comment syntax," 7e 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 69 6e 64 65 6e 74 2e 20 4e 65 69 74 68 65 72 20 74 61 6b 65 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 73 79 6e 74 61 78 2c 0a ~ "~ but the entry structure has an internal value which is" ~ " set to 2 for "indent"" 7e 20 62 75 74 20 74 68 65 20 65 6e 74 72 79 20 73 74 72 75 63 74 75 72 65 20 68 61 73 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20 76 61 6c 75 65 20 77 68 69 63 68 20 69 73 20 73 65 74 20 74 6f 20 32 20 66 6f 72 20 22 69 6e 64 65 6e 74 22 0a ~ "~ and -2 for "deindent". When output is eventually" ~ " formatted, these entries" 7e 20 61 6e 64 20 2d 32 20 66 6f 72 20 22 64 65 69 6e 64 65 6e 74 22 2e 20 57 68 65 6e 20 6f 75 74 70 75 74 20 69 73 20 65 76 65 6e 74 75 61 6c 6c 79 20 66 6f 72 6d 61 74 74 65 64 2c 20 74 68 65 73 65 20 65 6e 74 72 69 65 73 0a ~ "~ will be used to adjust the amount of space at the" ~ " beginning of each line," 7e 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 74 6f 20 61 64 6a 75 73 74 20 74 68 65 20 61 6d 6f 75 6e 74 20 6f 66 20 73 70 61 63 65 20 61 74 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 65 61 63 68 20 6c 69 6e 65 2c 0a ~ "~ which can be very useful to visually group code together." ~ " The formatting" 7e 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 76 65 72 79 20 75 73 65 66 75 6c 20 74 6f 20 76 69 73 75 61 6c 6c 79 20 67 72 6f 75 70 20 63 6f 64 65 20 74 6f 67 65 74 68 65 72 2e 20 54 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 0a ~ "~ process has some mutable state of its own, which doesn't" ~ " exist until this" 7e 20 70 72 6f 63 65 73 73 20 68 61 73 20 73 6f 6d 65 20 6d 75 74 61 62 6c 65 20 73 74 61 74 65 20 6f 66 20 69 74 73 20 6f 77 6e 2c 20 77 68 69 63 68 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 20 75 6e 74 69 6c 20 74 68 69 73 0a ~ "~ very late stage (long after magic comments execute);" ~ " among other things," 7e 20 76 65 72 79 20 6c 61 74 65 20 73 74 61 67 65 20 28 6c 6f 6e 67 20 61 66 74 65 72 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 65 78 65 63 75 74 65 29 3b 20 61 6d 6f 6e 67 20 6f 74 68 65 72 20 74 68 69 6e 67 73 2c 0a ~ "~ there's a notion of current indentation level, which is" ~ " preserved until" 7e 20 74 68 65 72 65 27 73 20 61 20 6e 6f 74 69 6f 6e 20 6f 66 20 63 75 72 72 65 6e 74 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c 65 76 65 6c 2c 20 77 68 69 63 68 20 69 73 20 70 72 65 73 65 72 76 65 64 20 75 6e 74 69 6c 0a ~ "~ these entries adjust it." 7e 20 74 68 65 73 65 20 65 6e 74 72 69 65 73 20 61 64 6a 75 73 74 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ The commands "fresh-line" and "blank-line" create" ~ " entries of" 7e 20 20 20 54 68 65 20 63 6f 6d 6d 61 6e 64 73 20 22 66 72 65 73 68 2d 6c 69 6e 65 22 20 61 6e 64 20 22 62 6c 61 6e 6b 2d 6c 69 6e 65 22 20 63 72 65 61 74 65 20 65 6e 74 72 69 65 73 20 6f 66 0a ~ "~ -entry-type-fresh-line and -entry-type-blank-line," ~ " respectively. Just as the" 7e 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 66 72 65 73 68 2d 6c 69 6e 65 20 61 6e 64 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 2c 20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 20 4a 75 73 74 20 61 73 20 74 68 65 0a ~ "~ output formatting knows how deeply indented it is, it" ~ " also knows whether" 7e 20 6f 75 74 70 75 74 20 66 6f 72 6d 61 74 74 69 6e 67 20 6b 6e 6f 77 73 20 68 6f 77 20 64 65 65 70 6c 79 20 69 6e 64 65 6e 74 65 64 20 69 74 20 69 73 2c 20 69 74 20 61 6c 73 6f 20 6b 6e 6f 77 73 20 77 68 65 74 68 65 72 0a ~ "~ it's at the start of a line. A fresh-line entry will" ~ " insert a line break," 7e 20 69 74 27 73 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 61 20 6c 69 6e 65 2e 20 41 20 66 72 65 73 68 2d 6c 69 6e 65 20 65 6e 74 72 79 20 77 69 6c 6c 20 69 6e 73 65 72 74 20 61 20 6c 69 6e 65 20 62 72 65 61 6b 2c 0a ~ "~ but only if we're somewhere deep in a line; if we're" ~ " already at the start," 7e 20 62 75 74 20 6f 6e 6c 79 20 69 66 20 77 65 27 72 65 20 73 6f 6d 65 77 68 65 72 65 20 64 65 65 70 20 69 6e 20 61 20 6c 69 6e 65 3b 20 69 66 20 77 65 27 72 65 20 61 6c 72 65 61 64 79 20 61 74 20 74 68 65 20 73 74 61 72 74 2c 0a ~ "~ it does nothing. A blank-line entry will do the same" ~ " thing as fresh-line," 7e 20 69 74 20 64 6f 65 73 20 6e 6f 74 68 69 6e 67 2e 20 41 20 62 6c 61 6e 6b 2d 6c 69 6e 65 20 65 6e 74 72 79 20 77 69 6c 6c 20 64 6f 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 20 61 73 20 66 72 65 73 68 2d 6c 69 6e 65 2c 0a ~ "~ then it will add another line break, so that the result" ~ " is to output a fully" 7e 20 74 68 65 6e 20 69 74 20 77 69 6c 6c 20 61 64 64 20 61 6e 6f 74 68 65 72 20 6c 69 6e 65 20 62 72 65 61 6b 2c 20 73 6f 20 74 68 61 74 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 74 6f 20 6f 75 74 70 75 74 20 61 20 66 75 6c 6c 79 0a ~ "~ blank line in the hex dump. This can be useful to break" ~ " things up visually." 7e 20 62 6c 61 6e 6b 20 6c 69 6e 65 20 69 6e 20 74 68 65 20 68 65 78 20 64 75 6d 70 2e 20 54 68 69 73 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 74 6f 20 62 72 65 61 6b 20 74 68 69 6e 67 73 20 75 70 20 76 69 73 75 61 6c 6c 79 2e 0a ~ "~" 7e 0a ~ "~ Thus far, though we've taken pains to allude to the" ~ " fact that there are" 7e 20 20 20 54 68 75 73 20 66 61 72 2c 20 74 68 6f 75 67 68 20 77 65 27 76 65 20 74 61 6b 65 6e 20 70 61 69 6e 73 20 74 6f 20 61 6c 6c 75 64 65 20 74 6f 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 72 65 20 61 72 65 0a ~ "~ many stages of processing of metadata entries after" ~ " they're created, we" 7e 20 6d 61 6e 79 20 73 74 61 67 65 73 20 6f 66 20 70 72 6f 63 65 73 73 69 6e 67 20 6f 66 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 61 66 74 65 72 20 74 68 65 79 27 72 65 20 63 72 65 61 74 65 64 2c 20 77 65 0a ~ "~ haven't introduced any interesting features that rely on" ~ " that. That changes" 7e 20 68 61 76 65 6e 27 74 20 69 6e 74 72 6f 64 75 63 65 64 20 61 6e 79 20 69 6e 74 65 72 65 73 74 69 6e 67 20 66 65 61 74 75 72 65 73 20 74 68 61 74 20 72 65 6c 79 20 6f 6e 20 74 68 61 74 2e 20 54 68 61 74 20 63 68 61 6e 67 65 73 0a ~ "~ with the "adjust-line" command. When this command" ~ " executes, it doesn't" 7e 20 77 69 74 68 20 74 68 65 20 22 61 64 6a 75 73 74 2d 6c 69 6e 65 22 20 63 6f 6d 6d 61 6e 64 2e 20 57 68 65 6e 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 20 65 78 65 63 75 74 65 73 2c 20 69 74 20 64 6f 65 73 6e 27 74 0a ~ "~ create a new metadata entry. Rather, it scans backwards" ~ " from the end of the" 7e 20 63 72 65 61 74 65 20 61 20 6e 65 77 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 2e 20 52 61 74 68 65 72 2c 20 69 74 20 73 63 61 6e 73 20 62 61 63 6b 77 61 72 64 73 20 66 72 6f 6d 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 0a ~ "~ entry array, to find the most recently-created entry" ~ " which is a line or" 7e 20 65 6e 74 72 79 20 61 72 72 61 79 2c 20 74 6f 20 66 69 6e 64 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 6c 79 2d 63 72 65 61 74 65 64 20 65 6e 74 72 79 20 77 68 69 63 68 20 69 73 20 61 20 6c 69 6e 65 20 6f 72 0a ~ "~ suffix comment. It skips over entries of other types." ~ " Then it adjusts the" 7e 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 2e 20 49 74 20 73 6b 69 70 73 20 6f 76 65 72 20 65 6e 74 72 69 65 73 20 6f 66 20 6f 74 68 65 72 20 74 79 70 65 73 2e 20 54 68 65 6e 20 69 74 20 61 64 6a 75 73 74 73 20 74 68 65 0a ~ "~ length of that entry, in-place! The parameter of" ~ " adjust-line may be positive" 7e 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 61 74 20 65 6e 74 72 79 2c 20 69 6e 2d 70 6c 61 63 65 21 20 54 68 65 20 70 61 72 61 6d 65 74 65 72 20 6f 66 20 61 64 6a 75 73 74 2d 6c 69 6e 65 20 6d 61 79 20 62 65 20 70 6f 73 69 74 69 76 65 0a ~ "~ or negative, and either way it's added to the" ~ " pre-existing length of the" 7e 20 6f 72 20 6e 65 67 61 74 69 76 65 2c 20 61 6e 64 20 65 69 74 68 65 72 20 77 61 79 20 69 74 27 73 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 70 72 65 2d 65 78 69 73 74 69 6e 67 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 0a ~ "~ entry it modifies." 7e 20 65 6e 74 72 79 20 69 74 20 6d 6f 64 69 66 69 65 73 2e 0a ~ "~" 7e 0a ~ "~ If that doesn't sound confusing, you may not have fully" ~ " appreciated that" 7e 20 20 20 49 66 20 74 68 61 74 20 64 6f 65 73 6e 27 74 20 73 6f 75 6e 64 20 63 6f 6e 66 75 73 69 6e 67 2c 20 79 6f 75 20 6d 61 79 20 6e 6f 74 20 68 61 76 65 20 66 75 6c 6c 79 20 61 70 70 72 65 63 69 61 74 65 64 20 74 68 61 74 0a ~ "~ adjust-line commands don't have to come in the same word" ~ " as the command that" 7e 20 61 64 6a 75 73 74 2d 6c 69 6e 65 20 63 6f 6d 6d 61 6e 64 73 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 63 6f 6d 65 20 69 6e 20 74 68 65 20 73 61 6d 65 20 77 6f 72 64 20 61 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74 0a ~ "~ created the entry they're modifying. For example, in" 7e 20 63 72 65 61 74 65 64 20 74 68 65 20 65 6e 74 72 79 20 74 68 65 79 27 72 65 20 6d 6f 64 69 66 79 69 6e 67 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 6e 0a ~ "~ language/static/amd64.e, rex-w is a common helper word" ~ " called as part of" 7e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 61 6d 64 36 34 2e 65 2c 20 72 65 78 2d 77 20 69 73 20 61 20 63 6f 6d 6d 6f 6e 20 68 65 6c 70 65 72 20 77 6f 72 64 20 63 61 6c 6c 65 64 20 61 73 20 70 61 72 74 20 6f 66 0a ~ "~ many assembly instructions. It always outputs a single" ~ " byte. Commentary in" 7e 20 6d 61 6e 79 20 61 73 73 65 6d 62 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2e 20 49 74 20 61 6c 77 61 79 73 20 6f 75 74 70 75 74 73 20 61 20 73 69 6e 67 6c 65 20 62 79 74 65 2e 20 43 6f 6d 6d 65 6e 74 61 72 79 20 69 6e 0a ~ "~ that file describes an accounting convention whereby" ~ " keeping track of this" 7e 20 74 68 61 74 20 66 69 6c 65 20 64 65 73 63 72 69 62 65 73 20 61 6e 20 61 63 63 6f 75 6e 74 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 77 68 65 72 65 62 79 20 6b 65 65 70 69 6e 67 20 74 72 61 63 6b 20 6f 66 20 74 68 69 73 0a ~ "~ byte is rex-w's job, so rex-w also has a magic comment" ~ " with an adjust-length" 7e 20 62 79 74 65 20 69 73 20 72 65 78 2d 77 27 73 20 6a 6f 62 2c 20 73 6f 20 72 65 78 2d 77 20 61 6c 73 6f 20 68 61 73 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 77 69 74 68 20 61 6e 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 0a ~ "~ command. Whatever word calls rex-w will have already" ~ " created a suffix" 7e 20 63 6f 6d 6d 61 6e 64 2e 20 57 68 61 74 65 76 65 72 20 77 6f 72 64 20 63 61 6c 6c 73 20 72 65 78 2d 77 20 77 69 6c 6c 20 68 61 76 65 20 61 6c 72 65 61 64 79 20 63 72 65 61 74 65 64 20 61 20 73 75 66 66 69 78 0a ~ "~ comment giving the name of the instruction it's" ~ " implementing, by the time" 7e 20 63 6f 6d 6d 65 6e 74 20 67 69 76 69 6e 67 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 74 27 73 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 2c 20 62 79 20 74 68 65 20 74 69 6d 65 0a ~ "~ this is called, and rex-w's call to adjust-length will" ~ " find that comment's" 7e 20 74 68 69 73 20 69 73 20 63 61 6c 6c 65 64 2c 20 61 6e 64 20 72 65 78 2d 77 27 73 20 63 61 6c 6c 20 74 6f 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 20 77 69 6c 6c 20 66 69 6e 64 20 74 68 61 74 20 63 6f 6d 6d 65 6e 74 27 73 0a ~ "~ entry and modify it." 7e 20 65 6e 74 72 79 20 61 6e 64 20 6d 6f 64 69 66 79 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ The use of this may not seem like much for a word like" ~ " rex-w, which always" 7e 20 20 20 54 68 65 20 75 73 65 20 6f 66 20 74 68 69 73 20 6d 61 79 20 6e 6f 74 20 73 65 65 6d 20 6c 69 6b 65 20 6d 75 63 68 20 66 6f 72 20 61 20 77 6f 72 64 20 6c 69 6b 65 20 72 65 78 2d 77 2c 20 77 68 69 63 68 20 61 6c 77 61 79 73 0a ~ "~ outputs the same number of bytes, but now look at the" ~ " definition of" 7e 20 6f 75 74 70 75 74 73 20 74 68 65 20 73 61 6d 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 2c 20 62 75 74 20 6e 6f 77 20 6c 6f 6f 6b 20 61 74 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 0a ~ "~ addressing-indirect-reg64. This is a common addressing" ~ " mode shared by many" 7e 20 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 2e 20 54 68 69 73 20 69 73 20 61 20 63 6f 6d 6d 6f 6e 20 61 64 64 72 65 73 73 69 6e 67 20 6d 6f 64 65 20 73 68 61 72 65 64 20 62 79 20 6d 61 6e 79 0a ~ "~ instructions, and called as a helper from various" ~ " instruction words. Notice" 7e 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2c 20 61 6e 64 20 63 61 6c 6c 65 64 20 61 73 20 61 20 68 65 6c 70 65 72 20 66 72 6f 6d 20 76 61 72 69 6f 75 73 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 6f 72 64 73 2e 20 4e 6f 74 69 63 65 0a ~ "~ how it has to generate a different encoding when it's" ~ " given the register" 7e 20 68 6f 77 20 69 74 20 68 61 73 20 74 6f 20 67 65 6e 65 72 61 74 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 65 6e 63 6f 64 69 6e 67 20 77 68 65 6e 20 69 74 27 73 20 67 69 76 65 6e 20 74 68 65 20 72 65 67 69 73 74 65 72 0a ~ "~ :rsp, which has an extra SIB byte that's not needed for" ~ " any other register." 7e 20 3a 72 73 70 2c 20 77 68 69 63 68 20 68 61 73 20 61 6e 20 65 78 74 72 61 20 53 49 42 20 62 79 74 65 20 74 68 61 74 27 73 20 6e 6f 74 20 6e 65 65 64 65 64 20 66 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 72 65 67 69 73 74 65 72 2e 0a ~ "~ There's no magic comments in addressing-indirect-reg64" ~ " itself, but the word" 7e 20 54 68 65 72 65 27 73 20 6e 6f 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 61 64 64 72 65 73 73 69 6e 67 2d 69 6e 64 69 72 65 63 74 2d 72 65 67 36 34 20 69 74 73 65 6c 66 2c 20 62 75 74 20 74 68 65 20 77 6f 72 64 0a ~ "~ "sib" is another helper which does an appropriate" ~ " adjust-length, if and only" 7e 20 22 73 69 62 22 20 69 73 20 61 6e 6f 74 68 65 72 20 68 65 6c 70 65 72 20 77 68 69 63 68 20 64 6f 65 73 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 2c 20 69 66 20 61 6e 64 20 6f 6e 6c 79 0a ~ "~ if sib is actually called." 7e 20 69 66 20 73 69 62 20 69 73 20 61 63 74 75 61 6c 6c 79 20 63 61 6c 6c 65 64 2e 0a ~ "~" 7e 0a ~ "~ You can see how it might become quite confusing trying" ~ " to decide which" 7e 20 20 20 59 6f 75 20 63 61 6e 20 73 65 65 20 68 6f 77 20 69 74 20 6d 69 67 68 74 20 62 65 63 6f 6d 65 20 71 75 69 74 65 20 63 6f 6e 66 75 73 69 6e 67 20 74 72 79 69 6e 67 20 74 6f 20 64 65 63 69 64 65 20 77 68 69 63 68 0a ~ "~ word should take responsibility for a particular byte," ~ " when there are" 7e 20 77 6f 72 64 20 73 68 6f 75 6c 64 20 74 61 6b 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 66 6f 72 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 62 79 74 65 2c 20 77 68 65 6e 20 74 68 65 72 65 20 61 72 65 0a ~ "~ multiple layers of abstraction like this. It's especially" ~ " confusing because" 7e 20 6d 75 6c 74 69 70 6c 65 20 6c 61 79 65 72 73 20 6f 66 20 61 62 73 74 72 61 63 74 69 6f 6e 20 6c 69 6b 65 20 74 68 69 73 2e 20 49 74 27 73 20 65 73 70 65 63 69 61 6c 6c 79 20 63 6f 6e 66 75 73 69 6e 67 20 62 65 63 61 75 73 65 0a ~ "~ this is an extra form of side-effect which acts on global" ~ " mutable state, and" 7e 20 74 68 69 73 20 69 73 20 61 6e 20 65 78 74 72 61 20 66 6f 72 6d 20 6f 66 20 73 69 64 65 2d 65 66 66 65 63 74 20 77 68 69 63 68 20 61 63 74 73 20 6f 6e 20 67 6c 6f 62 61 6c 20 6d 75 74 61 62 6c 65 20 73 74 61 74 65 2c 20 61 6e 64 0a ~ "~ is out-of-band compared to the normal Forth value stack." ~ " When you're" 7e 20 69 73 20 6f 75 74 2d 6f 66 2d 62 61 6e 64 20 63 6f 6d 70 61 72 65 64 20 74 6f 20 74 68 65 20 6e 6f 72 6d 61 6c 20 46 6f 72 74 68 20 76 61 6c 75 65 20 73 74 61 63 6b 2e 20 57 68 65 6e 20 79 6f 75 27 72 65 0a ~ "~ implementing an instruction set architecture, you should" ~ " strongly consider" 7e 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 6e 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 73 65 74 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 73 74 72 6f 6e 67 6c 79 20 63 6f 6e 73 69 64 65 72 0a ~ "~ defining an accounting convention which makes that clear" ~ " and unambiguous." 7e 20 64 65 66 69 6e 69 6e 67 20 61 6e 20 61 63 63 6f 75 6e 74 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 77 68 69 63 68 20 6d 61 6b 65 73 20 74 68 61 74 20 63 6c 65 61 72 20 61 6e 64 20 75 6e 61 6d 62 69 67 75 6f 75 73 2e 0a ~ "~ Feel free to consult the convention described at the top" ~ " of" 7e 20 46 65 65 6c 20 66 72 65 65 20 74 6f 20 63 6f 6e 73 75 6c 74 20 74 68 65 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 64 65 73 63 72 69 62 65 64 20 61 74 20 74 68 65 20 74 6f 70 20 6f 66 0a ~ "~ language/static/amd64.e for inspiration." 7e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 61 6d 64 36 34 2e 65 20 66 6f 72 20 69 6e 73 70 69 72 61 74 69 6f 6e 2e 0a ~ "~" 7e 0a ~ "~ All the adjust-* commands change something immediately," ~ " as they execute." 7e 20 20 20 41 6c 6c 20 74 68 65 20 61 64 6a 75 73 74 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 63 68 61 6e 67 65 20 73 6f 6d 65 74 68 69 6e 67 20 69 6d 6d 65 64 69 61 74 65 6c 79 2c 20 61 73 20 74 68 65 79 20 65 78 65 63 75 74 65 2e 0a ~ "~ What they adjust differs. In the cases of adjust-length" ~ " and adjust-start," 7e 20 57 68 61 74 20 74 68 65 79 20 61 64 6a 75 73 74 20 64 69 66 66 65 72 73 2e 20 49 6e 20 74 68 65 20 63 61 73 65 73 20 6f 66 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 20 61 6e 64 20 61 64 6a 75 73 74 2d 73 74 61 72 74 2c 0a ~ "~ it's a field of a recent entry. Notionally, adjust-start" ~ " does the same thing" 7e 20 69 74 27 73 20 61 20 66 69 65 6c 64 20 6f 66 20 61 20 72 65 63 65 6e 74 20 65 6e 74 72 79 2e 20 4e 6f 74 69 6f 6e 61 6c 6c 79 2c 20 61 64 6a 75 73 74 2d 73 74 61 72 74 20 64 6f 65 73 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 0a ~ "~ as adjust-length but for the start address the entry is" ~ " attached to, rather" 7e 20 61 73 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 20 62 75 74 20 66 6f 72 20 74 68 65 20 73 74 61 72 74 20 61 64 64 72 65 73 73 20 74 68 65 20 65 6e 74 72 79 20 69 73 20 61 74 74 61 63 68 65 64 20 74 6f 2c 20 72 61 74 68 65 72 0a ~ "~ than the length of the attachment. Also, while" ~ " adjust-length only affects" 7e 20 74 68 61 6e 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 61 74 74 61 63 68 6d 65 6e 74 2e 20 41 6c 73 6f 2c 20 77 68 69 6c 65 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 20 6f 6e 6c 79 20 61 66 66 65 63 74 73 0a ~ "~ comment entries, adjust-start affects any entry that" ~ " produces output, such" 7e 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 69 65 73 2c 20 61 64 6a 75 73 74 2d 73 74 61 72 74 20 61 66 66 65 63 74 73 20 61 6e 79 20 65 6e 74 72 79 20 74 68 61 74 20 70 72 6f 64 75 63 65 73 20 6f 75 74 70 75 74 2c 20 73 75 63 68 0a ~ "~ as fresh-line." 7e 20 61 73 20 66 72 65 73 68 2d 6c 69 6e 65 2e 0a ~ "~" 7e 0a ~ "~ The various -output-point commands are used to directly" ~ " interact with the" 7e 20 20 20 54 68 65 20 76 61 72 69 6f 75 73 20 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 75 73 65 64 20 74 6f 20 64 69 72 65 63 74 6c 79 20 69 6e 74 65 72 61 63 74 20 77 69 74 68 20 74 68 65 0a ~ "~ notion of the latest output point, which can be useful if" ~ " a location has" 7e 20 6e 6f 74 69 6f 6e 20 6f 66 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 69 66 20 61 20 6c 6f 63 61 74 69 6f 6e 20 68 61 73 0a ~ "~ been skipped over and there are commands which should be" ~ " run before" 7e 20 62 65 65 6e 20 73 6b 69 70 70 65 64 20 6f 76 65 72 20 61 6e 64 20 74 68 65 72 65 20 61 72 65 20 63 6f 6d 6d 61 6e 64 73 20 77 68 69 63 68 20 73 68 6f 75 6c 64 20 62 65 20 72 75 6e 20 62 65 66 6f 72 65 0a ~ "~ outputting anything at the new location. The simplest" ~ " variant is" 7e 20 6f 75 74 70 75 74 74 69 6e 67 20 61 6e 79 74 68 69 6e 67 20 61 74 20 74 68 65 20 6e 65 77 20 6c 6f 63 61 74 69 6f 6e 2e 20 54 68 65 20 73 69 6d 70 6c 65 73 74 20 76 61 72 69 61 6e 74 20 69 73 0a ~ "~ set-output-point, which sets it to the parameter value." ~ " The data-set-" 7e 20 73 65 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 2c 20 77 68 69 63 68 20 73 65 74 73 20 69 74 20 74 6f 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 76 61 6c 75 65 2e 20 54 68 65 20 64 61 74 61 2d 73 65 74 2d 0a ~ "~ variant obtains a value in the manner of the other data-*" ~ " commands, adds it" 7e 20 76 61 72 69 61 6e 74 20 6f 62 74 61 69 6e 73 20 61 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 6d 61 6e 6e 65 72 20 6f 66 20 74 68 65 20 6f 74 68 65 72 20 64 61 74 61 2d 2a 20 63 6f 6d 6d 61 6e 64 73 2c 20 61 64 64 73 20 69 74 0a ~ "~ to the parameter value, and sets the latest output point" ~ " to the result. The" 7e 20 74 6f 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 76 61 6c 75 65 2c 20 61 6e 64 20 73 65 74 73 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 72 65 73 75 6c 74 2e 20 54 68 65 0a ~ "~ adjust- and data-adjust- variants, like other adjust" ~ " commands, add a value" 7e 20 61 64 6a 75 73 74 2d 20 61 6e 64 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 20 76 61 72 69 61 6e 74 73 2c 20 6c 69 6b 65 20 6f 74 68 65 72 20 61 64 6a 75 73 74 20 63 6f 6d 6d 61 6e 64 73 2c 20 61 64 64 20 61 20 76 61 6c 75 65 0a ~ "~ to the existing one." 7e 20 74 6f 20 74 68 65 20 65 78 69 73 74 69 6e 67 20 6f 6e 65 2e 0a ~ "~" 7e 0a ~ "~ Notice that the general rule is that data-set-*" ~ " commands use their" 7e 20 20 20 4e 6f 74 69 63 65 20 74 68 61 74 20 74 68 65 20 67 65 6e 65 72 61 6c 20 72 75 6c 65 20 69 73 20 74 68 61 74 20 64 61 74 61 2d 73 65 74 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 75 73 65 20 74 68 65 69 72 0a ~ "~ parameter as an addend, while data-adjust-* commands use" ~ " it as a multiplier." 7e 20 70 61 72 61 6d 65 74 65 72 20 61 73 20 61 6e 20 61 64 64 65 6e 64 2c 20 77 68 69 6c 65 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 75 73 65 20 69 74 20 61 73 20 61 20 6d 75 6c 74 69 70 6c 69 65 72 2e 0a ~ "~" 7e 0a ~ "~ The data-adjust-* variants deserve further commentary," ~ " though you may find" 7e 20 20 20 54 68 65 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 2a 20 76 61 72 69 61 6e 74 73 20 64 65 73 65 72 76 65 20 66 75 72 74 68 65 72 20 63 6f 6d 6d 65 6e 74 61 72 79 2c 20 74 68 6f 75 67 68 20 79 6f 75 20 6d 61 79 20 66 69 6e 64 0a ~ "~ it more productive to read and understand the entire" ~ " explanation about" 7e 20 69 74 20 6d 6f 72 65 20 70 72 6f 64 75 63 74 69 76 65 20 74 6f 20 72 65 61 64 20 61 6e 64 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 65 6e 74 69 72 65 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 61 62 6f 75 74 0a ~ "~ provide-* commands before worrying about these. These" ~ " variants adjust the" 7e 20 70 72 6f 76 69 64 65 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 62 65 66 6f 72 65 20 77 6f 72 72 79 69 6e 67 20 61 62 6f 75 74 20 74 68 65 73 65 2e 20 54 68 65 73 65 20 76 61 72 69 61 6e 74 73 20 61 64 6a 75 73 74 20 74 68 65 0a ~ "~ same things as the non-data ones, but instead of" ~ " adjusting by a fixed" 7e 20 73 61 6d 65 20 74 68 69 6e 67 73 20 61 73 20 74 68 65 20 6e 6f 6e 2d 64 61 74 61 20 6f 6e 65 73 2c 20 62 75 74 20 69 6e 73 74 65 61 64 20 6f 66 20 61 64 6a 75 73 74 69 6e 67 20 62 79 20 61 20 66 69 78 65 64 0a ~ "~ amount, they look for the most recent" ~ " -entry-type-saved-data metadata entry." 7e 20 61 6d 6f 75 6e 74 2c 20 74 68 65 79 20 6c 6f 6f 6b 20 66 6f 72 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 61 76 65 64 2d 64 61 74 61 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 2e 0a ~ "~ They delete that entry from the entry array entirely, and" ~ " use the value" 7e 20 54 68 65 79 20 64 65 6c 65 74 65 20 74 68 61 74 20 65 6e 74 72 79 20 66 72 6f 6d 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 20 65 6e 74 69 72 65 6c 79 2c 20 61 6e 64 20 75 73 65 20 74 68 65 20 76 61 6c 75 65 0a ~ "~ saved in it as the amount to adjust by. Such entries are" ~ " created by the" 7e 20 73 61 76 65 64 20 69 6e 20 69 74 20 61 73 20 74 68 65 20 61 6d 6f 75 6e 74 20 74 6f 20 61 64 6a 75 73 74 20 62 79 2e 20 53 75 63 68 20 65 6e 74 72 69 65 73 20 61 72 65 20 63 72 65 61 74 65 64 20 62 79 20 74 68 65 0a ~ "~ provide-data command, on which more below. Additionally," ~ " the data-adjust-*" 7e 20 70 72 6f 76 69 64 65 2d 64 61 74 61 20 63 6f 6d 6d 61 6e 64 2c 20 6f 6e 20 77 68 69 63 68 20 6d 6f 72 65 20 62 65 6c 6f 77 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 74 68 65 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 2a 0a ~ "~ commands use their parameters as scaling factors to the" ~ " adjustment, and" 7e 20 63 6f 6d 6d 61 6e 64 73 20 75 73 65 20 74 68 65 69 72 20 70 61 72 61 6d 65 74 65 72 73 20 61 73 20 73 63 61 6c 69 6e 67 20 66 61 63 74 6f 72 73 20 74 6f 20 74 68 65 20 61 64 6a 75 73 74 6d 65 6e 74 2c 20 61 6e 64 0a ~ "~ these factors may be negative. You'll usually specify a" ~ " parameter of 1 or" 7e 20 74 68 65 73 65 20 66 61 63 74 6f 72 73 20 6d 61 79 20 62 65 20 6e 65 67 61 74 69 76 65 2e 20 59 6f 75 27 6c 6c 20 75 73 75 61 6c 6c 79 20 73 70 65 63 69 66 79 20 61 20 70 61 72 61 6d 65 74 65 72 20 6f 66 20 31 20 6f 72 0a ~ "~ -1." 7e 20 2d 31 2e 0a ~ "~" 7e 0a ~ "~ We will revisit the topic of adjust-length later, when" ~ " we describe the" 7e 20 20 20 57 65 20 77 69 6c 6c 20 72 65 76 69 73 69 74 20 74 68 65 20 74 6f 70 69 63 20 6f 66 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 20 6c 61 74 65 72 2c 20 77 68 65 6e 20 77 65 20 64 65 73 63 72 69 62 65 20 74 68 65 0a ~ "~ comment template feature, but for now we'll leave it" ~ " there." 7e 20 63 6f 6d 6d 65 6e 74 20 74 65 6d 70 6c 61 74 65 20 66 65 61 74 75 72 65 2c 20 62 75 74 20 66 6f 72 20 6e 6f 77 20 77 65 27 6c 6c 20 6c 65 61 76 65 20 69 74 20 74 68 65 72 65 2e 0a ~ "~" 7e 0a ~ "~ Direct your attention to the "suppress" command." ~ " Sometimes, you intend to" 7e 20 20 20 44 69 72 65 63 74 20 79 6f 75 72 20 61 74 74 65 6e 74 69 6f 6e 20 74 6f 20 74 68 65 20 22 73 75 70 70 72 65 73 73 22 20 63 6f 6d 6d 61 6e 64 2e 20 53 6f 6d 65 74 69 6d 65 73 2c 20 79 6f 75 20 69 6e 74 65 6e 64 20 74 6f 0a ~ "~ call a helper word which is going to create its own" ~ " entries, but you know" 7e 20 63 61 6c 6c 20 61 20 68 65 6c 70 65 72 20 77 6f 72 64 20 77 68 69 63 68 20 69 73 20 67 6f 69 6e 67 20 74 6f 20 63 72 65 61 74 65 20 69 74 73 20 6f 77 6e 20 65 6e 74 72 69 65 73 2c 20 62 75 74 20 79 6f 75 20 6b 6e 6f 77 0a ~ "~ that those entries don't suit your purpose, and you want" ~ " to ignore them." 7e 20 74 68 61 74 20 74 68 6f 73 65 20 65 6e 74 72 69 65 73 20 64 6f 6e 27 74 20 73 75 69 74 20 79 6f 75 72 20 70 75 72 70 6f 73 65 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 69 67 6e 6f 72 65 20 74 68 65 6d 2e 0a ~ "~ For example, you may be calling a word which outputs a" ~ " binary string and" 7e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 79 6f 75 20 6d 61 79 20 62 65 20 63 61 6c 6c 69 6e 67 20 61 20 77 6f 72 64 20 77 68 69 63 68 20 6f 75 74 70 75 74 73 20 61 20 62 69 6e 61 72 79 20 73 74 72 69 6e 67 20 61 6e 64 0a ~ "~ creates entries describing the string, but you're doing" ~ " something more" 7e 20 63 72 65 61 74 65 73 20 65 6e 74 72 69 65 73 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20 73 74 72 69 6e 67 2c 20 62 75 74 20 79 6f 75 27 72 65 20 64 6f 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 6d 6f 72 65 0a ~ "~ specific and would prefer to create entries that describe" ~ " your special case," 7e 20 73 70 65 63 69 66 69 63 20 61 6e 64 20 77 6f 75 6c 64 20 70 72 65 66 65 72 20 74 6f 20 63 72 65 61 74 65 20 65 6e 74 72 69 65 73 20 74 68 61 74 20 64 65 73 63 72 69 62 65 20 79 6f 75 72 20 73 70 65 63 69 61 6c 20 63 61 73 65 2c 0a ~ "~ instead." 7e 20 69 6e 73 74 65 61 64 2e 0a ~ "~" 7e 0a ~ "~ When you need this, you can call "suppress" with an" ~ " integer parameter. If" 7e 20 20 20 57 68 65 6e 20 79 6f 75 20 6e 65 65 64 20 74 68 69 73 2c 20 79 6f 75 20 63 61 6e 20 63 61 6c 6c 20 22 73 75 70 70 72 65 73 73 22 20 77 69 74 68 20 61 6e 20 69 6e 74 65 67 65 72 20 70 61 72 61 6d 65 74 65 72 2e 20 49 66 0a ~ "~ the parameter is 1, the next time a metadata entry would" ~ " have been created," 7e 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 69 73 20 31 2c 20 74 68 65 20 6e 65 78 74 20 74 69 6d 65 20 61 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 77 6f 75 6c 64 20 68 61 76 65 20 62 65 65 6e 20 63 72 65 61 74 65 64 2c 0a ~ "~ it won't; then things go back to normal. If you want to" ~ " suppress more than" 7e 20 69 74 20 77 6f 6e 27 74 3b 20 74 68 65 6e 20 74 68 69 6e 67 73 20 67 6f 20 62 61 63 6b 20 74 6f 20 6e 6f 72 6d 61 6c 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 73 75 70 70 72 65 73 73 20 6d 6f 72 65 20 74 68 61 6e 0a ~ "~ one entry in a row, you can pass it a larger number. If" ~ " you change your" 7e 20 6f 6e 65 20 65 6e 74 72 79 20 69 6e 20 61 20 72 6f 77 2c 20 79 6f 75 20 63 61 6e 20 70 61 73 73 20 69 74 20 61 20 6c 61 72 67 65 72 20 6e 75 6d 62 65 72 2e 20 49 66 20 79 6f 75 20 63 68 61 6e 67 65 20 79 6f 75 72 0a ~ "~ mind, you can pass it a negative number. At the time" ~ " magic comments are" 7e 20 6d 69 6e 64 2c 20 79 6f 75 20 63 61 6e 20 70 61 73 73 20 69 74 20 61 20 6e 65 67 61 74 69 76 65 20 6e 75 6d 62 65 72 2e 20 41 74 20 74 68 65 20 74 69 6d 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 0a ~ "~ executing, there's a running count of how many entries" ~ " should be suppressed," 7e 20 65 78 65 63 75 74 69 6e 67 2c 20 74 68 65 72 65 27 73 20 61 20 72 75 6e 6e 69 6e 67 20 63 6f 75 6e 74 20 6f 66 20 68 6f 77 20 6d 61 6e 79 20 65 6e 74 72 69 65 73 20 73 68 6f 75 6c 64 20 62 65 20 73 75 70 70 72 65 73 73 65 64 2c 0a ~ "~ which is decremented any time it's greater than zero and" ~ " an entry would be" 7e 20 77 68 69 63 68 20 69 73 20 64 65 63 72 65 6d 65 6e 74 65 64 20 61 6e 79 20 74 69 6d 65 20 69 74 27 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 7a 65 72 6f 20 61 6e 64 20 61 6e 20 65 6e 74 72 79 20 77 6f 75 6c 64 20 62 65 0a ~ "~ created, and adjusted every time a call to "suppress" is" ~ " executed." 7e 20 63 72 65 61 74 65 64 2c 20 61 6e 64 20 61 64 6a 75 73 74 65 64 20 65 76 65 72 79 20 74 69 6d 65 20 61 20 63 61 6c 6c 20 74 6f 20 22 73 75 70 70 72 65 73 73 22 20 69 73 20 65 78 65 63 75 74 65 64 2e 0a ~ "~" 7e 0a ~ "~ Sometimes, an entry has already been created, and you" ~ " now need to get rid" 7e 20 20 20 53 6f 6d 65 74 69 6d 65 73 2c 20 61 6e 20 65 6e 74 72 79 20 68 61 73 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 63 72 65 61 74 65 64 2c 20 61 6e 64 20 79 6f 75 20 6e 6f 77 20 6e 65 65 64 20 74 6f 20 67 65 74 20 72 69 64 0a ~ "~ of it. While there are reasons to be cautious of" ~ " more-general mechanisms," 7e 20 6f 66 20 69 74 2e 20 57 68 69 6c 65 20 74 68 65 72 65 20 61 72 65 20 72 65 61 73 6f 6e 73 20 74 6f 20 62 65 20 63 61 75 74 69 6f 75 73 20 6f 66 20 6d 6f 72 65 2d 67 65 6e 65 72 61 6c 20 6d 65 63 68 61 6e 69 73 6d 73 2c 0a ~ "~ the commands delete-*-comment-at-output-point will search" ~ " for a metadata" 7e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 64 65 6c 65 74 65 2d 2a 2d 63 6f 6d 6d 65 6e 74 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 77 69 6c 6c 20 73 65 61 72 63 68 20 66 6f 72 20 61 20 6d 65 74 61 64 61 74 61 0a ~ "~ entry which is one of the comment types and which has its" ~ " start position set" 7e 20 65 6e 74 72 79 20 77 68 69 63 68 20 69 73 20 6f 6e 65 20 6f 66 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 74 79 70 65 73 20 61 6e 64 20 77 68 69 63 68 20 68 61 73 20 69 74 73 20 73 74 61 72 74 20 70 6f 73 69 74 69 6f 6e 20 73 65 74 0a ~ "~ to the same address as the current output point. The" ~ " -first- variant will" 7e 20 74 6f 20 74 68 65 20 73 61 6d 65 20 61 64 64 72 65 73 73 20 61 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2e 20 54 68 65 20 2d 66 69 72 73 74 2d 20 76 61 72 69 61 6e 74 20 77 69 6c 6c 0a ~ "~ search forward from the start of the array, while -last-" ~ " will search" 7e 20 73 65 61 72 63 68 20 66 6f 72 77 61 72 64 20 66 72 6f 6d 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 61 72 72 61 79 2c 20 77 68 69 6c 65 20 2d 6c 61 73 74 2d 20 77 69 6c 6c 20 73 65 61 72 63 68 0a ~ "~ backward from the end; both will stop as soon as they" ~ " encounter one. This is" 7e 20 62 61 63 6b 77 61 72 64 20 66 72 6f 6d 20 74 68 65 20 65 6e 64 3b 20 62 6f 74 68 20 77 69 6c 6c 20 73 74 6f 70 20 61 73 20 73 6f 6f 6e 20 61 73 20 74 68 65 79 20 65 6e 63 6f 75 6e 74 65 72 20 6f 6e 65 2e 20 54 68 69 73 20 69 73 0a ~ "~ usually desired when overwriting a location that has" ~ " already been written" 7e 20 75 73 75 61 6c 6c 79 20 64 65 73 69 72 65 64 20 77 68 65 6e 20 6f 76 65 72 77 72 69 74 69 6e 67 20 61 20 6c 6f 63 61 74 69 6f 6e 20 74 68 61 74 20 68 61 73 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 77 72 69 74 74 65 6e 0a ~ "~ to." 7e 20 74 6f 2e 0a ~ "~" 7e 0a ~ "~ Take a quick look at the remaining examples. These are" ~ " part of the comment" 7e 20 20 20 54 61 6b 65 20 61 20 71 75 69 63 6b 20 6c 6f 6f 6b 20 61 74 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 65 78 61 6d 70 6c 65 73 2e 20 54 68 65 73 65 20 61 72 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 63 6f 6d 6d 65 6e 74 0a ~ "~ template feature. We'll need to describe the other phases" ~ " of processing" 7e 20 74 65 6d 70 6c 61 74 65 20 66 65 61 74 75 72 65 2e 20 57 65 27 6c 6c 20 6e 65 65 64 20 74 6f 20 64 65 73 63 72 69 62 65 20 74 68 65 20 6f 74 68 65 72 20 70 68 61 73 65 73 20 6f 66 20 70 72 6f 63 65 73 73 69 6e 67 0a ~ "~ before we can talk about how they work, but notice that" ~ " one of them has the" 7e 20 62 65 66 6f 72 65 20 77 65 20 63 61 6e 20 74 61 6c 6b 20 61 62 6f 75 74 20 68 6f 77 20 74 68 65 79 20 77 6f 72 6b 2c 20 62 75 74 20 6e 6f 74 69 63 65 20 74 68 61 74 20 6f 6e 65 20 6f 66 20 74 68 65 6d 20 68 61 73 20 74 68 65 0a ~ "~ space-separated word # inside it, while the others are" ~ " commands whose names" 7e 20 73 70 61 63 65 2d 73 65 70 61 72 61 74 65 64 20 77 6f 72 64 20 23 20 69 6e 73 69 64 65 20 69 74 2c 20 77 68 69 6c 65 20 74 68 65 20 6f 74 68 65 72 73 20 61 72 65 20 63 6f 6d 6d 61 6e 64 73 20 77 68 6f 73 65 20 6e 61 6d 65 73 0a ~ "~ start with provide-. Any line or suffix comment can have" ~ " # in it, which will" 7e 20 73 74 61 72 74 20 77 69 74 68 20 70 72 6f 76 69 64 65 2d 2e 20 41 6e 79 20 6c 69 6e 65 20 6f 72 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 63 61 6e 20 68 61 76 65 20 23 20 69 6e 20 69 74 2c 20 77 68 69 63 68 20 77 69 6c 6c 0a ~ "~ consume a subitem from somewhere else, replacing the #" ~ " like it's a template." 7e 20 63 6f 6e 73 75 6d 65 20 61 20 73 75 62 69 74 65 6d 20 66 72 6f 6d 20 73 6f 6d 65 77 68 65 72 65 20 65 6c 73 65 2c 20 72 65 70 6c 61 63 69 6e 67 20 74 68 65 20 23 20 6c 69 6b 65 20 69 74 27 73 20 61 20 74 65 6d 70 6c 61 74 65 2e 0a ~ "~ The various provide- commands are the origins of those" ~ " subitems. Which #" 7e 20 54 68 65 20 76 61 72 69 6f 75 73 20 70 72 6f 76 69 64 65 2d 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 74 68 65 20 6f 72 69 67 69 6e 73 20 6f 66 20 74 68 6f 73 65 20 73 75 62 69 74 65 6d 73 2e 20 57 68 69 63 68 20 23 0a ~ "~ goes with which provide- command? Thereby hangs a tale." 7e 20 67 6f 65 73 20 77 69 74 68 20 77 68 69 63 68 20 70 72 6f 76 69 64 65 2d 20 63 6f 6d 6d 61 6e 64 3f 20 54 68 65 72 65 62 79 20 68 61 6e 67 73 20 61 20 74 61 6c 65 2e 0a ~ "~" 7e 0a ~ "~ So. Let's pretend for the moment that we've finished" ~ " talking about things" 7e 20 20 20 53 6f 2e 20 4c 65 74 27 73 20 70 72 65 74 65 6e 64 20 66 6f 72 20 74 68 65 20 6d 6f 6d 65 6e 74 20 74 68 61 74 20 77 65 27 76 65 20 66 69 6e 69 73 68 65 64 20 74 61 6c 6b 69 6e 67 20 61 62 6f 75 74 20 74 68 69 6e 67 73 0a ~ "~ that happen when magic comments execute. We haven't," ~ " quite, but to finish it" 7e 20 74 68 61 74 20 68 61 70 70 65 6e 20 77 68 65 6e 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 65 78 65 63 75 74 65 2e 20 57 65 20 68 61 76 65 6e 27 74 2c 20 71 75 69 74 65 2c 20 62 75 74 20 74 6f 20 66 69 6e 69 73 68 20 69 74 0a ~ "~ out you'll need the full picture in your head." 7e 20 6f 75 74 20 79 6f 75 27 6c 6c 20 6e 65 65 64 20 74 68 65 20 66 75 6c 6c 20 70 69 63 74 75 72 65 20 69 6e 20 79 6f 75 72 20 68 65 61 64 2e 0a ~ "~" 7e 0a ~ "~ All this time, the hex transform has been executing the" ~ " compiler, which" 7e 20 20 20 41 6c 6c 20 74 68 69 73 20 74 69 6d 65 2c 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 68 61 73 20 62 65 65 6e 20 65 78 65 63 75 74 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 77 68 69 63 68 0a ~ "~ is running its guts inside a utility called the label" ~ " loop (see" 7e 20 69 73 20 72 75 6e 6e 69 6e 67 20 69 74 73 20 67 75 74 73 20 69 6e 73 69 64 65 20 61 20 75 74 69 6c 69 74 79 20 63 61 6c 6c 65 64 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 28 73 65 65 0a ~ "~ compilation/labels.e). The compiler guts have been" ~ " calling their own various" 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2f 6c 61 62 65 6c 73 2e 65 29 2e 20 54 68 65 20 63 6f 6d 70 69 6c 65 72 20 67 75 74 73 20 68 61 76 65 20 62 65 65 6e 20 63 61 6c 6c 69 6e 67 20 74 68 65 69 72 20 6f 77 6e 20 76 61 72 69 6f 75 73 0a ~ "~ internal words and accumulating their binary output in" ~ " the label-loop" 7e 20 69 6e 74 65 72 6e 61 6c 20 77 6f 72 64 73 20 61 6e 64 20 61 63 63 75 6d 75 6c 61 74 69 6e 67 20 74 68 65 69 72 20 62 69 6e 61 72 79 20 6f 75 74 70 75 74 20 69 6e 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 0a ~ "~ buffer. While this is happening, the hex transform's" ~ " various traps have been" 7e 20 62 75 66 66 65 72 2e 20 57 68 69 6c 65 20 74 68 69 73 20 69 73 20 68 61 70 70 65 6e 69 6e 67 2c 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 76 61 72 69 6f 75 73 20 74 72 61 70 73 20 68 61 76 65 20 62 65 65 6e 0a ~ "~ tracking the latest output point, executing magic" ~ " comments, and doing other" 7e 20 74 72 61 63 6b 69 6e 67 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 65 78 65 63 75 74 69 6e 67 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 2c 20 61 6e 64 20 64 6f 69 6e 67 20 6f 74 68 65 72 0a ~ "~ vital but simpler tasks." 7e 20 76 69 74 61 6c 20 62 75 74 20 73 69 6d 70 6c 65 72 20 74 61 73 6b 73 2e 0a ~ "~" 7e 0a ~ "~ Eventually the label-loop will reach the end of its" ~ " iteration, and then it" 7e 20 20 20 45 76 65 6e 74 75 61 6c 6c 79 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 77 69 6c 6c 20 72 65 61 63 68 20 74 68 65 20 65 6e 64 20 6f 66 20 69 74 73 20 69 74 65 72 61 74 69 6f 6e 2c 20 61 6e 64 20 74 68 65 6e 20 69 74 0a ~ "~ will either conclude that all the labels in the program" ~ " have been resolved" 7e 20 77 69 6c 6c 20 65 69 74 68 65 72 20 63 6f 6e 63 6c 75 64 65 20 74 68 61 74 20 61 6c 6c 20 74 68 65 20 6c 61 62 65 6c 73 20 69 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 20 68 61 76 65 20 62 65 65 6e 20 72 65 73 6f 6c 76 65 64 0a ~ "~ successfully, or it will notice that some of them were" ~ " given addresses that" 7e 20 73 75 63 63 65 73 73 66 75 6c 6c 79 2c 20 6f 72 20 69 74 20 77 69 6c 6c 20 6e 6f 74 69 63 65 20 74 68 61 74 20 73 6f 6d 65 20 6f 66 20 74 68 65 6d 20 77 65 72 65 20 67 69 76 65 6e 20 61 64 64 72 65 73 73 65 73 20 74 68 61 74 0a ~ "~ don't work. If the labels aren't all resolved, the label" ~ " loop will start" 7e 20 64 6f 6e 27 74 20 77 6f 72 6b 2e 20 49 66 20 74 68 65 20 6c 61 62 65 6c 73 20 61 72 65 6e 27 74 20 61 6c 6c 20 72 65 73 6f 6c 76 65 64 2c 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 77 69 6c 6c 20 73 74 61 72 74 0a ~ "~ over from the beginning, running all the same compiler" ~ " guts again. The hex" 7e 20 6f 76 65 72 20 66 72 6f 6d 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 2c 20 72 75 6e 6e 69 6e 67 20 61 6c 6c 20 74 68 65 20 73 61 6d 65 20 63 6f 6d 70 69 6c 65 72 20 67 75 74 73 20 61 67 61 69 6e 2e 20 54 68 65 20 68 65 78 0a ~ "~ transform will notice that this happened, clear out all" ~ " the metadata" 7e 20 74 72 61 6e 73 66 6f 72 6d 20 77 69 6c 6c 20 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 69 73 20 68 61 70 70 65 6e 65 64 2c 20 63 6c 65 61 72 20 6f 75 74 20 61 6c 6c 20 74 68 65 20 6d 65 74 61 64 61 74 61 0a ~ "~ entries, and restart its own activities as well." 7e 20 65 6e 74 72 69 65 73 2c 20 61 6e 64 20 72 65 73 74 61 72 74 20 69 74 73 20 6f 77 6e 20 61 63 74 69 76 69 74 69 65 73 20 61 73 20 77 65 6c 6c 2e 0a ~ "~" 7e 0a ~ "~ When the label loop finally declares success, and" ~ " exits, the compiler will" 7e 20 20 20 57 68 65 6e 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 66 69 6e 61 6c 6c 79 20 64 65 63 6c 61 72 65 73 20 73 75 63 63 65 73 73 2c 20 61 6e 64 20 65 78 69 74 73 2c 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 77 69 6c 6c 0a ~ "~ want to actually produce its binary output. The hex" ~ " transform has trapped" 7e 20 77 61 6e 74 20 74 6f 20 61 63 74 75 61 6c 6c 79 20 70 72 6f 64 75 63 65 20 69 74 73 20 62 69 6e 61 72 79 20 6f 75 74 70 75 74 2e 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 68 61 73 20 74 72 61 70 70 65 64 0a ~ "~ this, too! Now there's a postprocessing phase which" ~ " cleans up all the" 7e 20 74 68 69 73 2c 20 74 6f 6f 21 20 4e 6f 77 20 74 68 65 72 65 27 73 20 61 20 70 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 20 70 68 61 73 65 20 77 68 69 63 68 20 63 6c 65 61 6e 73 20 75 70 20 61 6c 6c 20 74 68 65 0a ~ "~ metadata entries, and then finally there's a formatting" ~ " phase where the" 7e 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 2c 20 61 6e 64 20 74 68 65 6e 20 66 69 6e 61 6c 6c 79 20 74 68 65 72 65 27 73 20 61 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 20 77 68 65 72 65 20 74 68 65 0a ~ "~ entries are "run", as if they're a program, and the final" ~ " hex dump with all" 7e 20 65 6e 74 72 69 65 73 20 61 72 65 20 22 72 75 6e 22 2c 20 61 73 20 69 66 20 74 68 65 79 27 72 65 20 61 20 70 72 6f 67 72 61 6d 2c 20 61 6e 64 20 74 68 65 20 66 69 6e 61 6c 20 68 65 78 20 64 75 6d 70 20 77 69 74 68 20 61 6c 6c 0a ~ "~ its comments is output." 7e 20 69 74 73 20 63 6f 6d 6d 65 6e 74 73 20 69 73 20 6f 75 74 70 75 74 2e 0a ~ "~" 7e 0a ~ "~ As a side note, the hex transform doesn't stop the" ~ " compiler short; it lets" 7e 20 20 20 41 73 20 61 20 73 69 64 65 20 6e 6f 74 65 2c 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 64 6f 65 73 6e 27 74 20 73 74 6f 70 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 73 68 6f 72 74 3b 20 69 74 20 6c 65 74 73 0a ~ "~ the compiler decide which bytes will be output and in" ~ " what order. In" 7e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 64 65 63 69 64 65 20 77 68 69 63 68 20 62 79 74 65 73 20 77 69 6c 6c 20 62 65 20 6f 75 74 70 75 74 20 61 6e 64 20 69 6e 20 77 68 61 74 20 6f 72 64 65 72 2e 20 49 6e 0a ~ "~ practice, Evocation and the various supplemental programs" ~ " around it only" 7e 20 70 72 61 63 74 69 63 65 2c 20 45 76 6f 63 61 74 69 6f 6e 20 61 6e 64 20 74 68 65 20 76 61 72 69 6f 75 73 20 73 75 70 70 6c 65 6d 65 6e 74 61 6c 20 70 72 6f 67 72 61 6d 73 20 61 72 6f 75 6e 64 20 69 74 20 6f 6e 6c 79 0a ~ "~ ever write their output in a single giant chunk, but the" ~ " formatting phase" 7e 20 65 76 65 72 20 77 72 69 74 65 20 74 68 65 69 72 20 6f 75 74 70 75 74 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 67 69 61 6e 74 20 63 68 75 6e 6b 2c 20 62 75 74 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 0a ~ "~ actually runs every single time the compiler calls" ~ " sys-write, and it only" 7e 20 61 63 74 75 61 6c 6c 79 20 72 75 6e 73 20 65 76 65 72 79 20 73 69 6e 67 6c 65 20 74 69 6d 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 61 6c 6c 73 20 73 79 73 2d 77 72 69 74 65 2c 20 61 6e 64 20 69 74 20 6f 6e 6c 79 0a ~ "~ handles the portion of the label-loop buffer which the" ~ " compiler passed to" 7e 20 68 61 6e 64 6c 65 73 20 74 68 65 20 70 6f 72 74 69 6f 6e 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 77 68 69 63 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 70 61 73 73 65 64 20 74 6f 0a ~ "~ sys-write." 7e 20 73 79 73 2d 77 72 69 74 65 2e 0a ~ "~" 7e 0a ~ "~ The postprocessing phase is idempotent - doing it twice" ~ " is the same as" 7e 20 20 20 54 68 65 20 70 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 20 70 68 61 73 65 20 69 73 20 69 64 65 6d 70 6f 74 65 6e 74 20 2d 20 64 6f 69 6e 67 20 69 74 20 74 77 69 63 65 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 0a ~ "~ doing it once - so it's simply called every time" ~ " sys-write is, before the" 7e 20 64 6f 69 6e 67 20 69 74 20 6f 6e 63 65 20 2d 20 73 6f 20 69 74 27 73 20 73 69 6d 70 6c 79 20 63 61 6c 6c 65 64 20 65 76 65 72 79 20 74 69 6d 65 20 73 79 73 2d 77 72 69 74 65 20 69 73 2c 20 62 65 66 6f 72 65 20 74 68 65 0a ~ "~ formatting phase starts. Postprocessing considers every" ~ " metadata entry," 7e 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 20 73 74 61 72 74 73 2e 20 50 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 20 63 6f 6e 73 69 64 65 72 73 20 65 76 65 72 79 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 2c 0a ~ "~ every time it runs, even when sys-write is called on" ~ " something less than" 7e 20 65 76 65 72 79 20 74 69 6d 65 20 69 74 20 72 75 6e 73 2c 20 65 76 65 6e 20 77 68 65 6e 20 73 79 73 2d 77 72 69 74 65 20 69 73 20 63 61 6c 6c 65 64 20 6f 6e 20 73 6f 6d 65 74 68 69 6e 67 20 6c 65 73 73 20 74 68 61 6e 0a ~ "~ the whole buffer." 7e 20 74 68 65 20 77 68 6f 6c 65 20 62 75 66 66 65 72 2e 0a ~ "~" 7e 0a ~ "~ If you add postprocessing features, make sure to keep" ~ " them idempotent." 7e 20 20 20 49 66 20 79 6f 75 20 61 64 64 20 70 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 20 66 65 61 74 75 72 65 73 2c 20 6d 61 6b 65 20 73 75 72 65 20 74 6f 20 6b 65 65 70 20 74 68 65 6d 20 69 64 65 6d 70 6f 74 65 6e 74 2e 0a ~ "~ While it's possible to imagine reasons one might want to" ~ " have back-and-forth" 7e 20 57 68 69 6c 65 20 69 74 27 73 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 69 6d 61 67 69 6e 65 20 72 65 61 73 6f 6e 73 20 6f 6e 65 20 6d 69 67 68 74 20 77 61 6e 74 20 74 6f 20 68 61 76 65 20 62 61 63 6b 2d 61 6e 64 2d 66 6f 72 74 68 0a ~ "~ interplay between successive formatting and" ~ " postprocessing phases, Evocation" 7e 20 69 6e 74 65 72 70 6c 61 79 20 62 65 74 77 65 65 6e 20 73 75 63 63 65 73 73 69 76 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 61 6e 64 20 70 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 20 70 68 61 73 65 73 2c 20 45 76 6f 63 61 74 69 6f 6e 0a ~ "~ goes to some trouble to make sure there is none. In" ~ " Irenes' opinion, this" 7e 20 67 6f 65 73 20 74 6f 20 73 6f 6d 65 20 74 72 6f 75 62 6c 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 72 65 20 69 73 20 6e 6f 6e 65 2e 20 49 6e 20 49 72 65 6e 65 73 27 20 6f 70 69 6e 69 6f 6e 2c 20 74 68 69 73 0a ~ "~ is already quite enough complexity and is nearing the" ~ " limit of what humans" 7e 20 69 73 20 61 6c 72 65 61 64 79 20 71 75 69 74 65 20 65 6e 6f 75 67 68 20 63 6f 6d 70 6c 65 78 69 74 79 20 61 6e 64 20 69 73 20 6e 65 61 72 69 6e 67 20 74 68 65 20 6c 69 6d 69 74 20 6f 66 20 77 68 61 74 20 68 75 6d 61 6e 73 0a ~ "~ will find worthwhile. If you break idempotence, you are" ~ " hereby warned that" 7e 20 77 69 6c 6c 20 66 69 6e 64 20 77 6f 72 74 68 77 68 69 6c 65 2e 20 49 66 20 79 6f 75 20 62 72 65 61 6b 20 69 64 65 6d 70 6f 74 65 6e 63 65 2c 20 79 6f 75 20 61 72 65 20 68 65 72 65 62 79 20 77 61 72 6e 65 64 20 74 68 61 74 0a ~ "~ you are at risk of falling into the abyss[1]." 7e 20 79 6f 75 20 61 72 65 20 61 74 20 72 69 73 6b 20 6f 66 20 66 61 6c 6c 69 6e 67 20 69 6e 74 6f 20 74 68 65 20 61 62 79 73 73 5b 31 5d 2e 0a ~ "~" 7e 0a ~ "~ Postprocessing re-organizes entries, without changing" ~ " their meaning, but" 7e 20 20 20 50 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 20 72 65 2d 6f 72 67 61 6e 69 7a 65 73 20 65 6e 74 72 69 65 73 2c 20 77 69 74 68 6f 75 74 20 63 68 61 6e 67 69 6e 67 20 74 68 65 69 72 20 6d 65 61 6e 69 6e 67 2c 20 62 75 74 0a ~ "~ in a way that will make them easier to format. There are" ~ " two things it" 7e 20 69 6e 20 61 20 77 61 79 20 74 68 61 74 20 77 69 6c 6c 20 6d 61 6b 65 20 74 68 65 6d 20 65 61 73 69 65 72 20 74 6f 20 66 6f 72 6d 61 74 2e 20 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 74 68 69 6e 67 73 20 69 74 0a ~ "~ does, and they happen simultaneously: The whole array is" ~ " bubble-sorted;" 7e 20 64 6f 65 73 2c 20 61 6e 64 20 74 68 65 79 20 68 61 70 70 65 6e 20 73 69 6d 75 6c 74 61 6e 65 6f 75 73 6c 79 3a 20 54 68 65 20 77 68 6f 6c 65 20 61 72 72 61 79 20 69 73 20 62 75 62 62 6c 65 2d 73 6f 72 74 65 64 3b 0a ~ "~ and some suffix comment entries are split apart." 7e 20 61 6e 64 20 73 6f 6d 65 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 69 65 73 20 61 72 65 20 73 70 6c 69 74 20 61 70 61 72 74 2e 0a ~ "~" 7e 0a ~ "~ The bubble sort resolves ordering first by the address" ~ " each entry is" 7e 20 20 20 54 68 65 20 62 75 62 62 6c 65 20 73 6f 72 74 20 72 65 73 6f 6c 76 65 73 20 6f 72 64 65 72 69 6e 67 20 66 69 72 73 74 20 62 79 20 74 68 65 20 61 64 64 72 65 73 73 20 65 61 63 68 20 65 6e 74 72 79 20 69 73 0a ~ "~ attached to, low-to-high. As a tiebreaker when two" ~ " entries have the same" 7e 20 61 74 74 61 63 68 65 64 20 74 6f 2c 20 6c 6f 77 2d 74 6f 2d 68 69 67 68 2e 20 41 73 20 61 20 74 69 65 62 72 65 61 6b 65 72 20 77 68 65 6e 20 74 77 6f 20 65 6e 74 72 69 65 73 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 0a ~ "~ address, a comment entry is sorted after a" ~ " stack-manipulation entry. The" 7e 20 61 64 64 72 65 73 73 2c 20 61 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 20 69 73 20 73 6f 72 74 65 64 20 61 66 74 65 72 20 61 20 73 74 61 63 6b 2d 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 65 6e 74 72 79 2e 20 54 68 65 0a ~ "~ tiebreaker rule means that stack-manipulation commands" ~ " can come after the" 7e 20 74 69 65 62 72 65 61 6b 65 72 20 72 75 6c 65 20 6d 65 61 6e 73 20 74 68 61 74 20 73 74 61 63 6b 2d 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 63 6f 6d 6d 61 6e 64 73 20 63 61 6e 20 63 6f 6d 65 20 61 66 74 65 72 20 74 68 65 0a ~ "~ last byte that's within the comment's span; otherwise" ~ " they would always have" 7e 20 6c 61 73 74 20 62 79 74 65 20 74 68 61 74 27 73 20 77 69 74 68 69 6e 20 74 68 65 20 63 6f 6d 6d 65 6e 74 27 73 20 73 70 61 6e 3b 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 79 20 77 6f 75 6c 64 20 61 6c 77 61 79 73 20 68 61 76 65 0a ~ "~ to be before it. If neither criterion applies, the" ~ " entries will stay in" 7e 20 74 6f 20 62 65 20 62 65 66 6f 72 65 20 69 74 2e 20 49 66 20 6e 65 69 74 68 65 72 20 63 72 69 74 65 72 69 6f 6e 20 61 70 70 6c 69 65 73 2c 20 74 68 65 20 65 6e 74 72 69 65 73 20 77 69 6c 6c 20 73 74 61 79 20 69 6e 0a ~ "~ whatever order they were in to begin with; that is, it's" ~ " a stable sort." 7e 20 77 68 61 74 65 76 65 72 20 6f 72 64 65 72 20 74 68 65 79 20 77 65 72 65 20 69 6e 20 74 6f 20 62 65 67 69 6e 20 77 69 74 68 3b 20 74 68 61 74 20 69 73 2c 20 69 74 27 73 20 61 20 73 74 61 62 6c 65 20 73 6f 72 74 2e 0a ~ "~" 7e 0a ~ "~ The comment splitting applies only to suffix comments," ~ " and only when their" 7e 20 20 20 54 68 65 20 63 6f 6d 6d 65 6e 74 20 73 70 6c 69 74 74 69 6e 67 20 61 70 70 6c 69 65 73 20 6f 6e 6c 79 20 74 6f 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 73 2c 20 61 6e 64 20 6f 6e 6c 79 20 77 68 65 6e 20 74 68 65 69 72 0a ~ "~ length is not zero. They become a fresh-line entry at the" ~ " start of the span" 7e 20 6c 65 6e 67 74 68 20 69 73 20 6e 6f 74 20 7a 65 72 6f 2e 20 54 68 65 79 20 62 65 63 6f 6d 65 20 61 20 66 72 65 73 68 2d 6c 69 6e 65 20 65 6e 74 72 79 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 73 70 61 6e 0a ~ "~ the comment originally attached to, and a zero-length" ~ " suffix comment entry" 7e 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 6f 72 69 67 69 6e 61 6c 6c 79 20 61 74 74 61 63 68 65 64 20 74 6f 2c 20 61 6e 64 20 61 20 7a 65 72 6f 2d 6c 65 6e 67 74 68 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 0a ~ "~ at the end of the span." 7e 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 73 70 61 6e 2e 0a ~ "~" 7e 0a ~ "~ Please notice that adjust-length commands happen when" ~ " magic comments are" 7e 20 20 20 50 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 61 74 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 20 63 6f 6d 6d 61 6e 64 73 20 68 61 70 70 65 6e 20 77 68 65 6e 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 0a ~ "~ executed, which was long, long ago by now. By the time" ~ " the postprocessing" 7e 20 65 78 65 63 75 74 65 64 2c 20 77 68 69 63 68 20 77 61 73 20 6c 6f 6e 67 2c 20 6c 6f 6e 67 20 61 67 6f 20 62 79 20 6e 6f 77 2e 20 42 79 20 74 68 65 20 74 69 6d 65 20 74 68 65 20 70 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 0a ~ "~ happens, every entry's length has been as adjusted as" ~ " it's ever going to be." 7e 20 68 61 70 70 65 6e 73 2c 20 65 76 65 72 79 20 65 6e 74 72 79 27 73 20 6c 65 6e 67 74 68 20 68 61 73 20 62 65 65 6e 20 61 73 20 61 64 6a 75 73 74 65 64 20 61 73 20 69 74 27 73 20 65 76 65 72 20 67 6f 69 6e 67 20 74 6f 20 62 65 2e 0a ~ "~ This is important, because the order of entries is going" ~ " to matter during" 7e 20 54 68 69 73 20 69 73 20 69 6d 70 6f 72 74 61 6e 74 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 65 6e 74 72 69 65 73 20 69 73 20 67 6f 69 6e 67 20 74 6f 20 6d 61 74 74 65 72 20 64 75 72 69 6e 67 0a ~ "~ the formatting phase." 7e 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 2e 0a ~ "~" 7e 0a ~ "~ Notice also that the splitting of suffix comment" ~ " entries changes what" 7e 20 20 20 4e 6f 74 69 63 65 20 61 6c 73 6f 20 74 68 61 74 20 74 68 65 20 73 70 6c 69 74 74 69 6e 67 20 6f 66 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 69 65 73 20 63 68 61 6e 67 65 73 20 77 68 61 74 0a ~ "~ address the comment is attached to (unless it's a" ~ " negative length, which is" 7e 20 61 64 64 72 65 73 73 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 69 73 20 61 74 74 61 63 68 65 64 20 74 6f 20 28 75 6e 6c 65 73 73 20 69 74 27 73 20 61 20 6e 65 67 61 74 69 76 65 20 6c 65 6e 67 74 68 2c 20 77 68 69 63 68 20 69 73 0a ~ "~ already at the end of its span). Any entries that were" ~ " attached to output" 7e 20 61 6c 72 65 61 64 79 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 69 74 73 20 73 70 61 6e 29 2e 20 41 6e 79 20 65 6e 74 72 69 65 73 20 74 68 61 74 20 77 65 72 65 20 61 74 74 61 63 68 65 64 20 74 6f 20 6f 75 74 70 75 74 0a ~ "~ points somewhere inside the span will now definitely be" ~ " before the suffix" 7e 20 70 6f 69 6e 74 73 20 73 6f 6d 65 77 68 65 72 65 20 69 6e 73 69 64 65 20 74 68 65 20 73 70 61 6e 20 77 69 6c 6c 20 6e 6f 77 20 64 65 66 69 6e 69 74 65 6c 79 20 62 65 20 62 65 66 6f 72 65 20 74 68 65 20 73 75 66 66 69 78 0a ~ "~ comment's entry in the entry array, whereas up till now" ~ " they were likely" 7e 20 63 6f 6d 6d 65 6e 74 27 73 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 2c 20 77 68 65 72 65 61 73 20 75 70 20 74 69 6c 6c 20 6e 6f 77 20 74 68 65 79 20 77 65 72 65 20 6c 69 6b 65 6c 79 0a ~ "~ somewhere after it, depending on the exact order" ~ " everything was created in." 7e 20 73 6f 6d 65 77 68 65 72 65 20 61 66 74 65 72 20 69 74 2c 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 65 78 61 63 74 20 6f 72 64 65 72 20 65 76 65 72 79 74 68 69 6e 67 20 77 61 73 20 63 72 65 61 74 65 64 20 69 6e 2e 0a ~ "~" 7e 0a ~ "~ The postprocessing phase is conceptually simple -" ~ " unlike the magic-comment" 7e 20 20 20 54 68 65 20 70 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 20 70 68 61 73 65 20 69 73 20 63 6f 6e 63 65 70 74 75 61 6c 6c 79 20 73 69 6d 70 6c 65 20 2d 20 75 6e 6c 69 6b 65 20 74 68 65 20 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 0a ~ "~ execution phase before it, and unlike the formatting" ~ " phase after it, there" 7e 20 65 78 65 63 75 74 69 6f 6e 20 70 68 61 73 65 20 62 65 66 6f 72 65 20 69 74 2c 20 61 6e 64 20 75 6e 6c 69 6b 65 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 20 61 66 74 65 72 20 69 74 2c 20 74 68 65 72 65 0a ~ "~ isn't any mutable state inside the phase that would make" ~ " it matter what" 7e 20 69 73 6e 27 74 20 61 6e 79 20 6d 75 74 61 62 6c 65 20 73 74 61 74 65 20 69 6e 73 69 64 65 20 74 68 65 20 70 68 61 73 65 20 74 68 61 74 20 77 6f 75 6c 64 20 6d 61 6b 65 20 69 74 20 6d 61 74 74 65 72 20 77 68 61 74 0a ~ "~ order things happen in. Enjoy this, because ordering is" ~ " about to become" 7e 20 6f 72 64 65 72 20 74 68 69 6e 67 73 20 68 61 70 70 65 6e 20 69 6e 2e 20 45 6e 6a 6f 79 20 74 68 69 73 2c 20 62 65 63 61 75 73 65 20 6f 72 64 65 72 69 6e 67 20 69 73 20 61 62 6f 75 74 20 74 6f 20 62 65 63 6f 6d 65 0a ~ "~ super confusing." 7e 20 73 75 70 65 72 20 63 6f 6e 66 75 73 69 6e 67 2e 0a ~ "~" 7e 0a ~ "~ Now let's consider the formatting phase. We've already" ~ " mentioned that" 7e 20 20 20 4e 6f 77 20 6c 65 74 27 73 20 63 6f 6e 73 69 64 65 72 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 2e 20 57 65 27 76 65 20 61 6c 72 65 61 64 79 20 6d 65 6e 74 69 6f 6e 65 64 20 74 68 61 74 0a ~ "~ there is some global state which is tracked throughout" ~ " the phase, such as" 7e 20 74 68 65 72 65 20 69 73 20 73 6f 6d 65 20 67 6c 6f 62 61 6c 20 73 74 61 74 65 20 77 68 69 63 68 20 69 73 20 74 72 61 63 6b 65 64 20 74 68 72 6f 75 67 68 6f 75 74 20 74 68 65 20 70 68 61 73 65 2c 20 73 75 63 68 20 61 73 0a ~ "~ the current indentation level and whether the output is" ~ " at the start of a" 7e 20 74 68 65 20 63 75 72 72 65 6e 74 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c 65 76 65 6c 20 61 6e 64 20 77 68 65 74 68 65 72 20 74 68 65 20 6f 75 74 70 75 74 20 69 73 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 61 0a ~ "~ line. The formatting phase is given an overall block of" ~ " bytes in the" 7e 20 6c 69 6e 65 2e 20 54 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 20 69 73 20 67 69 76 65 6e 20 61 6e 20 6f 76 65 72 61 6c 6c 20 62 6c 6f 63 6b 20 6f 66 20 62 79 74 65 73 20 69 6e 20 74 68 65 0a ~ "~ label-loop buffer, which it iterates through in order" ~ " from beginning to end." 7e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2c 20 77 68 69 63 68 20 69 74 20 69 74 65 72 61 74 65 73 20 74 68 72 6f 75 67 68 20 69 6e 20 6f 72 64 65 72 20 66 72 6f 6d 20 62 65 67 69 6e 6e 69 6e 67 20 74 6f 20 65 6e 64 2e 0a ~ "~ Any time the formatting phase reaches an address which" ~ " has metadata entries" 7e 20 41 6e 79 20 74 69 6d 65 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 20 72 65 61 63 68 65 73 20 61 6e 20 61 64 64 72 65 73 73 20 77 68 69 63 68 20 68 61 73 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 0a ~ "~ attached to it, all the entries at that address are" ~ " executed, in the order" 7e 20 61 74 74 61 63 68 65 64 20 74 6f 20 69 74 2c 20 61 6c 6c 20 74 68 65 20 65 6e 74 72 69 65 73 20 61 74 20 74 68 61 74 20 61 64 64 72 65 73 73 20 61 72 65 20 65 78 65 63 75 74 65 64 2c 20 69 6e 20 74 68 65 20 6f 72 64 65 72 0a ~ "~ they exist in the entry array." 7e 20 74 68 65 79 20 65 78 69 73 74 20 69 6e 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 2e 0a ~ "~" 7e 0a ~ "~ Yes, that's right, executing an entry is different from" ~ " executing the" 7e 20 20 20 59 65 73 2c 20 74 68 61 74 27 73 20 72 69 67 68 74 2c 20 65 78 65 63 75 74 69 6e 67 20 61 6e 20 65 6e 74 72 79 20 69 73 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 65 78 65 63 75 74 69 6e 67 20 74 68 65 0a ~ "~ magic comment that created the entry. That's important." 7e 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 74 68 61 74 20 63 72 65 61 74 65 64 20 74 68 65 20 65 6e 74 72 79 2e 20 54 68 61 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 2e 0a ~ "~" 7e 0a ~ "~ The line-comment and suffix-comment entries do the" ~ " obvious things: They" 7e 20 20 20 54 68 65 20 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 20 61 6e 64 20 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 69 65 73 20 64 6f 20 74 68 65 20 6f 62 76 69 6f 75 73 20 74 68 69 6e 67 73 3a 20 54 68 65 79 0a ~ "~ print out the appropriate comment text. Suffix comments" ~ " are also all" 7e 20 70 72 69 6e 74 20 6f 75 74 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 63 6f 6d 6d 65 6e 74 20 74 65 78 74 2e 20 53 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 61 6c 73 6f 20 61 6c 6c 0a ~ "~ horizontally aligned with each other, to make them easier" ~ " to visually skim." 7e 20 68 6f 72 69 7a 6f 6e 74 61 6c 6c 79 20 61 6c 69 67 6e 65 64 20 77 69 74 68 20 65 61 63 68 20 6f 74 68 65 72 2c 20 74 6f 20 6d 61 6b 65 20 74 68 65 6d 20 65 61 73 69 65 72 20 74 6f 20 76 69 73 75 61 6c 6c 79 20 73 6b 69 6d 2e 0a ~ "~ The two kinds of comment entries also do a less-obvious" ~ " thing, which is fill" 7e 20 54 68 65 20 74 77 6f 20 6b 69 6e 64 73 20 6f 66 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 69 65 73 20 61 6c 73 6f 20 64 6f 20 61 20 6c 65 73 73 2d 6f 62 76 69 6f 75 73 20 74 68 69 6e 67 2c 20 77 68 69 63 68 20 69 73 20 66 69 6c 6c 0a ~ "~ in any # template items that are part of the comment" ~ " text, in order from" 7e 20 69 6e 20 61 6e 79 20 23 20 74 65 6d 70 6c 61 74 65 20 69 74 65 6d 73 20 74 68 61 74 20 61 72 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 74 65 78 74 2c 20 69 6e 20 6f 72 64 65 72 20 66 72 6f 6d 0a ~ "~ left to right." 7e 20 6c 65 66 74 20 74 6f 20 72 69 67 68 74 2e 0a ~ "~" 7e 0a ~ "~ Where do those items come from? Well, there's a" ~ " separate stack, the" 7e 20 20 20 57 68 65 72 65 20 64 6f 20 74 68 6f 73 65 20 69 74 65 6d 73 20 63 6f 6d 65 20 66 72 6f 6d 3f 20 57 65 6c 6c 2c 20 74 68 65 72 65 27 73 20 61 20 73 65 70 61 72 61 74 65 20 73 74 61 63 6b 2c 20 74 68 65 0a ~ "~ subitem entry stack, which is kept in the hex output" ~ " metadata header. The" 7e 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 2c 20 77 68 69 63 68 20 69 73 20 6b 65 70 74 20 69 6e 20 74 68 65 20 68 65 78 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 68 65 61 64 65 72 2e 20 54 68 65 0a ~ "~ subitem entry stack has an extremely small, fixed maximum" ~ " depth. The maximum" 7e 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 20 68 61 73 20 61 6e 20 65 78 74 72 65 6d 65 6c 79 20 73 6d 61 6c 6c 2c 20 66 69 78 65 64 20 6d 61 78 69 6d 75 6d 20 64 65 70 74 68 2e 20 54 68 65 20 6d 61 78 69 6d 75 6d 0a ~ "~ depth is deliberately small, so that any leaks onto it" ~ " will be detected" 7e 20 64 65 70 74 68 20 69 73 20 64 65 6c 69 62 65 72 61 74 65 6c 79 20 73 6d 61 6c 6c 2c 20 73 6f 20 74 68 61 74 20 61 6e 79 20 6c 65 61 6b 73 20 6f 6e 74 6f 20 69 74 20 77 69 6c 6c 20 62 65 20 64 65 74 65 63 74 65 64 0a ~ "~ somewhere close to their root causes, for ease of" ~ " diagnosis. Unusually for" 7e 20 73 6f 6d 65 77 68 65 72 65 20 63 6c 6f 73 65 20 74 6f 20 74 68 65 69 72 20 72 6f 6f 74 20 63 61 75 73 65 73 2c 20 66 6f 72 20 65 61 73 65 20 20 6f 66 20 64 69 61 67 6e 6f 73 69 73 2e 20 55 6e 75 73 75 61 6c 6c 79 20 66 6f 72 0a ~ "~ Evocation, if you underflow or overflow it, you'll get a" ~ " friendly error" 7e 20 45 76 6f 63 61 74 69 6f 6e 2c 20 69 66 20 79 6f 75 20 75 6e 64 65 72 66 6c 6f 77 20 6f 72 20 6f 76 65 72 66 6c 6f 77 20 69 74 2c 20 79 6f 75 27 6c 6c 20 67 65 74 20 61 20 66 72 69 65 6e 64 6c 79 20 65 72 72 6f 72 0a ~ "~ message rather than a segfault - how nice! Of course, the" ~ " error message will" 7e 20 6d 65 73 73 61 67 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 20 73 65 67 66 61 75 6c 74 20 2d 20 68 6f 77 20 6e 69 63 65 21 20 4f 66 20 63 6f 75 72 73 65 2c 20 74 68 65 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 77 69 6c 6c 0a ~ "~ appear in the middle of your regular output and corrupt" ~ " it, but you can't" 7e 20 61 70 70 65 61 72 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 79 6f 75 72 20 72 65 67 75 6c 61 72 20 6f 75 74 70 75 74 20 61 6e 64 20 63 6f 72 72 75 70 74 20 69 74 2c 20 62 75 74 20 79 6f 75 20 63 61 6e 27 74 0a ~ "~ have everything..." 7e 20 68 61 76 65 20 65 76 65 72 79 74 68 69 6e 67 2e 2e 2e 0a ~ "~" 7e 0a ~ "~ Each time a comment template is being filled and" ~ " encounters a #" 7e 20 20 20 45 61 63 68 20 74 69 6d 65 20 61 20 63 6f 6d 6d 65 6e 74 20 74 65 6d 70 6c 61 74 65 20 69 73 20 62 65 69 6e 67 20 66 69 6c 6c 65 64 20 61 6e 64 20 65 6e 63 6f 75 6e 74 65 72 73 20 61 20 23 0a ~ "~ placeholder, an item is popped off the subitem entry" ~ " stack and formatted" 7e 20 70 6c 61 63 65 68 6f 6c 64 65 72 2c 20 61 6e 20 69 74 65 6d 20 69 73 20 70 6f 70 70 65 64 20 6f 66 66 20 74 68 65 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 20 61 6e 64 20 66 6f 72 6d 61 74 74 65 64 0a ~ "~ according to what type of entry it is. It's called an" ~ " "entry stack" for a" 7e 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 77 68 61 74 20 74 79 70 65 20 6f 66 20 65 6e 74 72 79 20 69 74 20 69 73 2e 20 49 74 27 73 20 63 61 6c 6c 65 64 20 61 6e 20 22 65 6e 74 72 79 20 73 74 61 63 6b 22 20 66 6f 72 20 61 0a ~ "~ reason: it's a stack of pointers to metadata entries," ~ " whose backing store" 7e 20 72 65 61 73 6f 6e 3a 20 69 74 27 73 20 61 20 73 74 61 63 6b 20 6f 66 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 2c 20 77 68 6f 73 65 20 62 61 63 6b 69 6e 67 20 73 74 6f 72 65 0a ~ "~ is in this very same entry array that we're executing." ~ " So, all the various" 7e 20 69 73 20 69 6e 20 74 68 69 73 20 76 65 72 79 20 73 61 6d 65 20 65 6e 74 72 79 20 61 72 72 61 79 20 74 68 61 74 20 77 65 27 72 65 20 65 78 65 63 75 74 69 6e 67 2e 20 53 6f 2c 20 61 6c 6c 20 74 68 65 20 76 61 72 69 6f 75 73 0a ~ "~ internal fields of an entry are available to provide rich" ~ " behavior which" 7e 20 69 6e 74 65 72 6e 61 6c 20 66 69 65 6c 64 73 20 6f 66 20 61 6e 20 65 6e 74 72 79 20 61 72 65 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 70 72 6f 76 69 64 65 20 72 69 63 68 20 62 65 68 61 76 69 6f 72 20 77 68 69 63 68 0a ~ "~ allows different kinds of values to be formatted in" ~ " different ways." 7e 20 61 6c 6c 6f 77 73 20 64 69 66 66 65 72 65 6e 74 20 6b 69 6e 64 73 20 6f 66 20 76 61 6c 75 65 73 20 74 6f 20 62 65 20 66 6f 72 6d 61 74 74 65 64 20 69 6e 20 64 69 66 66 65 72 65 6e 74 20 77 61 79 73 2e 0a ~ "~" 7e 0a ~ "~ For those used to languages with automatic memory" ~ " management, keep in mind" 7e 20 20 20 46 6f 72 20 74 68 6f 73 65 20 75 73 65 64 20 74 6f 20 6c 61 6e 67 75 61 67 65 73 20 77 69 74 68 20 61 75 74 6f 6d 61 74 69 63 20 6d 65 6d 6f 72 79 20 6d 61 6e 61 67 65 6d 65 6e 74 2c 20 6b 65 65 70 20 69 6e 20 6d 69 6e 64 0a ~ "~ that there's no language-provided guarantee that the" ~ " thing a pointer points" 7e 20 74 68 61 74 20 74 68 65 72 65 27 73 20 6e 6f 20 6c 61 6e 67 75 61 67 65 2d 70 72 6f 76 69 64 65 64 20 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 74 68 65 20 74 68 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 70 6f 69 6e 74 73 0a ~ "~ to still exists, and hasn't been replaced with some" ~ " other" 7e 20 74 6f 20 73 74 69 6c 6c 20 65 78 69 73 74 73 2c 20 61 6e 64 20 68 61 73 6e 27 74 20 62 65 65 6e 20 72 65 70 6c 61 63 65 64 20 77 69 74 68 20 73 6f 6d 65 20 6f 74 68 65 72 0a ~ "~ misleadingly-similar thing. The separation of all this" ~ " stuff into phases" 7e 20 6d 69 73 6c 65 61 64 69 6e 67 6c 79 2d 73 69 6d 69 6c 61 72 20 74 68 69 6e 67 2e 20 54 68 65 20 73 65 70 61 72 61 74 69 6f 6e 20 6f 66 20 61 6c 6c 20 74 68 69 73 20 73 74 75 66 66 20 69 6e 74 6f 20 70 68 61 73 65 73 0a ~ "~ provides that guarantee, because there's nothing in the" ~ " formatting phase" 7e 20 70 72 6f 76 69 64 65 73 20 74 68 61 74 20 67 75 61 72 61 6e 74 65 65 2c 20 62 65 63 61 75 73 65 20 74 68 65 72 65 27 73 20 6e 6f 74 68 69 6e 67 20 69 6e 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 0a ~ "~ that destroys or moves metadata entries in the array, but" ~ " if that separation" 7e 20 74 68 61 74 20 64 65 73 74 72 6f 79 73 20 6f 72 20 6d 6f 76 65 73 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 69 6e 20 74 68 65 20 61 72 72 61 79 2c 20 62 75 74 20 69 66 20 74 68 61 74 20 73 65 70 61 72 61 74 69 6f 6e 0a ~ "~ were to break down, astonishingly complex wrong behavior" ~ " would be entirely" 7e 20 77 65 72 65 20 74 6f 20 62 72 65 61 6b 20 64 6f 77 6e 2c 20 61 73 74 6f 6e 69 73 68 69 6e 67 6c 79 20 63 6f 6d 70 6c 65 78 20 77 72 6f 6e 67 20 62 65 68 61 76 69 6f 72 20 77 6f 75 6c 64 20 62 65 20 65 6e 74 69 72 65 6c 79 0a ~ "~ likely. If you're reading all this, it's probably to" ~ " touch that code, so" 7e 20 6c 69 6b 65 6c 79 2e 20 49 66 20 79 6f 75 27 72 65 20 72 65 61 64 69 6e 67 20 61 6c 6c 20 74 68 69 73 2c 20 69 74 27 73 20 70 72 6f 62 61 62 6c 79 20 74 6f 20 74 6f 75 63 68 20 74 68 61 74 20 63 6f 64 65 2c 20 73 6f 0a ~ "~ please keep those consequences in mind." 7e 20 70 6c 65 61 73 65 20 6b 65 65 70 20 74 68 6f 73 65 20 63 6f 6e 73 65 71 75 65 6e 63 65 73 20 69 6e 20 6d 69 6e 64 2e 0a ~ "~" 7e 0a ~ "~ How do entry pointers get pushed onto the subitem entry" ~ " stack, and where" 7e 20 20 20 48 6f 77 20 64 6f 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 73 20 67 65 74 20 70 75 73 68 65 64 20 6f 6e 74 6f 20 74 68 65 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 2c 20 61 6e 64 20 77 68 65 72 65 0a ~ "~ do the values inside them come from? Okay, now this is" ~ " the payoff, the part" 7e 20 64 6f 20 74 68 65 20 76 61 6c 75 65 73 20 69 6e 73 69 64 65 20 74 68 65 6d 20 63 6f 6d 65 20 66 72 6f 6d 3f 20 4f 6b 61 79 2c 20 6e 6f 77 20 74 68 69 73 20 69 73 20 74 68 65 20 70 61 79 6f 66 66 2c 20 74 68 65 20 70 61 72 74 0a ~ "~ where you need to understand all these phases at once." ~ " Cast your mind all" 7e 20 77 68 65 72 65 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 61 6c 6c 20 74 68 65 73 65 20 70 68 61 73 65 73 20 61 74 20 6f 6e 63 65 2e 20 43 61 73 74 20 79 6f 75 72 20 6d 69 6e 64 20 61 6c 6c 0a ~ "~ the way back to the magic-comment execution, and take" ~ " another look at the" 7e 20 74 68 65 20 77 61 79 20 62 61 63 6b 20 74 6f 20 74 68 65 20 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 20 65 78 65 63 75 74 69 6f 6e 2c 20 61 6e 64 20 74 61 6b 65 20 61 6e 6f 74 68 65 72 20 6c 6f 6f 6b 20 61 74 20 74 68 65 0a ~ "~ provide-* examples above. Recall that magic comment" ~ " commands execute when" 7e 20 70 72 6f 76 69 64 65 2d 2a 20 65 78 61 6d 70 6c 65 73 20 61 62 6f 76 65 2e 20 52 65 63 61 6c 6c 20 74 68 61 74 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 63 6f 6d 6d 61 6e 64 73 20 65 78 65 63 75 74 65 20 77 68 65 6e 0a ~ "~ the word they're contained in is running. For the other" ~ " comment commands," 7e 20 74 68 65 20 77 6f 72 64 20 74 68 65 79 27 72 65 20 63 6f 6e 74 61 69 6e 65 64 20 69 6e 20 69 73 20 72 75 6e 6e 69 6e 67 2e 20 46 6f 72 20 74 68 65 20 6f 74 68 65 72 20 63 6f 6d 6d 65 6e 74 20 63 6f 6d 6d 61 6e 64 73 2c 0a ~ "~ this is mostly a curiosity; we talked about" ~ " adjust-length, above, but that's" 7e 20 74 68 69 73 20 69 73 20 6d 6f 73 74 6c 79 20 61 20 63 75 72 69 6f 73 69 74 79 3b 20 77 65 20 74 61 6c 6b 65 64 20 61 62 6f 75 74 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 2c 20 61 62 6f 76 65 2c 20 62 75 74 20 74 68 61 74 27 73 0a ~ "~ still just recording the fact that the word did or didn't" ~ " run." 7e 20 73 74 69 6c 6c 20 6a 75 73 74 20 72 65 63 6f 72 64 69 6e 67 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 20 77 6f 72 64 20 64 69 64 20 6f 72 20 64 69 64 6e 27 74 20 72 75 6e 2e 0a ~ "~" 7e 0a ~ "~ The provide-* commands are deeper than that. They peek" ~ " at the top item on" 7e 20 20 20 54 68 65 20 70 72 6f 76 69 64 65 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 64 65 65 70 65 72 20 74 68 61 6e 20 74 68 61 74 2e 20 54 68 65 79 20 70 65 65 6b 20 61 74 20 74 68 65 20 74 6f 70 20 69 74 65 6d 20 6f 6e 0a ~ "~ the stack OF THE COMPILER, the code being transformed." ~ " The -decimal and" 7e 20 74 68 65 20 73 74 61 63 6b 20 4f 46 20 54 48 45 20 43 4f 4d 50 49 4c 45 52 2c 20 74 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 74 72 61 6e 73 66 6f 72 6d 65 64 2e 20 54 68 65 20 2d 64 65 63 69 6d 61 6c 20 61 6e 64 0a ~ "~ -hex* variants create a corresponding" ~ " -entry-type-push-subitem- metadata" 7e 20 2d 68 65 78 2a 20 76 61 72 69 61 6e 74 73 20 63 72 65 61 74 65 20 61 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 20 6d 65 74 61 64 61 74 61 0a ~ "~ entry of the matching type, and copy the numeric value" ~ " into it." 7e 20 65 6e 74 72 79 20 6f 66 20 74 68 65 20 6d 61 74 63 68 69 6e 67 20 74 79 70 65 2c 20 61 6e 64 20 63 6f 70 79 20 74 68 65 20 6e 75 6d 65 72 69 63 20 76 61 6c 75 65 20 69 6e 74 6f 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ The -string variant expects to find a pointer to a" ~ " null-terminated string;" 7e 20 20 20 54 68 65 20 2d 73 74 72 69 6e 67 20 76 61 72 69 61 6e 74 20 65 78 70 65 63 74 73 20 74 6f 20 66 69 6e 64 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 74 72 69 6e 67 3b 0a ~ "~ -string-copy does too, but copies the contents of it to a" ~ " safe place" 7e 20 2d 73 74 72 69 6e 67 2d 63 6f 70 79 20 64 6f 65 73 20 74 6f 6f 2c 20 62 75 74 20 63 6f 70 69 65 73 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 69 74 20 74 6f 20 61 20 73 61 66 65 20 70 6c 61 63 65 0a ~ "~ immediately, on the assumption they'll be overwritten." ~ " The -keyword variant" 7e 20 69 6d 6d 65 64 69 61 74 65 6c 79 2c 20 6f 6e 20 74 68 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 74 68 65 79 27 6c 6c 20 62 65 20 6f 76 65 72 77 72 69 74 74 65 6e 2e 20 54 68 65 20 2d 6b 65 79 77 6f 72 64 20 76 61 72 69 61 6e 74 0a ~ "~ expects to find a keyword (a word which, when executed," ~ " pushes its own" 7e 20 65 78 70 65 63 74 73 20 74 6f 20 66 69 6e 64 20 61 20 6b 65 79 77 6f 72 64 20 28 61 20 77 6f 72 64 20 77 68 69 63 68 2c 20 77 68 65 6e 20 65 78 65 63 75 74 65 64 2c 20 70 75 73 68 65 73 20 69 74 73 20 6f 77 6e 0a ~ "~ execution token onto the stack); the command extracts the" ~ " name of the" 7e 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 6f 6e 74 6f 20 74 68 65 20 73 74 61 63 6b 29 3b 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 65 78 74 72 61 63 74 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 0a ~ "~ keyword from the dictionary entry header. All three of" ~ " these save pointers" 7e 20 6b 65 79 77 6f 72 64 20 66 72 6f 6d 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 79 20 68 65 61 64 65 72 2e 20 41 6c 6c 20 74 68 72 65 65 20 6f 66 20 74 68 65 73 65 20 73 61 76 65 20 70 6f 69 6e 74 65 72 73 0a ~ "~ to their respective strings in a push-subitem-string" ~ " metadata entry. They" 7e 20 74 6f 20 74 68 65 69 72 20 72 65 73 70 65 63 74 69 76 65 20 73 74 72 69 6e 67 73 20 69 6e 20 61 20 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 2e 20 54 68 65 79 0a ~ "~ also save the lengths of their strings to the subitem" ~ " entry's length field;" 7e 20 61 6c 73 6f 20 73 61 76 65 20 74 68 65 20 6c 65 6e 67 74 68 73 20 6f 66 20 74 68 65 69 72 20 73 74 72 69 6e 67 73 20 74 6f 20 74 68 65 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 27 73 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 3b 0a ~ "~ this is in contrast to the non-string provide-* commands," ~ " which use the" 7e 20 74 68 69 73 20 69 73 20 69 6e 20 63 6f 6e 74 72 61 73 74 20 74 6f 20 74 68 65 20 6e 6f 6e 2d 73 74 72 69 6e 67 20 70 72 6f 76 69 64 65 2d 2a 20 63 6f 6d 6d 61 6e 64 73 2c 20 77 68 69 63 68 20 75 73 65 20 74 68 65 0a ~ "~ command's parameter as their length values." 7e 20 63 6f 6d 6d 61 6e 64 27 73 20 70 61 72 61 6d 65 74 65 72 20 61 73 20 74 68 65 69 72 20 6c 65 6e 67 74 68 20 76 61 6c 75 65 73 2e 0a ~ "~" 7e 0a ~ "~ Admit it, you thought writing out "metadata entry" so" ~ " many times instead" 7e 20 20 20 41 64 6d 69 74 20 69 74 2c 20 79 6f 75 20 74 68 6f 75 67 68 74 20 77 72 69 74 69 6e 67 20 6f 75 74 20 22 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 22 20 73 6f 20 6d 61 6e 79 20 74 69 6d 65 73 20 69 6e 73 74 65 61 64 0a ~ "~ of just "entry" was silly because there was no other kind" ~ " of entry in" 7e 20 6f 66 20 6a 75 73 74 20 22 65 6e 74 72 79 22 20 77 61 73 20 73 69 6c 6c 79 20 62 65 63 61 75 73 65 20 74 68 65 72 65 20 77 61 73 20 6e 6f 20 6f 74 68 65 72 20 6b 69 6e 64 20 6f 66 20 65 6e 74 72 79 20 69 6e 0a ~ "~ consideration, right up until you got to "dictionary" ~ " entry". If so, hey" 7e 20 63 6f 6e 73 69 64 65 72 61 74 69 6f 6e 2c 20 72 69 67 68 74 20 75 70 20 75 6e 74 69 6c 20 79 6f 75 20 67 6f 74 20 74 6f 20 22 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 79 22 2e 20 49 66 20 73 6f 2c 20 68 65 79 0a ~ "~ look, neat, right? ;)" 7e 20 6c 6f 6f 6b 2c 20 6e 65 61 74 2c 20 72 69 67 68 74 3f 20 3b 29 0a ~ "~" 7e 0a ~ "~ The -data variant treats the value as opaque, and" ~ " creates an" 7e 20 20 20 54 68 65 20 2d 64 61 74 61 20 76 61 72 69 61 6e 74 20 74 72 65 61 74 73 20 74 68 65 20 76 61 6c 75 65 20 61 73 20 6f 70 61 71 75 65 2c 20 61 6e 64 20 63 72 65 61 74 65 73 20 61 6e 0a ~ "~ -entry-type-saved-data metadata entry. Unlike the others," ~ " these entries do" 7e 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 61 76 65 64 2d 64 61 74 61 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 2e 20 55 6e 6c 69 6b 65 20 74 68 65 20 6f 74 68 65 72 73 2c 20 74 68 65 73 65 20 65 6e 74 72 69 65 73 20 64 6f 0a ~ "~ not affect the subitem entry stack; they're consumed and" ~ " removed from the" 7e 20 6e 6f 74 20 61 66 66 65 63 74 20 74 68 65 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 3b 20 74 68 65 79 27 72 65 20 63 6f 6e 73 75 6d 65 64 20 61 6e 64 20 72 65 6d 6f 76 65 64 20 66 72 6f 6d 20 74 68 65 0a ~ "~ entry array before entry execution even starts, by the" ~ " matching data-*" 7e 20 65 6e 74 72 79 20 61 72 72 61 79 20 62 65 66 6f 72 65 20 65 6e 74 72 79 20 65 78 65 63 75 74 69 6f 6e 20 65 76 65 6e 20 73 74 61 72 74 73 2c 20 62 79 20 74 68 65 20 6d 61 74 63 68 69 6e 67 20 64 61 74 61 2d 2a 0a ~ "~ command." 7e 20 63 6f 6d 6d 61 6e 64 2e 0a ~ "~" 7e 0a ~ "~ Anyway, notice that when the various provide-* commands" ~ " execute, all" 7e 20 20 20 41 6e 79 77 61 79 2c 20 6e 6f 74 69 63 65 20 74 68 61 74 20 77 68 65 6e 20 74 68 65 20 76 61 72 69 6f 75 73 20 70 72 6f 76 69 64 65 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 65 78 65 63 75 74 65 2c 20 61 6c 6c 0a ~ "~ they're doing is capturing values and creating metadata" ~ " entries. Like all" 7e 20 74 68 65 79 27 72 65 20 64 6f 69 6e 67 20 69 73 20 63 61 70 74 75 72 69 6e 67 20 76 61 6c 75 65 73 20 61 6e 64 20 63 72 65 61 74 69 6e 67 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 2e 20 4c 69 6b 65 20 61 6c 6c 0a ~ "~ metadata entries, these are attached to the latest output" ~ " point as of the" 7e 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 2c 20 74 68 65 73 65 20 61 72 65 20 61 74 74 61 63 68 65 64 20 74 6f 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 61 73 20 6f 66 20 74 68 65 0a ~ "~ time the magic comment executes. In particular, the" ~ " subitem entry stack" 7e 20 74 69 6d 65 20 74 68 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 65 78 65 63 75 74 65 73 2e 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 74 68 65 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 0a ~ "~ isn't touched until all the way at the end, in the" ~ " formatting phase. It's" 7e 20 69 73 6e 27 74 20 74 6f 75 63 68 65 64 20 75 6e 74 69 6c 20 61 6c 6c 20 74 68 65 20 77 61 79 20 61 74 20 74 68 65 20 65 6e 64 2c 20 69 6e 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 2e 20 49 74 27 73 0a ~ "~ only when the formatting reaches the address the entry is" ~ " attached to that" 7e 20 6f 6e 6c 79 20 77 68 65 6e 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 72 65 61 63 68 65 73 20 74 68 65 20 61 64 64 72 65 73 73 20 74 68 65 20 65 6e 74 72 79 20 69 73 20 61 74 74 61 63 68 65 64 20 74 6f 20 74 68 61 74 0a ~ "~ the entry is executed, which has the effect of pushing a" ~ " pointer to the" 7e 20 74 68 65 20 65 6e 74 72 79 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 77 68 69 63 68 20 68 61 73 20 74 68 65 20 65 66 66 65 63 74 20 6f 66 20 70 75 73 68 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 0a ~ "~ entry onto the subitem entry stack." 7e 20 65 6e 74 72 79 20 6f 6e 74 6f 20 74 68 65 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 2e 0a ~ "~" 7e 0a ~ "~ It's been said already, but just to bring it all full" ~ " circle, the life" 7e 20 20 20 49 74 27 73 20 62 65 65 6e 20 73 61 69 64 20 61 6c 72 65 61 64 79 2c 20 62 75 74 20 6a 75 73 74 20 74 6f 20 62 72 69 6e 67 20 69 74 20 61 6c 6c 20 66 75 6c 6c 20 63 69 72 63 6c 65 2c 20 74 68 65 20 6c 69 66 65 0a ~ "~ cycle of a push-* entry ends later in the formatting" ~ " phase, when a comment" 7e 20 63 79 63 6c 65 20 6f 66 20 61 20 70 75 73 68 2d 2a 20 65 6e 74 72 79 20 65 6e 64 73 20 6c 61 74 65 72 20 69 6e 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 70 68 61 73 65 2c 20 77 68 65 6e 20 61 20 63 6f 6d 6d 65 6e 74 0a ~ "~ entry pops it off the subitem entry stack and" ~ " pretty-prints the value it" 7e 20 65 6e 74 72 79 20 70 6f 70 73 20 69 74 20 6f 66 66 20 74 68 65 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 20 61 6e 64 20 70 72 65 74 74 79 2d 70 72 69 6e 74 73 20 74 68 65 20 76 61 6c 75 65 20 69 74 0a ~ "~ holds." 7e 20 68 6f 6c 64 73 2e 0a ~ "~" 7e 0a ~ "~ With all this context, it likely doesn't need much" ~ " explanation, but the" 7e 20 20 20 57 69 74 68 20 61 6c 6c 20 74 68 69 73 20 63 6f 6e 74 65 78 74 2c 20 69 74 20 6c 69 6b 65 6c 79 20 64 6f 65 73 6e 27 74 20 6e 65 65 64 20 6d 75 63 68 20 65 78 70 6c 61 6e 61 74 69 6f 6e 2c 20 62 75 74 20 74 68 65 0a ~ "~ drop-subitem command will create an" ~ " -entry-type-drop-subitem entry. When" 7e 20 64 72 6f 70 2d 73 75 62 69 74 65 6d 20 63 6f 6d 6d 61 6e 64 20 77 69 6c 6c 20 63 72 65 61 74 65 20 61 6e 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 64 72 6f 70 2d 73 75 62 69 74 65 6d 20 65 6e 74 72 79 2e 20 57 68 65 6e 0a ~ "~ this entry is executed, it will discard an item from the" ~ " subitem entry" 7e 20 74 68 69 73 20 65 6e 74 72 79 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 69 74 20 77 69 6c 6c 20 64 69 73 63 61 72 64 20 61 6e 20 69 74 65 6d 20 66 72 6f 6d 20 74 68 65 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 0a ~ "~ stack. Similarly, swap-subitems creates an" ~ " -entry-type-swap-subitems, which" 7e 20 73 74 61 63 6b 2e 20 53 69 6d 69 6c 61 72 6c 79 2c 20 73 77 61 70 2d 73 75 62 69 74 65 6d 73 20 63 72 65 61 74 65 73 20 61 6e 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 77 61 70 2d 73 75 62 69 74 65 6d 73 2c 20 77 68 69 63 68 0a ~ "~ swaps the top two items, and roll-subitems creates an" 7e 20 73 77 61 70 73 20 74 68 65 20 74 6f 70 20 74 77 6f 20 69 74 65 6d 73 2c 20 61 6e 64 20 72 6f 6c 6c 2d 73 75 62 69 74 65 6d 73 20 63 72 65 61 74 65 73 20 61 6e 0a ~ "~ -entry-type-roll-subitems, which rolls them, or unrolls" ~ " them with a negative" 7e 20 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 6f 6c 6c 2d 73 75 62 69 74 65 6d 73 2c 20 77 68 69 63 68 20 72 6f 6c 6c 73 20 74 68 65 6d 2c 20 6f 72 20 75 6e 72 6f 6c 6c 73 20 74 68 65 6d 20 77 69 74 68 20 61 20 6e 65 67 61 74 69 76 65 0a ~ "~ parameter." 7e 20 70 61 72 61 6d 65 74 65 72 2e 0a ~ "" 0a ~ "~ In general, the order in which provide-* commands" ~ " execute will most likely" 7e 20 20 20 49 6e 20 67 65 6e 65 72 61 6c 2c 20 74 68 65 20 6f 72 64 65 72 20 69 6e 20 77 68 69 63 68 20 70 72 6f 76 69 64 65 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 65 78 65 63 75 74 65 20 77 69 6c 6c 20 6d 6f 73 74 20 6c 69 6b 65 6c 79 0a ~ "~ match the order in which the corresponding bytes are" ~ " output. This may not" 7e 20 6d 61 74 63 68 20 74 68 65 20 6f 72 64 65 72 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 62 79 74 65 73 20 61 72 65 20 6f 75 74 70 75 74 2e 20 54 68 69 73 20 6d 61 79 20 6e 6f 74 0a ~ "~ always match the order in which the comment template" ~ " wants to pretty-print" 7e 20 61 6c 77 61 79 73 20 6d 61 74 63 68 20 74 68 65 20 6f 72 64 65 72 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 74 65 6d 70 6c 61 74 65 20 77 61 6e 74 73 20 74 6f 20 70 72 65 74 74 79 2d 70 72 69 6e 74 0a ~ "~ them. Therefore, you will want to use these commands to" ~ " get the subitem" 7e 20 74 68 65 6d 2e 20 54 68 65 72 65 66 6f 72 65 2c 20 79 6f 75 20 77 69 6c 6c 20 77 61 6e 74 20 74 6f 20 75 73 65 20 74 68 65 73 65 20 63 6f 6d 6d 61 6e 64 73 20 74 6f 20 67 65 74 20 74 68 65 20 73 75 62 69 74 65 6d 0a ~ "~ stack in the proper order." 7e 20 73 74 61 63 6b 20 69 6e 20 74 68 65 20 70 72 6f 70 65 72 20 6f 72 64 65 72 2e 0a ~ "~" 7e 0a ~ "~ In using these commands that manipulate the subitem" ~ " stack, it's important" 7e 20 20 20 49 6e 20 75 73 69 6e 67 20 74 68 65 73 65 20 63 6f 6d 6d 61 6e 64 73 20 74 68 61 74 20 6d 61 6e 69 70 75 6c 61 74 65 20 74 68 65 20 73 75 62 69 74 65 6d 20 73 74 61 63 6b 2c 20 69 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 0a ~ "~ to remember that, when formatting happens, the" ~ " left-to-right output of" 7e 20 74 6f 20 72 65 6d 65 6d 62 65 72 20 74 68 61 74 2c 20 77 68 65 6e 20 66 6f 72 6d 61 74 74 69 6e 67 20 68 61 70 70 65 6e 73 2c 20 74 68 65 20 6c 65 66 74 2d 74 6f 2d 72 69 67 68 74 20 6f 75 74 70 75 74 20 6f 66 0a ~ "~ subitems in the final output comment is top-to-bottom on" ~ " the subitem stack," 7e 20 73 75 62 69 74 65 6d 73 20 69 6e 20 74 68 65 20 66 69 6e 61 6c 20 6f 75 74 70 75 74 20 63 6f 6d 6d 65 6e 74 20 69 73 20 74 6f 70 2d 74 6f 2d 62 6f 74 74 6f 6d 20 6f 6e 20 74 68 65 20 73 75 62 69 74 65 6d 20 73 74 61 63 6b 2c 0a ~ "~ because they're popped in order. This is the opposite of" ~ " the usual visual" 7e 20 62 65 63 61 75 73 65 20 74 68 65 79 27 72 65 20 70 6f 70 70 65 64 20 69 6e 20 6f 72 64 65 72 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 6f 70 70 6f 73 69 74 65 20 6f 66 20 74 68 65 20 75 73 75 61 6c 20 76 69 73 75 61 6c 0a ~ "~ representation of stacks, and can easily be confusing." 7e 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 73 74 61 63 6b 73 2c 20 61 6e 64 20 63 61 6e 20 65 61 73 69 6c 79 20 62 65 20 63 6f 6e 66 75 73 69 6e 67 2e 0a ~ "~" 7e 0a ~ "~ It's probably clear from the extreme emphasis this" ~ " documentation has taken" 7e 20 20 20 49 74 27 73 20 70 72 6f 62 61 62 6c 79 20 63 6c 65 61 72 20 66 72 6f 6d 20 74 68 65 20 65 78 74 72 65 6d 65 20 65 6d 70 68 61 73 69 73 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 68 61 73 20 74 61 6b 65 6e 0a ~ "~ on describing the order things happen in, but it is quite" ~ " common to define" 7e 20 6f 6e 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20 6f 72 64 65 72 20 74 68 69 6e 67 73 20 68 61 70 70 65 6e 20 69 6e 2c 20 62 75 74 20 69 74 20 69 73 20 71 75 69 74 65 20 63 6f 6d 6d 6f 6e 20 74 6f 20 64 65 66 69 6e 65 0a ~ "~ a suffix comment at the start of an assembly-instruction" ~ " word; adjust its" 7e 20 61 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 61 6e 20 61 73 73 65 6d 62 6c 79 2d 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 6f 72 64 3b 20 61 64 6a 75 73 74 20 69 74 73 0a ~ "~ length as other words are called; accumulate push-*" ~ " entries; then rely" 7e 20 6c 65 6e 67 74 68 20 61 73 20 6f 74 68 65 72 20 77 6f 72 64 73 20 61 72 65 20 63 61 6c 6c 65 64 3b 20 61 63 63 75 6d 75 6c 61 74 65 20 70 75 73 68 2d 2a 20 65 6e 74 72 69 65 73 3b 20 74 68 65 6e 20 72 65 6c 79 0a ~ "~ on the address sorting to make sure the push-* entries" ~ " are executed" 7e 20 6f 6e 20 74 68 65 20 61 64 64 72 65 73 73 20 73 6f 72 74 69 6e 67 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 70 75 73 68 2d 2a 20 65 6e 74 72 69 65 73 20 61 72 65 20 65 78 65 63 75 74 65 64 0a ~ "~ before the suffix comment entry, even though the" ~ " suffix-comment command" 7e 20 62 65 66 6f 72 65 20 74 68 65 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 74 68 65 20 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 63 6f 6d 6d 61 6e 64 0a ~ "~ executed before the others, and even though the" ~ " adjust-length commands may" 7e 20 65 78 65 63 75 74 65 64 20 62 65 66 6f 72 65 20 74 68 65 20 6f 74 68 65 72 73 2c 20 61 6e 64 20 65 76 65 6e 20 74 68 6f 75 67 68 20 74 68 65 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 20 63 6f 6d 6d 61 6e 64 73 20 6d 61 79 0a ~ "~ have come before or after the provide-* commands that go" ~ " with the same" 7e 20 68 61 76 65 20 63 6f 6d 65 20 62 65 66 6f 72 65 20 6f 72 20 61 66 74 65 72 20 74 68 65 20 70 72 6f 76 69 64 65 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 74 68 61 74 20 67 6f 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 0a ~ "~ suffix comment." 7e 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 2e 0a ~ "~" 7e 0a ~ "~ Now that you have this full picture in your head, you" ~ " finally also have" 7e 20 20 20 4e 6f 77 20 74 68 61 74 20 79 6f 75 20 68 61 76 65 20 74 68 69 73 20 66 75 6c 6c 20 70 69 63 74 75 72 65 20 69 6e 20 79 6f 75 72 20 68 65 61 64 2c 20 79 6f 75 20 66 69 6e 61 6c 6c 79 20 61 6c 73 6f 20 68 61 76 65 0a ~ "~ the background to understand the data-adjust-* commands." ~ " You may find it" 7e 20 74 68 65 20 62 61 63 6b 67 72 6f 75 6e 64 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 2a 20 63 6f 6d 6d 61 6e 64 73 2e 20 59 6f 75 20 6d 61 79 20 66 69 6e 64 20 69 74 0a ~ "~ helpful to go re-read the explanation of them, above, to" ~ " let it sink in." 7e 20 68 65 6c 70 66 75 6c 20 74 6f 20 67 6f 20 72 65 2d 72 65 61 64 20 74 68 65 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 6f 66 20 74 68 65 6d 2c 20 61 62 6f 76 65 2c 20 74 6f 20 6c 65 74 20 69 74 20 73 69 6e 6b 20 69 6e 2e 0a ~ "~" 7e 0a ~ "~ This is the kind of forwards-and-backwards thinking" ~ " which humans are" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 6b 69 6e 64 20 6f 66 20 66 6f 72 77 61 72 64 73 2d 61 6e 64 2d 62 61 63 6b 77 61 72 64 73 20 74 68 69 6e 6b 69 6e 67 20 77 68 69 63 68 20 68 75 6d 61 6e 73 20 61 72 65 0a ~ "~ surprisingly good at when reading and writing software," ~ " but which it's" 7e 20 73 75 72 70 72 69 73 69 6e 67 6c 79 20 67 6f 6f 64 20 61 74 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 61 6e 64 20 77 72 69 74 69 6e 67 20 73 6f 66 74 77 61 72 65 2c 20 62 75 74 20 77 68 69 63 68 20 69 74 27 73 0a ~ "~ quite difficult to formalize in a way that lets a" ~ " computer share that" 7e 20 71 75 69 74 65 20 64 69 66 66 69 63 75 6c 74 20 74 6f 20 66 6f 72 6d 61 6c 69 7a 65 20 69 6e 20 61 20 77 61 79 20 74 68 61 74 20 6c 65 74 73 20 61 20 63 6f 6d 70 75 74 65 72 20 73 68 61 72 65 20 74 68 61 74 0a ~ "~ understanding. If you've read this far, Irenes would" ~ " absolutely adore" 7e 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 2e 20 49 66 20 79 6f 75 27 76 65 20 72 65 61 64 20 74 68 69 73 20 66 61 72 2c 20 49 72 65 6e 65 73 20 77 6f 75 6c 64 20 61 62 73 6f 6c 75 74 65 6c 79 20 61 64 6f 72 65 0a ~ "~ hearing about how you found the explanation and whether" ~ " you did anything" 7e 20 68 65 61 72 69 6e 67 20 61 62 6f 75 74 20 68 6f 77 20 79 6f 75 20 66 6f 75 6e 64 20 74 68 65 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 61 6e 64 20 77 68 65 74 68 65 72 20 79 6f 75 20 64 69 64 20 61 6e 79 74 68 69 6e 67 0a ~ "~ with it; don't be shy!" 7e 20 77 69 74 68 20 69 74 3b 20 64 6f 6e 27 74 20 62 65 20 73 68 79 21 0a ~ "~" 7e 0a ~ "~ [1] https://katalepsis.net/" 7e 20 5b 31 5d 20 68 74 74 70 73 3a 2f 2f 6b 61 74 61 6c 65 70 73 69 73 2e 6e 65 74 2f 0a ~ "" 0a ~ "~ We have a bunch of accessors and traversers for the" ~ " output metadata, which" 7e 20 20 20 57 65 20 68 61 76 65 20 61 20 62 75 6e 63 68 20 6f 66 20 61 63 63 65 73 73 6f 72 73 20 61 6e 64 20 74 72 61 76 65 72 73 65 72 73 20 66 6f 72 20 74 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 2c 20 77 68 69 63 68 0a ~ "~ are all functions from pointers to pointers. Don't" ~ " confuse these with the" 7e 20 61 72 65 20 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 70 6f 69 6e 74 65 72 73 2e 20 44 6f 6e 27 74 20 63 6f 6e 66 75 73 65 20 74 68 65 73 65 20 77 69 74 68 20 74 68 65 0a ~ "~ accessors for the transformation state, defined far, far" ~ " above." 7e 20 61 63 63 65 73 73 6f 72 73 20 66 6f 72 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 73 74 61 74 65 2c 20 64 65 66 69 6e 65 64 20 66 61 72 2c 20 66 61 72 20 61 62 6f 76 65 2e 0a ~ ": hex-output-metadata-label-loop-buffer-start ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 3b 0a ~ ": hex-output-metadata-label-loop-buffer-length 8 + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 6c 65 6e 67 74 68 20 38 20 2b 20 3b 0a ~ ": hex-output-metadata-latest-output-point 2 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 32 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-has-non-space-this-input-line 3 8 * +" ~ " ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 20 33 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-suppression-count 4 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 70 70 72 65 73 73 69 6f 6e 2d 63 6f 75 6e 74 20 34 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-is-fresh-line 5 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 20 35 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-indentation-depth 6 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 20 36 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-current-column 7 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 20 37 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-n-bytes-this-line 8 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 20 38 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-entry-count 9 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 39 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-subitem-entry-stack-depth 10 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 31 30 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-subitem-entry-stack-zero 11 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 7a 65 72 6f 20 31 31 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-subitem-entry-stack-capacity 8 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 63 61 70 61 63 69 74 79 20 38 20 3b 0a ~ ": hex-output-metadata-first-entry" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " 11 hex-output-metadata-subitem-entry-stack-capacity + 8 *" ~ " + ;" 20 20 31 31 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 63 61 70 61 63 69 74 79 20 2b 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-entry-data-start ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 3b 0a ~ ": hex-output-metadata-entry-data-length 8 + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 38 20 2b 20 3b 0a ~ ": hex-output-metadata-entry-type 2 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 32 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-entry-content 3 8 * + ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 33 20 38 20 2a 20 2b 20 3b 0a ~ ": hex-output-metadata-entry-structure-size 4 8 * ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 72 75 63 74 75 72 65 2d 73 69 7a 65 20 34 20 38 20 2a 20 3b 0a ~ ": hex-output-metadata-next-entry" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 0a ~ " hex-output-metadata-entry-structure-size + ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 72 75 63 74 75 72 65 2d 73 69 7a 65 20 2b 20 3b 0a ~ ": hex-output-metadata-previous-entry" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 70 72 65 76 69 6f 75 73 2d 65 6e 74 72 79 0a ~ " hex-output-metadata-entry-structure-size - ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 72 75 63 74 75 72 65 2d 73 69 7a 65 20 2d 20 3b 0a ~ ": hex-output-metadata-entry-type-line-comment 0 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 20 30 20 3b 0a ~ ": hex-output-metadata-entry-type-suffix-comment 1 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 31 20 3b 0a ~ ": hex-output-metadata-entry-type-fresh-line 2 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 66 72 65 73 68 2d 6c 69 6e 65 20 32 20 3b 0a ~ ": hex-output-metadata-entry-type-blank-line 3 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 33 20 3b 0a ~ ": hex-output-metadata-entry-type-indent 4 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 69 6e 64 65 6e 74 20 34 20 3b 0a ~ ": hex-output-metadata-entry-type-string-literal 5 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 74 72 69 6e 67 2d 6c 69 74 65 72 61 6c 20 35 20 3b 0a ~ ": hex-output-metadata-entry-type-raw-string-literal 6 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 61 77 2d 73 74 72 69 6e 67 2d 6c 69 74 65 72 61 6c 20 36 20 3b 0a ~ ": hex-output-metadata-entry-type-push-subitem-decimal 7 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 64 65 63 69 6d 61 6c 20 37 20 3b 0a ~ ": hex-output-metadata-entry-type-push-subitem-hex 8 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 20 38 20 3b 0a ~ ": hex-output-metadata-entry-type-push-subitem-hex8 9 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 38 20 39 20 3b 0a ~ ": hex-output-metadata-entry-type-push-subitem-hex16 10 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 31 36 20 31 30 20 3b 0a ~ ": hex-output-metadata-entry-type-push-subitem-hex32 11 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 33 32 20 31 31 20 3b 0a ~ ": hex-output-metadata-entry-type-push-subitem-hex64 12 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 36 34 20 31 32 20 3b 0a ~ ": hex-output-metadata-entry-type-push-subitem-string 13 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 31 33 20 3b 0a ~ ": hex-output-metadata-entry-type-saved-data 14 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 61 76 65 64 2d 64 61 74 61 20 31 34 20 3b 0a ~ ": hex-output-metadata-entry-type-drop-subitem 15 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 64 72 6f 70 2d 73 75 62 69 74 65 6d 20 31 35 20 3b 0a ~ ": hex-output-metadata-entry-type-swap-subitems 16 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 77 61 70 2d 73 75 62 69 74 65 6d 73 20 31 36 20 3b 0a ~ ": hex-output-metadata-entry-type-roll-subitems 17 ;" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 6f 6c 6c 2d 73 75 62 69 74 65 6d 73 20 31 37 20 3b 0a ~ "" 0a ~ "~ Initialize the contents of the output metadata to all" ~ " zeroes. This is" 7e 20 20 20 49 6e 69 74 69 61 6c 69 7a 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 74 6f 20 61 6c 6c 20 7a 65 72 6f 65 73 2e 20 54 68 69 73 20 69 73 0a ~ "~ called from hex-transform at its top level, at the very" ~ " start, to make sure" 7e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 20 61 74 20 69 74 73 20 74 6f 70 20 6c 65 76 65 6c 2c 20 61 74 20 74 68 65 20 76 65 72 79 20 73 74 61 72 74 2c 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 0a ~ "~ everything is structurally valid. We can't store real" ~ " values at that point," 7e 20 65 76 65 72 79 74 68 69 6e 67 20 69 73 20 73 74 72 75 63 74 75 72 61 6c 6c 79 20 76 61 6c 69 64 2e 20 57 65 20 63 61 6e 27 74 20 73 74 6f 72 65 20 72 65 61 6c 20 76 61 6c 75 65 73 20 61 74 20 74 68 61 74 20 70 6f 69 6e 74 2c 0a ~ "~ because they don't exist yet. The actual label-loop" ~ " buffer, per its name," 7e 20 62 65 63 61 75 73 65 20 74 68 65 79 20 64 6f 6e 27 74 20 65 78 69 73 74 20 79 65 74 2e 20 54 68 65 20 61 63 74 75 61 6c 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2c 20 70 65 72 20 69 74 73 20 6e 61 6d 65 2c 0a ~ "~ won't be allocated until label-loop is called, so we" ~ " can't possibly know its" 7e 20 77 6f 6e 27 74 20 62 65 20 61 6c 6c 6f 63 61 74 65 64 20 75 6e 74 69 6c 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 69 73 20 63 61 6c 6c 65 64 2c 20 73 6f 20 77 65 20 63 61 6e 27 74 20 70 6f 73 73 69 62 6c 79 20 6b 6e 6f 77 20 69 74 73 0a ~ "~ address till then." 7e 20 61 64 64 72 65 73 73 20 74 69 6c 6c 20 74 68 65 6e 2e 0a ~ ": zero-hex-output-metadata" 3a 20 7a 65 72 6f 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " dup hex-output-metadata-label-loop-buffer-start 0 swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-label-loop-buffer-length 0 swap" ~ " !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 6c 65 6e 67 74 68 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-latest-output-point 0 swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-has-non-space-this-input-line 0" ~ " swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-suppression-count 0 swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 70 70 72 65 73 73 69 6f 6e 2d 63 6f 75 6e 74 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-is-fresh-line 1 swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 20 31 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-indentation-depth 0 swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-current-column 0 swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-n-bytes-this-line 0 swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-entry-count 0 swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-subitem-entry-stack-depth 0 swap" ~ " !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 30 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-first-entry 0 swap ! ;" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 20 30 20 73 77 61 70 20 21 20 3b 0a ~ "" 0a ~ "~ (pointer -- boolean)" 7e 20 28 70 6f 69 6e 74 65 72 20 2d 2d 20 62 6f 6f 6c 65 61 6e 29 0a ~ ": is-in-label-loop-buffer" 3a 20 69 73 2d 69 6e 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 0a ~ " dup" 20 20 64 75 70 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-label-loop-buffer-start @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 0a ~ " <=" 20 20 3c 3d 0a ~ " swap" 20 20 73 77 61 70 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " dup hex-output-metadata-label-loop-buffer-start @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 0a ~ " swap hex-output-metadata-label-loop-buffer-length @ +" 20 20 73 77 61 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 6c 65 6e 67 74 68 20 40 20 2b 0a ~ " > && ;" 20 20 3e 20 26 26 20 3b 0a ~ "" 0a ~ ": has-non-space-this-input-line@" 3a 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 40 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-has-non-space-this-input-line @ ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 20 40 20 3b 0a ~ "" 0a ~ ": has-non-space-this-input-line!" 3a 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 21 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-has-non-space-this-input-line ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 20 21 20 3b 0a ~ "" 0a ~ ": is-comment-entry" 3a 20 69 73 2d 63 6f 6d 6d 65 6e 74 2d 65 6e 74 72 79 0a ~ " hex-output-metadata-entry-type @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " dup hex-output-metadata-entry-type-line-comment = swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 20 3d 20 73 77 61 70 0a ~ " hex-output-metadata-entry-type-suffix-comment = || ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 3d 20 7c 7c 20 3b 0a ~ "" 0a ~ ": is-output-producing-entry" 3a 20 69 73 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 65 6e 74 72 79 0a ~ " dup is-comment-entry swap" 20 20 64 75 70 20 69 73 2d 63 6f 6d 6d 65 6e 74 2d 65 6e 74 72 79 20 73 77 61 70 0a ~ " hex-output-metadata-entry-type @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " dup hex-output-metadata-entry-type-fresh-line = 3roll ||" ~ " swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 66 72 65 73 68 2d 6c 69 6e 65 20 3d 20 33 72 6f 6c 6c 20 7c 7c 20 73 77 61 70 0a ~ " hex-output-metadata-entry-type-blank-line = || ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 3d 20 7c 7c 20 3b 0a ~ "" 0a ~ ": is-saved-data-entry" 3a 20 69 73 2d 73 61 76 65 64 2d 64 61 74 61 2d 65 6e 74 72 79 0a ~ " hex-output-metadata-entry-type @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-saved-data = ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 61 76 65 64 2d 64 61 74 61 20 3d 20 3b 0a ~ "" 0a ~ ": is-push-subitem-entry" 3a 20 69 73 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 0a ~ " ~ Notably, the subitem swap, drop, and roll entry types" ~ " are not" 20 20 7e 20 20 20 4e 6f 74 61 62 6c 79 2c 20 74 68 65 20 73 75 62 69 74 65 6d 20 73 77 61 70 2c 20 64 72 6f 70 2c 20 61 6e 64 20 72 6f 6c 6c 20 65 6e 74 72 79 20 74 79 70 65 73 20 61 72 65 20 6e 6f 74 0a ~ " ~ push-subitem entries." 20 20 7e 20 70 75 73 68 2d 73 75 62 69 74 65 6d 20 65 6e 74 72 69 65 73 2e 0a ~ " hex-output-metadata-entry-type @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " dup hex-output-metadata-entry-type-push-subitem-decimal =" ~ " swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 64 65 63 69 6d 61 6c 20 3d 20 73 77 61 70 0a ~ " dup hex-output-metadata-entry-type-push-subitem-hex =" ~ " 3roll || swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 20 3d 20 33 72 6f 6c 6c 20 7c 7c 20 73 77 61 70 0a ~ " dup hex-output-metadata-entry-type-push-subitem-hex8 =" ~ " 3roll || swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 38 20 3d 20 33 72 6f 6c 6c 20 7c 7c 20 73 77 61 70 0a ~ " dup hex-output-metadata-entry-type-push-subitem-hex16 =" ~ " 3roll || swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 31 36 20 3d 20 33 72 6f 6c 6c 20 7c 7c 20 73 77 61 70 0a ~ " dup hex-output-metadata-entry-type-push-subitem-hex32 =" ~ " 3roll || swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 33 32 20 3d 20 33 72 6f 6c 6c 20 7c 7c 20 73 77 61 70 0a ~ " dup hex-output-metadata-entry-type-push-subitem-hex64 =" ~ " 3roll || swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 36 34 20 3d 20 33 72 6f 6c 6c 20 7c 7c 20 73 77 61 70 0a ~ " hex-output-metadata-entry-type-push-subitem-string = ||" ~ " ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 3d 20 7c 7c 20 3b 0a ~ "" 0a ~ ": is-subitem-stack-manipulation-entry" 3a 20 69 73 2d 73 75 62 69 74 65 6d 2d 73 74 61 63 6b 2d 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 2d 65 6e 74 72 79 0a ~ " hex-output-metadata-entry-type @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " dup hex-output-metadata-entry-type-drop-subitem = swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 64 72 6f 70 2d 73 75 62 69 74 65 6d 20 3d 20 73 77 61 70 0a ~ " dup hex-output-metadata-entry-type-swap-subitems = 3roll" ~ " || swap" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 77 61 70 2d 73 75 62 69 74 65 6d 73 20 3d 20 33 72 6f 6c 6c 20 7c 7c 20 73 77 61 70 0a ~ " hex-output-metadata-entry-type-roll-subitems = || ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 6f 6c 6c 2d 73 75 62 69 74 65 6d 73 20 3d 20 7c 7c 20 3b 0a ~ "" 0a ~ ": is-fresh-line@" 3a 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 40 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-is-fresh-line @ ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 20 40 20 3b 0a ~ "" 0a ~ ": is-fresh-line!" 3a 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-is-fresh-line ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 20 21 20 3b 0a ~ "" 0a ~ ": fresh-line is-fresh-line@ not { newline } if ;" 3a 20 66 72 65 73 68 2d 6c 69 6e 65 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 40 20 6e 6f 74 20 7b 20 6e 65 77 6c 69 6e 65 20 7d 20 69 66 20 3b 0a ~ "" 0a ~ ": indentation-depth@" 3a 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 40 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-indentation-depth @ ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 20 40 20 3b 0a ~ "" 0a ~ ": indentation-depth!" 3a 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 21 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-indentation-depth ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 20 21 20 3b 0a ~ "" 0a ~ ": current-column@" 3a 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 40 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-current-column @ ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 20 40 20 3b 0a ~ "" 0a ~ ": current-column!" 3a 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-current-column ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 20 21 20 3b 0a ~ "" 0a ~ ": advance-current-column current-column@ + current-column!" ~ " ;" 3a 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 40 20 2b 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 20 3b 0a ~ "" 0a ~ ": n-bytes-this-line@" 3a 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 40 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-n-bytes-this-line @ ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 20 40 20 3b 0a ~ "" 0a ~ ": n-bytes-this-line!" 3a 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-n-bytes-this-line ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 20 21 20 3b 0a ~ "" 0a ~ ": output-metadata-entry-count@" 3a 20 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 40 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-entry-count @ ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 40 20 3b 0a ~ "" 0a ~ ": output-metadata-entry-count!" 3a 20 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 21 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-entry-count ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 21 20 3b 0a ~ "" 0a ~ ": increment-bytes-this-line n-bytes-this-line@ 1+" ~ " n-bytes-this-line! ;" 3a 20 69 6e 63 72 65 6d 65 6e 74 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 40 20 31 2b 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 20 3b 0a ~ "" 0a ~ ": describe-subitem-entry-stack" 3a 20 64 65 73 63 72 69 62 65 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " ." depth "" 20 20 2e 22 20 20 20 20 64 65 70 74 68 20 22 0a ~ " dup hex-output-metadata-subitem-entry-stack-depth @" ~ " .hex64 newline" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 40 20 2e 68 65 78 36 34 20 6e 65 77 6c 69 6e 65 0a ~ " ." capacity "" 20 20 2e 22 20 63 61 70 61 63 69 74 79 20 22 0a ~ " hex-output-metadata-subitem-entry-stack-capacity .hex64" ~ " newline" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 63 61 70 61 63 69 74 79 20 2e 68 65 78 36 34 20 6e 65 77 6c 69 6e 65 0a ~ " hex-output-metadata-subitem-entry-stack-zero" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 7a 65 72 6f 0a ~ " hex-output-metadata-subitem-entry-stack-capacity 8 *" ~ " hexdump-from ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 63 61 70 61 63 69 74 79 20 38 20 2a 20 68 65 78 64 75 6d 70 2d 66 72 6f 6d 20 3b 0a ~ "" 0a ~ ": subitem-entry-stack-depth@" 3a 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 40 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-subitem-entry-stack-depth @ ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 40 20 3b 0a ~ "" 0a ~ ": subitem-entry-stack-depth!" 3a 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 21 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-subitem-entry-stack-depth ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 21 20 3b 0a ~ "" 0a ~ ": is-subitem-entry-stack-empty" 3a 20 69 73 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 65 6d 70 74 79 0a ~ " subitem-entry-stack-depth@ 0 = ;" 20 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 40 20 30 20 3d 20 3b 0a ~ "" 0a ~ ": is-subitem-entry-stack-full" 3a 20 69 73 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 66 75 6c 6c 0a ~ " subitem-entry-stack-depth@" 20 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 40 0a ~ " hex-output-metadata-subitem-entry-stack-capacity = ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 63 61 70 61 63 69 74 79 20 3d 20 3b 0a ~ "" 0a ~ ": push-subitem-entry-stack" 3a 20 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 0a ~ " is-subitem-entry-stack-full not {" 20 20 69 73 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 66 75 6c 6c 20 6e 6f 74 20 7b 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-subitem-entry-stack-zero" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 7a 65 72 6f 0a ~ " subitem-entry-stack-depth@ 8 * + !" 20 20 20 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 40 20 38 20 2a 20 2b 20 21 0a ~ "" 0a ~ " subitem-entry-stack-depth@ 1+" ~ " subitem-entry-stack-depth!" 20 20 20 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 40 20 31 2b 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 21 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ We still consume the value, so that our caller" ~ " doesn't crash." 20 20 20 20 7e 20 57 65 20 73 74 69 6c 6c 20 63 6f 6e 73 75 6d 65 20 74 68 65 20 76 61 6c 75 65 2c 20 73 6f 20 74 68 61 74 20 6f 75 72 20 63 61 6c 6c 65 72 20 64 6f 65 73 6e 27 74 20 63 72 61 73 68 2e 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ "" 0a ~ " ." Subitem entry stack overflow." newline" 20 20 20 20 2e 22 20 53 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 20 6f 76 65 72 66 6c 6f 77 2e 22 20 6e 65 77 6c 69 6e 65 0a ~ " } if-else ;" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ ": pop-subitem-entry-stack" 3a 20 70 6f 70 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 0a ~ " is-subitem-entry-stack-empty not {" 20 20 69 73 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 65 6d 70 74 79 20 6e 6f 74 20 7b 0a ~ " subitem-entry-stack-depth@ 1-" ~ " subitem-entry-stack-depth!" 20 20 20 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 40 20 31 2d 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 21 0a ~ "" 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-subitem-entry-stack-zero" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 7a 65 72 6f 0a ~ " subitem-entry-stack-depth@ 8 * + @" 20 20 20 20 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 2d 64 65 70 74 68 40 20 38 20 2a 20 2b 20 40 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ." Subitem entry stack underflow." newline" 20 20 20 20 2e 22 20 53 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 20 75 6e 64 65 72 66 6c 6f 77 2e 22 20 6e 65 77 6c 69 6e 65 0a ~ "" 0a ~ " ~ We still return a value, so that our caller doesn't" ~ " crash." 20 20 20 20 7e 20 57 65 20 73 74 69 6c 6c 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 2c 20 73 6f 20 74 68 61 74 20 6f 75 72 20 63 61 6c 6c 65 72 20 64 6f 65 73 6e 27 74 20 63 72 61 73 68 2e 0a ~ " 0" 20 20 20 20 30 0a ~ " } if-else ;" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "~ This computes and returns a pointer to immediately" ~ " after the end of the" 7e 20 20 20 54 68 69 73 20 63 6f 6d 70 75 74 65 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 0a ~ "~ metadata entry array and its terminator. (That is, it" ~ " points AFTER the" 7e 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 61 72 72 61 79 20 61 6e 64 20 69 74 73 20 74 65 72 6d 69 6e 61 74 6f 72 2e 20 28 54 68 61 74 20 69 73 2c 20 69 74 20 70 6f 69 6e 74 73 20 41 46 54 45 52 20 74 68 65 0a ~ "~ terminator.) The computation is based on the entry" ~ " count." 7e 20 74 65 72 6d 69 6e 61 74 6f 72 2e 29 20 54 68 65 20 63 6f 6d 70 75 74 61 74 69 6f 6e 20 69 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 65 6e 74 72 79 20 63 6f 75 6e 74 2e 0a ~ "~" 7e 0a ~ "~ (end pointer)" 7e 20 28 65 6e 64 20 70 6f 69 6e 74 65 72 29 0a ~ ": hex-output-metadata-entry-array-end" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 61 72 72 61 79 2d 65 6e 64 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " dup hex-output-metadata-first-entry" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " swap hex-output-metadata-entry-count @" 20 20 73 77 61 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 40 0a ~ " hex-output-metadata-entry-structure-size * + 8 + ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 72 75 63 74 75 72 65 2d 73 69 7a 65 20 2a 20 2b 20 38 20 2b 20 3b 0a ~ "" 0a ~ "~ (data start, data length, entry type, string pointer," ~ " entry pointer --)" 7e 20 28 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 65 6e 74 72 79 20 74 79 70 65 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": hex-output-metadata-entry!" 3a 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 21 0a ~ " dup hex-output-metadata-entry-content 3roll swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 33 72 6f 6c 6c 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-entry-type 3roll swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 33 72 6f 6c 6c 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-entry-data-length 3roll swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 33 72 6f 6c 6c 20 73 77 61 70 20 21 0a ~ " dup hex-output-metadata-entry-data-start 3roll swap !" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 33 72 6f 6c 6c 20 73 77 61 70 20 21 0a ~ " drop ;" 20 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "~ (entry pointer, data start, data length, entry type," ~ " string pointer" 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 65 6e 74 72 79 20 74 79 70 65 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 0a ~ "~ -- next entry pointer)" 7e 20 20 2d 2d 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ ": pack-hex-output-metadata-entry" 3a 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " 4 pick hex-output-metadata-entry!" 20 20 34 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 21 0a ~ " hex-output-metadata-next-entry ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 3b 0a ~ "" 0a ~ "~ This is a helper used by add-hex-output-metadata-entry" ~ " and" 7e 20 20 20 54 68 69 73 20 69 73 20 61 20 68 65 6c 70 65 72 20 75 73 65 64 20 62 79 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 61 6e 64 0a ~ "~ postprocess-metadata-entries, below. It duplicates the" ~ " entry it's given," 7e 20 70 6f 73 74 70 72 6f 63 65 73 73 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 69 65 73 2c 20 62 65 6c 6f 77 2e 20 49 74 20 64 75 70 6c 69 63 61 74 65 73 20 74 68 65 20 65 6e 74 72 79 20 69 74 27 73 20 67 69 76 65 6e 2c 0a ~ "~ creating a second identical copy immediately after it in" ~ " the entry array," 7e 20 63 72 65 61 74 69 6e 67 20 61 20 73 65 63 6f 6e 64 20 69 64 65 6e 74 69 63 61 6c 20 63 6f 70 79 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 69 74 20 69 6e 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 2c 0a ~ "~ sliding everything else forward to make room." 7e 20 73 6c 69 64 69 6e 67 20 65 76 65 72 79 74 68 69 6e 67 20 65 6c 73 65 20 66 6f 72 77 61 72 64 20 74 6f 20 6d 61 6b 65 20 72 6f 6f 6d 2e 0a ~ "~" 7e 0a ~ "~ (entry pointer --)" 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": dup-metadata-entry" 3a 20 64 75 70 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ Find all the remaining entries, and the final" ~ " terminator, and slide" 20 20 7e 20 20 20 46 69 6e 64 20 61 6c 6c 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 65 6e 74 72 69 65 73 2c 20 61 6e 64 20 74 68 65 20 66 69 6e 61 6c 20 74 65 72 6d 69 6e 61 74 6f 72 2c 20 61 6e 64 20 73 6c 69 64 65 0a ~ " ~ them forward by the length of one entry." 20 20 7e 20 74 68 65 6d 20 66 6f 72 77 61 72 64 20 62 79 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 6f 6e 65 20 65 6e 74 72 79 2e 0a ~ " dup hex-output-metadata-entry-array-end" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 61 72 72 61 79 2d 65 6e 64 0a ~ " ~ (entry pointer, entry pointer, entry array end" ~ " pointer)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 61 72 72 61 79 20 65 6e 64 20 70 6f 69 6e 74 65 72 29 0a ~ " swap -" 20 20 73 77 61 70 20 2d 0a ~ " ~ (entry pointer, entry array tail length)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 61 72 72 61 79 20 74 61 69 6c 20 6c 65 6e 67 74 68 29 0a ~ " swap dup hex-output-metadata-next-entry 3roll" 20 20 73 77 61 70 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 33 72 6f 6c 6c 0a ~ " ~ (entry pointer, adjusted entry pointer, entry array" ~ " tail length)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 61 64 6a 75 73 74 65 64 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 61 72 72 61 79 20 74 61 69 6c 20 6c 65 6e 67 74 68 29 0a ~ " memmove" 20 20 6d 65 6d 6d 6f 76 65 0a ~ "" 0a ~ " ~ Increment the entry count." 20 20 7e 20 49 6e 63 72 65 6d 65 6e 74 20 74 68 65 20 65 6e 74 72 79 20 63 6f 75 6e 74 2e 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-entry-count dup" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 64 75 70 0a ~ " @ 1+ swap ! ;" 20 20 40 20 31 2b 20 73 77 61 70 20 21 20 3b 0a ~ "" 0a ~ "~ This is a helper used by postprocess-metadata-entries," ~ " below. It swaps" 7e 20 20 20 54 68 69 73 20 69 73 20 61 20 68 65 6c 70 65 72 20 75 73 65 64 20 62 79 20 70 6f 73 74 70 72 6f 63 65 73 73 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 69 65 73 2c 20 62 65 6c 6f 77 2e 20 49 74 20 73 77 61 70 73 0a ~ "~ the contents of the entry it's given with the contents of" ~ " the entry" 7e 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 65 6e 74 72 79 20 69 74 27 73 20 67 69 76 65 6e 20 77 69 74 68 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 65 6e 74 72 79 0a ~ "~ immediately after it in the entry array." 7e 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 69 74 20 69 6e 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 2e 0a ~ "~" 7e 0a ~ "~ (entry pointer --)" 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": swap-metadata-entries" 3a 20 73 77 61 70 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 69 65 73 0a ~ " ~ Copy the current entry to a scratch area." 20 20 7e 20 43 6f 70 79 20 74 68 65 20 63 75 72 72 65 6e 74 20 65 6e 74 72 79 20 74 6f 20 61 20 73 63 72 61 74 63 68 20 61 72 65 61 2e 0a ~ " dup dup dup hex-output-metadata-next-entry swap -" 20 20 64 75 70 20 64 75 70 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 73 77 61 70 20 2d 0a ~ " ~ (entry pointer, entry pointer, entry length)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 6c 65 6e 67 74 68 29 0a ~ " swap-transform-variables here @ swap-transform-variables" ~ " swap" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 73 77 61 70 0a ~ " ~ (entry pointer, entry pointer, scratch pointer, entry" ~ " length)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 73 63 72 61 74 63 68 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 6c 65 6e 67 74 68 29 0a ~ " memcopy" 20 20 6d 65 6d 63 6f 70 79 0a ~ " ~ (entry pointer)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Copy the next entry over the current entry." 20 20 7e 20 43 6f 70 79 20 74 68 65 20 6e 65 78 74 20 65 6e 74 72 79 20 6f 76 65 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 65 6e 74 72 79 2e 0a ~ " dup dup hex-output-metadata-next-entry dup" 20 20 64 75 70 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 64 75 70 0a ~ " ~ (entry pointer, entry pointer, next entry pointer, next" ~ " entry pointer)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ " 3roll -" 20 20 33 72 6f 6c 6c 20 2d 0a ~ " ~ (entry pointer, next entry pointer, entry length)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 6c 65 6e 67 74 68 29 0a ~ " 2 pick swap" 20 20 32 20 70 69 63 6b 20 73 77 61 70 0a ~ " ~ (entry pointer, next entry pointer, entry pointer," ~ " entry length)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 6c 65 6e 67 74 68 29 0a ~ " memcopy" 20 20 6d 65 6d 63 6f 70 79 0a ~ " ~ (entry pointer)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Copy the scratch area over the next entry." 20 20 7e 20 43 6f 70 79 20 74 68 65 20 73 63 72 61 74 63 68 20 61 72 65 61 20 6f 76 65 72 20 74 68 65 20 6e 65 78 74 20 65 6e 74 72 79 2e 0a ~ " dup hex-output-metadata-next-entry dup" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 64 75 70 0a ~ " ~ (entry pointer, next entry pointer, next entry" ~ " pointer)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ " 3roll -" 20 20 33 72 6f 6c 6c 20 2d 0a ~ " ~ (next entry pointer, entry length)" 20 20 7e 20 28 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 6c 65 6e 67 74 68 29 0a ~ " swap-transform-variables here @ swap-transform-variables" ~ " 3unroll" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 33 75 6e 72 6f 6c 6c 0a ~ " ~ (scratch pointer, next entry pointer, entry length)" 20 20 7e 20 28 73 63 72 61 74 63 68 20 70 6f 69 6e 74 65 72 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 6c 65 6e 67 74 68 29 0a ~ " memcopy ;" 20 20 6d 65 6d 63 6f 70 79 20 3b 0a ~ "" 0a ~ "~ (data start, data length, entry type, string pointer --)" 7e 20 28 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 65 6e 74 72 79 20 74 79 70 65 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": add-hex-output-metadata-entry" 3a 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ If the suppression count is greater than zero," ~ " decrement it." 20 20 7e 20 49 66 20 74 68 65 20 73 75 70 70 72 65 73 73 69 6f 6e 20 63 6f 75 6e 74 20 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 7a 65 72 6f 2c 20 64 65 63 72 65 6d 65 6e 74 20 69 74 2e 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-suppression-count @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 70 70 72 65 73 73 69 6f 6e 2d 63 6f 75 6e 74 20 40 0a ~ " dup 0 < {" 20 20 64 75 70 20 30 20 3c 20 7b 0a ~ " 1-" 20 20 20 20 31 2d 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-suppression-count !" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 70 70 72 65 73 73 69 6f 6e 2d 63 6f 75 6e 74 20 21 0a ~ " 4 ndrop exit" 20 20 20 20 34 20 6e 64 72 6f 70 20 65 78 69 74 0a ~ " } { drop } if-else" 20 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " ~ Don't do anything unless the address is in the" ~ " label-loop buffer." 20 20 7e 20 44 6f 6e 27 74 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 75 6e 6c 65 73 73 20 74 68 65 20 61 64 64 72 65 73 73 20 69 73 20 69 6e 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2e 0a ~ " 3 pick is-in-label-loop-buffer {" 20 20 33 20 70 69 63 6b 20 69 73 2d 69 6e 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 20 7b 0a ~ " ~ (data start, data length, entry type, string" ~ " pointer)" 20 20 20 20 7e 20 28 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 65 6e 74 72 79 20 74 79 70 65 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " hex-output-metadata-entry-array-end 8 -" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 61 72 72 61 79 2d 65 6e 64 20 38 20 2d 0a ~ "" 0a ~ " ~ Write the entry." 20 20 20 20 7e 20 57 72 69 74 65 20 74 68 65 20 65 6e 74 72 79 2e 0a ~ " 5 unroll pack-hex-output-metadata-entry" 20 20 20 20 35 20 75 6e 72 6f 6c 6c 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ Write the end-of-array marker, and clean up." 20 20 20 20 7e 20 57 72 69 74 65 20 74 68 65 20 65 6e 64 2d 6f 66 2d 61 72 72 61 79 20 6d 61 72 6b 65 72 2c 20 61 6e 64 20 63 6c 65 61 6e 20 75 70 2e 0a ~ " 0 pack64 drop" 20 20 20 20 30 20 70 61 63 6b 36 34 20 64 72 6f 70 0a ~ "" 0a ~ " ~ Increment the entry count." 20 20 20 20 7e 20 49 6e 63 72 65 6d 65 6e 74 20 74 68 65 20 65 6e 74 72 79 20 63 6f 75 6e 74 2e 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-entry-count dup" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 64 75 70 0a ~ " @ 1+ swap !" 20 20 20 20 40 20 31 2b 20 73 77 61 70 20 21 0a ~ " } { drop drop drop drop } if-else ;" 20 20 7d 20 7b 20 64 72 6f 70 20 64 72 6f 70 20 64 72 6f 70 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "~ (entry pointer --)" 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": delete-metadata-entry" 3a 20 64 65 6c 65 74 65 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ Slide memory backwards to overwrite the entry." 20 20 7e 20 53 6c 69 64 65 20 6d 65 6d 6f 72 79 20 62 61 63 6b 77 61 72 64 73 20 74 6f 20 6f 76 65 72 77 72 69 74 65 20 74 68 65 20 65 6e 74 72 79 2e 0a ~ " hex-output-metadata-entry-array-end" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 61 72 72 61 79 2d 65 6e 64 0a ~ " ~ (entry pointer, entry array end pointer)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 61 72 72 61 79 20 65 6e 64 20 70 6f 69 6e 74 65 72 29 0a ~ " over hex-output-metadata-next-entry -" 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 2d 0a ~ " ~ (entry pointer, length of block to move)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6c 65 6e 67 74 68 20 6f 66 20 62 6c 6f 63 6b 20 74 6f 20 6d 6f 76 65 29 0a ~ " swap dup hex-output-metadata-next-entry swap 3roll" ~ " memmove" 20 20 73 77 61 70 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 73 77 61 70 20 33 72 6f 6c 6c 20 6d 65 6d 6d 6f 76 65 0a ~ "" 0a ~ " ~ Decrement the entry count." 20 20 7e 20 44 65 63 72 65 6d 65 6e 74 20 74 68 65 20 65 6e 74 72 79 20 63 6f 75 6e 74 2e 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-entry-count dup" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 64 75 70 0a ~ " @ 1- swap ! ;" 20 20 40 20 31 2d 20 73 77 61 70 20 21 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (-- entry pointer or 0)" 7e 20 28 2d 2d 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ ": find-latest-metadata-entry" 3a 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ Get the entry count and make sure it's nonzero." 20 20 7e 20 47 65 74 20 74 68 65 20 65 6e 74 72 79 20 63 6f 75 6e 74 20 61 6e 64 20 6d 61 6b 65 20 73 75 72 65 20 69 74 27 73 20 6e 6f 6e 7a 65 72 6f 2e 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-entry-count @ dup {" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 40 20 64 75 70 20 7b 0a ~ " ~ Use the entry count to directly compute the offset" ~ " to the last actual" 20 20 20 20 7e 20 20 20 55 73 65 20 74 68 65 20 65 6e 74 72 79 20 63 6f 75 6e 74 20 74 6f 20 64 69 72 65 63 74 6c 79 20 63 6f 6d 70 75 74 65 20 74 68 65 20 6f 66 66 73 65 74 20 74 6f 20 74 68 65 20 6c 61 73 74 20 61 63 74 75 61 6c 0a ~ " ~ entry in the array." 20 20 20 20 7e 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 61 72 72 61 79 2e 0a ~ " 1 - hex-output-metadata-entry-structure-size *" 20 20 20 20 31 20 2d 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 72 75 63 74 75 72 65 2d 73 69 7a 65 20 2a 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry +" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 20 2b 0a ~ " } if ;" 20 20 7d 20 69 66 20 3b 0a ~ "" 0a ~ "~ (-- entry pointer or 0)" 7e 20 28 2d 2d 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ ": find-latest-comment-metadata-entry" 3a 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " find-latest-metadata-entry" 20 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (entry pointer or 0)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ "" 0a ~ " ~ If and only if we actually found one, now loop" ~ " backwards to find the" 20 20 7e 20 20 20 49 66 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 77 65 20 61 63 74 75 61 6c 6c 79 20 66 6f 75 6e 64 20 6f 6e 65 2c 20 6e 6f 77 20 6c 6f 6f 70 20 62 61 63 6b 77 61 72 64 73 20 74 6f 20 66 69 6e 64 20 74 68 65 0a ~ " ~ most recent one that's a comment entry. All length" ~ " adjustments apply to" 20 20 7e 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 6f 6e 65 20 74 68 61 74 27 73 20 61 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 2e 20 41 6c 6c 20 6c 65 6e 67 74 68 20 61 64 6a 75 73 74 6d 65 6e 74 73 20 61 70 70 6c 79 20 74 6f 0a ~ " ~ comment entries, anything else needs to be skipped for" ~ " this purpose." 20 20 7e 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 69 65 73 2c 20 61 6e 79 74 68 69 6e 67 20 65 6c 73 65 20 6e 65 65 64 73 20 74 6f 20 62 65 20 73 6b 69 70 70 65 64 20 66 6f 72 20 74 68 69 73 20 70 75 72 70 6f 73 65 2e 0a ~ " { dup { dup is-comment-entry not } { 0 } if-else }" 20 20 7b 20 64 75 70 20 7b 20 64 75 70 20 69 73 2d 63 6f 6d 6d 65 6e 74 2d 65 6e 74 72 79 20 6e 6f 74 20 7d 20 7b 20 30 20 7d 20 69 66 2d 65 6c 73 65 20 7d 0a ~ " { transformation-state" ~ " transformation-state-output-metadata @" 20 20 7b 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " over > {" 20 20 20 20 6f 76 65 72 20 3e 20 7b 0a ~ " hex-output-metadata-previous-entry } { drop 0 }" ~ " if-else } while" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 70 72 65 76 69 6f 75 73 2d 65 6e 74 72 79 20 7d 20 7b 20 64 72 6f 70 20 30 20 7d 20 69 66 2d 65 6c 73 65 20 7d 20 77 68 69 6c 65 0a ~ " ~ (entry pointer or 0)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "~ (-- entry pointer or 0)" 7e 20 28 2d 2d 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ ": find-latest-output-producing-metadata-entry" 3a 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " find-latest-metadata-entry" 20 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (entry pointer or 0)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ "" 0a ~ " ~ If and only if we actually found one, now loop" ~ " backwards to find the" 20 20 7e 20 20 20 49 66 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 77 65 20 61 63 74 75 61 6c 6c 79 20 66 6f 75 6e 64 20 6f 6e 65 2c 20 6e 6f 77 20 6c 6f 6f 70 20 62 61 63 6b 77 61 72 64 73 20 74 6f 20 66 69 6e 64 20 74 68 65 0a ~ " ~ most recent one that's an output-producing entry." 20 20 7e 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 6f 6e 65 20 74 68 61 74 27 73 20 61 6e 20 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 20 65 6e 74 72 79 2e 0a ~ " { dup { dup is-output-producing-entry not } { 0 } if-else" ~ " }" 20 20 7b 20 64 75 70 20 7b 20 64 75 70 20 69 73 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 65 6e 74 72 79 20 6e 6f 74 20 7d 20 7b 20 30 20 7d 20 69 66 2d 65 6c 73 65 20 7d 0a ~ " { transformation-state" ~ " transformation-state-output-metadata @" 20 20 7b 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " over > {" 20 20 20 20 6f 76 65 72 20 3e 20 7b 0a ~ " hex-output-metadata-previous-entry } { drop 0 }" ~ " if-else } while" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 70 72 65 76 69 6f 75 73 2d 65 6e 74 72 79 20 7d 20 7b 20 64 72 6f 70 20 30 20 7d 20 69 66 2d 65 6c 73 65 20 7d 20 77 68 69 6c 65 0a ~ " ~ (entry pointer or 0)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "~ (-- entry pointer or 0)" 7e 20 28 2d 2d 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ ": find-latest-saved-data-metadata-entry" 3a 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 73 61 76 65 64 2d 64 61 74 61 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " find-latest-metadata-entry" 20 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (entry pointer or 0)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ "" 0a ~ " ~ If and only if we actually found one, now loop" ~ " backwards to find the" 20 20 7e 20 20 20 49 66 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 77 65 20 61 63 74 75 61 6c 6c 79 20 66 6f 75 6e 64 20 6f 6e 65 2c 20 6e 6f 77 20 6c 6f 6f 70 20 62 61 63 6b 77 61 72 64 73 20 74 6f 20 66 69 6e 64 20 74 68 65 0a ~ " ~ most recent one that's a saved-data entry. All" ~ " data-consuming commands" 20 20 7e 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 6f 6e 65 20 74 68 61 74 27 73 20 61 20 73 61 76 65 64 2d 64 61 74 61 20 65 6e 74 72 79 2e 20 41 6c 6c 20 64 61 74 61 2d 63 6f 6e 73 75 6d 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 0a ~ " ~ apply to saved-data entries, anything else needs to be" ~ " skipped for this" 20 20 7e 20 61 70 70 6c 79 20 74 6f 20 73 61 76 65 64 2d 64 61 74 61 20 65 6e 74 72 69 65 73 2c 20 61 6e 79 74 68 69 6e 67 20 65 6c 73 65 20 6e 65 65 64 73 20 74 6f 20 62 65 20 73 6b 69 70 70 65 64 20 66 6f 72 20 74 68 69 73 0a ~ " ~ purpose." 20 20 7e 20 70 75 72 70 6f 73 65 2e 0a ~ " { dup { dup is-saved-data-entry not } { 0 } if-else }" 20 20 7b 20 64 75 70 20 7b 20 64 75 70 20 69 73 2d 73 61 76 65 64 2d 64 61 74 61 2d 65 6e 74 72 79 20 6e 6f 74 20 7d 20 7b 20 30 20 7d 20 69 66 2d 65 6c 73 65 20 7d 0a ~ " { transformation-state" ~ " transformation-state-output-metadata @" 20 20 7b 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " over > {" 20 20 20 20 6f 76 65 72 20 3e 20 7b 0a ~ " hex-output-metadata-previous-entry } { drop 0 }" ~ " if-else } while" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 70 72 65 76 69 6f 75 73 2d 65 6e 74 72 79 20 7d 20 7b 20 64 72 6f 70 20 30 20 7d 20 69 66 2d 65 6c 73 65 20 7d 20 77 68 69 6c 65 0a ~ " ~ (entry pointer or 0)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "~ (target start location -- entry pointer or 0)" 7e 20 28 74 61 72 67 65 74 20 73 74 61 72 74 20 6c 6f 63 61 74 69 6f 6e 20 2d 2d 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ ": find-first-comment-metadata-entry-with-start" 3a 20 66 69 6e 64 2d 66 69 72 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 77 69 74 68 2d 73 74 61 72 74 0a ~ " ~ Find the first entry, but if it doesn't exist, we want" ~ " 0 instead." 20 20 7e 20 46 69 6e 64 20 74 68 65 20 66 69 72 73 74 20 65 6e 74 72 79 2c 20 62 75 74 20 69 66 20 69 74 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 2c 20 77 65 20 77 61 6e 74 20 30 20 69 6e 73 74 65 61 64 2e 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " ~ (target start location, entry pointer)" 20 20 7e 20 28 74 61 72 67 65 74 20 73 74 61 72 74 20 6c 6f 63 61 74 69 6f 6e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Now loop forwards to find the first that's a comment" ~ " entry and has the" 20 20 7e 20 20 20 4e 6f 77 20 6c 6f 6f 70 20 66 6f 72 77 61 72 64 73 20 74 6f 20 66 69 6e 64 20 74 68 65 20 66 69 72 73 74 20 74 68 61 74 27 73 20 61 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 20 61 6e 64 20 68 61 73 20 74 68 65 0a ~ " ~ desired start location." 20 20 7e 20 64 65 73 69 72 65 64 20 73 74 61 72 74 20 6c 6f 63 61 74 69 6f 6e 2e 0a ~ " { dup @ } {" 20 20 7b 20 64 75 70 20 40 20 7d 20 7b 0a ~ " dup is-comment-entry" 20 20 20 20 64 75 70 20 69 73 2d 63 6f 6d 6d 65 6e 74 2d 65 6e 74 72 79 0a ~ " over hex-output-metadata-entry-data-start @ 3 pick =" 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 20 33 20 70 69 63 6b 20 3d 0a ~ " && { swap drop exit } if" 20 20 20 20 26 26 20 7b 20 73 77 61 70 20 64 72 6f 70 20 65 78 69 74 20 7d 20 69 66 0a ~ " hex-output-metadata-next-entry" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 0a ~ " } while drop drop 0 ;" 20 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 20 64 72 6f 70 20 30 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (target start location -- entry pointer or 0)" 7e 20 28 74 61 72 67 65 74 20 73 74 61 72 74 20 6c 6f 63 61 74 69 6f 6e 20 2d 2d 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ ": find-latest-comment-metadata-entry-with-start" 3a 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 77 69 74 68 2d 73 74 61 72 74 0a ~ " find-latest-metadata-entry" 20 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (target start location, entry pointer or 0)" 20 20 7e 20 28 74 61 72 67 65 74 20 73 74 61 72 74 20 6c 6f 63 61 74 69 6f 6e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ "" 0a ~ " dup {" 20 20 64 75 70 20 7b 0a ~ " { dup @ } {" 20 20 20 20 7b 20 64 75 70 20 40 20 7d 20 7b 0a ~ " dup is-comment-entry" 20 20 20 20 20 20 64 75 70 20 69 73 2d 63 6f 6d 6d 65 6e 74 2d 65 6e 74 72 79 0a ~ " over hex-output-metadata-entry-data-start @ 3 pick =" 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 20 33 20 70 69 63 6b 20 3d 0a ~ " && { swap drop exit } if" 20 20 20 20 20 20 26 26 20 7b 20 73 77 61 70 20 64 72 6f 70 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " dup" 20 20 20 20 20 20 64 75 70 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " = { drop drop 0 exit } if" 20 20 20 20 20 20 3d 20 7b 20 64 72 6f 70 20 64 72 6f 70 20 30 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " hex-output-metadata-previous-entry" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 70 72 65 76 69 6f 75 73 2d 65 6e 74 72 79 0a ~ " } while" 20 20 20 20 7d 20 77 68 69 6c 65 0a ~ " } if swap drop ;" 20 20 7d 20 69 66 20 73 77 61 70 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (length adjustment --)" 7e 20 28 6c 65 6e 67 74 68 20 61 64 6a 75 73 74 6d 65 6e 74 20 2d 2d 29 0a ~ ": adjust-latest-comment-metadata-entry-length" 3a 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 6c 65 6e 67 74 68 0a ~ " find-latest-comment-metadata-entry" 20 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " ~ We've found the entry we want to act on, if it exists," ~ " so do it." 20 20 7e 20 57 65 27 76 65 20 66 6f 75 6e 64 20 74 68 65 20 65 6e 74 72 79 20 77 65 20 77 61 6e 74 20 74 6f 20 61 63 74 20 6f 6e 2c 20 69 66 20 69 74 20 65 78 69 73 74 73 2c 20 73 6f 20 64 6f 20 69 74 2e 0a ~ " dup {" 20 20 64 75 70 20 7b 0a ~ " hex-output-metadata-entry-data-length dup @ 3roll +" ~ " swap !" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 64 75 70 20 40 20 33 72 6f 6c 6c 20 2b 20 73 77 61 70 20 21 0a ~ " } {" 20 20 7d 20 7b 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ "" 0a ~ " ~ If we get here, that's a problem. Emit an error" ~ " message to make sure" 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 67 65 74 20 68 65 72 65 2c 20 74 68 61 74 27 73 20 61 20 70 72 6f 62 6c 65 6d 2e 20 45 6d 69 74 20 61 6e 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 0a ~ " ~ it's easy to diagnose." 20 20 20 20 7e 20 69 74 27 73 20 65 61 73 79 20 74 6f 20 64 69 61 67 6e 6f 73 65 2e 0a ~ " ." No pre-existing metadata entry to adjust." newline" 20 20 20 20 2e 22 20 4e 6f 20 70 72 65 2d 65 78 69 73 74 69 6e 67 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 74 6f 20 61 64 6a 75 73 74 2e 22 20 6e 65 77 6c 69 6e 65 0a ~ " crash" 20 20 20 20 63 72 61 73 68 0a ~ " } if-else ;" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "~ (length adjustment --)" 7e 20 28 6c 65 6e 67 74 68 20 61 64 6a 75 73 74 6d 65 6e 74 20 2d 2d 29 0a ~ ": adjust-latest-output-producing-metadata-entry-start" 3a 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 61 72 74 0a ~ " find-latest-output-producing-metadata-entry" 20 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " ~ We've found the entry we want to act on, if it exists," ~ " so do it." 20 20 7e 20 57 65 27 76 65 20 66 6f 75 6e 64 20 74 68 65 20 65 6e 74 72 79 20 77 65 20 77 61 6e 74 20 74 6f 20 61 63 74 20 6f 6e 2c 20 69 66 20 69 74 20 65 78 69 73 74 73 2c 20 73 6f 20 64 6f 20 69 74 2e 0a ~ " dup {" 20 20 64 75 70 20 7b 0a ~ " hex-output-metadata-entry-data-start dup @ 3roll + swap" ~ " !" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 64 75 70 20 40 20 33 72 6f 6c 6c 20 2b 20 73 77 61 70 20 21 0a ~ " } {" 20 20 7d 20 7b 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ "" 0a ~ " ~ If we get here, that's a problem. Emit an error" ~ " message to make sure" 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 67 65 74 20 68 65 72 65 2c 20 74 68 61 74 27 73 20 61 20 70 72 6f 62 6c 65 6d 2e 20 45 6d 69 74 20 61 6e 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 0a ~ " ~ it's easy to diagnose." 20 20 20 20 7e 20 69 74 27 73 20 65 61 73 79 20 74 6f 20 64 69 61 67 6e 6f 73 65 2e 0a ~ " ." No pre-existing metadata entry to adjust." newline" 20 20 20 20 2e 22 20 4e 6f 20 70 72 65 2d 65 78 69 73 74 69 6e 67 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 74 6f 20 61 64 6a 75 73 74 2e 22 20 6e 65 77 6c 69 6e 65 0a ~ " crash" 20 20 20 20 63 72 61 73 68 0a ~ " } if-else ;" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (target start location --)" 7e 20 28 74 61 72 67 65 74 20 73 74 61 72 74 20 6c 6f 63 61 74 69 6f 6e 20 2d 2d 29 0a ~ ": delete-first-comment-metadata-entry-with-start" 3a 20 64 65 6c 65 74 65 2d 66 69 72 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 77 69 74 68 2d 73 74 61 72 74 0a ~ " find-first-comment-metadata-entry-with-start" 20 20 66 69 6e 64 2d 66 69 72 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 77 69 74 68 2d 73 74 61 72 74 0a ~ " dup { delete-metadata-entry } { drop } if-else ;" 20 20 64 75 70 20 7b 20 64 65 6c 65 74 65 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "~ (target start location --)" 7e 20 28 74 61 72 67 65 74 20 73 74 61 72 74 20 6c 6f 63 61 74 69 6f 6e 20 2d 2d 29 0a ~ ": delete-latest-comment-metadata-entry-with-start" 3a 20 64 65 6c 65 74 65 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 77 69 74 68 2d 73 74 61 72 74 0a ~ " find-latest-comment-metadata-entry-with-start" 20 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 77 69 74 68 2d 73 74 61 72 74 0a ~ " dup { delete-metadata-entry } { drop } if-else ;" 20 20 64 75 70 20 7b 20 64 65 6c 65 74 65 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ ": delete-first-comment-metadata-entry-at-output-point" 3a 20 64 65 6c 65 74 65 2d 66 69 72 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-latest-output-point @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 40 0a ~ " delete-first-comment-metadata-entry-with-start ;" 20 20 64 65 6c 65 74 65 2d 66 69 72 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 77 69 74 68 2d 73 74 61 72 74 20 3b 0a ~ "" 0a ~ ": delete-latest-comment-metadata-entry-at-output-point" 3a 20 64 65 6c 65 74 65 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-latest-output-point @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 40 0a ~ " delete-latest-comment-metadata-entry-with-start ;" 20 20 64 65 6c 65 74 65 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 77 69 74 68 2d 73 74 61 72 74 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (value --)" 7e 20 28 76 61 6c 75 65 20 2d 2d 29 0a ~ ": set-latest-output-point" 3a 20 73 65 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-latest-output-point ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 21 20 3b 0a ~ "" 0a ~ "~ (adjustment --)" 7e 20 28 61 64 6a 75 73 74 6d 65 6e 74 20 2d 2d 29 0a ~ ": adjust-latest-output-point" 3a 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-latest-output-point" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " dup 3unroll @ + swap ! ;" 20 20 64 75 70 20 33 75 6e 72 6f 6c 6c 20 40 20 2b 20 73 77 61 70 20 21 20 3b 0a ~ "" 0a ~ "~ (-- data value)" 7e 20 28 2d 2d 20 64 61 74 61 20 76 61 6c 75 65 29 0a ~ ": data-consume" 3a 20 64 61 74 61 2d 63 6f 6e 73 75 6d 65 0a ~ " find-latest-saved-data-metadata-entry" 20 20 66 69 6e 64 2d 6c 61 74 65 73 74 2d 73 61 76 65 64 2d 64 61 74 61 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (entry pointer or 0)" 20 20 7e 20 28 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 6f 72 20 30 29 0a ~ "" 0a ~ " dup {" 20 20 64 75 70 20 7b 0a ~ " dup hex-output-metadata-entry-content @ swap" 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 73 77 61 70 0a ~ " ~ (data value, entry pointer)" 20 20 20 20 7e 20 28 64 61 74 61 20 76 61 6c 75 65 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " delete-metadata-entry" 20 20 20 20 64 65 6c 65 74 65 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " } {" 20 20 7d 20 7b 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ "" 0a ~ " ~ If we get here, that's a problem. Emit an error" ~ " message to make sure" 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 67 65 74 20 68 65 72 65 2c 20 74 68 61 74 27 73 20 61 20 70 72 6f 62 6c 65 6d 2e 20 45 6d 69 74 20 61 6e 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 0a ~ " ~ it's easy to diagnose." 20 20 20 20 7e 20 69 74 27 73 20 65 61 73 79 20 74 6f 20 64 69 61 67 6e 6f 73 65 2e 0a ~ " ." No saved-data metadata entry to take a value from."" ~ " newline" 20 20 20 20 2e 22 20 4e 6f 20 73 61 76 65 64 2d 64 61 74 61 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 74 6f 20 74 61 6b 65 20 61 20 76 61 6c 75 65 20 66 72 6f 6d 2e 22 20 6e 65 77 6c 69 6e 65 0a ~ "" 0a ~ " ~ We still return a value, so that our caller doesn't" ~ " crash." 20 20 20 20 7e 20 57 65 20 73 74 69 6c 6c 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 2c 20 73 6f 20 74 68 61 74 20 6f 75 72 20 63 61 6c 6c 65 72 20 64 6f 65 73 6e 27 74 20 63 72 61 73 68 2e 0a ~ " 0" 20 20 20 20 30 0a ~ " } if-else ;" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "~ (adjustment scale factor --)" 7e 20 28 61 64 6a 75 73 74 6d 65 6e 74 20 73 63 61 6c 65 20 66 61 63 74 6f 72 20 2d 2d 29 0a ~ ": data-adjust-latest-comment-metadata-entry-length" 3a 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 6c 65 6e 67 74 68 0a ~ " ~ All the entry array manipulation happens in" ~ " data-consume. Once we're" 20 20 7e 20 20 20 41 6c 6c 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 68 61 70 70 65 6e 73 20 69 6e 20 64 61 74 61 2d 63 6f 6e 73 75 6d 65 2e 20 4f 6e 63 65 20 77 65 27 72 65 0a ~ " ~ done doing that, the array is now in a consistent" ~ " state, so we can hand" 20 20 7e 20 64 6f 6e 65 20 64 6f 69 6e 67 20 74 68 61 74 2c 20 74 68 65 20 61 72 72 61 79 20 69 73 20 6e 6f 77 20 69 6e 20 61 20 63 6f 6e 73 69 73 74 65 6e 74 20 73 74 61 74 65 2c 20 73 6f 20 77 65 20 63 61 6e 20 68 61 6e 64 0a ~ " ~ off to the non-data implementation to do the rest of" ~ " the work." 20 20 7e 20 6f 66 66 20 74 6f 20 74 68 65 20 6e 6f 6e 2d 64 61 74 61 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 74 6f 20 64 6f 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 77 6f 72 6b 2e 0a ~ " data-consume *" ~ " adjust-latest-comment-metadata-entry-length ;" 20 20 64 61 74 61 2d 63 6f 6e 73 75 6d 65 20 2a 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 6c 65 6e 67 74 68 20 3b 0a ~ "~ (adjustment scale factor --)" 7e 20 28 61 64 6a 75 73 74 6d 65 6e 74 20 73 63 61 6c 65 20 66 61 63 74 6f 72 20 2d 2d 29 0a ~ ": data-adjust-latest-output-producing-metadata-entry-start" 3a 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 61 72 74 0a ~ " ~ Same as for adjusting the entry length." 20 20 7e 20 53 61 6d 65 20 61 73 20 66 6f 72 20 61 64 6a 75 73 74 69 6e 67 20 74 68 65 20 65 6e 74 72 79 20 6c 65 6e 67 74 68 2e 0a ~ " data-consume *" ~ " adjust-latest-output-producing-metadata-entry-start ;" 20 20 64 61 74 61 2d 63 6f 6e 73 75 6d 65 20 2a 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 61 72 74 20 3b 0a ~ "" 0a ~ "~ (value offset --)" 7e 20 28 76 61 6c 75 65 20 6f 66 66 73 65 74 20 2d 2d 29 0a ~ ": data-set-latest-output-point" 3a 20 64 61 74 61 2d 73 65 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " data-consume + set-latest-output-point ;" 20 20 64 61 74 61 2d 63 6f 6e 73 75 6d 65 20 2b 20 73 65 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 3b 0a ~ "~ (adjustment scale factor --)" 7e 20 28 61 64 6a 75 73 74 6d 65 6e 74 20 73 63 61 6c 65 20 66 61 63 74 6f 72 20 2d 2d 29 0a ~ ": data-adjust-latest-output-point" 3a 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " data-consume * adjust-latest-output-point ;" 20 20 64 61 74 61 2d 63 6f 6e 73 75 6d 65 20 2a 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (count adjustment --)" 7e 20 28 63 6f 75 6e 74 20 61 64 6a 75 73 74 6d 65 6e 74 20 2d 2d 29 0a ~ ": adjust-hex-output-suppression-count" 3a 20 61 64 6a 75 73 74 2d 68 65 78 2d 6f 75 74 70 75 74 2d 73 75 70 70 72 65 73 73 69 6f 6e 2d 63 6f 75 6e 74 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-suppression-count dup @ 3roll + swap" ~ " ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 73 75 70 70 72 65 73 73 69 6f 6e 2d 63 6f 75 6e 74 20 64 75 70 20 40 20 33 72 6f 6c 6c 20 2b 20 73 77 61 70 20 21 20 3b 0a ~ "" 0a ~ "~ This is the followup to zero-hex-output-metadata," ~ " above. Once we do have" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 66 6f 6c 6c 6f 77 75 70 20 74 6f 20 7a 65 72 6f 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2c 20 61 62 6f 76 65 2e 20 4f 6e 63 65 20 77 65 20 64 6f 20 68 61 76 65 0a ~ "~ the label-loop buffer, we need to create some default" ~ " entries. This is" 7e 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 63 72 65 61 74 65 20 73 6f 6d 65 20 64 65 66 61 75 6c 74 20 65 6e 74 72 69 65 73 2e 20 54 68 69 73 20 69 73 0a ~ "~ called in the first label-loop iteration by" ~ " hex-allocate-replacement, and" 7e 20 63 61 6c 6c 65 64 20 69 6e 20 74 68 65 20 66 69 72 73 74 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 69 74 65 72 61 74 69 6f 6e 20 62 79 20 68 65 78 2d 61 6c 6c 6f 63 61 74 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 61 6e 64 0a ~ "~ it's called before subsequent iterations by the hook on" ~ " reset-labels defined" 7e 20 69 74 27 73 20 63 61 6c 6c 65 64 20 62 65 66 6f 72 65 20 73 75 62 73 65 71 75 65 6e 74 20 69 74 65 72 61 74 69 6f 6e 73 20 62 79 20 74 68 65 20 68 6f 6f 6b 20 6f 6e 20 72 65 73 65 74 2d 6c 61 62 65 6c 73 20 64 65 66 69 6e 65 64 0a ~ "~ in hex-colon-alternate." 7e 20 69 6e 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 2e 0a ~ "~" 7e 0a ~ "~ This overwrites whatever entries currently exist with" ~ " the new ones, and" 7e 20 20 20 54 68 69 73 20 6f 76 65 72 77 72 69 74 65 73 20 77 68 61 74 65 76 65 72 20 65 6e 74 72 69 65 73 20 63 75 72 72 65 6e 74 6c 79 20 65 78 69 73 74 20 77 69 74 68 20 74 68 65 20 6e 65 77 20 6f 6e 65 73 2c 20 61 6e 64 0a ~ "~ adds a zero delimiter at the end." 7e 20 61 64 64 73 20 61 20 7a 65 72 6f 20 64 65 6c 69 6d 69 74 65 72 20 61 74 20 74 68 65 20 65 6e 64 2e 0a ~ "~" 7e 0a ~ "~ In addition to setting up the entries, we also set" ~ " latest-output-point to" 7e 20 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 73 65 74 74 69 6e 67 20 75 70 20 74 68 65 20 65 6e 74 72 69 65 73 2c 20 77 65 20 61 6c 73 6f 20 73 65 74 20 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 74 6f 0a ~ "~ the start of the label-loop buffer here. This needs to" ~ " happen at the start" 7e 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 68 65 72 65 2e 20 54 68 69 73 20 6e 65 65 64 73 20 74 6f 20 68 61 70 70 65 6e 20 61 74 20 74 68 65 20 73 74 61 72 74 0a ~ "~ of each pass, so although it doesn't quite fit the name," ~ " we do it here." 7e 20 6f 66 20 65 61 63 68 20 70 61 73 73 2c 20 73 6f 20 61 6c 74 68 6f 75 67 68 20 69 74 20 64 6f 65 73 6e 27 74 20 71 75 69 74 65 20 66 69 74 20 74 68 65 20 6e 61 6d 65 2c 20 77 65 20 64 6f 20 69 74 20 68 65 72 65 2e 0a ~ "~" 7e 0a ~ "~ It requires the header to have already been" ~ " initialized; in particular it" 7e 20 20 20 49 74 20 72 65 71 75 69 72 65 73 20 74 68 65 20 68 65 61 64 65 72 20 74 6f 20 68 61 76 65 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 69 6e 69 74 69 61 6c 69 7a 65 64 3b 20 69 6e 20 70 61 72 74 69 63 75 6c 61 72 20 69 74 0a ~ "~ requires the label-loop buffer start pointer to be" ~ " valid." 7e 20 72 65 71 75 69 72 65 73 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 73 74 61 72 74 20 70 6f 69 6e 74 65 72 20 74 6f 20 62 65 20 76 61 6c 69 64 2e 0a ~ ": create-hex-output-metadata-top-of-file-entries" 3a 20 63 72 65 61 74 65 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 74 6f 70 2d 6f 66 2d 66 69 6c 65 2d 65 6e 74 72 69 65 73 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " dup hex-output-metadata-label-loop-buffer-start @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 0a ~ " swap hex-output-metadata-first-entry" 20 20 73 77 61 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " ~ (label buffer start, metadata output point)" 20 20 7e 20 28 6c 61 62 65 6c 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6d 65 74 61 64 61 74 61 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ This likely won't affect anything, because every call" ~ " to pack*" 20 20 7e 20 20 20 54 68 69 73 20 6c 69 6b 65 6c 79 20 77 6f 6e 27 74 20 61 66 66 65 63 74 20 61 6e 79 74 68 69 6e 67 2c 20 62 65 63 61 75 73 65 20 65 76 65 72 79 20 63 61 6c 6c 20 74 6f 20 70 61 63 6b 2a 0a ~ " ~ overwrites it, but we initialize the latest output" ~ " point to the start of" 20 20 7e 20 6f 76 65 72 77 72 69 74 65 73 20 69 74 2c 20 62 75 74 20 77 65 20 69 6e 69 74 69 61 6c 69 7a 65 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 0a ~ " ~ the label loop buffer here. That way, in the event the" ~ " very first thing in" 20 20 7e 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 20 62 75 66 66 65 72 20 68 65 72 65 2e 20 54 68 61 74 20 77 61 79 2c 20 69 6e 20 74 68 65 20 65 76 65 6e 74 20 74 68 65 20 76 65 72 79 20 66 69 72 73 74 20 74 68 69 6e 67 20 69 6e 0a ~ " ~ the output is something that's supposed to have a magic" ~ " comment on it," 20 20 7e 20 74 68 65 20 6f 75 74 70 75 74 20 69 73 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 27 73 20 73 75 70 70 6f 73 65 64 20 74 6f 20 68 61 76 65 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 6f 6e 20 69 74 2c 0a ~ " ~ hex-tilde-replacement will know where to attach the" ~ " metadata entry." 20 20 7e 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 77 69 6c 6c 20 6b 6e 6f 77 20 77 68 65 72 65 20 74 6f 20 61 74 74 61 63 68 20 74 68 65 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ If that was word soup, go read about" ~ " hex-tilde-replacement and" 20 20 7e 20 20 20 49 66 20 74 68 61 74 20 77 61 73 20 77 6f 72 64 20 73 6f 75 70 2c 20 67 6f 20 72 65 61 64 20 61 62 6f 75 74 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 61 6e 64 0a ~ " ~ hex-tilde-alternate and come back. :)" 20 20 7e 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 61 6e 64 20 63 6f 6d 65 20 62 61 63 6b 2e 20 3a 29 0a ~ " over" 20 20 6f 76 65 72 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-latest-output-point !" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 21 0a ~ " 0 has-non-space-this-input-line!" 20 20 30 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 21 0a ~ "" 0a ~ " over 0 hex-output-metadata-entry-type-line-comment" 20 20 6f 76 65 72 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" This file is a commented hexadecimal representation" ~ " of a compiled"" 20 20 73 22 20 20 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 61 20 63 6f 6d 6d 65 6e 74 65 64 20 68 65 78 61 64 65 63 69 6d 61 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 20 63 6f 6d 70 69 6c 65 64 22 0a ~ " pack-hex-output-metadata-entry" 20 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " over 0 hex-output-metadata-entry-type-line-comment" 20 20 6f 76 65 72 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" program, the output of Evocation's hex transform. The" ~ " comments are"" 20 20 73 22 20 70 72 6f 67 72 61 6d 2c 20 74 68 65 20 6f 75 74 70 75 74 20 6f 66 20 45 76 6f 63 61 74 69 6f 6e 27 73 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 54 68 65 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 22 0a ~ " pack-hex-output-metadata-entry" 20 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " over 0 hex-output-metadata-entry-type-line-comment" 20 20 6f 76 65 72 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" intended to allow a human reader to audit it. You can" ~ " convert it to a"" 20 20 73 22 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 61 6c 6c 6f 77 20 61 20 68 75 6d 61 6e 20 72 65 61 64 65 72 20 74 6f 20 61 75 64 69 74 20 69 74 2e 20 59 6f 75 20 63 61 6e 20 63 6f 6e 76 65 72 74 20 69 74 20 74 6f 20 61 22 0a ~ " pack-hex-output-metadata-entry" 20 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " over 0 hex-output-metadata-entry-type-line-comment" 20 20 6f 76 65 72 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" runnable executable by piping it through the program" ~ " named 'hex' and"" 20 20 73 22 20 72 75 6e 6e 61 62 6c 65 20 65 78 65 63 75 74 61 62 6c 65 20 62 79 20 70 69 70 69 6e 67 20 69 74 20 74 68 72 6f 75 67 68 20 74 68 65 20 70 72 6f 67 72 61 6d 20 6e 61 6d 65 64 20 27 68 65 78 27 20 61 6e 64 22 0a ~ " pack-hex-output-metadata-entry" 20 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " over 0 hex-output-metadata-entry-type-line-comment" 20 20 6f 76 65 72 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" chmodding the output 755. The difference between a" ~ " source and a binary"" 20 20 73 22 20 63 68 6d 6f 64 64 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 20 37 35 35 2e 20 54 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 61 20 73 6f 75 72 63 65 20 61 6e 64 20 61 20 62 69 6e 61 72 79 22 0a ~ " pack-hex-output-metadata-entry" 20 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " over 0 hex-output-metadata-entry-type-line-comment" 20 20 6f 76 65 72 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" is comments! Enjoy. :)"" 20 20 73 22 20 69 73 20 63 6f 6d 6d 65 6e 74 73 21 20 45 6e 6a 6f 79 2e 20 3a 29 22 0a ~ " pack-hex-output-metadata-entry" 20 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " over 0 hex-output-metadata-entry-type-blank-line 0" 20 20 6f 76 65 72 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 30 0a ~ " pack-hex-output-metadata-entry" 20 20 70 61 63 6b 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " 0 swap ! ~ End-of-entries delimiter" 20 20 30 20 73 77 61 70 20 21 20 7e 20 45 6e 64 2d 6f 66 2d 65 6e 74 72 69 65 73 20 64 65 6c 69 6d 69 74 65 72 0a ~ " drop" 20 20 64 72 6f 70 0a ~ "" 0a ~ " ~ Overwrite the entry count to reflect what we just did." 20 20 7e 20 4f 76 65 72 77 72 69 74 65 20 74 68 65 20 65 6e 74 72 79 20 63 6f 75 6e 74 20 74 6f 20 72 65 66 6c 65 63 74 20 77 68 61 74 20 77 65 20 6a 75 73 74 20 64 69 64 2e 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-entry-count 7 swap ! ;" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 75 6e 74 20 37 20 73 77 61 70 20 21 20 3b 0a ~ "" 0a ~ ": hex-self-codeword-alternate self-codeword ;" 3a 20 68 65 78 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 20 3b 0a ~ "" 0a ~ ": hex-string-alternate" 3a 20 68 65 78 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ The technique we use to wrap s" is analogous to how" ~ " we do it in the" 20 20 7e 20 20 20 54 68 65 20 74 65 63 68 6e 69 71 75 65 20 77 65 20 75 73 65 20 74 6f 20 77 72 61 70 20 73 22 20 69 73 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 68 6f 77 20 77 65 20 64 6f 20 69 74 20 69 6e 20 74 68 65 0a ~ " ~ label transform, but with one critical decision" ~ " different." 20 20 7e 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 62 75 74 20 77 69 74 68 20 6f 6e 65 20 63 72 69 74 69 63 61 6c 20 64 65 63 69 73 69 6f 6e 20 64 69 66 66 65 72 65 6e 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ In the label transform, the output buffer is going to" ~ " be written" 20 20 7e 20 20 20 49 6e 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 69 73 20 67 6f 69 6e 67 20 74 6f 20 62 65 20 77 72 69 74 74 65 6e 0a ~ " ~ directly into the final executable at some point, and" ~ " we'd really rather" 20 20 7e 20 64 69 72 65 63 74 6c 79 20 69 6e 74 6f 20 74 68 65 20 66 69 6e 61 6c 20 65 78 65 63 75 74 61 62 6c 65 20 61 74 20 73 6f 6d 65 20 70 6f 69 6e 74 2c 20 61 6e 64 20 77 65 27 64 20 72 65 61 6c 6c 79 20 72 61 74 68 65 72 0a ~ " ~ not scribble temporary values into it, even if we" ~ " expect to overwrite them" 20 20 7e 20 6e 6f 74 20 73 63 72 69 62 62 6c 65 20 74 65 6d 70 6f 72 61 72 79 20 76 61 6c 75 65 73 20 69 6e 74 6f 20 69 74 2c 20 65 76 65 6e 20 69 66 20 77 65 20 65 78 70 65 63 74 20 74 6f 20 6f 76 65 72 77 72 69 74 65 20 74 68 65 6d 0a ~ " ~ later. Additionally, everything the label transform" ~ " does runs inside the" 20 20 7e 20 6c 61 74 65 72 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 65 76 65 72 79 74 68 69 6e 67 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 64 6f 65 73 20 72 75 6e 73 20 69 6e 73 69 64 65 20 74 68 65 0a ~ " ~ label loop, so the code it's transforming isn't" ~ " expected to do any sort of" 20 20 7e 20 6c 61 62 65 6c 20 6c 6f 6f 70 2c 20 73 6f 20 74 68 65 20 63 6f 64 65 20 69 74 27 73 20 74 72 61 6e 73 66 6f 72 6d 69 6e 67 20 69 73 6e 27 74 20 65 78 70 65 63 74 65 64 20 74 6f 20 64 6f 20 61 6e 79 20 73 6f 72 74 20 6f 66 0a ~ " ~ miscellaneous setup things, just define a bunch of" ~ " words. In that" 20 20 7e 20 6d 69 73 63 65 6c 6c 61 6e 65 6f 75 73 20 73 65 74 75 70 20 74 68 69 6e 67 73 2c 20 6a 75 73 74 20 64 65 66 69 6e 65 20 61 20 62 75 6e 63 68 20 6f 66 20 77 6f 72 64 73 2e 20 49 6e 20 74 68 61 74 0a ~ " ~ situation, making sure to use temporary space from the" ~ " outer, "real" log" 20 20 7e 20 73 69 74 75 61 74 69 6f 6e 2c 20 6d 61 6b 69 6e 67 20 73 75 72 65 20 74 6f 20 75 73 65 20 74 65 6d 70 6f 72 61 72 79 20 73 70 61 63 65 20 66 72 6f 6d 20 74 68 65 20 6f 75 74 65 72 2c 20 22 72 65 61 6c 22 20 6c 6f 67 0a ~ " ~ is helpful." 20 20 7e 20 69 73 20 68 65 6c 70 66 75 6c 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ In the hex transform, most of that is different. The" ~ " output buffer will" 20 20 7e 20 20 20 49 6e 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2c 20 6d 6f 73 74 20 6f 66 20 74 68 61 74 20 69 73 20 64 69 66 66 65 72 65 6e 74 2e 20 54 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 77 69 6c 6c 0a ~ " ~ include all sorts of things that don't become part of" ~ " the final" 20 20 7e 20 69 6e 63 6c 75 64 65 20 61 6c 6c 20 73 6f 72 74 73 20 6f 66 20 74 68 69 6e 67 73 20 74 68 61 74 20 64 6f 6e 27 74 20 62 65 63 6f 6d 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 66 69 6e 61 6c 0a ~ " ~ executable, though they're used in producing it. So," ~ " it's fine to use it" 20 20 7e 20 65 78 65 63 75 74 61 62 6c 65 2c 20 74 68 6f 75 67 68 20 74 68 65 79 27 72 65 20 75 73 65 64 20 69 6e 20 70 72 6f 64 75 63 69 6e 67 20 69 74 2e 20 53 6f 2c 20 69 74 27 73 20 66 69 6e 65 20 74 6f 20 75 73 65 20 69 74 0a ~ " ~ for scratch space. Additionally, using the outer log" ~ " for string literals" 20 20 7e 20 66 6f 72 20 73 63 72 61 74 63 68 20 73 70 61 63 65 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 75 73 69 6e 67 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 20 66 6f 72 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 0a ~ " ~ gets us into trouble, since some of these temporary" ~ " strings need to be" 20 20 7e 20 67 65 74 73 20 75 73 20 69 6e 74 6f 20 74 72 6f 75 62 6c 65 2c 20 73 69 6e 63 65 20 73 6f 6d 65 20 6f 66 20 74 68 65 73 65 20 74 65 6d 70 6f 72 61 72 79 20 73 74 72 69 6e 67 73 20 6e 65 65 64 20 74 6f 20 62 65 0a ~ " ~ made more durable by calling allocate-string on them." ~ " If we do that with" 20 20 7e 20 6d 61 64 65 20 6d 6f 72 65 20 64 75 72 61 62 6c 65 20 62 79 20 63 61 6c 6c 69 6e 67 20 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 20 6f 6e 20 74 68 65 6d 2e 20 49 66 20 77 65 20 64 6f 20 74 68 61 74 20 77 69 74 68 0a ~ " ~ a string pointer backed by the outer log, the inner" ~ " "here" will wind up" 20 20 7e 20 61 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 62 61 63 6b 65 64 20 62 79 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 2c 20 74 68 65 20 69 6e 6e 65 72 20 22 68 65 72 65 22 20 77 69 6c 6c 20 77 69 6e 64 20 75 70 0a ~ " ~ pointing to the end of the outer log, and all sorts of" ~ " things will start" 20 20 7e 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 2c 20 61 6e 64 20 61 6c 6c 20 73 6f 72 74 73 20 6f 66 20 74 68 69 6e 67 73 20 77 69 6c 6c 20 73 74 61 72 74 0a ~ " ~ scribbling atop each other." 20 20 7e 20 73 63 72 69 62 62 6c 69 6e 67 20 61 74 6f 70 20 65 61 63 68 20 6f 74 68 65 72 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We do still benefit from using the interpreted" ~ " version of s" rather than" 20 20 7e 20 20 20 57 65 20 64 6f 20 73 74 69 6c 6c 20 62 65 6e 65 66 69 74 20 66 72 6f 6d 20 75 73 69 6e 67 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 73 22 20 72 61 74 68 65 72 20 74 68 61 6e 0a ~ " ~ the compiled one; as with the label transform, it's" ~ " convenient to handle" 20 20 7e 20 74 68 65 20 63 6f 6d 70 69 6c 65 64 20 6f 6e 65 3b 20 61 73 20 77 69 74 68 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 69 74 27 73 20 63 6f 6e 76 65 6e 69 65 6e 74 20 74 6f 20 68 61 6e 64 6c 65 0a ~ " ~ the litstring dance ourselves." 20 20 7e 20 74 68 65 20 6c 69 74 73 74 72 69 6e 67 20 64 61 6e 63 65 20 6f 75 72 73 65 6c 76 65 73 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ If we're in compile mode, we have reinvented a" ~ " problem which the" 20 20 7e 20 20 20 49 66 20 77 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 77 65 20 68 61 76 65 20 72 65 69 6e 76 65 6e 74 65 64 20 61 20 70 72 6f 62 6c 65 6d 20 77 68 69 63 68 20 74 68 65 0a ~ " ~ regular, non-transformed s" already deals with: The" ~ " temporary space we're" 20 20 7e 20 72 65 67 75 6c 61 72 2c 20 6e 6f 6e 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 73 22 20 61 6c 72 65 61 64 79 20 64 65 61 6c 73 20 77 69 74 68 3a 20 54 68 65 20 74 65 6d 70 6f 72 61 72 79 20 73 70 61 63 65 20 77 65 27 72 65 0a ~ " ~ writing to is in the same place as the code we're" ~ " compiling. We solve it" 20 20 7e 20 77 72 69 74 69 6e 67 20 74 6f 20 69 73 20 69 6e 20 74 68 65 20 73 61 6d 65 20 70 6c 61 63 65 20 61 73 20 74 68 65 20 63 6f 64 65 20 77 65 27 72 65 20 63 6f 6d 70 69 6c 69 6e 67 2e 20 57 65 20 73 6f 6c 76 65 20 69 74 0a ~ " ~ the same way: Check beforehand and write out the call" ~ " to litstring if we" 20 20 7e 20 74 68 65 20 73 61 6d 65 20 77 61 79 3a 20 43 68 65 63 6b 20 62 65 66 6f 72 65 68 61 6e 64 20 61 6e 64 20 77 72 69 74 65 20 6f 75 74 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 6c 69 74 73 74 72 69 6e 67 20 69 66 20 77 65 0a ~ " ~ need it, so that we won't have to slide things around" ~ " later." 20 20 7e 20 6e 65 65 64 20 69 74 2c 20 73 6f 20 74 68 61 74 20 77 65 20 77 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 73 6c 69 64 65 20 74 68 69 6e 67 73 20 61 72 6f 75 6e 64 20 6c 61 74 65 72 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We look up the inner version of litstring to" ~ " reference here. This is" 20 20 20 20 7e 20 20 20 57 65 20 6c 6f 6f 6b 20 75 70 20 74 68 65 20 69 6e 6e 65 72 20 76 65 72 73 69 6f 6e 20 6f 66 20 6c 69 74 73 74 72 69 6e 67 20 74 6f 20 72 65 66 65 72 65 6e 63 65 20 68 65 72 65 2e 20 54 68 69 73 20 69 73 0a ~ " ~ similar to what the label transform does, except we" ~ " don't use a label" 20 20 20 20 7e 20 73 69 6d 69 6c 61 72 20 74 6f 20 77 68 61 74 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 64 6f 65 73 2c 20 65 78 63 65 70 74 20 77 65 20 64 6f 6e 27 74 20 75 73 65 20 61 20 6c 61 62 65 6c 0a ~ " ~ for it." 20 20 20 20 7e 20 66 6f 72 20 69 74 2e 0a ~ " s" litstring" find entry-to-execution-token ," 20 20 20 20 73 22 20 6c 69 74 73 74 72 69 6e 67 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Now, regardless of what mode we're actually in, call" ~ " the interpreted" 20 20 7e 20 20 20 4e 6f 77 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 61 74 20 6d 6f 64 65 20 77 65 27 72 65 20 61 63 74 75 61 6c 6c 79 20 69 6e 2c 20 63 61 6c 6c 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 64 0a ~ " ~ version of s" to read the actual string and its null" ~ " terminator." 20 20 7e 20 76 65 72 73 69 6f 6e 20 6f 66 20 73 22 20 74 6f 20 72 65 61 64 20 74 68 65 20 61 63 74 75 61 6c 20 73 74 72 69 6e 67 20 61 6e 64 20 69 74 73 20 6e 75 6c 6c 20 74 65 72 6d 69 6e 61 74 6f 72 2e 0a ~ " interpreter-flags @" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 0a ~ " ' s" entry-to-execution-token" 20 20 27 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " [ ' [ entry-to-execution-token , ]" 20 20 5b 20 27 20 5b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " execute" 20 20 65 78 65 63 75 74 65 0a ~ " swap interpreter-flags !" 20 20 73 77 61 70 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 21 0a ~ "" 0a ~ " ~ Now we have a string pointer on the stack at" ~ " transform time. If we're in" 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 68 61 76 65 20 61 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 61 74 20 74 72 61 6e 73 66 6f 72 6d 20 74 69 6d 65 2e 20 49 66 20 77 65 27 72 65 20 69 6e 0a ~ " ~ immediate mode, that's sufficient. If we're in compile" ~ " mode, we also" 20 20 7e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2c 20 74 68 61 74 27 73 20 73 75 66 66 69 63 69 65 6e 74 2e 20 49 66 20 77 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 20 77 65 20 61 6c 73 6f 0a ~ " ~ already output a litstring invocation, and the string" ~ " is in the right" 20 20 7e 20 61 6c 72 65 61 64 79 20 6f 75 74 70 75 74 20 61 20 6c 69 74 73 74 72 69 6e 67 20 69 6e 76 6f 63 61 74 69 6f 6e 2c 20 61 6e 64 20 74 68 65 20 73 74 72 69 6e 67 20 69 73 20 69 6e 20 74 68 65 20 72 69 67 68 74 0a ~ " ~ place, but "here" is pointing before it and needs to" ~ " point after it, then" 20 20 7e 20 70 6c 61 63 65 2c 20 62 75 74 20 22 68 65 72 65 22 20 69 73 20 70 6f 69 6e 74 69 6e 67 20 62 65 66 6f 72 65 20 69 74 20 61 6e 64 20 6e 65 65 64 73 20 74 6f 20 70 6f 69 6e 74 20 61 66 74 65 72 20 69 74 2c 20 74 68 65 6e 0a ~ " ~ we also still need to add alignment padding. Plus, we" ~ " need to be sure to" 20 20 7e 20 77 65 20 61 6c 73 6f 20 73 74 69 6c 6c 20 6e 65 65 64 20 74 6f 20 61 64 64 20 61 6c 69 67 6e 6d 65 6e 74 20 70 61 64 64 69 6e 67 2e 20 50 6c 75 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 62 65 20 73 75 72 65 20 74 6f 0a ~ " ~ not leave the string pointer itself on the stack." 20 20 7e 20 6e 6f 74 20 6c 65 61 76 65 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 69 74 73 65 6c 66 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " dup stringlen 1+ + 8 packalign here !" 20 20 20 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 31 2b 20 2b 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ ": hex-dot-string-alternate" 3a 20 68 65 78 2d 64 6f 74 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ' hex-string-alternate entry-to-execution-token execute" 20 20 27 20 68 65 78 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ "" 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We look up the inner version of emitstring, too." 20 20 20 20 7e 20 57 65 20 6c 6f 6f 6b 20 75 70 20 74 68 65 20 69 6e 6e 65 72 20 76 65 72 73 69 6f 6e 20 6f 66 20 65 6d 69 74 73 74 72 69 6e 67 2c 20 74 6f 6f 2e 0a ~ " s" emitstring" find entry-to-execution-token ," 20 20 20 20 73 22 20 65 6d 69 74 73 74 72 69 6e 67 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } { emitstring } if-else" 20 20 7d 20 7b 20 65 6d 69 74 73 74 72 69 6e 67 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ ": hex-create-alternate create ;" 3a 20 68 65 78 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 63 72 65 61 74 65 20 3b 0a ~ "" 0a ~ "~ This is a helper called from the patched version of" ~ " "variable", described" 7e 20 20 20 54 68 69 73 20 69 73 20 61 20 68 65 6c 70 65 72 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 74 68 65 20 70 61 74 63 68 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 76 61 72 69 61 62 6c 65 22 2c 20 64 65 73 63 72 69 62 65 64 0a ~ "~ in more detail in hex-colon-alternate, below. It expects" ~ " to be called after" 7e 20 69 6e 20 6d 6f 72 65 20 64 65 74 61 69 6c 20 69 6e 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 2c 20 62 65 6c 6f 77 2e 20 49 74 20 65 78 70 65 63 74 73 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 61 66 74 65 72 0a ~ "~ outputting the entry header for "variable", during the" ~ " body of the" 7e 20 6f 75 74 70 75 74 74 69 6e 67 20 74 68 65 20 65 6e 74 72 79 20 68 65 61 64 65 72 20 66 6f 72 20 22 76 61 72 69 61 62 6c 65 22 2c 20 64 75 72 69 6e 67 20 74 68 65 20 62 6f 64 79 20 6f 66 20 74 68 65 0a ~ "~ definition, so that it can output compiled code which" ~ " will run as part of" 7e 20 64 65 66 69 6e 69 74 69 6f 6e 2c 20 73 6f 20 74 68 61 74 20 69 74 20 63 61 6e 20 6f 75 74 70 75 74 20 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 20 77 68 69 63 68 20 77 69 6c 6c 20 72 75 6e 20 61 73 20 70 61 72 74 20 6f 66 0a ~ "~ the transformed "variable"." 7e 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 22 76 61 72 69 61 62 6c 65 22 2e 0a ~ "~" 7e 0a ~ "~ The helper accepts a string pointer giving a variable" ~ " name. The code it" 7e 20 20 20 54 68 65 20 68 65 6c 70 65 72 20 61 63 63 65 70 74 73 20 61 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 67 69 76 69 6e 67 20 61 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 2e 20 54 68 65 20 63 6f 64 65 20 69 74 0a ~ "~ produces checks the name of the variable being defined" ~ " and, if the two names" 7e 20 70 72 6f 64 75 63 65 73 20 63 68 65 63 6b 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 62 65 69 6e 67 20 64 65 66 69 6e 65 64 20 61 6e 64 2c 20 69 66 20 74 68 65 20 74 77 6f 20 6e 61 6d 65 73 0a ~ "~ match, alters the resulting inner variable to point to" ~ " the same backing" 7e 20 6d 61 74 63 68 2c 20 61 6c 74 65 72 73 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 6e 65 72 20 76 61 72 69 61 62 6c 65 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 73 61 6d 65 20 62 61 63 6b 69 6e 67 0a ~ "~ store as the outer variable of the same name." 7e 20 73 74 6f 72 65 20 61 73 20 74 68 65 20 6f 75 74 65 72 20 76 61 72 69 61 62 6c 65 20 6f 66 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 2e 0a ~ "~" 7e 0a ~ "~ In many ways the hex transform is the trippiest one. To" ~ " wit, there's two" 7e 20 20 20 49 6e 20 6d 61 6e 79 20 77 61 79 73 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 74 68 65 20 74 72 69 70 70 69 65 73 74 20 6f 6e 65 2e 20 54 6f 20 77 69 74 2c 20 74 68 65 72 65 27 73 20 74 77 6f 0a ~ "~ layers of compilation happening here... so don't get" ~ " confused. When the" 7e 20 6c 61 79 65 72 73 20 6f 66 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 68 61 70 70 65 6e 69 6e 67 20 68 65 72 65 2e 2e 2e 20 73 6f 20 64 6f 6e 27 74 20 67 65 74 20 63 6f 6e 66 75 73 65 64 2e 20 57 68 65 6e 20 74 68 65 0a ~ "~ helper is called, we're compiling the inner "variable"," ~ " but "variable"" 7e 20 68 65 6c 70 65 72 20 69 73 20 63 61 6c 6c 65 64 2c 20 77 65 27 72 65 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 69 6e 6e 65 72 20 22 76 61 72 69 61 62 6c 65 22 2c 20 62 75 74 20 22 76 61 72 69 61 62 6c 65 22 0a ~ "~ itself is a word-defining word which also has the task of" ~ " compilation..." 7e 20 69 74 73 65 6c 66 20 69 73 20 61 20 77 6f 72 64 2d 64 65 66 69 6e 69 6e 67 20 77 6f 72 64 20 77 68 69 63 68 20 61 6c 73 6f 20 68 61 73 20 74 68 65 20 74 61 73 6b 20 6f 66 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2e 2e 2e 0a ~ "~ which we're modifying." 7e 20 77 68 69 63 68 20 77 65 27 72 65 20 6d 6f 64 69 66 79 69 6e 67 2e 0a ~ "~" 7e 0a ~ "~ (name pointer --)" 7e 20 28 6e 61 6d 65 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": hex-variable-use-outer" 3a 20 68 65 78 2d 76 61 72 69 61 62 6c 65 2d 75 73 65 2d 6f 75 74 65 72 0a ~ " ~ The actual payload here is that we check whether" ~ " we're defining the" 20 20 7e 20 20 20 54 68 65 20 61 63 74 75 61 6c 20 70 61 79 6c 6f 61 64 20 68 65 72 65 20 69 73 20 74 68 61 74 20 77 65 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 77 65 27 72 65 20 64 65 66 69 6e 69 6e 67 20 74 68 65 0a ~ " ~ word described by the name pointer we were given, and," ~ " if so, we make it" 20 20 7e 20 77 6f 72 64 20 64 65 73 63 72 69 62 65 64 20 62 79 20 74 68 65 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 20 77 65 20 77 65 72 65 20 67 69 76 65 6e 2c 20 61 6e 64 2c 20 69 66 20 73 6f 2c 20 77 65 20 6d 61 6b 65 20 69 74 0a ~ " ~ reference the outer backing store instead of the inner" ~ " one." 20 20 7e 20 72 65 66 65 72 65 6e 63 65 20 74 68 65 20 6f 75 74 65 72 20 62 61 63 6b 69 6e 67 20 73 74 6f 72 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 69 6e 6e 65 72 20 6f 6e 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We want to do this all as references to inner words," ~ " which fortunately" 20 20 7e 20 20 20 57 65 20 77 61 6e 74 20 74 6f 20 64 6f 20 74 68 69 73 20 61 6c 6c 20 61 73 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 69 6e 6e 65 72 20 77 6f 72 64 73 2c 20 77 68 69 63 68 20 66 6f 72 74 75 6e 61 74 65 6c 79 0a ~ " ~ have been defined by now, but we have to do that a bit" ~ " indirectly..." 20 20 7e 20 68 61 76 65 20 62 65 65 6e 20 64 65 66 69 6e 65 64 20 62 79 20 6e 6f 77 2c 20 62 75 74 20 77 65 20 68 61 76 65 20 74 6f 20 64 6f 20 74 68 61 74 20 61 20 62 69 74 20 69 6e 64 69 72 65 63 74 6c 79 2e 2e 2e 0a ~ " s" dup" find entry-to-execution-token ," 20 20 73 22 20 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" litstring" find entry-to-execution-token ," 20 20 73 22 20 6c 69 74 73 74 72 69 6e 67 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " here @ over packstring 8 packalign here !" 20 20 68 65 72 65 20 40 20 6f 76 65 72 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " s" stringcmp" find entry-to-execution-token ," 20 20 73 22 20 73 74 72 69 6e 67 63 6d 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" lit" find entry-to-execution-token , 0 ," 20 20 73 22 20 6c 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 30 20 2c 0a ~ " s" =" find entry-to-execution-token ," 20 20 73 22 20 3d 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " ~ Also, we don't have high-level flow control yet, and" ~ " even if we did," 20 20 7e 20 20 20 41 6c 73 6f 2c 20 77 65 20 64 6f 6e 27 74 20 68 61 76 65 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 20 63 6f 6e 74 72 6f 6c 20 79 65 74 2c 20 61 6e 64 20 65 76 65 6e 20 69 66 20 77 65 20 64 69 64 2c 0a ~ " ~ it would be awkward to use it here. So we count the" ~ " branch by hand. Ah" 20 20 7e 20 69 74 20 77 6f 75 6c 64 20 62 65 20 61 77 6b 77 61 72 64 20 74 6f 20 75 73 65 20 69 74 20 68 65 72 65 2e 20 53 6f 20 77 65 20 63 6f 75 6e 74 20 74 68 65 20 62 72 61 6e 63 68 20 62 79 20 68 61 6e 64 2e 20 41 68 0a ~ " ~ well. As always, remember that with forward branches," ~ " the offset to" 20 20 7e 20 77 65 6c 6c 2e 20 41 73 20 61 6c 77 61 79 73 2c 20 72 65 6d 65 6d 62 65 72 20 74 68 61 74 20 77 69 74 68 20 66 6f 72 77 61 72 64 20 62 72 61 6e 63 68 65 73 2c 20 74 68 65 20 6f 66 66 73 65 74 20 74 6f 0a ~ " ~ branch by is the first word to be skipped, and is" ~ " included in the count." 20 20 7e 20 62 72 61 6e 63 68 20 62 79 20 69 73 20 74 68 65 20 66 69 72 73 74 20 77 6f 72 64 20 74 6f 20 62 65 20 73 6b 69 70 70 65 64 2c 20 61 6e 64 20 69 73 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 63 6f 75 6e 74 2e 0a ~ " s" 0branch" find entry-to-execution-token , 6 8 * ," 20 20 73 22 20 30 62 72 61 6e 63 68 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 36 20 38 20 2a 20 2c 0a ~ "" 0a ~ " ~ If control reaches here in the generated code, the" ~ " string matched." 20 20 7e 20 49 66 20 63 6f 6e 74 72 6f 6c 20 72 65 61 63 68 65 73 20 68 65 72 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 2c 20 74 68 65 20 73 74 72 69 6e 67 20 6d 61 74 63 68 65 64 2e 0a ~ " s" swap" find entry-to-execution-token ," 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" drop" find entry-to-execution-token ," 20 20 73 22 20 64 72 6f 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " ~ To get the value of the outer variable, we just call" ~ " it. Of course," 20 20 7e 20 20 20 54 6f 20 67 65 74 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 6f 75 74 65 72 20 76 61 72 69 61 62 6c 65 2c 20 77 65 20 6a 75 73 74 20 63 61 6c 6c 20 69 74 2e 20 4f 66 20 63 6f 75 72 73 65 2c 0a ~ " ~ looking up an outer entry is a pain, but at least it's" ~ " a pain in a way" 20 20 7e 20 6c 6f 6f 6b 69 6e 67 20 75 70 20 61 6e 20 6f 75 74 65 72 20 65 6e 74 72 79 20 69 73 20 61 20 70 61 69 6e 2c 20 62 75 74 20 61 74 20 6c 65 61 73 74 20 69 74 27 73 20 61 20 70 61 69 6e 20 69 6e 20 61 20 77 61 79 0a ~ " ~ that should be familiar by now." 20 20 7e 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 66 61 6d 69 6c 69 61 72 20 62 79 20 6e 6f 77 2e 0a ~ " s" lit" find entry-to-execution-token ," 20 20 73 22 20 6c 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " find" 20 20 66 69 6e 64 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " entry-to-execution-token execute ," 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ "" 0a ~ " s" swap" find entry-to-execution-token , ;" 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 3b 0a ~ "" 0a ~ "~ Metadata entries are post-processed before they're" ~ " output, in order to" 7e 20 20 20 4d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 61 72 65 20 70 6f 73 74 2d 70 72 6f 63 65 73 73 65 64 20 62 65 66 6f 72 65 20 74 68 65 79 27 72 65 20 6f 75 74 70 75 74 2c 20 69 6e 20 6f 72 64 65 72 20 74 6f 0a ~ "~ make the structure of the output code simpler. The" ~ " post-processing won't" 7e 20 6d 61 6b 65 20 74 68 65 20 73 74 72 75 63 74 75 72 65 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 20 63 6f 64 65 20 73 69 6d 70 6c 65 72 2e 20 54 68 65 20 70 6f 73 74 2d 70 72 6f 63 65 73 73 69 6e 67 20 77 6f 6e 27 74 0a ~ "~ happen until output actually occurs, which is important" ~ " for operations that" 7e 20 68 61 70 70 65 6e 20 75 6e 74 69 6c 20 6f 75 74 70 75 74 20 61 63 74 75 61 6c 6c 79 20 6f 63 63 75 72 73 2c 20 77 68 69 63 68 20 69 73 20 69 6d 70 6f 72 74 61 6e 74 20 66 6f 72 20 6f 70 65 72 61 74 69 6f 6e 73 20 74 68 61 74 0a ~ "~ modify entries in-place." 7e 20 6d 6f 64 69 66 79 20 65 6e 74 72 69 65 73 20 69 6e 2d 70 6c 61 63 65 2e 0a ~ "~" 7e 0a ~ "~ Any time output is performed, all existing entries are" ~ " post-processed." 7e 20 20 20 41 6e 79 20 74 69 6d 65 20 6f 75 74 70 75 74 20 69 73 20 70 65 72 66 6f 72 6d 65 64 2c 20 61 6c 6c 20 65 78 69 73 74 69 6e 67 20 65 6e 74 72 69 65 73 20 61 72 65 20 70 6f 73 74 2d 70 72 6f 63 65 73 73 65 64 2e 0a ~ "~ Therefore, the post-processing is required to be" ~ " idempotent, and is." 7e 20 54 68 65 72 65 66 6f 72 65 2c 20 74 68 65 20 70 6f 73 74 2d 70 72 6f 63 65 73 73 69 6e 67 20 69 73 20 72 65 71 75 69 72 65 64 20 74 6f 20 62 65 20 69 64 65 6d 70 6f 74 65 6e 74 2c 20 61 6e 64 20 69 73 2e 0a ~ ": postprocess-metadata-entries" 3a 20 70 6f 73 74 70 72 6f 63 65 73 73 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 69 65 73 0a ~ " 1 { } {" 20 20 31 20 7b 20 7d 20 7b 0a ~ " 0" 20 20 20 20 30 0a ~ " ~ (did anything this iteration)" 20 20 20 20 7e 20 28 64 69 64 20 61 6e 79 74 68 69 6e 67 20 74 68 69 73 20 69 74 65 72 61 74 69 6f 6e 29 0a ~ "" 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " { dup @ } {" 20 20 20 20 7b 20 64 75 70 20 40 20 7d 20 7b 0a ~ " ~ (did anything, entry pointer)" 20 20 20 20 20 20 7e 20 28 64 69 64 20 61 6e 79 74 68 69 6e 67 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Is the entry a suffix comment with a non-zero data" ~ " length?" 20 20 20 20 20 20 7e 20 49 73 20 74 68 65 20 65 6e 74 72 79 20 61 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 77 69 74 68 20 61 20 6e 6f 6e 2d 7a 65 72 6f 20 64 61 74 61 20 6c 65 6e 67 74 68 3f 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-suffix-comment =" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 3d 0a ~ " over hex-output-metadata-entry-data-length @ 0 != &&" ~ " {" 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 40 20 30 20 21 3d 20 26 26 20 7b 0a ~ " ~ Split it into two entries so as not to rely on" ~ " data length for" 20 20 20 20 20 20 20 20 7e 20 20 20 53 70 6c 69 74 20 69 74 20 69 6e 74 6f 20 74 77 6f 20 65 6e 74 72 69 65 73 20 73 6f 20 61 73 20 6e 6f 74 20 74 6f 20 72 65 6c 79 20 6f 6e 20 64 61 74 61 20 6c 65 6e 67 74 68 20 66 6f 72 0a ~ " ~ formatting." 20 20 20 20 20 20 20 20 7e 20 66 6f 72 6d 61 74 74 69 6e 67 2e 0a ~ " dup dup-metadata-entry" 20 20 20 20 20 20 20 20 64 75 70 20 64 75 70 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (did anything, entry pointer)" 20 20 20 20 20 20 20 20 7e 20 28 64 69 64 20 61 6e 79 74 68 69 6e 67 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ Now we have the original entry at the original" ~ " location, and a" 20 20 20 20 20 20 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 68 61 76 65 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 65 6e 74 72 79 20 61 74 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 6c 6f 63 61 74 69 6f 6e 2c 20 61 6e 64 20 61 0a ~ " ~ copy of it at the next location." 20 20 20 20 20 20 20 20 7e 20 63 6f 70 79 20 6f 66 20 69 74 20 61 74 20 74 68 65 20 6e 65 78 74 20 6c 6f 63 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ~ We have a feature which lets a suffix comment" ~ " be created with a" 20 20 20 20 20 20 20 20 7e 20 20 20 57 65 20 68 61 76 65 20 61 20 66 65 61 74 75 72 65 20 77 68 69 63 68 20 6c 65 74 73 20 61 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 62 65 20 63 72 65 61 74 65 64 20 77 69 74 68 20 61 0a ~ " ~ negative length, which means it covers bytes" ~ " before the current output" 20 20 20 20 20 20 20 20 7e 20 6e 65 67 61 74 69 76 65 20 6c 65 6e 67 74 68 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 69 74 20 63 6f 76 65 72 73 20 62 79 74 65 73 20 62 65 66 6f 72 65 20 74 68 65 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 ~ "" 0a ~ " ~ point rather than after it. This logic here is" ~ " the implementation of" 20 20 20 20 20 20 20 20 7e 20 70 6f 69 6e 74 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 66 74 65 72 20 69 74 2e 20 54 68 69 73 20 6c 6f 67 69 63 20 68 65 72 65 20 69 73 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 0a ~ " ~ that feature." 20 20 20 20 20 20 20 20 7e 20 74 68 61 74 20 66 65 61 74 75 72 65 2e 0a ~ " dup hex-output-metadata-entry-data-start @ dup" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 20 64 75 70 0a ~ " 2 pick hex-output-metadata-entry-data-length @ +" 20 20 20 20 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 40 20 2b 0a ~ " 2dup min 3unroll max" 20 20 20 20 20 20 20 20 32 64 75 70 20 6d 69 6e 20 33 75 6e 72 6f 6c 6c 20 6d 61 78 0a ~ " ~ (..., entry pointer, low end of data, high end of" ~ " data)" 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6c 6f 77 20 65 6e 64 20 6f 66 20 64 61 74 61 2c 20 68 69 67 68 20 65 6e 64 20 6f 66 20 64 61 74 61 29 0a ~ "" 0a ~ " ~ Now we modify the original in-place to turn it" ~ " into a fresh-line" 20 20 20 20 20 20 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 6d 6f 64 69 66 79 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 69 6e 2d 70 6c 61 63 65 20 74 6f 20 74 75 72 6e 20 69 74 20 69 6e 74 6f 20 61 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ " ~ entry at the low end of the data..." 20 20 20 20 20 20 20 20 7e 20 65 6e 74 72 79 20 61 74 20 74 68 65 20 6c 6f 77 20 65 6e 64 20 6f 66 20 74 68 65 20 64 61 74 61 2e 2e 2e 0a ~ " 2 pick hex-output-metadata-entry-type" 20 20 20 20 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 0a ~ " hex-output-metadata-entry-type-fresh-line swap !" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 66 72 65 73 68 2d 6c 69 6e 65 20 73 77 61 70 20 21 0a ~ " ~ (..., entry pointer, low end of data, high end of" ~ " data)" 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6c 6f 77 20 65 6e 64 20 6f 66 20 64 61 74 61 2c 20 68 69 67 68 20 65 6e 64 20 6f 66 20 64 61 74 61 29 0a ~ "" 0a ~ " 2 pick hex-output-metadata-entry-data-start 3roll" ~ " swap !" 20 20 20 20 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 33 72 6f 6c 6c 20 73 77 61 70 20 21 0a ~ " ~ (..., entry pointer, high end of data)" 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 68 69 67 68 20 65 6e 64 20 6f 66 20 64 61 74 61 29 0a ~ " over hex-output-metadata-entry-data-length 0 swap" ~ " !" 20 20 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 30 20 73 77 61 70 20 21 0a ~ " ~ (..., entry pointer, high end of data)" 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 68 69 67 68 20 65 6e 64 20 6f 66 20 64 61 74 61 29 0a ~ "" 0a ~ " ~ ... then we modify the next entry in-place to" ~ " set its location to" 20 20 20 20 20 20 20 20 7e 20 20 20 2e 2e 2e 20 74 68 65 6e 20 77 65 20 6d 6f 64 69 66 79 20 74 68 65 20 6e 65 78 74 20 65 6e 74 72 79 20 69 6e 2d 70 6c 61 63 65 20 74 6f 20 73 65 74 20 69 74 73 20 6c 6f 63 61 74 69 6f 6e 20 74 6f 0a ~ " ~ the end of the data instead of the beginning, and" ~ " its length to zero." 20 20 20 20 20 20 20 20 7e 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 64 61 74 61 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 2c 20 61 6e 64 20 69 74 73 20 6c 65 6e 67 74 68 20 74 6f 20 7a 65 72 6f 2e 0a ~ " over hex-output-metadata-next-entry" 20 20 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 0a ~ " ~ (..., entry pointer, high end of data, next entry" ~ " pointer)" 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 68 69 67 68 20 65 6e 64 20 6f 66 20 64 61 74 61 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " dup hex-output-metadata-entry-data-start 3roll swap" ~ " !" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 33 72 6f 6c 6c 20 73 77 61 70 20 21 0a ~ " ~ (..., entry pointer, next entry pointer)" 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 65 78 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ " hex-output-metadata-entry-data-length 0 swap !" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 30 20 73 77 61 70 20 21 0a ~ " ~ (..., entry pointer)" 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ This rule won't fire again on the fresh-line" ~ " entry because it's of a" 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 69 73 20 72 75 6c 65 20 77 6f 6e 27 74 20 66 69 72 65 20 61 67 61 69 6e 20 6f 6e 20 74 68 65 20 66 72 65 73 68 2d 6c 69 6e 65 20 65 6e 74 72 79 20 62 65 63 61 75 73 65 20 69 74 27 73 20 6f 66 20 61 ~ "" 0a ~ " ~ a different type, and it won't fire on the" ~ " modified suffix-comment" 20 20 20 20 20 20 20 20 7e 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 2c 20 61 6e 64 20 69 74 20 77 6f 6e 27 74 20 66 69 72 65 20 6f 6e 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 0a ~ " ~ entry because its data length is zero." 20 20 20 20 20 20 20 20 7e 20 65 6e 74 72 79 20 62 65 63 61 75 73 65 20 69 74 73 20 64 61 74 61 20 6c 65 6e 67 74 68 20 69 73 20 7a 65 72 6f 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 7e 0a ~ " ~ It's possible that one or the other of the" ~ " bubble-sort rules will" 20 20 20 20 20 20 20 20 7e 20 20 20 49 74 27 73 20 70 6f 73 73 69 62 6c 65 20 74 68 61 74 20 6f 6e 65 20 6f 72 20 74 68 65 20 6f 74 68 65 72 20 6f 66 20 74 68 65 20 62 75 62 62 6c 65 2d 73 6f 72 74 20 72 75 6c 65 73 20 77 69 6c 6c 0a ~ " ~ fire on either of them." 20 20 20 20 20 20 20 20 7e 20 66 69 72 65 20 6f 6e 20 65 69 74 68 65 72 20 6f 66 20 74 68 65 6d 2e 0a ~ "" 0a ~ " ~ (did anything, entry pointer)" 20 20 20 20 20 20 20 20 7e 20 28 64 69 64 20 61 6e 79 74 68 69 6e 67 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ " swap drop 1 swap" 20 20 20 20 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 31 20 73 77 61 70 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ " ~ (did anything, entry pointer)" 20 20 20 20 20 20 7e 20 28 64 69 64 20 61 6e 79 74 68 69 6e 67 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Do this entry and the next entry both exist, and" ~ " they're out of" 20 20 20 20 20 20 7e 20 20 20 44 6f 20 74 68 69 73 20 65 6e 74 72 79 20 61 6e 64 20 74 68 65 20 6e 65 78 74 20 65 6e 74 72 79 20 62 6f 74 68 20 65 78 69 73 74 2c 20 61 6e 64 20 74 68 65 79 27 72 65 20 6f 75 74 20 6f 66 0a ~ " ~ order based on their data starts?" 20 20 20 20 20 20 7e 20 6f 72 64 65 72 20 62 61 73 65 64 20 6f 6e 20 74 68 65 69 72 20 64 61 74 61 20 73 74 61 72 74 73 3f 0a ~ " dup hex-output-metadata-next-entry dup @" 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 64 75 70 20 40 0a ~ " { hex-output-metadata-entry-data-start @" 20 20 20 20 20 20 20 20 7b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 0a ~ " over hex-output-metadata-entry-data-start @ > }" 20 20 20 20 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 20 3e 20 7d 0a ~ " { drop 0 } if-else" 20 20 20 20 20 20 20 20 7b 20 64 72 6f 70 20 30 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " {" 20 20 20 20 20 20 7b 0a ~ " ~ Swap the order of the two entries. Since this" ~ " whole thing is in a" 20 20 20 20 20 20 20 20 7e 20 20 20 53 77 61 70 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 74 68 65 20 74 77 6f 20 65 6e 74 72 69 65 73 2e 20 53 69 6e 63 65 20 74 68 69 73 20 77 68 6f 6c 65 20 74 68 69 6e 67 20 69 73 20 69 6e 20 61 0a ~ " ~ loop, this functions as a bubble sort." 20 20 20 20 20 20 20 20 7e 20 6c 6f 6f 70 2c 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 73 20 61 73 20 61 20 62 75 62 62 6c 65 20 73 6f 72 74 2e 0a ~ " dup swap-metadata-entries" 20 20 20 20 20 20 20 20 64 75 70 20 73 77 61 70 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 69 65 73 0a ~ " swap drop 1 swap" 20 20 20 20 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 31 20 73 77 61 70 0a ~ "" 0a ~ " ~ This rule won't fire again on the same pair of" ~ " entries because now" 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 69 73 20 72 75 6c 65 20 77 6f 6e 27 74 20 66 69 72 65 20 61 67 61 69 6e 20 6f 6e 20 74 68 65 20 73 61 6d 65 20 70 61 69 72 20 6f 66 20 65 6e 74 72 69 65 73 20 62 65 63 61 75 73 65 20 6e 6f 77 0a ~ " ~ they're in the correct order. It may fire again" ~ " next iteration," 20 20 20 20 20 20 20 20 7e 20 74 68 65 79 27 72 65 20 69 6e 20 74 68 65 20 63 6f 72 72 65 63 74 20 6f 72 64 65 72 2e 20 49 74 20 6d 61 79 20 66 69 72 65 20 61 67 61 69 6e 20 6e 65 78 74 20 69 74 65 72 61 74 69 6f 6e 2c 0a ~ " ~ but only until everything is sorted." 20 20 20 20 20 20 20 20 7e 20 62 75 74 20 6f 6e 6c 79 20 75 6e 74 69 6c 20 65 76 65 72 79 74 68 69 6e 67 20 69 73 20 73 6f 72 74 65 64 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 7e 0a ~ " ~ This rule does nothing to alter whether the" ~ " suffix-comment rule" 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 69 73 20 72 75 6c 65 20 64 6f 65 73 20 6e 6f 74 68 69 6e 67 20 74 6f 20 61 6c 74 65 72 20 77 68 65 74 68 65 72 20 74 68 65 20 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 72 75 6c 65 0a ~ " ~ will fire on either of the entries it swapped, so" ~ " there's no" 20 20 20 20 20 20 20 20 7e 20 77 69 6c 6c 20 66 69 72 65 20 6f 6e 20 65 69 74 68 65 72 20 6f 66 20 74 68 65 20 65 6e 74 72 69 65 73 20 69 74 20 73 77 61 70 70 65 64 2c 20 73 6f 20 74 68 65 72 65 27 73 20 6e 6f 0a ~ " ~ possibility of an infinite loop through that" ~ " one." 20 20 20 20 20 20 20 20 7e 20 70 6f 73 73 69 62 69 6c 69 74 79 20 6f 66 20 61 6e 20 69 6e 66 69 6e 69 74 65 20 6c 6f 6f 70 20 74 68 72 6f 75 67 68 20 74 68 61 74 20 6f 6e 65 2e 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ " ~ (did anything, entry pointer)" 20 20 20 20 20 20 7e 20 28 64 69 64 20 61 6e 79 74 68 69 6e 67 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Do this entry and the next entry both exist, and" ~ " they have the same" 20 20 20 20 20 20 7e 20 20 20 44 6f 20 74 68 69 73 20 65 6e 74 72 79 20 61 6e 64 20 74 68 65 20 6e 65 78 74 20 65 6e 74 72 79 20 62 6f 74 68 20 65 78 69 73 74 2c 20 61 6e 64 20 74 68 65 79 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 0a ~ " ~ data start, and this one is a comment entry, and" ~ " the next one is a" 20 20 20 20 20 20 7e 20 64 61 74 61 20 73 74 61 72 74 2c 20 61 6e 64 20 74 68 69 73 20 6f 6e 65 20 69 73 20 61 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 2c 20 61 6e 64 20 74 68 65 20 6e 65 78 74 20 6f 6e 65 20 69 73 20 61 0a ~ " ~ stack-manipulation entry with zero length?" 20 20 20 20 20 20 7e 20 73 74 61 63 6b 2d 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 65 6e 74 72 79 20 77 69 74 68 20 7a 65 72 6f 20 6c 65 6e 67 74 68 3f 0a ~ " dup is-comment-entry over" ~ " hex-output-metadata-next-entry @ &&" 20 20 20 20 20 20 64 75 70 20 69 73 2d 63 6f 6d 6d 65 6e 74 2d 65 6e 74 72 79 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 20 40 20 26 26 0a ~ " { ~ (did anything, entry pointer)" 20 20 20 20 20 20 20 20 7b 20 7e 20 28 64 69 64 20 61 6e 79 74 68 69 6e 67 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ " dup hex-output-metadata-next-entry" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 0a ~ " over hex-output-metadata-entry-data-start @" 20 20 20 20 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 0a ~ " over hex-output-metadata-entry-data-start @ =" 20 20 20 20 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 20 3d 0a ~ " swap dup hex-output-metadata-entry-data-length @" ~ " 0 = 3roll && swap" 20 20 20 20 20 20 20 20 20 20 73 77 61 70 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 40 20 30 20 3d 20 33 72 6f 6c 6c 20 26 26 20 73 77 61 70 0a ~ " is-subitem-stack-manipulation-entry && }" 20 20 20 20 20 20 20 20 20 20 69 73 2d 73 75 62 69 74 65 6d 2d 73 74 61 63 6b 2d 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 2d 65 6e 74 72 79 20 26 26 20 7d 0a ~ " { 0 } if-else" 20 20 20 20 20 20 20 20 7b 20 30 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " {" 20 20 20 20 20 20 7b 0a ~ " ~ Swap the order of the two entries. Since this" ~ " whole thing is in a" 20 20 20 20 20 20 20 20 7e 20 20 20 53 77 61 70 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 74 68 65 20 74 77 6f 20 65 6e 74 72 69 65 73 2e 20 53 69 6e 63 65 20 74 68 69 73 20 77 68 6f 6c 65 20 74 68 69 6e 67 20 69 73 20 69 6e 20 61 0a ~ " ~ loop, this functions as a bubble sort." 20 20 20 20 20 20 20 20 7e 20 6c 6f 6f 70 2c 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 73 20 61 73 20 61 20 62 75 62 62 6c 65 20 73 6f 72 74 2e 0a ~ " dup swap-metadata-entries" 20 20 20 20 20 20 20 20 64 75 70 20 73 77 61 70 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 69 65 73 0a ~ " swap drop 1 swap" 20 20 20 20 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 31 20 73 77 61 70 0a ~ "" 0a ~ " ~ This rule can't fire in the same iteration as" ~ " the previous swap," 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 69 73 20 72 75 6c 65 20 63 61 6e 27 74 20 66 69 72 65 20 69 6e 20 74 68 65 20 73 61 6d 65 20 69 74 65 72 61 74 69 6f 6e 20 61 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 73 77 61 70 2c 0a ~ " ~ because that one doesn't fire when the starts are" ~ " equal. It also" 20 20 20 20 20 20 20 20 7e 20 62 65 63 61 75 73 65 20 74 68 61 74 20 6f 6e 65 20 64 6f 65 73 6e 27 74 20 66 69 72 65 20 77 68 65 6e 20 74 68 65 20 73 74 61 72 74 73 20 61 72 65 20 65 71 75 61 6c 2e 20 49 74 20 61 6c 73 6f 0a ~ " ~ won't fire again on the same pair of entries," ~ " again because now" 20 20 20 20 20 20 20 20 7e 20 77 6f 6e 27 74 20 66 69 72 65 20 61 67 61 69 6e 20 6f 6e 20 74 68 65 20 73 61 6d 65 20 70 61 69 72 20 6f 66 20 65 6e 74 72 69 65 73 2c 20 61 67 61 69 6e 20 62 65 63 61 75 73 65 20 6e 6f 77 0a ~ " ~ they're in the correct order. If it fires again" ~ " in the next" 20 20 20 20 20 20 20 20 7e 20 74 68 65 79 27 72 65 20 69 6e 20 74 68 65 20 63 6f 72 72 65 63 74 20 6f 72 64 65 72 2e 20 49 66 20 69 74 20 66 69 72 65 73 20 61 67 61 69 6e 20 69 6e 20 74 68 65 20 6e 65 78 74 0a ~ " ~ iteration that'll only be in the usual way it" ~ " does for a bubble" 20 20 20 20 20 20 20 20 7e 20 69 74 65 72 61 74 69 6f 6e 20 74 68 61 74 27 6c 6c 20 6f 6e 6c 79 20 62 65 20 69 6e 20 74 68 65 20 75 73 75 61 6c 20 77 61 79 20 69 74 20 64 6f 65 73 20 66 6f 72 20 61 20 62 75 62 62 6c 65 0a ~ " ~ sort." 20 20 20 20 20 20 20 20 7e 20 73 6f 72 74 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 7e 0a ~ " ~ As with the other swap rule, this rule also" ~ " does nothing to alter" 20 20 20 20 20 20 20 20 7e 20 20 20 41 73 20 77 69 74 68 20 74 68 65 20 6f 74 68 65 72 20 73 77 61 70 20 72 75 6c 65 2c 20 74 68 69 73 20 72 75 6c 65 20 61 6c 73 6f 20 64 6f 65 73 20 6e 6f 74 68 69 6e 67 20 74 6f 20 61 6c 74 65 72 0a ~ " ~ whether the suffix-comment rule will fire on" ~ " either entry it" 20 20 20 20 20 20 20 20 7e 20 77 68 65 74 68 65 72 20 74 68 65 20 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 72 75 6c 65 20 77 69 6c 6c 20 66 69 72 65 20 6f 6e 20 65 69 74 68 65 72 20 65 6e 74 72 79 20 69 74 0a ~ " ~ touches, so it won't loop through that one." 20 20 20 20 20 20 20 20 7e 20 74 6f 75 63 68 65 73 2c 20 73 6f 20 69 74 20 77 6f 6e 27 74 20 6c 6f 6f 70 20 74 68 72 6f 75 67 68 20 74 68 61 74 20 6f 6e 65 2e 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ " ~ (did anything, entry pointer)" 20 20 20 20 20 20 7e 20 28 64 69 64 20 61 6e 79 74 68 69 6e 67 2c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " hex-output-metadata-next-entry" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 0a ~ " } while drop" 20 20 20 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 0a ~ " } while ;" 20 20 7d 20 77 68 69 6c 65 20 3b 0a ~ "" 0a ~ ": hex-comment-first-tab-stop 36 ;" 3a 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 66 69 72 73 74 2d 74 61 62 2d 73 74 6f 70 20 33 36 20 3b 0a ~ ": hex-comment-second-tab-stop 58 ;" 3a 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 73 65 63 6f 6e 64 2d 74 61 62 2d 73 74 6f 70 20 35 38 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (subitem entry -- subitem entry)" 7e 20 28 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 2d 2d 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 29 0a ~ ": hex-emit-template-subitem" 3a 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 75 62 69 74 65 6d 0a ~ " dup hex-output-metadata-entry-type @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-push-subitem-decimal = {" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 64 65 63 69 6d 61 6c 20 3d 20 7b 0a ~ " dup hex-output-metadata-entry-content @" 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 0a ~ " dup 10 swap logfloor 1+ advance-current-column" 20 20 20 20 64 75 70 20 31 30 20 73 77 61 70 20 6c 6f 67 66 6c 6f 6f 72 20 31 2b 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " ." 20 20 20 20 2e 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-push-subitem-hex = {" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 20 3d 20 7b 0a ~ " ." 0x"" 20 20 20 20 2e 22 20 30 78 22 0a ~ " dup hex-output-metadata-entry-content @" 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 0a ~ " dup 16 swap logfloor 1+ 2 + advance-current-column" 20 20 20 20 64 75 70 20 31 36 20 73 77 61 70 20 6c 6f 67 66 6c 6f 6f 72 20 31 2b 20 32 20 2b 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " .hex" 20 20 20 20 2e 68 65 78 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-push-subitem-hex8 = {" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 38 20 3d 20 7b 0a ~ " ." 0x"" 20 20 20 20 2e 22 20 30 78 22 0a ~ " dup hex-output-metadata-entry-content @ .hex8" 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 2e 68 65 78 38 0a ~ " 4 advance-current-column" 20 20 20 20 34 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-push-subitem-hex16 = {" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 31 36 20 3d 20 7b 0a ~ " ." 0x"" 20 20 20 20 2e 22 20 30 78 22 0a ~ " dup hex-output-metadata-entry-content @ .hex16" 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 2e 68 65 78 31 36 0a ~ " 6 advance-current-column" 20 20 20 20 36 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-push-subitem-hex32 = {" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 33 32 20 3d 20 7b 0a ~ " ." 0x"" 20 20 20 20 2e 22 20 30 78 22 0a ~ " dup hex-output-metadata-entry-content @ .hex32" 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 2e 68 65 78 33 32 0a ~ " 10 advance-current-column" 20 20 20 20 31 30 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-push-subitem-hex64 = {" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 36 34 20 3d 20 7b 0a ~ " ." 0x"" 20 20 20 20 2e 22 20 30 78 22 0a ~ " dup hex-output-metadata-entry-content @ .hex64" 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 2e 68 65 78 36 34 0a ~ " 18 advance-current-column" 20 20 20 20 31 38 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-push-subitem-string = {" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 3d 20 7b 0a ~ " dup hex-output-metadata-entry-content @" 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 0a ~ " over hex-output-metadata-entry-data-length @" 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 6c 65 6e 67 74 68 20 40 0a ~ " ~ (subitem entry, string point, n bytes remaining)" 20 20 20 20 7e 20 28 73 75 62 69 74 65 6d 20 65 6e 74 72 79 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 6e 20 62 79 74 65 73 20 72 65 6d 61 69 6e 69 6e 67 29 0a ~ " { dup } {" 20 20 20 20 7b 20 64 75 70 20 7d 20 7b 0a ~ " swap unpack8" 20 20 20 20 20 20 73 77 61 70 20 75 6e 70 61 63 6b 38 0a ~ " value@ emitstring" 20 20 20 20 20 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 0a ~ " drop swap" 20 20 20 20 20 20 64 72 6f 70 20 73 77 61 70 0a ~ " 1-" 20 20 20 20 20 20 31 2d 0a ~ " 1 advance-current-column" 20 20 20 20 20 20 31 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } while" 20 20 20 20 7d 20 77 68 69 6c 65 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " } if ;" 20 20 7d 20 69 66 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This is a helper called from hex-emit-template-string." ~ " The word pointer" 7e 20 20 20 54 68 69 73 20 69 73 20 61 20 68 65 6c 70 65 72 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 74 72 69 6e 67 2e 20 54 68 65 20 77 6f 72 64 20 70 6f 69 6e 74 65 72 0a ~ "~ is in the outer log's scratch space, and must not be" ~ " overwritten." 7e 20 69 73 20 69 6e 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 27 73 20 73 63 72 61 74 63 68 20 73 70 61 63 65 2c 20 61 6e 64 20 6d 75 73 74 20 6e 6f 74 20 62 65 20 6f 76 65 72 77 72 69 74 74 65 6e 2e 0a ~ "~" 7e 0a ~ "~ (queued space count, word pointer -- should ignore" ~ " space)" 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 77 6f 72 64 20 70 6f 69 6e 74 65 72 20 2d 2d 20 73 68 6f 75 6c 64 20 69 67 6e 6f 72 65 20 73 70 61 63 65 29 0a ~ ": hex-emit-template-string-word" 3a 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 74 72 69 6e 67 2d 77 6f 72 64 0a ~ " dup s" #" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 23 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ (queued space count, word pointer)" 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ "" 0a ~ " pop-subitem-entry-stack" 20 20 20 20 70 6f 70 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 0a ~ " ~ (queued space count, subitem entry)" 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 29 0a ~ "" 0a ~ " ~ If we underflowed the stack, we got zero back, so" ~ " make sure not to" 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 75 6e 64 65 72 66 6c 6f 77 65 64 20 74 68 65 20 73 74 61 63 6b 2c 20 77 65 20 67 6f 74 20 7a 65 72 6f 20 62 61 63 6b 2c 20 73 6f 20 6d 61 6b 65 20 73 75 72 65 20 6e 6f 74 20 74 6f 0a ~ " ~ crash. A crash here would be a pain to debug because" ~ " it would be" 20 20 20 20 7e 20 63 72 61 73 68 2e 20 41 20 63 72 61 73 68 20 68 65 72 65 20 77 6f 75 6c 64 20 62 65 20 61 20 70 61 69 6e 20 74 6f 20 64 65 62 75 67 20 62 65 63 61 75 73 65 20 69 74 20 77 6f 75 6c 64 20 62 65 0a ~ " ~ unclear how much of the overall system is working," ~ " and it's a" 20 20 20 20 7e 20 75 6e 63 6c 65 61 72 20 68 6f 77 20 6d 75 63 68 20 6f 66 20 74 68 65 20 6f 76 65 72 61 6c 6c 20 73 79 73 74 65 6d 20 69 73 20 77 6f 72 6b 69 6e 67 2c 20 61 6e 64 20 69 74 27 73 20 61 0a ~ " ~ complex system." 20 20 20 20 7e 20 63 6f 6d 70 6c 65 78 20 73 79 73 74 65 6d 2e 0a ~ " dup {" 20 20 20 20 64 75 70 20 7b 0a ~ " ~ (queued space count, subitem entry)" 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 29 0a ~ " swap dup indent advance-current-column 0 swap" 20 20 20 20 20 20 73 77 61 70 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 20 30 20 73 77 61 70 0a ~ " ~ (adjusted queued space count, subitem entry)" 20 20 20 20 20 20 7e 20 28 61 64 6a 75 73 74 65 64 20 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 29 0a ~ "" 0a ~ " hex-emit-template-subitem" 20 20 20 20 20 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 75 62 69 74 65 6d 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " drop drop 0 exit" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 30 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Same as # but with quotes around it. The notation" ~ " uses single quotes" 20 20 7e 20 20 20 53 61 6d 65 20 61 73 20 23 20 62 75 74 20 77 69 74 68 20 71 75 6f 74 65 73 20 61 72 6f 75 6e 64 20 69 74 2e 20 54 68 65 20 6e 6f 74 61 74 69 6f 6e 20 75 73 65 73 20 73 69 6e 67 6c 65 20 71 75 6f 74 65 73 0a ~ " ~ because that's easier to put in a string for syntax" ~ " reasons, but the" 20 20 7e 20 62 65 63 61 75 73 65 20 74 68 61 74 27 73 20 65 61 73 69 65 72 20 74 6f 20 70 75 74 20 69 6e 20 61 20 73 74 72 69 6e 67 20 66 6f 72 20 73 79 6e 74 61 78 20 72 65 61 73 6f 6e 73 2c 20 62 75 74 20 74 68 65 0a ~ " ~ output uses double." 20 20 7e 20 6f 75 74 70 75 74 20 75 73 65 73 20 64 6f 75 62 6c 65 2e 0a ~ " dup s" '#'" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 27 23 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ "" 0a ~ " pop-subitem-entry-stack" 20 20 20 20 70 6f 70 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 0a ~ "" 0a ~ " dup {" 20 20 20 20 64 75 70 20 7b 0a ~ " swap dup indent advance-current-column 0 swap" 20 20 20 20 20 20 73 77 61 70 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 20 30 20 73 77 61 70 0a ~ "" 0a ~ " 0x22 value@ emitstring drop" 20 20 20 20 20 20 30 78 32 32 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 20 64 72 6f 70 0a ~ " 1 advance-current-column" 20 20 20 20 20 20 31 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ "" 0a ~ " hex-emit-template-subitem" 20 20 20 20 20 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 75 62 69 74 65 6d 0a ~ "" 0a ~ " 0x22 value@ emitstring drop" 20 20 20 20 20 20 30 78 32 32 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 20 64 72 6f 70 0a ~ " 1 advance-current-column" 20 20 20 20 20 20 31 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " drop drop 0 exit" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 30 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" #--" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 23 2d 2d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ (queued space count, word pointer)" 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " hex-comment-second-tab-stop current-column@" 20 20 20 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 73 65 63 6f 6e 64 2d 74 61 62 2d 73 74 6f 70 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 40 0a ~ " 2dup > {" 20 20 20 20 32 64 75 70 20 3e 20 7b 0a ~ " drop drop swap drop 0 swap" 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 30 20 73 77 61 70 0a ~ " newline" 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 0a ~ " hex-comment-first-tab-stop indent ." ~"" 20 20 20 20 20 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 66 69 72 73 74 2d 74 61 62 2d 73 74 6f 70 20 69 6e 64 65 6e 74 20 2e 22 20 7e 22 0a ~ " hex-comment-second-tab-stop" ~ " hex-comment-first-tab-stop 1+ - indent" 20 20 20 20 20 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 73 65 63 6f 6e 64 2d 74 61 62 2d 73 74 6f 70 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 66 69 72 73 74 2d 74 61 62 2d 73 74 6f 70 20 31 2b 20 2d 20 69 6e 64 65 6e 74 0a ~ " hex-comment-second-tab-stop current-column!" 20 20 20 20 20 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 73 65 63 6f 6e 64 2d 74 61 62 2d 73 74 6f 70 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " - dup indent advance-current-column" 20 20 20 20 20 20 2d 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " swap drop 0 swap" 20 20 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 30 20 73 77 61 70 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " drop drop 1 exit" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 31 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ (queued space count, word pointer)" 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " swap dup indent advance-current-column" 20 20 73 77 61 70 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " dup stringlen advance-current-column" 20 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " emitstring 0 ;" 20 20 65 6d 69 74 73 74 72 69 6e 67 20 30 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (string pointer --)" 7e 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": hex-emit-template-string" 3a 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 74 72 69 6e 67 0a ~ " 0 swap" 20 20 30 20 73 77 61 70 0a ~ " ~ (queued space count, input point)" 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " { unpack8 dup } {" 20 20 7b 20 75 6e 70 61 63 6b 38 20 64 75 70 20 7d 20 7b 0a ~ " ~ (queued space count, input point, latest character)" 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 2c 20 6c 61 74 65 73 74 20 63 68 61 72 61 63 74 65 72 29 0a ~ " dup is-space {" 20 20 20 20 64 75 70 20 69 73 2d 73 70 61 63 65 20 7b 0a ~ " ~ Instead of outputting space characters as we" ~ " reach them, we keep a" 20 20 20 20 20 20 7e 20 20 20 49 6e 73 74 65 61 64 20 6f 66 20 6f 75 74 70 75 74 74 69 6e 67 20 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 73 20 61 73 20 77 65 20 72 65 61 63 68 20 74 68 65 6d 2c 20 77 65 20 6b 65 65 70 20 61 0a ~ " ~ count of how many are pending. This allows us to do" ~ " word-wrapping" 20 20 20 20 20 20 7e 20 63 6f 75 6e 74 20 6f 66 20 68 6f 77 20 6d 61 6e 79 20 61 72 65 20 70 65 6e 64 69 6e 67 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 75 73 20 74 6f 20 64 6f 20 77 6f 72 64 2d 77 72 61 70 70 69 6e 67 0a ~ " ~ without having to worry about trailing spaces." 20 20 20 20 20 20 7e 20 77 69 74 68 6f 75 74 20 68 61 76 69 6e 67 20 74 6f 20 77 6f 72 72 79 20 61 62 6f 75 74 20 74 72 61 69 6c 69 6e 67 20 73 70 61 63 65 73 2e 0a ~ " 3roll 1+ 3unroll drop" 20 20 20 20 20 20 33 72 6f 6c 6c 20 31 2b 20 33 75 6e 72 6f 6c 6c 20 64 72 6f 70 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ (queued space count, input point, first word" ~ " character)" 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 2c 20 66 69 72 73 74 20 77 6f 72 64 20 63 68 61 72 61 63 74 65 72 29 0a ~ " ~ We use the outer log's scratch space to" ~ " accumulate each word in." 20 20 20 20 20 20 7e 20 20 20 57 65 20 75 73 65 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 27 73 20 73 63 72 61 74 63 68 20 73 70 61 63 65 20 74 6f 20 61 63 63 75 6d 75 6c 61 74 65 20 65 61 63 68 20 77 6f 72 64 20 69 6e 2e 0a ~ " swap-transform-variables here @" ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " swap" 20 20 20 20 20 20 73 77 61 70 0a ~ " pack8" 20 20 20 20 20 20 70 61 63 6b 38 0a ~ " swap" 20 20 20 20 20 20 73 77 61 70 0a ~ " ~ (queued space count, scratch output point, input" ~ " point)" 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 73 63 72 61 74 63 68 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ Scan forward and find a space-separated word." 20 20 20 20 20 20 7e 20 20 20 53 63 61 6e 20 66 6f 72 77 61 72 64 20 61 6e 64 20 66 69 6e 64 20 61 20 73 70 61 63 65 2d 73 65 70 61 72 61 74 65 64 20 77 6f 72 64 2e 0a ~ " { unpack8 dup dup is-space not && } {" 20 20 20 20 20 20 7b 20 75 6e 70 61 63 6b 38 20 64 75 70 20 64 75 70 20 69 73 2d 73 70 61 63 65 20 6e 6f 74 20 26 26 20 7d 20 7b 0a ~ " ~ (queued space count, scratch output point," ~ " adjusted input point," 20 20 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 73 63 72 61 74 63 68 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 61 64 6a 75 73 74 65 64 20 69 6e 70 75 74 20 70 6f 69 6e 74 2c 0a ~ " ~ next character)" 20 20 20 20 20 20 20 20 7e 20 20 6e 65 78 74 20 63 68 61 72 61 63 74 65 72 29 0a ~ " 3roll swap pack8 swap" 20 20 20 20 20 20 20 20 33 72 6f 6c 6c 20 73 77 61 70 20 70 61 63 6b 38 20 73 77 61 70 0a ~ " ~ (queued space count, adjusted scratch output" ~ " point," 20 20 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 61 64 6a 75 73 74 65 64 20 73 63 72 61 74 63 68 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 0a ~ " ~ adjusted input point)" 20 20 20 20 20 20 20 20 7e 20 20 61 64 6a 75 73 74 65 64 20 69 6e 70 75 74 20 70 6f 69 6e 74 29 0a ~ " } while" 20 20 20 20 20 20 7d 20 77 68 69 6c 65 0a ~ " ~ (queued space count, scratch output point, input" ~ " point," 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 73 63 72 61 74 63 68 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 2c 0a ~ " ~ first non-word character or 0)" 20 20 20 20 20 20 7e 20 20 66 69 72 73 74 20 6e 6f 6e 2d 77 6f 72 64 20 63 68 61 72 61 63 74 65 72 20 6f 72 20 30 29 0a ~ " 3roll 0 pack8 drop" 20 20 20 20 20 20 33 72 6f 6c 6c 20 30 20 70 61 63 6b 38 20 64 72 6f 70 0a ~ " ~ (queued space count, input point, first non-word" ~ " character or 0)" 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 2c 20 66 69 72 73 74 20 6e 6f 6e 2d 77 6f 72 64 20 63 68 61 72 61 63 74 65 72 20 6f 72 20 30 29 0a ~ "" 0a ~ " swap-transform-variables here @" ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " ~ (queued space count, input point, first non-word" ~ " character or 0," 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 2c 20 66 69 72 73 74 20 6e 6f 6e 2d 77 6f 72 64 20 63 68 61 72 61 63 74 65 72 20 6f 72 20 30 2c 0a ~ " ~ word pointer)" 20 20 20 20 20 20 7e 20 20 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " 4 roll swap 1 max hex-emit-template-string-word 0 4" ~ " unroll" 20 20 20 20 20 20 34 20 72 6f 6c 6c 20 73 77 61 70 20 31 20 6d 61 78 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 74 72 69 6e 67 2d 77 6f 72 64 20 30 20 34 20 75 6e 72 6f 6c 6c 0a ~ " ~ (queued space count, input point, first non-word" ~ " character," 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 2c 20 66 69 72 73 74 20 6e 6f 6e 2d 77 6f 72 64 20 63 68 61 72 61 63 74 65 72 2c 0a ~ " ~ should ignore space)" 20 20 20 20 20 20 7e 20 20 73 68 6f 75 6c 64 20 69 67 6e 6f 72 65 20 73 70 61 63 65 29 0a ~ "" 0a ~ " over {" 20 20 20 20 20 20 6f 76 65 72 20 7b 0a ~ " ~ If the character is non-zero, it's a space, so" ~ " it can't be part of" 20 20 20 20 20 20 20 20 7e 20 20 20 49 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 69 73 20 6e 6f 6e 2d 7a 65 72 6f 2c 20 69 74 27 73 20 61 20 73 70 61 63 65 2c 20 73 6f 20 69 74 20 63 61 6e 27 74 20 62 65 20 70 61 72 74 20 6f 66 0a ~ " ~ a word, so we can queue it for later output..." ~ " unless we were asked" 20 20 20 20 20 20 20 20 7e 20 61 20 77 6f 72 64 2c 20 73 6f 20 77 65 20 63 61 6e 20 71 75 65 75 65 20 69 74 20 66 6f 72 20 6c 61 74 65 72 20 6f 75 74 70 75 74 2e 2e 2e 20 75 6e 6c 65 73 73 20 77 65 20 77 65 72 65 20 61 73 6b 65 64 0a ~ " ~ to skip it, of course." 20 20 20 20 20 20 20 20 7e 20 74 6f 20 73 6b 69 70 20 69 74 2c 20 6f 66 20 63 6f 75 72 73 65 2e 0a ~ " not {" 20 20 20 20 20 20 20 20 6e 6f 74 20 7b 0a ~ " ~ (queued space count, input point, first" ~ " non-word character)" 20 20 20 20 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 2c 20 66 69 72 73 74 20 6e 6f 6e 2d 77 6f 72 64 20 63 68 61 72 61 63 74 65 72 29 0a ~ " 3roll 1+ 3unroll" 20 20 20 20 20 20 20 20 20 20 33 72 6f 6c 6c 20 31 2b 20 33 75 6e 72 6f 6c 6c 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ " drop" 20 20 20 20 20 20 20 20 64 72 6f 70 0a ~ " } {" 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ If this is the end of the string, we can" ~ " discard the 0, but then" 20 20 20 20 20 20 20 20 7e 20 20 20 49 66 20 74 68 69 73 20 69 73 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 73 74 72 69 6e 67 2c 20 77 65 20 63 61 6e 20 64 69 73 63 61 72 64 20 74 68 65 20 30 2c 20 62 75 74 20 74 68 65 6e 0a ~ " ~ we need to nudge the input point back so the loop" ~ " will terminate." 20 20 20 20 20 20 20 20 7e 20 77 65 20 6e 65 65 64 20 74 6f 20 6e 75 64 67 65 20 74 68 65 20 69 6e 70 75 74 20 70 6f 69 6e 74 20 62 61 63 6b 20 73 6f 20 74 68 65 20 6c 6f 6f 70 20 77 69 6c 6c 20 74 65 72 6d 69 6e 61 74 65 2e 0a ~ " drop drop 1-" 20 20 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 31 2d 0a ~ " } if-else" 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ~ (queued space count, input point)" 20 20 20 20 20 20 7e 20 28 71 75 65 75 65 64 20 73 70 61 63 65 20 63 6f 75 6e 74 2c 20 69 6e 70 75 74 20 70 6f 69 6e 74 29 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } while drop drop drop ;" 20 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 20 64 72 6f 70 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (string pointer --)" 7e 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": hex-emit-comment" 3a 20 68 65 78 2d 65 6d 69 74 2d 63 6f 6d 6d 65 6e 74 0a ~ " hex-comment-second-tab-stop current-column@ > {" 20 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 73 65 63 6f 6e 64 2d 74 61 62 2d 73 74 6f 70 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 40 20 3e 20 7b 0a ~ " newline" 20 20 20 20 6e 65 77 6c 69 6e 65 0a ~ " hex-comment-first-tab-stop dup indent current-column!" 20 20 20 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 66 69 72 73 74 2d 74 61 62 2d 73 74 6f 70 20 64 75 70 20 69 6e 64 65 6e 74 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " 1 is-fresh-line!" 20 20 20 20 31 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " 0 n-bytes-this-line!" 20 20 20 20 30 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ." ~"" 20 20 2e 22 20 7e 22 0a ~ " 1 advance-current-column" 20 20 31 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ "" 0a ~ " dup @ {" 20 20 64 75 70 20 40 20 7b 0a ~ " space" 20 20 20 20 73 70 61 63 65 0a ~ " 1 advance-current-column" 20 20 20 20 31 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " hex-emit-template-string ;" 20 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 74 72 69 6e 67 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This "replacement" is a little different from an" ~ " alternate: When the code" 7e 20 20 20 54 68 69 73 20 22 72 65 70 6c 61 63 65 6d 65 6e 74 22 20 69 73 20 61 20 6c 69 74 74 6c 65 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 3a 20 57 68 65 6e 20 74 68 65 20 63 6f 64 65 0a ~ "~ under transformation attempts to compile its own version" ~ " of sys-write, it" 7e 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 61 74 74 65 6d 70 74 73 20 74 6f 20 63 6f 6d 70 69 6c 65 20 69 74 73 20 6f 77 6e 20 76 65 72 73 69 6f 6e 20 6f 66 20 73 79 73 2d 77 72 69 74 65 2c 20 69 74 0a ~ "~ gets a stub that calls this word instead. It's swapped" ~ " out by" 7e 20 67 65 74 73 20 61 20 73 74 75 62 20 74 68 61 74 20 63 61 6c 6c 73 20 74 68 69 73 20 77 6f 72 64 20 69 6e 73 74 65 61 64 2e 20 49 74 27 73 20 73 77 61 70 70 65 64 20 6f 75 74 20 62 79 0a ~ "~ hex-colon-alternate, whereas the regular alternates are" ~ " swapped out by" 7e 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 2c 20 77 68 65 72 65 61 73 20 74 68 65 20 72 65 67 75 6c 61 72 20 61 6c 74 65 72 6e 61 74 65 73 20 61 72 65 20 73 77 61 70 70 65 64 20 6f 75 74 20 62 79 0a ~ "~ hex-transform-one." 7e 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2e 0a ~ "~" 7e 0a ~ "~ In the programs we're actually running the transform" ~ " on, there's only ever" 7e 20 20 20 49 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 73 20 77 65 27 72 65 20 61 63 74 75 61 6c 6c 79 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 6f 6e 2c 20 74 68 65 72 65 27 73 20 6f 6e 6c 79 20 65 76 65 72 0a ~ "~ a single call to sys-write which is the whole binary in" ~ " one go, but we don't" 7e 20 61 20 73 69 6e 67 6c 65 20 63 61 6c 6c 20 74 6f 20 73 79 73 2d 77 72 69 74 65 20 77 68 69 63 68 20 69 73 20 74 68 65 20 77 68 6f 6c 65 20 62 69 6e 61 72 79 20 69 6e 20 6f 6e 65 20 67 6f 2c 20 62 75 74 20 77 65 20 64 6f 6e 27 74 0a ~ "~ want to require that, so we keep all the formatting state" ~ " in the output" 7e 20 77 61 6e 74 20 74 6f 20 72 65 71 75 69 72 65 20 74 68 61 74 2c 20 73 6f 20 77 65 20 6b 65 65 70 20 61 6c 6c 20 74 68 65 20 66 6f 72 6d 61 74 74 69 6e 67 20 73 74 61 74 65 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 0a ~ "~ metadata header." 7e 20 6d 65 74 61 64 61 74 61 20 68 65 61 64 65 72 2e 0a ~ "~" 7e 0a ~ "~ (file descriptor, base address, length to write -- length" ~ " written)" 7e 20 28 66 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 2c 20 62 61 73 65 20 61 64 64 72 65 73 73 2c 20 6c 65 6e 67 74 68 20 74 6f 20 77 72 69 74 65 20 2d 2d 20 6c 65 6e 67 74 68 20 77 72 69 74 74 65 6e 29 0a ~ ": hex-sys-write-replacement" 3a 20 68 65 78 2d 73 79 73 2d 77 72 69 74 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " ~ In intended operation, the code under transformation" ~ " is a compilation" 20 20 7e 20 20 20 49 6e 20 69 6e 74 65 6e 64 65 64 20 6f 70 65 72 61 74 69 6f 6e 2c 20 74 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 61 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 0a ~ " ~ process, and it won't output anything that isn't" ~ " executable binary." 20 20 7e 20 70 72 6f 63 65 73 73 2c 20 61 6e 64 20 69 74 20 77 6f 6e 27 74 20 6f 75 74 70 75 74 20 61 6e 79 74 68 69 6e 67 20 74 68 61 74 20 69 73 6e 27 74 20 65 78 65 63 75 74 61 62 6c 65 20 62 69 6e 61 72 79 2e 0a ~ " ~ However, while developing, it's common to have crashes," ~ " and it's nice to" 20 20 7e 20 48 6f 77 65 76 65 72 2c 20 77 68 69 6c 65 20 64 65 76 65 6c 6f 70 69 6e 67 2c 20 69 74 27 73 20 63 6f 6d 6d 6f 6e 20 74 6f 20 68 61 76 65 20 63 72 61 73 68 65 73 2c 20 61 6e 64 20 69 74 27 73 20 6e 69 63 65 20 74 6f 0a ~ " ~ get the crash dump as ASCII rather than hex." 20 20 7e 20 67 65 74 20 74 68 65 20 63 72 61 73 68 20 64 75 6d 70 20 61 73 20 41 53 43 49 49 20 72 61 74 68 65 72 20 74 68 61 6e 20 68 65 78 2e 0a ~ " over is-in-label-loop-buffer not {" 20 20 6f 76 65 72 20 69 73 2d 69 6e 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 20 6e 6f 74 20 7b 0a ~ " sys-write exit" 20 20 20 20 73 79 73 2d 77 72 69 74 65 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " 3roll drop dup 3roll" 20 20 33 72 6f 6c 6c 20 64 72 6f 70 20 64 75 70 20 33 72 6f 6c 6c 0a ~ " ~ The result should be the length written. We just" ~ " proactively declare" 20 20 7e 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 73 68 6f 75 6c 64 20 62 65 20 74 68 65 20 6c 65 6e 67 74 68 20 77 72 69 74 74 65 6e 2e 20 57 65 20 6a 75 73 74 20 70 72 6f 61 63 74 69 76 65 6c 79 20 64 65 63 6c 61 72 65 0a ~ " ~ that we'll write the full length we were asked to," ~ " threading that through" 20 20 7e 20 74 68 61 74 20 77 65 27 6c 6c 20 77 72 69 74 65 20 74 68 65 20 66 75 6c 6c 20 6c 65 6e 67 74 68 20 77 65 20 77 65 72 65 20 61 73 6b 65 64 20 74 6f 2c 20 74 68 72 65 61 64 69 6e 67 20 74 68 61 74 20 74 68 72 6f 75 67 68 0a ~ " ~ as the result we'll eventually return." 20 20 7e 20 61 73 20 74 68 65 20 72 65 73 75 6c 74 20 77 65 27 6c 6c 20 65 76 65 6e 74 75 61 6c 6c 79 20 72 65 74 75 72 6e 2e 0a ~ " ~ (result, length to write, base address)" 20 20 7e 20 28 72 65 73 75 6c 74 2c 20 6c 65 6e 67 74 68 20 74 6f 20 77 72 69 74 65 2c 20 62 61 73 65 20 61 64 64 72 65 73 73 29 0a ~ "" 0a ~ " postprocess-metadata-entries" 20 20 70 6f 73 74 70 72 6f 63 65 73 73 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 69 65 73 0a ~ "" 0a ~ " ~ Importantly, postprocessing leaves the entries" ~ " sorted, which means we" 20 20 7e 20 20 20 49 6d 70 6f 72 74 61 6e 74 6c 79 2c 20 70 6f 73 74 70 72 6f 63 65 73 73 69 6e 67 20 6c 65 61 76 65 73 20 74 68 65 20 65 6e 74 72 69 65 73 20 73 6f 72 74 65 64 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 77 65 0a ~ " ~ can go back and forth in a linear scan through the" ~ " entry array while we" 20 20 7e 20 63 61 6e 20 67 6f 20 62 61 63 6b 20 61 6e 64 20 66 6f 72 74 68 20 69 6e 20 61 20 6c 69 6e 65 61 72 20 73 63 61 6e 20 74 68 72 6f 75 67 68 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 20 77 68 69 6c 65 20 77 65 0a ~ " ~ also do a linear scan of the output data. It's fiddly," ~ " but we can't afford" 20 20 7e 20 61 6c 73 6f 20 64 6f 20 61 20 6c 69 6e 65 61 72 20 73 63 61 6e 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 20 64 61 74 61 2e 20 49 74 27 73 20 66 69 64 64 6c 79 2c 20 62 75 74 20 77 65 20 63 61 6e 27 74 20 61 66 66 6f 72 64 0a ~ " ~ to be O(n^2) here, it adds up to quite a lot of" ~ " runtime." 20 20 7e 20 74 6f 20 62 65 20 4f 28 6e 5e 32 29 20 68 65 72 65 2c 20 69 74 20 61 64 64 73 20 75 70 20 74 6f 20 71 75 69 74 65 20 61 20 6c 6f 74 20 6f 66 20 72 75 6e 74 69 6d 65 2e 0a ~ "" 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " ~ (result, length to write, base address, initial" ~ " metadata scan pointer)" 20 20 7e 20 28 72 65 73 75 6c 74 2c 20 6c 65 6e 67 74 68 20 74 6f 20 77 72 69 74 65 2c 20 62 61 73 65 20 61 64 64 72 65 73 73 2c 20 69 6e 69 74 69 61 6c 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 29 0a ~ " { 2 pick 0 <= } {" 20 20 7b 20 32 20 70 69 63 6b 20 30 20 3c 3d 20 7d 20 7b 0a ~ " ~ (result, length remaining, current output address," 20 20 20 20 7e 20 28 72 65 73 75 6c 74 2c 20 6c 65 6e 67 74 68 20 72 65 6d 61 69 6e 69 6e 67 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 61 64 64 72 65 73 73 2c 0a ~ " ~ metadata scan pointer)" 20 20 20 20 7e 20 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Keep inspecting entries as long as the output" ~ " address is greater than" 20 20 20 20 7e 20 20 20 4b 65 65 70 20 69 6e 73 70 65 63 74 69 6e 67 20 65 6e 74 72 69 65 73 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 20 6f 75 74 70 75 74 20 61 64 64 72 65 73 73 20 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 0a ~ " ~ or equal to the entry address. If we're looking at" ~ " the entries that come" 20 20 20 20 7e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 65 6e 74 72 79 20 61 64 64 72 65 73 73 2e 20 49 66 20 77 65 27 72 65 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 65 20 65 6e 74 72 69 65 73 20 74 68 61 74 20 63 6f 6d 65 0a ~ " ~ before the output, this will scan through all of them" ~ " first, then" 20 20 20 20 7e 20 62 65 66 6f 72 65 20 74 68 65 20 6f 75 74 70 75 74 2c 20 74 68 69 73 20 77 69 6c 6c 20 73 63 61 6e 20 74 68 72 6f 75 67 68 20 61 6c 6c 20 6f 66 20 74 68 65 6d 20 66 69 72 73 74 2c 20 74 68 65 6e 0a ~ " ~ eventually catch up. Since the scan pointer is kept" ~ " across iterations," 20 20 20 20 7e 20 65 76 65 6e 74 75 61 6c 6c 79 20 63 61 74 63 68 20 75 70 2e 20 53 69 6e 63 65 20 74 68 65 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 20 69 73 20 6b 65 70 74 20 61 63 72 6f 73 73 20 69 74 65 72 61 74 69 6f 6e 73 2c 0a ~ " ~ it's important we not go beyond that point." 20 20 20 20 7e 20 69 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 77 65 20 6e 6f 74 20 67 6f 20 62 65 79 6f 6e 64 20 74 68 61 74 20 70 6f 69 6e 74 2e 0a ~ " { dup @ dup" 20 20 20 20 7b 20 64 75 70 20 40 20 64 75 70 0a ~ " ~ (result, length remaining, current output address," 20 20 20 20 20 20 7e 20 28 72 65 73 75 6c 74 2c 20 6c 65 6e 67 74 68 20 72 65 6d 61 69 6e 69 6e 67 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 61 64 64 72 65 73 73 2c 0a ~ " ~ metadata scan pointer, entry's first field," ~ " entry's first field)" 20 20 20 20 20 20 7e 20 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 27 73 20 66 69 72 73 74 20 66 69 65 6c 64 2c 20 65 6e 74 72 79 27 73 20 66 69 72 73 74 20 66 69 65 6c 64 29 0a ~ " {" 20 20 20 20 20 20 7b 0a ~ " ~ This is an nop, but for clarity's sake it's" ~ " best to not depend on" 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 6e 6f 70 2c 20 62 75 74 20 66 6f 72 20 63 6c 61 72 69 74 79 27 73 20 73 61 6b 65 20 69 74 27 73 20 62 65 73 74 20 74 6f 20 6e 6f 74 20 64 65 70 65 6e 64 20 6f 6e 0a ~ " ~ details of the structure layout that perhaps not" ~ " everyone has" 20 20 20 20 20 20 20 20 7e 20 64 65 74 61 69 6c 73 20 6f 66 20 74 68 65 20 73 74 72 75 63 74 75 72 65 20 6c 61 79 6f 75 74 20 74 68 61 74 20 70 65 72 68 61 70 73 20 6e 6f 74 20 65 76 65 72 79 6f 6e 65 20 68 61 73 0a ~ " ~ memorized..." 20 20 20 20 20 20 20 20 7e 20 6d 65 6d 6f 72 69 7a 65 64 2e 2e 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 7e 0a ~ " ~ To get into this block, we tested for the array" ~ " end indicator, but" 20 20 20 20 20 20 20 20 7e 20 20 20 54 6f 20 67 65 74 20 69 6e 74 6f 20 74 68 69 73 20 62 6c 6f 63 6b 2c 20 77 65 20 74 65 73 74 65 64 20 66 6f 72 20 74 68 65 20 61 72 72 61 79 20 65 6e 64 20 69 6e 64 69 63 61 74 6f 72 2c 20 62 75 74 0a ~ " ~ now that we know we have an entry here, we're" ~ " looking at its" 20 20 20 20 20 20 20 20 7e 20 6e 6f 77 20 74 68 61 74 20 77 65 20 6b 6e 6f 77 20 77 65 20 68 61 76 65 20 61 6e 20 65 6e 74 72 79 20 68 65 72 65 2c 20 77 65 27 72 65 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 69 74 73 0a ~ " ~ contents." 20 20 20 20 20 20 20 20 7e 20 63 6f 6e 74 65 6e 74 73 2e 0a ~ " hex-output-metadata-entry-data-start" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 0a ~ "" 0a ~ " dup 3 pick" 20 20 20 20 20 20 20 20 64 75 70 20 33 20 70 69 63 6b 0a ~ " ~ (result, length remaining, current output" ~ " address," 20 20 20 20 20 20 20 20 7e 20 28 72 65 73 75 6c 74 2c 20 6c 65 6e 67 74 68 20 72 65 6d 61 69 6e 69 6e 67 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 61 64 64 72 65 73 73 2c 0a ~ " ~ metadata scan pointer, entry's data start," ~ " entry's data start," 20 20 20 20 20 20 20 20 7e 20 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 27 73 20 64 61 74 61 20 73 74 61 72 74 2c 20 65 6e 74 72 79 27 73 20 64 61 74 61 20 73 74 61 72 74 2c 0a ~ " ~ current output address)" 20 20 20 20 20 20 20 20 7e 20 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 61 64 64 72 65 73 73 29 0a ~ " >= swap drop" 20 20 20 20 20 20 20 20 3e 3d 20 73 77 61 70 20 64 72 6f 70 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " dup @" 20 20 20 20 20 20 64 75 70 20 40 0a ~ " 2 pick = {" 20 20 20 20 20 20 32 20 70 69 63 6b 20 3d 20 7b 0a ~ " ~ We found a matching metadata entry." 20 20 20 20 20 20 20 20 7e 20 57 65 20 66 6f 75 6e 64 20 61 20 6d 61 74 63 68 69 6e 67 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 2e 0a ~ " ~ (result, length remaining, current output" ~ " address," 20 20 20 20 20 20 20 20 7e 20 28 72 65 73 75 6c 74 2c 20 6c 65 6e 67 74 68 20 72 65 6d 61 69 6e 69 6e 67 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 61 64 64 72 65 73 73 2c 0a ~ " ~ metadata scan pointer)" 20 20 20 20 20 20 20 20 7e 20 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-line-comment = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 20 3d 20 7b 0a ~ " fresh-line" 20 20 20 20 20 20 20 20 20 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ " indentation-depth@ dup indent" ~ " advance-current-column" 20 20 20 20 20 20 20 20 20 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 40 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ "" 0a ~ " dup hex-output-metadata-entry-content @" ~ " hex-emit-comment" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 68 65 78 2d 65 6d 69 74 2d 63 6f 6d 6d 65 6e 74 0a ~ " newline" 20 20 20 20 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 0a ~ "" 0a ~ " 1 is-fresh-line!" 20 20 20 20 20 20 20 20 20 20 31 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " 0 n-bytes-this-line!" 20 20 20 20 20 20 20 20 20 20 30 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " 0 current-column!" 20 20 20 20 20 20 20 20 20 20 30 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-suffix-comment = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 3d 20 7b 0a ~ " hex-comment-first-tab-stop current-column@ - 1" ~ " max" 20 20 20 20 20 20 20 20 20 20 68 65 78 2d 63 6f 6d 6d 65 6e 74 2d 66 69 72 73 74 2d 74 61 62 2d 73 74 6f 70 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 40 20 2d 20 31 20 6d 61 78 0a ~ " dup indent advance-current-column" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ "" 0a ~ " dup hex-output-metadata-entry-content @" ~ " hex-emit-comment" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 68 65 78 2d 65 6d 69 74 2d 63 6f 6d 6d 65 6e 74 0a ~ " newline" 20 20 20 20 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 0a ~ "" 0a ~ " 1 is-fresh-line!" 20 20 20 20 20 20 20 20 20 20 31 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " 0 n-bytes-this-line!" 20 20 20 20 20 20 20 20 20 20 30 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " 0 current-column!" 20 20 20 20 20 20 20 20 20 20 30 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-fresh-line = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 66 72 65 73 68 2d 6c 69 6e 65 20 3d 20 7b 0a ~ " fresh-line" 20 20 20 20 20 20 20 20 20 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ " 1 is-fresh-line!" 20 20 20 20 20 20 20 20 20 20 31 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " 0 n-bytes-this-line!" 20 20 20 20 20 20 20 20 20 20 30 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " 0 current-column!" 20 20 20 20 20 20 20 20 20 20 30 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-blank-line = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 3d 20 7b 0a ~ " fresh-line" 20 20 20 20 20 20 20 20 20 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ " newline" 20 20 20 20 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 0a ~ " 1 is-fresh-line!" 20 20 20 20 20 20 20 20 20 20 31 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " 0 n-bytes-this-line!" 20 20 20 20 20 20 20 20 20 20 30 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " 0 current-column!" 20 20 20 20 20 20 20 20 20 20 30 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-indent = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 69 6e 64 65 6e 74 20 3d 20 7b 0a ~ " dup hex-output-metadata-entry-content @" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 0a ~ " indentation-depth@ + indentation-depth!" 20 20 20 20 20 20 20 20 20 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 40 20 2b 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 21 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-string-literal = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 74 72 69 6e 67 2d 6c 69 74 65 72 61 6c 20 3d 20 7b 0a ~ " fresh-line" 20 20 20 20 20 20 20 20 20 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ " indentation-depth@ dup indent" ~ " advance-current-column" 20 20 20 20 20 20 20 20 20 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 40 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ "" 0a ~ " ." ~ "" 20 20 20 20 20 20 20 20 20 20 2e 22 20 7e 20 22 0a ~ " 0x22 value@ emitstring drop" 20 20 20 20 20 20 20 20 20 20 30 78 32 32 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 20 64 72 6f 70 0a ~ " dup hex-output-metadata-entry-content @" ~ " emitstring" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 65 6d 69 74 73 74 72 69 6e 67 0a ~ " 0x22 value@ emitstring drop" 20 20 20 20 20 20 20 20 20 20 30 78 32 32 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 20 64 72 6f 70 0a ~ " ." (string literal with null)"" 20 20 20 20 20 20 20 20 20 20 2e 22 20 20 20 20 28 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 77 69 74 68 20 6e 75 6c 6c 29 22 0a ~ "" 0a ~ " newline" 20 20 20 20 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 0a ~ " 1 is-fresh-line!" 20 20 20 20 20 20 20 20 20 20 31 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " 0 n-bytes-this-line!" 20 20 20 20 20 20 20 20 20 20 30 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " 0 current-column!" 20 20 20 20 20 20 20 20 20 20 30 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-raw-string-literal =" ~ " {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 61 77 2d 73 74 72 69 6e 67 2d 6c 69 74 65 72 61 6c 20 3d 20 7b 0a ~ " fresh-line" 20 20 20 20 20 20 20 20 20 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ " indentation-depth@ dup indent" ~ " advance-current-column" 20 20 20 20 20 20 20 20 20 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 40 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ "" 0a ~ " ." ~ "" 20 20 20 20 20 20 20 20 20 20 2e 22 20 7e 20 22 0a ~ " 0x22 value@ emitstring drop" 20 20 20 20 20 20 20 20 20 20 30 78 32 32 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 20 64 72 6f 70 0a ~ " dup hex-output-metadata-entry-content @" ~ " emitstring" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 20 65 6d 69 74 73 74 72 69 6e 67 0a ~ " 0x22 value@ emitstring drop" 20 20 20 20 20 20 20 20 20 20 30 78 32 32 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 20 64 72 6f 70 0a ~ " ." (raw string literal)"" 20 20 20 20 20 20 20 20 20 20 2e 22 20 20 20 20 20 28 72 61 77 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 29 22 0a ~ "" 0a ~ " newline" 20 20 20 20 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 0a ~ " 1 is-fresh-line!" 20 20 20 20 20 20 20 20 20 20 31 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " 0 n-bytes-this-line!" 20 20 20 20 20 20 20 20 20 20 30 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " 0 current-column!" 20 20 20 20 20 20 20 20 20 20 30 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup is-push-subitem-entry {" 20 20 20 20 20 20 20 20 64 75 70 20 69 73 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 20 7b 0a ~ " dup push-subitem-entry-stack" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-saved-data = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 61 76 65 64 2d 64 61 74 61 20 3d 20 7b 0a ~ " ~ It's not valid to execute these, so print a" ~ " diagnostic. They're" 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 49 74 27 73 20 6e 6f 74 20 76 61 6c 69 64 20 74 6f 20 65 78 65 63 75 74 65 20 74 68 65 73 65 2c 20 73 6f 20 70 72 69 6e 74 20 61 20 64 69 61 67 6e 6f 73 74 69 63 2e 20 54 68 65 79 27 72 65 0a ~ " ~ supposed to always be consumed by data-*" ~ " commands." 20 20 20 20 20 20 20 20 20 20 7e 20 73 75 70 70 6f 73 65 64 20 74 6f 20 61 6c 77 61 79 73 20 62 65 20 63 6f 6e 73 75 6d 65 64 20 62 79 20 64 61 74 61 2d 2a 20 63 6f 6d 6d 61 6e 64 73 2e 0a ~ " ." A saved-data metadata entry leaked." newline" 20 20 20 20 20 20 20 20 20 20 2e 22 20 41 20 73 61 76 65 64 2d 64 61 74 61 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 6c 65 61 6b 65 64 2e 22 20 6e 65 77 6c 69 6e 65 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-drop-subitem = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 64 72 6f 70 2d 73 75 62 69 74 65 6d 20 3d 20 7b 0a ~ " pop-subitem-entry-stack drop" 20 20 20 20 20 20 20 20 20 20 70 6f 70 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 20 64 72 6f 70 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-swap-subitems = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 77 61 70 2d 73 75 62 69 74 65 6d 73 20 3d 20 7b 0a ~ " ~ If we underflow the stack, we'll get zeroes" ~ " back here. In order" 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 75 6e 64 65 72 66 6c 6f 77 20 74 68 65 20 73 74 61 63 6b 2c 20 77 65 27 6c 6c 20 67 65 74 20 7a 65 72 6f 65 73 20 62 61 63 6b 20 68 65 72 65 2e 20 49 6e 20 6f 72 64 65 72 0a ~ " ~ to avoid causing more confusing problems later," ~ " we make sure to" 20 20 20 20 20 20 20 20 20 20 7e 20 74 6f 20 61 76 6f 69 64 20 63 61 75 73 69 6e 67 20 6d 6f 72 65 20 63 6f 6e 66 75 73 69 6e 67 20 70 72 6f 62 6c 65 6d 73 20 6c 61 74 65 72 2c 20 77 65 20 6d 61 6b 65 20 73 75 72 65 20 74 6f 0a ~ " ~ discard the zeroes instead of pushing them." ~ " Just like in" 20 20 20 20 20 20 20 20 20 20 7e 20 64 69 73 63 61 72 64 20 74 68 65 20 7a 65 72 6f 65 73 20 69 6e 73 74 65 61 64 20 6f 66 20 70 75 73 68 69 6e 67 20 74 68 65 6d 2e 20 4a 75 73 74 20 6c 69 6b 65 20 69 6e 0a ~ " ~ hex-emit-template-string, the reasoning is that" ~ " it's easier to" 20 20 20 20 20 20 20 20 20 20 7e 20 68 65 78 2d 65 6d 69 74 2d 74 65 6d 70 6c 61 74 65 2d 73 74 72 69 6e 67 2c 20 74 68 65 20 72 65 61 73 6f 6e 69 6e 67 20 69 73 20 74 68 61 74 20 69 74 27 73 20 65 61 73 69 65 72 20 74 6f 0a ~ " ~ diagnose what's wrong with this subsystem when" ~ " it runs to" 20 20 20 20 20 20 20 20 20 20 7e 20 64 69 61 67 6e 6f 73 65 20 77 68 61 74 27 73 20 77 72 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 73 75 62 73 79 73 74 65 6d 20 77 68 65 6e 20 69 74 20 72 75 6e 73 20 74 6f 0a ~ " ~ completion." 20 20 20 20 20 20 20 20 20 20 7e 20 63 6f 6d 70 6c 65 74 69 6f 6e 2e 0a ~ " pop-subitem-entry-stack" 20 20 20 20 20 20 20 20 20 20 70 6f 70 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 0a ~ " pop-subitem-entry-stack" 20 20 20 20 20 20 20 20 20 20 70 6f 70 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 0a ~ " swap" 20 20 20 20 20 20 20 20 20 20 73 77 61 70 0a ~ " dup { push-subitem-entry-stack } { drop }" ~ " if-else" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 7b 20 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " dup { push-subitem-entry-stack } { drop }" ~ " if-else" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 7b 20 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " hex-output-metadata-entry-type-roll-subitems = {" 20 20 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 6f 6c 6c 2d 73 75 62 69 74 65 6d 73 20 3d 20 7b 0a ~ " ~ The parameter giving the amount to roll by is" ~ " in the content" 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 65 20 70 61 72 61 6d 65 74 65 72 20 67 69 76 69 6e 67 20 74 68 65 20 61 6d 6f 75 6e 74 20 74 6f 20 72 6f 6c 6c 20 62 79 20 69 73 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 6e 74 0a ~ " ~ field." 20 20 20 20 20 20 20 20 20 20 7e 20 66 69 65 6c 64 2e 0a ~ " dup hex-output-metadata-entry-content @" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 0a ~ " ~ (... amount to roll by)" 20 20 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 20 61 6d 6f 75 6e 74 20 74 6f 20 72 6f 6c 6c 20 62 79 29 0a ~ "" 0a ~ " ~ We resist the temptation to do the memcopy" ~ " math. We don't need" 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 57 65 20 72 65 73 69 73 74 20 74 68 65 20 74 65 6d 70 74 61 74 69 6f 6e 20 74 6f 20 64 6f 20 74 68 65 20 6d 65 6d 63 6f 70 79 20 6d 61 74 68 2e 20 57 65 20 64 6f 6e 27 74 20 6e 65 65 64 0a ~ " ~ to, since the regular Forth roll and unroll do" ~ " it for us." 20 20 20 20 20 20 20 20 20 20 7e 20 74 6f 2c 20 73 69 6e 63 65 20 74 68 65 20 72 65 67 75 6c 61 72 20 46 6f 72 74 68 20 72 6f 6c 6c 20 61 6e 64 20 75 6e 72 6f 6c 6c 20 64 6f 20 69 74 20 66 6f 72 20 75 73 2e 0a ~ " dup 0 < {" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 30 20 3c 20 7b 0a ~ " ~ In this scenario, we're rolling. The amount" ~ " to roll by is also" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 49 6e 20 74 68 69 73 20 73 63 65 6e 61 72 69 6f 2c 20 77 65 27 72 65 20 72 6f 6c 6c 69 6e 67 2e 20 54 68 65 20 61 6d 6f 75 6e 74 20 74 6f 20 72 6f 6c 6c 20 62 79 20 69 73 20 61 6c 73 6f 0a ~ " ~ the number of items." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 69 74 65 6d 73 2e 0a ~ "" 0a ~ " 0 { 2dup < } { pop-subitem-entry-stack 3unroll" ~ " 1+ } while" 20 20 20 20 20 20 20 20 20 20 20 20 30 20 7b 20 32 64 75 70 20 3c 20 7d 20 7b 20 70 6f 70 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 20 33 75 6e 72 6f 6c 6c 20 31 2b 20 7d 20 77 68 69 6c 65 0a ~ " drop" 20 20 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 0a ~ " ~ (... items, amount to roll by / number of" ~ " items)" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 20 69 74 65 6d 73 2c 20 61 6d 6f 75 6e 74 20 74 6f 20 72 6f 6c 6c 20 62 79 20 2f 20 6e 75 6d 62 65 72 20 6f 66 20 69 74 65 6d 73 29 0a ~ "" 0a ~ " ~ Please notice that the items we have popped" ~ " from the subitem" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 50 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 65 20 69 74 65 6d 73 20 77 65 20 68 61 76 65 20 70 6f 70 70 65 64 20 66 72 6f 6d 20 74 68 65 20 73 75 62 69 74 65 6d 0a ~ " ~ entry stack are now, on the value stack, in" ~ " the reverse of the" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 65 6e 74 72 79 20 73 74 61 63 6b 20 61 72 65 20 6e 6f 77 2c 20 6f 6e 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 2c 20 69 6e 20 74 68 65 20 72 65 76 65 72 73 65 20 6f 66 20 74 68 65 0a ~ " ~ order they were on the entry stack. They will" ~ " reverse again when" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 6f 72 64 65 72 20 74 68 65 79 20 77 65 72 65 20 6f 6e 20 74 68 65 20 65 6e 74 72 79 20 73 74 61 63 6b 2e 20 54 68 65 79 20 77 69 6c 6c 20 72 65 76 65 72 73 65 20 61 67 61 69 6e 20 77 68 65 6e 0a ~ " ~ we push them back." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 77 65 20 70 75 73 68 20 74 68 65 6d 20 62 61 63 6b 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 20 20 20 20 7e 0a ~ " ~ The amount to roll by is positive, so the" ~ " desired operation is" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 65 20 61 6d 6f 75 6e 74 20 74 6f 20 72 6f 6c 6c 20 62 79 20 69 73 20 70 6f 73 69 74 69 76 65 2c 20 73 6f 20 74 68 65 20 64 65 73 69 72 65 64 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 0a ~ " ~ a regular roll. Since the entries are" ~ " reversed right now, we" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 61 20 72 65 67 75 6c 61 72 20 72 6f 6c 6c 2e 20 53 69 6e 63 65 20 74 68 65 20 65 6e 74 72 69 65 73 20 61 72 65 20 72 65 76 65 72 73 65 64 20 72 69 67 68 74 20 6e 6f 77 2c 20 77 65 0a ~ " ~ unroll them, which will be what we want when" ~ " we put them back." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 75 6e 72 6f 6c 6c 20 74 68 65 6d 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 62 65 20 77 68 61 74 20 77 65 20 77 61 6e 74 20 77 68 65 6e 20 77 65 20 70 75 74 20 74 68 65 6d 20 62 61 63 6b 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 20 20 20 20 7e 0a ~ " ~ Try it out interactively with a toy example" ~ " and convince" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 54 72 79 20 69 74 20 6f 75 74 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 20 77 69 74 68 20 61 20 74 6f 79 20 65 78 61 6d 70 6c 65 20 61 6e 64 20 63 6f 6e 76 69 6e 63 65 0a ~ " ~ yourself. It's hard to really model in your" ~ " head, but it's true." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 79 6f 75 72 73 65 6c 66 2e 20 49 74 27 73 20 68 61 72 64 20 74 6f 20 72 65 61 6c 6c 79 20 6d 6f 64 65 6c 20 69 6e 20 79 6f 75 72 20 68 65 61 64 2c 20 62 75 74 20 69 74 27 73 20 74 72 75 65 2e 0a ~ " ~ The intuition is that, if you're looking at" ~ " the value stack," 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 54 68 65 20 69 6e 74 75 69 74 69 6f 6e 20 69 73 20 74 68 61 74 2c 20 69 66 20 79 6f 75 27 72 65 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 2c 0a ~ " ~ the bottommost item there will be the topmost" ~ " one after" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 74 68 65 20 62 6f 74 74 6f 6d 6d 6f 73 74 20 69 74 65 6d 20 74 68 65 72 65 20 77 69 6c 6c 20 62 65 20 74 68 65 20 74 6f 70 6d 6f 73 74 20 6f 6e 65 20 61 66 74 65 72 0a ~ " ~ re-reversing, so we think of our operations" ~ " as proceeding" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 72 65 2d 72 65 76 65 72 73 69 6e 67 2c 20 73 6f 20 77 65 20 74 68 69 6e 6b 20 6f 66 20 6f 75 72 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 73 20 70 72 6f 63 65 65 64 69 6e 67 0a ~ " ~ up-stack from there, instead of the usual" ~ " operations that start" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 75 70 2d 73 74 61 63 6b 20 66 72 6f 6d 20 74 68 65 72 65 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 75 73 75 61 6c 20 6f 70 65 72 61 74 69 6f 6e 73 20 74 68 61 74 20 73 74 61 72 74 0a ~ " ~ at the topmost item and proceed downwards." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 61 74 20 74 68 65 20 74 6f 70 6d 6f 73 74 20 69 74 65 6d 20 61 6e 64 20 70 72 6f 63 65 65 64 20 64 6f 77 6e 77 61 72 64 73 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 20 20 20 20 7e 0a ~ " ~ Anyway, this little trick does a regular" ~ " unroll, which acts as" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 41 6e 79 77 61 79 2c 20 74 68 69 73 20 6c 69 74 74 6c 65 20 74 72 69 63 6b 20 64 6f 65 73 20 61 20 72 65 67 75 6c 61 72 20 75 6e 72 6f 6c 6c 2c 20 77 68 69 63 68 20 61 63 74 73 20 61 73 0a ~ " ~ a roll, and keeps the value around." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 61 20 72 6f 6c 6c 2c 20 61 6e 64 20 6b 65 65 70 73 20 74 68 65 20 76 61 6c 75 65 20 61 72 6f 75 6e 64 2e 0a ~ " dup 3unroll 1+ unroll" 20 20 20 20 20 20 20 20 20 20 20 20 64 75 70 20 33 75 6e 72 6f 6c 6c 20 31 2b 20 75 6e 72 6f 6c 6c 0a ~ " } if" 20 20 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ " ~ (... items if positive, amount to roll by)" 20 20 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 20 69 74 65 6d 73 20 69 66 20 70 6f 73 69 74 69 76 65 2c 20 61 6d 6f 75 6e 74 20 74 6f 20 72 6f 6c 6c 20 62 79 29 0a ~ "" 0a ~ " ~ We did the positive case first, which means" ~ " the amount to roll" 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 57 65 20 64 69 64 20 74 68 65 20 70 6f 73 69 74 69 76 65 20 63 61 73 65 20 66 69 72 73 74 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 65 20 61 6d 6f 75 6e 74 20 74 6f 20 72 6f 6c 6c 0a ~ " ~ by is still its original value, regardless of" ~ " whether that case" 20 20 20 20 20 20 20 20 20 20 7e 20 62 79 20 69 73 20 73 74 69 6c 6c 20 69 74 73 20 6f 72 69 67 69 6e 61 6c 20 76 61 6c 75 65 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 65 74 68 65 72 20 74 68 61 74 20 63 61 73 65 0a ~ " ~ ran or not. So, we can check if it's negative" ~ " to see if we need" 20 20 20 20 20 20 20 20 20 20 7e 20 72 61 6e 20 6f 72 20 6e 6f 74 2e 20 53 6f 2c 20 77 65 20 63 61 6e 20 63 68 65 63 6b 20 69 66 20 69 74 27 73 20 6e 65 67 61 74 69 76 65 20 74 6f 20 73 65 65 20 69 66 20 77 65 20 6e 65 65 64 0a ~ " ~ to do the negative case." 20 20 20 20 20 20 20 20 20 20 7e 20 74 6f 20 64 6f 20 74 68 65 20 6e 65 67 61 74 69 76 65 20 63 61 73 65 2e 0a ~ " dup 0 > {" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 30 20 3e 20 7b 0a ~ " ~ In this scenario, we're unrolling. We" ~ " negate the amount to" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 49 6e 20 74 68 69 73 20 73 63 65 6e 61 72 69 6f 2c 20 77 65 27 72 65 20 75 6e 72 6f 6c 6c 69 6e 67 2e 20 57 65 20 6e 65 67 61 74 65 20 74 68 65 20 61 6d 6f 75 6e 74 20 74 6f 0a ~ " ~ roll by to get the amount to unroll by, which" ~ " is also the number" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 72 6f 6c 6c 20 62 79 20 74 6f 20 67 65 74 20 74 68 65 20 61 6d 6f 75 6e 74 20 74 6f 20 75 6e 72 6f 6c 6c 20 62 79 2c 20 77 68 69 63 68 20 69 73 20 61 6c 73 6f 20 74 68 65 20 6e 75 6d 62 65 72 0a ~ " ~ of items." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 6f 66 20 69 74 65 6d 73 2e 0a ~ " negate" 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 67 61 74 65 0a ~ "" 0a ~ " 0 { 2dup < } { pop-subitem-entry-stack 3unroll" ~ " 1+ } while" 20 20 20 20 20 20 20 20 20 20 20 20 30 20 7b 20 32 64 75 70 20 3c 20 7d 20 7b 20 70 6f 70 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 20 33 75 6e 72 6f 6c 6c 20 31 2b 20 7d 20 77 68 69 6c 65 0a ~ " drop" 20 20 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 0a ~ " ~ (... items, number of items)" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 20 69 74 65 6d 73 2c 20 6e 75 6d 62 65 72 20 6f 66 20 69 74 65 6d 73 29 0a ~ "" 0a ~ " ~ The parameter was negative, so we were" ~ " asked to do an unroll." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 65 20 70 61 72 61 6d 65 74 65 72 20 77 61 73 20 6e 65 67 61 74 69 76 65 2c 20 73 6f 20 77 65 20 77 65 72 65 20 61 73 6b 65 64 20 74 6f 20 64 6f 20 61 6e 20 75 6e 72 6f 6c 6c 2e 0a ~ " ~ This trick does a roll, and keeps the value." ~ " Notice that "roll"" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 54 68 69 73 20 74 72 69 63 6b 20 64 6f 65 73 20 61 20 72 6f 6c 6c 2c 20 61 6e 64 20 6b 65 65 70 73 20 74 68 65 20 76 61 6c 75 65 2e 20 4e 6f 74 69 63 65 20 74 68 61 74 20 22 72 6f 6c 6c 22 0a ~ " ~ always needs a positive amount." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 61 6c 77 61 79 73 20 6e 65 65 64 73 20 61 20 70 6f 73 69 74 69 76 65 20 61 6d 6f 75 6e 74 2e 0a ~ " dup 1+ roll swap" 20 20 20 20 20 20 20 20 20 20 20 20 64 75 70 20 31 2b 20 72 6f 6c 6c 20 73 77 61 70 0a ~ " } if" 20 20 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ " ~ (... items, number of items)" 20 20 20 20 20 20 20 20 20 20 7e 20 28 2e 2e 2e 20 69 74 65 6d 73 2c 20 6e 75 6d 62 65 72 20 6f 66 20 69 74 65 6d 73 29 0a ~ "" 0a ~ " ~ Now, regardless of which case ran, we have" ~ " the items and we have" 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 4e 6f 77 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 69 63 68 20 63 61 73 65 20 72 61 6e 2c 20 77 65 20 68 61 76 65 20 74 68 65 20 69 74 65 6d 73 20 61 6e 64 20 77 65 20 68 61 76 65 0a ~ " ~ a non-negative count of them. Notice that if we" ~ " were asked to roll" 20 20 20 20 20 20 20 20 20 20 7e 20 61 20 6e 6f 6e 2d 6e 65 67 61 74 69 76 65 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 6d 2e 20 4e 6f 74 69 63 65 20 74 68 61 74 20 69 66 20 77 65 20 77 65 72 65 20 61 73 6b 65 64 20 74 6f 20 72 6f 6c 6c 0a ~ " ~ by zero, neither case ran, but that still" ~ " describes what we have" 20 20 20 20 20 20 20 20 20 20 7e 20 62 79 20 7a 65 72 6f 2c 20 6e 65 69 74 68 65 72 20 63 61 73 65 20 72 61 6e 2c 20 62 75 74 20 74 68 61 74 20 73 74 69 6c 6c 20 64 65 73 63 72 69 62 65 73 20 77 68 61 74 20 77 65 20 68 61 76 65 0a ~ " ~ accurately." 20 20 20 20 20 20 20 20 20 20 7e 20 61 63 63 75 72 61 74 65 6c 79 2e 0a ~ "" 0a ~ " ~ Now we push them back." 20 20 20 20 20 20 20 20 20 20 7e 20 4e 6f 77 20 77 65 20 70 75 73 68 20 74 68 65 6d 20 62 61 63 6b 2e 0a ~ " 0 { 2dup < } {" 20 20 20 20 20 20 20 20 20 20 30 20 7b 20 32 64 75 70 20 3c 20 7d 20 7b 0a ~ " 3roll" 20 20 20 20 20 20 20 20 20 20 20 20 33 72 6f 6c 6c 0a ~ "" 0a ~ " ~ Again, if we underflowed we got zeros, and we" ~ " discard them." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 41 67 61 69 6e 2c 20 69 66 20 77 65 20 75 6e 64 65 72 66 6c 6f 77 65 64 20 77 65 20 67 6f 74 20 7a 65 72 6f 73 2c 20 61 6e 64 20 77 65 20 64 69 73 63 61 72 64 20 74 68 65 6d 2e 0a ~ " dup { push-subitem-entry-stack } { drop }" ~ " if-else" 20 20 20 20 20 20 20 20 20 20 20 20 64 75 70 20 7b 20 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 65 6e 74 72 79 2d 73 74 61 63 6b 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " 1+" 20 20 20 20 20 20 20 20 20 20 20 20 31 2b 0a ~ " } while" 20 20 20 20 20 20 20 20 20 20 7d 20 77 68 69 6c 65 0a ~ " drop drop" 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " } if" 20 20 20 20 20 20 20 20 7d 20 69 66 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ " hex-output-metadata-next-entry" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 0a ~ " } while" 20 20 20 20 7d 20 77 68 69 6c 65 0a ~ " ~ (result, length remaining, current output address," 20 20 20 20 7e 20 28 72 65 73 75 6c 74 2c 20 6c 65 6e 67 74 68 20 72 65 6d 61 69 6e 69 6e 67 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 61 64 64 72 65 73 73 2c 0a ~ " ~ metadata scan pointer)" 20 20 20 20 7e 20 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " 2 pick {" 20 20 20 20 32 20 70 69 63 6b 20 7b 0a ~ " n-bytes-this-line@ 16 = {" 20 20 20 20 20 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 40 20 31 36 20 3d 20 7b 0a ~ " newline" 20 20 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 0a ~ " 1 is-fresh-line!" 20 20 20 20 20 20 20 20 31 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " 0 n-bytes-this-line!" 20 20 20 20 20 20 20 20 30 20 6e 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 21 0a ~ " 0 current-column!" 20 20 20 20 20 20 20 20 30 20 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 21 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " is-fresh-line@ {" 20 20 20 20 20 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 40 20 7b 0a ~ " indentation-depth@ dup indent" ~ " advance-current-column" 20 20 20 20 20 20 20 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2d 64 65 70 74 68 40 20 64 75 70 20 69 6e 64 65 6e 74 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } {" 20 20 20 20 20 20 7d 20 7b 0a ~ " space" 20 20 20 20 20 20 20 20 73 70 61 63 65 0a ~ " 1 advance-current-column" 20 20 20 20 20 20 20 20 31 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " } if-else" 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " over 8@ .hex8" 20 20 20 20 20 20 6f 76 65 72 20 38 40 20 2e 68 65 78 38 0a ~ "" 0a ~ " 2 advance-current-column" 20 20 20 20 20 20 32 20 61 64 76 61 6e 63 65 2d 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 0a ~ " increment-bytes-this-line" 20 20 20 20 20 20 69 6e 63 72 65 6d 65 6e 74 2d 62 79 74 65 73 2d 74 68 69 73 2d 6c 69 6e 65 0a ~ " 0 is-fresh-line!" 20 20 20 20 20 20 30 20 69 73 2d 66 72 65 73 68 2d 6c 69 6e 65 21 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ " ~ (result, length remaining, current output address," 20 20 20 20 7e 20 28 72 65 73 75 6c 74 2c 20 6c 65 6e 67 74 68 20 72 65 6d 61 69 6e 69 6e 67 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 61 64 64 72 65 73 73 2c 0a ~ " ~ metadata scan pointer)" 20 20 20 20 7e 20 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " 3unroll 1+ swap 1- swap 3roll" 20 20 20 20 33 75 6e 72 6f 6c 6c 20 31 2b 20 73 77 61 70 20 31 2d 20 73 77 61 70 20 33 72 6f 6c 6c 0a ~ " } while drop ;" 20 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "~ This has complex logic, so we do it as a trace rather" ~ " than with magic" 7e 20 20 20 54 68 69 73 20 68 61 73 20 63 6f 6d 70 6c 65 78 20 6c 6f 67 69 63 2c 20 73 6f 20 77 65 20 64 6f 20 69 74 20 61 73 20 61 20 74 72 61 63 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 77 69 74 68 20 6d 61 67 69 63 0a ~ "~ comments." 7e 20 63 6f 6d 6d 65 6e 74 73 2e 0a ~ "~" 7e 0a ~ "~ (new label value, label entry pointer --)" 7e 20 28 6e 65 77 20 6c 61 62 65 6c 20 76 61 6c 75 65 2c 20 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": hex-set-label-trace" 3a 20 68 65 78 2d 73 65 74 2d 6c 61 62 65 6c 2d 74 72 61 63 65 0a ~ " ~ If the value is zero, don't bother making an entry." ~ " There's a bunch of" 20 20 7e 20 20 20 49 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 7a 65 72 6f 2c 20 64 6f 6e 27 74 20 62 6f 74 68 65 72 20 6d 61 6b 69 6e 67 20 61 6e 20 65 6e 74 72 79 2e 20 54 68 65 72 65 27 73 20 61 20 62 75 6e 63 68 20 6f 66 0a ~ " ~ unused labels set to zero and even if they were used," ~ " showing them at the" 20 20 7e 20 75 6e 75 73 65 64 20 6c 61 62 65 6c 73 20 73 65 74 20 74 6f 20 7a 65 72 6f 20 61 6e 64 20 65 76 65 6e 20 69 66 20 74 68 65 79 20 77 65 72 65 20 75 73 65 64 2c 20 73 68 6f 77 69 6e 67 20 74 68 65 6d 20 61 74 20 74 68 65 0a ~ " ~ start of the file would not provide useful" ~ " information." 20 20 7e 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 66 69 6c 65 20 77 6f 75 6c 64 20 6e 6f 74 20 70 72 6f 76 69 64 65 20 75 73 65 66 75 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ " over 0 = { drop drop exit } if" 20 20 6f 76 65 72 20 30 20 3d 20 7b 20 64 72 6f 70 20 64 72 6f 70 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Similarly, if the label has its non-offset bit set," ~ " we don't need an" 20 20 7e 20 20 20 53 69 6d 69 6c 61 72 6c 79 2c 20 69 66 20 74 68 65 20 6c 61 62 65 6c 20 68 61 73 20 69 74 73 20 6e 6f 6e 2d 6f 66 66 73 65 74 20 62 69 74 20 73 65 74 2c 20 77 65 20 64 6f 6e 27 74 20 6e 65 65 64 20 61 6e 0a ~ " ~ entry for that, either" 20 20 7e 20 65 6e 74 72 79 20 66 6f 72 20 74 68 61 74 2c 20 65 69 74 68 65 72 0a ~ " ~" 20 20 7e 0a ~ " ~ It's worth noting that this bit is set by the code" ~ " being compiled," 20 20 7e 20 20 20 49 74 27 73 20 77 6f 72 74 68 20 6e 6f 74 69 6e 67 20 74 68 61 74 20 74 68 69 73 20 62 69 74 20 69 73 20 73 65 74 20 62 79 20 74 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 2c 0a ~ " ~ potentially after it has already called label-set, and" ~ " therefore after" 20 20 7e 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 61 66 74 65 72 20 69 74 20 68 61 73 20 61 6c 72 65 61 64 79 20 63 61 6c 6c 65 64 20 6c 61 62 65 6c 2d 73 65 74 2c 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 61 66 74 65 72 0a ~ " ~ this trace. This introduces an ordering dependency," ~ " though it's unlikely" 20 20 7e 20 74 68 69 73 20 74 72 61 63 65 2e 20 54 68 69 73 20 69 6e 74 72 6f 64 75 63 65 73 20 61 6e 20 6f 72 64 65 72 69 6e 67 20 64 65 70 65 6e 64 65 6e 63 79 2c 20 74 68 6f 75 67 68 20 69 74 27 73 20 75 6e 6c 69 6b 65 6c 79 0a ~ " ~ to come up in practice because the bit is kept across" ~ " label-loop passes" 20 20 7e 20 74 6f 20 63 6f 6d 65 20 75 70 20 69 6e 20 70 72 61 63 74 69 63 65 20 62 65 63 61 75 73 65 20 74 68 65 20 62 69 74 20 69 73 20 6b 65 70 74 20 61 63 72 6f 73 73 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 70 61 73 73 65 73 0a ~ " ~ and as long as there are any forward references there" ~ " will always be at" 20 20 7e 20 61 6e 64 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 72 65 20 61 72 65 20 61 6e 79 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 73 20 74 68 65 72 65 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 61 74 0a ~ " ~ least two passes." 20 20 7e 20 6c 65 61 73 74 20 74 77 6f 20 70 61 73 73 65 73 2e 0a ~ " dup is-label-non-offset { drop drop exit } if" 20 20 64 75 70 20 69 73 2d 6c 61 62 65 6c 2d 6e 6f 6e 2d 6f 66 66 73 65 74 20 7b 20 64 72 6f 70 20 64 72 6f 70 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Recall that label values are offsets within the" ~ " output file. This is not" 20 20 7e 20 20 20 52 65 63 61 6c 6c 20 74 68 61 74 20 6c 61 62 65 6c 20 76 61 6c 75 65 73 20 61 72 65 20 6f 66 66 73 65 74 73 20 77 69 74 68 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 66 69 6c 65 2e 20 54 68 69 73 20 69 73 20 6e 6f 74 0a ~ " ~ otherwise a requirement, compiled code can use their" ~ " values for anything" 20 20 7e 20 6f 74 68 65 72 77 69 73 65 20 61 20 72 65 71 75 69 72 65 6d 65 6e 74 2c 20 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 20 63 61 6e 20 75 73 65 20 74 68 65 69 72 20 76 61 6c 75 65 73 20 66 6f 72 20 61 6e 79 74 68 69 6e 67 0a ~ " ~ it wants, but the label transform treats them as" ~ " offsets and so does the" 20 20 7e 20 69 74 20 77 61 6e 74 73 2c 20 62 75 74 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 74 72 65 61 74 73 20 74 68 65 6d 20 61 73 20 6f 66 66 73 65 74 73 20 61 6e 64 20 73 6f 20 64 6f 65 73 20 74 68 65 0a ~ " ~ ELF code." 20 20 7e 20 45 4c 46 20 63 6f 64 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We want to create metadata entries associated with" ~ " that offset; recall" 20 20 7e 20 20 20 57 65 20 77 61 6e 74 20 74 6f 20 63 72 65 61 74 65 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 61 74 20 6f 66 66 73 65 74 3b 20 72 65 63 61 6c 6c 0a ~ " ~ also that entries' data starts are host addresses which" ~ " must be within" 20 20 7e 20 61 6c 73 6f 20 74 68 61 74 20 65 6e 74 72 69 65 73 27 20 64 61 74 61 20 73 74 61 72 74 73 20 61 72 65 20 68 6f 73 74 20 61 64 64 72 65 73 73 65 73 20 77 68 69 63 68 20 6d 75 73 74 20 62 65 20 77 69 74 68 69 6e 0a ~ " ~ the label-loop buffer. So..." 20 20 7e 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2e 20 53 6f 2e 2e 2e 0a ~ " over" 20 20 6f 76 65 72 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-label-loop-buffer-start @ +" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 20 2b 0a ~ " 0" 20 20 30 0a ~ " ~ (new label value, label entry pointer, entry data" ~ " start," 20 20 7e 20 28 6e 65 77 20 6c 61 62 65 6c 20 76 61 6c 75 65 2c 20 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 64 61 74 61 20 73 74 61 72 74 2c 0a ~ " ~ entry data length)" 20 20 7e 20 20 65 6e 74 72 79 20 64 61 74 61 20 6c 65 6e 67 74 68 29 0a ~ "" 0a ~ " 2dup hex-output-metadata-entry-type-push-subitem-hex64 7" ~ " roll" 20 20 32 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 36 34 20 37 20 72 6f 6c 6c 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (label entry pointer, entry data start, entry data" ~ " length)" 20 20 7e 20 28 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 65 6e 74 72 79 20 64 61 74 61 20 73 74 61 72 74 2c 20 65 6e 74 72 79 20 64 61 74 61 20 6c 65 6e 67 74 68 29 0a ~ "" 0a ~ " over hex-output-metadata-entry-type-push-subitem-string" 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 0a ~ " 5 roll entry-to-name" 20 20 35 20 72 6f 6c 6c 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 0a ~ " dup stringlen 3unroll" 20 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 33 75 6e 72 6f 6c 6c 0a ~ "" 0a ~ " swap-transform-variables here @ swap-transform-variables" ~ " dup 3unroll" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 64 75 70 20 33 75 6e 72 6f 6c 6c 0a ~ " ~ (copy, original, copy)" 20 20 7e 20 28 63 6f 70 79 2c 20 6f 72 69 67 69 6e 61 6c 2c 20 63 6f 70 79 29 0a ~ " over stringlen 1+ memcopy" 20 20 6f 76 65 72 20 73 74 72 69 6e 67 6c 65 6e 20 31 2b 20 6d 65 6d 63 6f 70 79 0a ~ " swap-transform-variables allocate-string" ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " hex-output-metadata-entry-type-line-comment" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" label # at offset # is here."" 20 20 73 22 20 6c 61 62 65 6c 20 23 20 61 74 20 6f 66 66 73 65 74 20 23 20 69 73 20 68 65 72 65 2e 22 0a ~ " add-hex-output-metadata-entry ;" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 3b 0a ~ "" 0a ~ "~ (data start, data length --)" 7e 20 28 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 20 2d 2d 29 0a ~ ": hex-pack-trace" 3a 20 68 65 78 2d 70 61 63 6b 2d 74 72 61 63 65 0a ~ " ~ We keep a running tally of the next address in the" ~ " output, for the" 20 20 7e 20 20 20 57 65 20 6b 65 65 70 20 61 20 72 75 6e 6e 69 6e 67 20 74 61 6c 6c 79 20 6f 66 20 74 68 65 20 6e 65 78 74 20 61 64 64 72 65 73 73 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 2c 20 66 6f 72 20 74 68 65 0a ~ " ~ benefit of hex-tilde-replacement, which needs to know" ~ " where to attach its" 20 20 7e 20 62 65 6e 65 66 69 74 20 6f 66 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 77 68 69 63 68 20 6e 65 65 64 73 20 74 6f 20 6b 6e 6f 77 20 77 68 65 72 65 20 74 6f 20 61 74 74 61 63 68 20 69 74 73 0a ~ " ~ metadata entries." 20 20 7e 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 2e 0a ~ " +" 20 20 2b 0a ~ " dup is-in-label-loop-buffer {" 20 20 64 75 70 20 69 73 2d 69 6e 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 20 7b 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-latest-output-point !" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 21 0a ~ " } { drop } if-else ;" 20 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Conveniently, this is both the maximum normal length of" ~ " a line of text in" 7e 20 20 20 43 6f 6e 76 65 6e 69 65 6e 74 6c 79 2c 20 74 68 69 73 20 69 73 20 62 6f 74 68 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 6f 72 6d 61 6c 20 6c 65 6e 67 74 68 20 6f 66 20 61 20 6c 69 6e 65 20 6f 66 20 74 65 78 74 20 69 6e 0a ~ "~ Evocation's source per our informal style rules, and an" ~ " exact multiple of" 7e 20 45 76 6f 63 61 74 69 6f 6e 27 73 20 73 6f 75 72 63 65 20 70 65 72 20 6f 75 72 20 69 6e 66 6f 72 6d 61 6c 20 73 74 79 6c 65 20 72 75 6c 65 73 2c 20 61 6e 64 20 61 6e 20 65 78 61 63 74 20 6d 75 6c 74 69 70 6c 65 20 6f 66 0a ~ "~ the number of bytes we wrap to in the hex part of the" ~ " output. That's" 7e 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 77 65 20 77 72 61 70 20 74 6f 20 69 6e 20 74 68 65 20 68 65 78 20 70 61 72 74 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 2e 20 54 68 61 74 27 73 0a ~ "~ sixteen, and 16 * 5 is 80." 7e 20 73 69 78 74 65 65 6e 2c 20 61 6e 64 20 31 36 20 2a 20 35 20 69 73 20 38 30 2e 0a ~ ": long-string-threshold 80 ;" 3a 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 74 68 72 65 73 68 6f 6c 64 20 38 30 20 3b 0a ~ "" 0a ~ "~ Nothing particularly poetic about this number. It must" ~ " be smaller than" 7e 20 20 20 4e 6f 74 68 69 6e 67 20 70 61 72 74 69 63 75 6c 61 72 6c 79 20 70 6f 65 74 69 63 20 61 62 6f 75 74 20 74 68 69 73 20 6e 75 6d 62 65 72 2e 20 49 74 20 6d 75 73 74 20 62 65 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 0a ~ "~ long-string-threshold by enough that there's room for" ~ " indentation, quotation" 7e 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 74 68 72 65 73 68 6f 6c 64 20 62 79 20 65 6e 6f 75 67 68 20 74 68 61 74 20 74 68 65 72 65 27 73 20 72 6f 6f 6d 20 66 6f 72 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2c 20 71 75 6f 74 61 74 69 6f 6e 0a ~ "~ marks, and other such niceties. That's the only formal" ~ " constraint." 7e 20 6d 61 72 6b 73 2c 20 61 6e 64 20 6f 74 68 65 72 20 73 75 63 68 20 6e 69 63 65 74 69 65 73 2e 20 54 68 61 74 27 73 20 74 68 65 20 6f 6e 6c 79 20 66 6f 72 6d 61 6c 20 63 6f 6e 73 74 72 61 69 6e 74 2e 0a ~ "~" 7e 0a ~ "~ However, it's not aesthetically pleasing to make the" ~ " thresholds too close" 7e 20 20 20 48 6f 77 65 76 65 72 2c 20 69 74 27 73 20 6e 6f 74 20 61 65 73 74 68 65 74 69 63 61 6c 6c 79 20 70 6c 65 61 73 69 6e 67 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 74 68 72 65 73 68 6f 6c 64 73 20 74 6f 6f 20 63 6c 6f 73 65 0a ~ "~ together, because that results in a lot of lines being" ~ " wrapped into one" 7e 20 74 6f 67 65 74 68 65 72 2c 20 62 65 63 61 75 73 65 20 74 68 61 74 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 6c 6f 74 20 6f 66 20 6c 69 6e 65 73 20 62 65 69 6e 67 20 77 72 61 70 70 65 64 20 69 6e 74 6f 20 6f 6e 65 0a ~ "~ which is quite long and one which is quite short." 7e 20 77 68 69 63 68 20 69 73 20 71 75 69 74 65 20 6c 6f 6e 67 20 61 6e 64 20 6f 6e 65 20 77 68 69 63 68 20 69 73 20 71 75 69 74 65 20 73 68 6f 72 74 2e 0a ~ "~" 7e 0a ~ "~ So, this smaller value was chosen by trial and error to" ~ " not lead the eye" 7e 20 20 20 53 6f 2c 20 74 68 69 73 20 73 6d 61 6c 6c 65 72 20 76 61 6c 75 65 20 77 61 73 20 63 68 6f 73 65 6e 20 62 79 20 74 72 69 61 6c 20 61 6e 64 20 65 72 72 6f 72 20 74 6f 20 6e 6f 74 20 6c 65 61 64 20 74 68 65 20 65 79 65 0a ~ "~ around too much." 7e 20 61 72 6f 75 6e 64 20 74 6f 6f 20 6d 75 63 68 2e 0a ~ ": long-string-comment-wrap-threshold 60 ;" 3a 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 63 6f 6d 6d 65 6e 74 2d 77 72 61 70 2d 74 68 72 65 73 68 6f 6c 64 20 36 30 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Choose where to line-wrap a string. This is for the" ~ " outer loop, as" 7e 20 20 20 43 68 6f 6f 73 65 20 77 68 65 72 65 20 74 6f 20 6c 69 6e 65 2d 77 72 61 70 20 61 20 73 74 72 69 6e 67 2e 20 54 68 69 73 20 69 73 20 66 6f 72 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 6f 70 2c 20 61 73 0a ~ "~ described in hex-packstring-trace, below. If the string" ~ " contains any" 7e 20 64 65 73 63 72 69 62 65 64 20 69 6e 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 2c 20 62 65 6c 6f 77 2e 20 49 66 20 74 68 65 20 73 74 72 69 6e 67 20 63 6f 6e 74 61 69 6e 73 20 61 6e 79 0a ~ "~ newlines, this breaks immediately after the first." ~ " Otherwise, it doesn't" 7e 20 6e 65 77 6c 69 6e 65 73 2c 20 74 68 69 73 20 62 72 65 61 6b 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 74 68 65 20 66 69 72 73 74 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 69 74 20 64 6f 65 73 6e 27 74 0a ~ "~ break." 7e 20 62 72 65 61 6b 2e 0a ~ "~" 7e 0a ~ "~ Note that our caller has already bitten off a maximum" ~ " length that does not" 7e 20 20 20 4e 6f 74 65 20 74 68 61 74 20 6f 75 72 20 63 61 6c 6c 65 72 20 68 61 73 20 61 6c 72 65 61 64 79 20 62 69 74 74 65 6e 20 6f 66 66 20 61 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 0a ~ "~ exceed long-string-threshold, so if this word chooses to" ~ " not wrap, there's" 7e 20 65 78 63 65 65 64 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 74 68 72 65 73 68 6f 6c 64 2c 20 73 6f 20 69 66 20 74 68 69 73 20 77 6f 72 64 20 63 68 6f 6f 73 65 73 20 74 6f 20 6e 6f 74 20 77 72 61 70 2c 20 74 68 65 72 65 27 73 0a ~ "~ still fallback wrapping in place." 7e 20 73 74 69 6c 6c 20 66 61 6c 6c 62 61 63 6b 20 77 72 61 70 70 69 6e 67 20 69 6e 20 70 6c 61 63 65 2e 0a ~ "~" 7e 0a ~ "~ (string pointer, maximum length -- chosen length)" 7e 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 20 2d 2d 20 63 68 6f 73 65 6e 20 6c 65 6e 67 74 68 29 0a ~ ": choose-string-outer-break-point" 3a 20 63 68 6f 6f 73 65 2d 73 74 72 69 6e 67 2d 6f 75 74 65 72 2d 62 72 65 61 6b 2d 70 6f 69 6e 74 0a ~ " ~ If the maximum length is zero, do nothing." 20 20 7e 20 49 66 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 20 69 73 20 7a 65 72 6f 2c 20 64 6f 20 6e 6f 74 68 69 6e 67 2e 0a ~ " dup {" 20 20 64 75 70 20 7b 0a ~ " ~ Scan forward from the start for a newline." 20 20 20 20 7e 20 53 63 61 6e 20 66 6f 72 77 61 72 64 20 66 72 6f 6d 20 74 68 65 20 73 74 61 72 74 20 66 6f 72 20 61 20 6e 65 77 6c 69 6e 65 2e 0a ~ " 0 { 2dup 1+ < } {" 20 20 20 20 30 20 7b 20 32 64 75 70 20 31 2b 20 3c 20 7d 20 7b 0a ~ " ~ (string pointer, maximum length, offset)" 20 20 20 20 20 20 7e 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 2c 20 6f 66 66 73 65 74 29 0a ~ " 2 pick over + 8@ 0x0a = {" 20 20 20 20 20 20 32 20 70 69 63 6b 20 6f 76 65 72 20 2b 20 38 40 20 30 78 30 61 20 3d 20 7b 0a ~ " 3unroll 2drop 1+ exit" 20 20 20 20 20 20 20 20 33 75 6e 72 6f 6c 6c 20 32 64 72 6f 70 20 31 2b 20 65 78 69 74 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ (string pointer, maximum length, offset)" 20 20 20 20 20 20 7e 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 2c 20 6f 66 66 73 65 74 29 0a ~ " 1+" 20 20 20 20 20 20 31 2b 0a ~ " } while drop" 20 20 20 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ No case matched, so choose the maximum length." 20 20 7e 20 4e 6f 20 63 61 73 65 20 6d 61 74 63 68 65 64 2c 20 73 6f 20 63 68 6f 6f 73 65 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 2e 0a ~ " swap drop ;" 20 20 73 77 61 70 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Choose where to line-wrap a string. This is for the" ~ " inner loop, as" 7e 20 20 20 43 68 6f 6f 73 65 20 77 68 65 72 65 20 74 6f 20 6c 69 6e 65 2d 77 72 61 70 20 61 20 73 74 72 69 6e 67 2e 20 54 68 69 73 20 69 73 20 66 6f 72 20 74 68 65 20 69 6e 6e 65 72 20 6c 6f 6f 70 2c 20 61 73 0a ~ "~ described in hex-packstring-trace, below. If the string" ~ " is shorter than" 7e 20 64 65 73 63 72 69 62 65 64 20 69 6e 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 2c 20 62 65 6c 6f 77 2e 20 49 66 20 74 68 65 20 73 74 72 69 6e 67 20 69 73 20 73 68 6f 72 74 65 72 20 74 68 61 6e 0a ~ "~ long-string-comment-wrap-threshold, it is returned" ~ " without wrapping." 7e 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 63 6f 6d 6d 65 6e 74 2d 77 72 61 70 2d 74 68 72 65 73 68 6f 6c 64 2c 20 69 74 20 69 73 20 72 65 74 75 72 6e 65 64 20 77 69 74 68 6f 75 74 20 77 72 61 70 70 69 6e 67 2e 0a ~ "~ Otherwise, if it contains any spaces prior to that" ~ " threshold, it is broken" 7e 20 4f 74 68 65 72 77 69 73 65 2c 20 69 66 20 69 74 20 63 6f 6e 74 61 69 6e 73 20 61 6e 79 20 73 70 61 63 65 73 20 70 72 69 6f 72 20 74 6f 20 74 68 61 74 20 74 68 72 65 73 68 6f 6c 64 2c 20 69 74 20 69 73 20 62 72 6f 6b 65 6e 0a ~ "~ immediately before the last. If neither condition" ~ " applies, the string is" 7e 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 62 65 66 6f 72 65 20 74 68 65 20 6c 61 73 74 2e 20 49 66 20 6e 65 69 74 68 65 72 20 63 6f 6e 64 69 74 69 6f 6e 20 61 70 70 6c 69 65 73 2c 20 74 68 65 20 73 74 72 69 6e 67 20 69 73 0a ~ "~ broken at the threshold despite this being notionally" ~ " mid-word." 7e 20 62 72 6f 6b 65 6e 20 61 74 20 74 68 65 20 74 68 72 65 73 68 6f 6c 64 20 64 65 73 70 69 74 65 20 74 68 69 73 20 62 65 69 6e 67 20 6e 6f 74 69 6f 6e 61 6c 6c 79 20 6d 69 64 2d 77 6f 72 64 2e 0a ~ "~" 7e 0a ~ "~ (string pointer, maximum length -- chosen length)" 7e 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 20 2d 2d 20 63 68 6f 73 65 6e 20 6c 65 6e 67 74 68 29 0a ~ ": choose-string-inner-break-point" 3a 20 63 68 6f 6f 73 65 2d 73 74 72 69 6e 67 2d 69 6e 6e 65 72 2d 62 72 65 61 6b 2d 70 6f 69 6e 74 0a ~ " ~ If the maximum length is less than the threshold, do" ~ " nothing." 20 20 7e 20 49 66 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20 74 68 65 20 74 68 72 65 73 68 6f 6c 64 2c 20 64 6f 20 6e 6f 74 68 69 6e 67 2e 0a ~ " dup long-string-comment-wrap-threshold <= {" 20 20 64 75 70 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 63 6f 6d 6d 65 6e 74 2d 77 72 61 70 2d 74 68 72 65 73 68 6f 6c 64 20 3c 3d 20 7b 0a ~ " long-string-comment-wrap-threshold 1- { dup 1 < } {" 20 20 20 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 63 6f 6d 6d 65 6e 74 2d 77 72 61 70 2d 74 68 72 65 73 68 6f 6c 64 20 31 2d 20 7b 20 64 75 70 20 31 20 3c 20 7d 20 7b 0a ~ " ~ (string pointer, maximum length, offset)" 20 20 20 20 20 20 7e 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 2c 20 6f 66 66 73 65 74 29 0a ~ " 2 pick over + 8@ 0x20 = {" 20 20 20 20 20 20 32 20 70 69 63 6b 20 6f 76 65 72 20 2b 20 38 40 20 30 78 32 30 20 3d 20 7b 0a ~ " 3unroll 2drop exit" 20 20 20 20 20 20 20 20 33 75 6e 72 6f 6c 6c 20 32 64 72 6f 70 20 65 78 69 74 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ (string pointer, maximum length, offset)" 20 20 20 20 20 20 7e 20 28 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6d 61 78 69 6d 75 6d 20 6c 65 6e 67 74 68 2c 20 6f 66 66 73 65 74 29 0a ~ " 1-" 20 20 20 20 20 20 31 2d 0a ~ " } while drop" 20 20 20 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ No case matched, so fall back to hard-wrapping at the" ~ " threshold." 20 20 7e 20 4e 6f 20 63 61 73 65 20 6d 61 74 63 68 65 64 2c 20 73 6f 20 66 61 6c 6c 20 62 61 63 6b 20 74 6f 20 68 61 72 64 2d 77 72 61 70 70 69 6e 67 20 61 74 20 74 68 65 20 74 68 72 65 73 68 6f 6c 64 2e 0a ~ " swap drop long-string-comment-wrap-threshold min ;" 20 20 73 77 61 70 20 64 72 6f 70 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 63 6f 6d 6d 65 6e 74 2d 77 72 61 70 2d 74 68 72 65 73 68 6f 6c 64 20 6d 69 6e 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ The code in hex-packstring-trace, below, is broken into" ~ " two cases, one for" 7e 20 20 20 54 68 65 20 63 6f 64 65 20 69 6e 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 2c 20 62 65 6c 6f 77 2c 20 69 73 20 62 72 6f 6b 65 6e 20 69 6e 74 6f 20 74 77 6f 20 63 61 73 65 73 2c 20 6f 6e 65 20 66 6f 72 0a ~ "~ ordinary strings and one for very long strings that need" ~ " special formatting." 7e 20 6f 72 64 69 6e 61 72 79 20 73 74 72 69 6e 67 73 20 61 6e 64 20 6f 6e 65 20 66 6f 72 20 76 65 72 79 20 6c 6f 6e 67 20 73 74 72 69 6e 67 73 20 74 68 61 74 20 6e 65 65 64 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 61 74 74 69 6e 67 2e 0a ~ "~ Most of its complexity pertains to iteration structure;" ~ " the logic of" 7e 20 4d 6f 73 74 20 6f 66 20 69 74 73 20 63 6f 6d 70 6c 65 78 69 74 79 20 70 65 72 74 61 69 6e 73 20 74 6f 20 69 74 65 72 61 74 69 6f 6e 20 73 74 72 75 63 74 75 72 65 3b 20 74 68 65 20 6c 6f 67 69 63 20 6f 66 0a ~ "~ actually creating metadata entries has been deferred to" ~ " helpers. This helper" 7e 20 61 63 74 75 61 6c 6c 79 20 63 72 65 61 74 69 6e 67 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 68 61 73 20 62 65 65 6e 20 64 65 66 65 72 72 65 64 20 74 6f 20 68 65 6c 70 65 72 73 2e 20 54 68 69 73 20 68 65 6c 70 65 72 0a ~ "~ handles the short-string case." 7e 20 68 61 6e 64 6c 65 73 20 74 68 65 20 73 68 6f 72 74 2d 73 74 72 69 6e 67 20 63 61 73 65 2e 0a ~ "~" 7e 0a ~ "~ There is only one call to this helper per string, since" ~ " that's all that's" 7e 20 20 20 54 68 65 72 65 20 69 73 20 6f 6e 6c 79 20 6f 6e 65 20 63 61 6c 6c 20 74 6f 20 74 68 69 73 20 68 65 6c 70 65 72 20 70 65 72 20 73 74 72 69 6e 67 2c 20 73 69 6e 63 65 20 74 68 61 74 27 73 20 61 6c 6c 20 74 68 61 74 27 73 0a ~ "~ needed." 7e 20 6e 65 65 64 65 64 2e 0a ~ "~" 7e 0a ~ "~ (output point, string length, string pointer --)" 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": add-short-string-entry-pair" 3a 20 61 64 64 2d 73 68 6f 72 74 2d 73 74 72 69 6e 67 2d 65 6e 74 72 79 2d 70 61 69 72 0a ~ " drop 2dup over" 20 20 64 72 6f 70 20 32 64 75 70 20 6f 76 65 72 0a ~ " ~ (output point, string length, output point, string" ~ " length, output point)" 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " hex-output-metadata-entry-type-push-subitem-string swap" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (output point, string length)" 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 29 0a ~ " hex-output-metadata-entry-type-line-comment" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" '#' (string literal with null)"" 20 20 73 22 20 27 23 27 20 20 20 28 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 77 69 74 68 20 6e 75 6c 6c 29 22 0a ~ " add-hex-output-metadata-entry ;" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ The code in hex-packstring-trace, below, is broken into" ~ " two cases, one for" 7e 20 20 20 54 68 65 20 63 6f 64 65 20 69 6e 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 2c 20 62 65 6c 6f 77 2c 20 69 73 20 62 72 6f 6b 65 6e 20 69 6e 74 6f 20 74 77 6f 20 63 61 73 65 73 2c 20 6f 6e 65 20 66 6f 72 0a ~ "~ ordinary strings and one for very long strings that need" ~ " special formatting." 7e 20 6f 72 64 69 6e 61 72 79 20 73 74 72 69 6e 67 73 20 61 6e 64 20 6f 6e 65 20 66 6f 72 20 76 65 72 79 20 6c 6f 6e 67 20 73 74 72 69 6e 67 73 20 74 68 61 74 20 6e 65 65 64 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 61 74 74 69 6e 67 2e 0a ~ "~ The long-string case begins by outputting a fixed set of" ~ " entries that" 7e 20 54 68 65 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 20 63 61 73 65 20 62 65 67 69 6e 73 20 62 79 20 6f 75 74 70 75 74 74 69 6e 67 20 61 20 66 69 78 65 64 20 73 65 74 20 6f 66 20 65 6e 74 72 69 65 73 20 74 68 61 74 0a ~ "~ describe, to the reader, what's about to happen. This" ~ " helper produces those" 7e 20 64 65 73 63 72 69 62 65 2c 20 74 6f 20 74 68 65 20 72 65 61 64 65 72 2c 20 77 68 61 74 27 73 20 61 62 6f 75 74 20 74 6f 20 68 61 70 70 65 6e 2e 20 54 68 69 73 20 68 65 6c 70 65 72 20 70 72 6f 64 75 63 65 73 20 74 68 6f 73 65 0a ~ "~ entries." 7e 20 65 6e 74 72 69 65 73 2e 0a ~ "~" 7e 0a ~ "~ (output point--)" 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2d 2d 29 0a ~ ": add-long-string-header-entries" 3a 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 68 65 61 64 65 72 2d 65 6e 74 72 69 65 73 0a ~ " dup 0 hex-output-metadata-entry-type-blank-line 0" 20 20 64 75 70 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 30 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " dup 0 hex-output-metadata-entry-type-line-comment" 20 20 64 75 70 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" What follows is a long string literal. For" ~ " convenience, its contents"" 20 20 73 22 20 20 20 57 68 61 74 20 66 6f 6c 6c 6f 77 73 20 69 73 20 61 20 6c 6f 6e 67 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2e 20 46 6f 72 20 63 6f 6e 76 65 6e 69 65 6e 63 65 2c 20 69 74 73 20 63 6f 6e 74 65 6e 74 73 22 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " dup 0 hex-output-metadata-entry-type-line-comment" 20 20 64 75 70 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" are given in short runs, but it's all a single string." ~ " When possible,"" 20 20 73 22 20 61 72 65 20 67 69 76 65 6e 20 69 6e 20 73 68 6f 72 74 20 72 75 6e 73 2c 20 62 75 74 20 69 74 27 73 20 61 6c 6c 20 61 20 73 69 6e 67 6c 65 20 73 74 72 69 6e 67 2e 20 57 68 65 6e 20 70 6f 73 73 69 62 6c 65 2c 22 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " dup 0 hex-output-metadata-entry-type-line-comment" 20 20 64 75 70 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" runs are broken at line endings or word breaks." ~ " Trailing line endings"" 20 20 73 22 20 72 75 6e 73 20 61 72 65 20 62 72 6f 6b 65 6e 20 61 74 20 6c 69 6e 65 20 65 6e 64 69 6e 67 73 20 6f 72 20 77 6f 72 64 20 62 72 65 61 6b 73 2e 20 54 72 61 69 6c 69 6e 67 20 6c 69 6e 65 20 65 6e 64 69 6e 67 73 22 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " ~ Note the lack of a "dup" this time." 20 20 7e 20 4e 6f 74 65 20 74 68 65 20 6c 61 63 6b 20 6f 66 20 61 20 22 64 75 70 22 20 74 68 69 73 20 74 69 6d 65 2e 0a ~ " 0 hex-output-metadata-entry-type-line-comment" 20 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" are not shown in the comments; look for them in the" ~ " hex."" 20 20 73 22 20 61 72 65 20 6e 6f 74 20 73 68 6f 77 6e 20 69 6e 20 74 68 65 20 63 6f 6d 6d 65 6e 74 73 3b 20 6c 6f 6f 6b 20 66 6f 72 20 74 68 65 6d 20 69 6e 20 74 68 65 20 68 65 78 2e 22 0a ~ " add-hex-output-metadata-entry ;" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ The code in hex-packstring-trace, below, is broken into" ~ " two cases, one for" 7e 20 20 20 54 68 65 20 63 6f 64 65 20 69 6e 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 2c 20 62 65 6c 6f 77 2c 20 69 73 20 62 72 6f 6b 65 6e 20 69 6e 74 6f 20 74 77 6f 20 63 61 73 65 73 2c 20 6f 6e 65 20 66 6f 72 0a ~ "~ ordinary strings and one for very long strings that need" ~ " special formatting." 7e 20 6f 72 64 69 6e 61 72 79 20 73 74 72 69 6e 67 73 20 61 6e 64 20 6f 6e 65 20 66 6f 72 20 76 65 72 79 20 6c 6f 6e 67 20 73 74 72 69 6e 67 73 20 74 68 61 74 20 6e 65 65 64 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 61 74 74 69 6e 67 2e 0a ~ "~ The long-string case ends by outputting a fixed set of" ~ " entries that" 7e 20 54 68 65 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 20 63 61 73 65 20 65 6e 64 73 20 62 79 20 6f 75 74 70 75 74 74 69 6e 67 20 61 20 66 69 78 65 64 20 73 65 74 20 6f 66 20 65 6e 74 72 69 65 73 20 74 68 61 74 0a ~ "~ inform the reader the special handling is complete. This" ~ " helper produces" 7e 20 69 6e 66 6f 72 6d 20 74 68 65 20 72 65 61 64 65 72 20 74 68 65 20 73 70 65 63 69 61 6c 20 68 61 6e 64 6c 69 6e 67 20 69 73 20 63 6f 6d 70 6c 65 74 65 2e 20 54 68 69 73 20 68 65 6c 70 65 72 20 70 72 6f 64 75 63 65 73 0a ~ "~ those entries." 7e 20 74 68 6f 73 65 20 65 6e 74 72 69 65 73 2e 0a ~ "~" 7e 0a ~ "~ (output point--)" 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2d 2d 29 0a ~ ": add-long-string-footer-entries" 3a 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 66 6f 6f 74 65 72 2d 65 6e 74 72 69 65 73 0a ~ " dup 0 hex-output-metadata-entry-type-blank-line 0" 20 20 64 75 70 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 30 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " dup 0 hex-output-metadata-entry-type-line-comment" 20 20 64 75 70 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" This is the end of the long string literal. We now" ~ " return you to the"" 20 20 73 22 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 6f 6e 67 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2e 20 57 65 20 6e 6f 77 20 72 65 74 75 72 6e 20 79 6f 75 20 74 6f 20 74 68 65 22 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " dup 0 hex-output-metadata-entry-type-line-comment" 20 20 64 75 70 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " s" normal hex-dump stuff."" 20 20 73 22 20 6e 6f 72 6d 61 6c 20 68 65 78 2d 64 75 6d 70 20 73 74 75 66 66 2e 22 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ "" 0a ~ " ~ Note the lack of a "dup" this time." 20 20 7e 20 4e 6f 74 65 20 74 68 65 20 6c 61 63 6b 20 6f 66 20 61 20 22 64 75 70 22 20 74 68 69 73 20 74 69 6d 65 2e 0a ~ " 0 hex-output-metadata-entry-type-blank-line 0" 20 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 30 0a ~ " add-hex-output-metadata-entry ;" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ The code in hex-packstring-trace, below, is broken into" ~ " two cases, one for" 7e 20 20 20 54 68 65 20 63 6f 64 65 20 69 6e 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 2c 20 62 65 6c 6f 77 2c 20 69 73 20 62 72 6f 6b 65 6e 20 69 6e 74 6f 20 74 77 6f 20 63 61 73 65 73 2c 20 6f 6e 65 20 66 6f 72 0a ~ "~ ordinary strings and one for very long strings that need" ~ " special formatting." 7e 20 6f 72 64 69 6e 61 72 79 20 73 74 72 69 6e 67 73 20 61 6e 64 20 6f 6e 65 20 66 6f 72 20 76 65 72 79 20 6c 6f 6e 67 20 73 74 72 69 6e 67 73 20 74 68 61 74 20 6e 65 65 64 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 61 74 74 69 6e 67 2e 0a ~ "~ The long-string case has two layers of loop, and the" ~ " outer layer needs to" 7e 20 54 68 65 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 20 63 61 73 65 20 68 61 73 20 74 77 6f 20 6c 61 79 65 72 73 20 6f 66 20 6c 6f 6f 70 2c 20 61 6e 64 20 74 68 65 20 6f 75 74 65 72 20 6c 61 79 65 72 20 6e 65 65 64 73 20 74 6f 0a ~ "~ output a fixed set of entries at the start of each of its" ~ " iterations. This" 7e 20 6f 75 74 70 75 74 20 61 20 66 69 78 65 64 20 73 65 74 20 6f 66 20 65 6e 74 72 69 65 73 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 65 61 63 68 20 6f 66 20 69 74 73 20 69 74 65 72 61 74 69 6f 6e 73 2e 20 54 68 69 73 0a ~ "~ helper produces those entries." 7e 20 68 65 6c 70 65 72 20 70 72 6f 64 75 63 65 73 20 74 68 6f 73 65 20 65 6e 74 72 69 65 73 2e 0a ~ "~" 7e 0a ~ "~ (output point--)" 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2d 2d 29 0a ~ ": add-long-string-outer-iteration-header-entries" 3a 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 6f 75 74 65 72 2d 69 74 65 72 61 74 69 6f 6e 2d 68 65 61 64 65 72 2d 65 6e 74 72 69 65 73 0a ~ " 0 hex-output-metadata-entry-type-blank-line 0" 20 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 30 0a ~ " add-hex-output-metadata-entry ;" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ The code in hex-packstring-trace, below, is broken into" ~ " two cases, one for" 7e 20 20 20 54 68 65 20 63 6f 64 65 20 69 6e 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 2c 20 62 65 6c 6f 77 2c 20 69 73 20 62 72 6f 6b 65 6e 20 69 6e 74 6f 20 74 77 6f 20 63 61 73 65 73 2c 20 6f 6e 65 20 66 6f 72 0a ~ "~ ordinary strings and one for very long strings that need" ~ " special formatting." 7e 20 6f 72 64 69 6e 61 72 79 20 73 74 72 69 6e 67 73 20 61 6e 64 20 6f 6e 65 20 66 6f 72 20 76 65 72 79 20 6c 6f 6e 67 20 73 74 72 69 6e 67 73 20 74 68 61 74 20 6e 65 65 64 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 61 74 74 69 6e 67 2e 0a ~ "~ Most of its complexity pertains to iteration structure;" ~ " the logic of" 7e 20 4d 6f 73 74 20 6f 66 20 69 74 73 20 63 6f 6d 70 6c 65 78 69 74 79 20 70 65 72 74 61 69 6e 73 20 74 6f 20 69 74 65 72 61 74 69 6f 6e 20 73 74 72 75 63 74 75 72 65 3b 20 74 68 65 20 6c 6f 67 69 63 20 6f 66 0a ~ "~ actually creating metadata entries has been deferred to" ~ " helpers. This helper" 7e 20 61 63 74 75 61 6c 6c 79 20 63 72 65 61 74 69 6e 67 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 68 61 73 20 62 65 65 6e 20 64 65 66 65 72 72 65 64 20 74 6f 20 68 65 6c 70 65 72 73 2e 20 54 68 69 73 20 68 65 6c 70 65 72 0a ~ "~ handles the entries for a single iteration of the inner" ~ " loop in the" 7e 20 68 61 6e 64 6c 65 73 20 74 68 65 20 65 6e 74 72 69 65 73 20 66 6f 72 20 61 20 73 69 6e 67 6c 65 20 69 74 65 72 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 69 6e 6e 65 72 20 6c 6f 6f 70 20 69 6e 20 74 68 65 0a ~ "~ long-string case." 7e 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 20 63 61 73 65 2e 0a ~ "~" 7e 0a ~ "~ There are potentially quite a lot of calls to this" ~ " helper, exactly one per" 7e 20 20 20 54 68 65 72 65 20 61 72 65 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 71 75 69 74 65 20 61 20 6c 6f 74 20 6f 66 20 63 61 6c 6c 73 20 74 6f 20 74 68 69 73 20 68 65 6c 70 65 72 2c 20 65 78 61 63 74 6c 79 20 6f 6e 65 20 70 65 72 0a ~ "~ inner iteration. See the full explanation in" ~ " hex-packstring-trace about the" 7e 20 69 6e 6e 65 72 20 69 74 65 72 61 74 69 6f 6e 2e 20 53 65 65 20 74 68 65 20 66 75 6c 6c 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 69 6e 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 20 61 62 6f 75 74 20 74 68 65 0a ~ "~ meaning of the inner and outer layers of iteration." 7e 20 6d 65 61 6e 69 6e 67 20 6f 66 20 74 68 65 20 69 6e 6e 65 72 20 61 6e 64 20 6f 75 74 65 72 20 6c 61 79 65 72 73 20 6f 66 20 69 74 65 72 61 74 69 6f 6e 2e 0a ~ "~" 7e 0a ~ "~ (output point, string length, string pointer --)" 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": add-long-string-entry-pair" 3a 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 65 6e 74 72 79 2d 70 61 69 72 0a ~ " ~ If the final character would be a newline, exclude" ~ " that from the comment" 20 20 7e 20 20 20 49 66 20 74 68 65 20 66 69 6e 61 6c 20 63 68 61 72 61 63 74 65 72 20 77 6f 75 6c 64 20 62 65 20 61 20 6e 65 77 6c 69 6e 65 2c 20 65 78 63 6c 75 64 65 20 74 68 61 74 20 66 72 6f 6d 20 74 68 65 20 63 6f 6d 6d 65 6e 74 0a ~ " ~ body." 20 20 7e 20 62 6f 64 79 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Please notice that we do this check on every comment," ~ " though we only" 20 20 7e 20 20 20 50 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 61 74 20 77 65 20 64 6f 20 74 68 69 73 20 63 68 65 63 6b 20 6f 6e 20 65 76 65 72 79 20 63 6f 6d 6d 65 6e 74 2c 20 74 68 6f 75 67 68 20 77 65 20 6f 6e 6c 79 0a ~ " ~ care about it for the final one in the block. Because" ~ " of the way" 20 20 7e 20 63 61 72 65 20 61 62 6f 75 74 20 69 74 20 66 6f 72 20 74 68 65 20 66 69 6e 61 6c 20 6f 6e 65 20 69 6e 20 74 68 65 20 62 6c 6f 63 6b 2e 20 42 65 63 61 75 73 65 20 6f 66 20 74 68 65 20 77 61 79 0a ~ " ~ line-wrapping will always choose the first newline if" ~ " there is one, we" 20 20 7e 20 6c 69 6e 65 2d 77 72 61 70 70 69 6e 67 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 63 68 6f 6f 73 65 20 74 68 65 20 66 69 72 73 74 20 6e 65 77 6c 69 6e 65 20 69 66 20 74 68 65 72 65 20 69 73 20 6f 6e 65 2c 20 77 65 0a ~ " ~ don't need to worry about this check firing when it's" ~ " unwanted." 20 20 7e 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 77 6f 72 72 79 20 61 62 6f 75 74 20 74 68 69 73 20 63 68 65 63 6b 20 66 69 72 69 6e 67 20 77 68 65 6e 20 69 74 27 73 20 75 6e 77 61 6e 74 65 64 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Letting that happen here means we have less trouble" ~ " writing the" 20 20 7e 20 20 20 4c 65 74 74 69 6e 67 20 74 68 61 74 20 68 61 70 70 65 6e 20 68 65 72 65 20 6d 65 61 6e 73 20 77 65 20 68 61 76 65 20 6c 65 73 73 20 74 72 6f 75 62 6c 65 20 77 72 69 74 69 6e 67 20 74 68 65 0a ~ " ~ termination check for the inner loop." 20 20 7e 20 74 65 72 6d 69 6e 61 74 69 6f 6e 20 63 68 65 63 6b 20 66 6f 72 20 74 68 65 20 69 6e 6e 65 72 20 6c 6f 6f 70 2e 0a ~ " 2dup + 1- 8@ 0x0a = { swap 1- swap } if" 20 20 32 64 75 70 20 2b 20 31 2d 20 38 40 20 30 78 30 61 20 3d 20 7b 20 73 77 61 70 20 31 2d 20 73 77 61 70 20 7d 20 69 66 0a ~ " ~ (output point, string length, string pointer)" 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " 2 pick 2 pick 2 pick" 20 20 32 20 70 69 63 6b 20 32 20 70 69 63 6b 20 32 20 70 69 63 6b 0a ~ " hex-output-metadata-entry-type-push-subitem-string swap" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " ~ (output point, string length, string pointer)" 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " drop" 20 20 64 72 6f 70 0a ~ " hex-output-metadata-entry-type-line-comment s" '#'"" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 20 73 22 20 27 23 27 22 0a ~ " add-hex-output-metadata-entry ;" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (output point, string pointer --)" 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": hex-packstring-trace" 3a 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 0a ~ " dup stringlen 1+" 20 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 31 2b 0a ~ " ~ (output point, string pointer, string length)" 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 29 0a ~ " 2 pick over hex-pack-trace" 20 20 32 20 70 69 63 6b 20 6f 76 65 72 20 68 65 78 2d 70 61 63 6b 2d 74 72 61 63 65 0a ~ " swap" 20 20 73 77 61 70 0a ~ " ~ (output point, string length, string pointer)" 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " over long-string-threshold >= {" 20 20 6f 76 65 72 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 74 68 72 65 73 68 6f 6c 64 20 3e 3d 20 7b 0a ~ " add-short-string-entry-pair" 20 20 20 20 61 64 64 2d 73 68 6f 72 74 2d 73 74 72 69 6e 67 2d 65 6e 74 72 79 2d 70 61 69 72 0a ~ " } {" 20 20 7d 20 7b 0a ~ " 2 pick add-long-string-header-entries" 20 20 20 20 32 20 70 69 63 6b 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 68 65 61 64 65 72 2d 65 6e 74 72 69 65 73 0a ~ "" 0a ~ " ~ It's important not to accidentally confuse the" ~ " string point with the" 20 20 20 20 7e 20 20 20 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 6e 6f 74 20 74 6f 20 61 63 63 69 64 65 6e 74 61 6c 6c 79 20 63 6f 6e 66 75 73 65 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 20 77 69 74 68 20 74 68 65 0a ~ " ~ output point here. Because of the multi-pass nature" ~ " of the label loop," 20 20 20 20 7e 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 68 65 72 65 2e 20 42 65 63 61 75 73 65 20 6f 66 20 74 68 65 20 6d 75 6c 74 69 2d 70 61 73 73 20 6e 61 74 75 72 65 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 20 6c 6f 6f 70 2c 0a ~ " ~ there's a real chance the contents of both will be" ~ " identical, making it" 20 20 20 20 7e 20 74 68 65 72 65 27 73 20 61 20 72 65 61 6c 20 63 68 61 6e 63 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 62 6f 74 68 20 77 69 6c 6c 20 62 65 20 69 64 65 6e 74 69 63 61 6c 2c 20 6d 61 6b 69 6e 67 20 69 74 0a ~ " ~ very easy to use the wrong one since it will seem to" ~ " work. There is no" 20 20 20 20 7e 20 76 65 72 79 20 65 61 73 79 20 74 6f 20 75 73 65 20 74 68 65 20 77 72 6f 6e 67 20 6f 6e 65 20 73 69 6e 63 65 20 69 74 20 77 69 6c 6c 20 73 65 65 6d 20 74 6f 20 77 6f 72 6b 2e 20 54 68 65 72 65 20 69 73 20 6e 6f 0a ~ " ~ guarantee that all long strings in the final pass" ~ " will be at the same" 20 20 20 20 7e 20 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 61 6c 6c 20 6c 6f 6e 67 20 73 74 72 69 6e 67 73 20 69 6e 20 74 68 65 20 66 69 6e 61 6c 20 70 61 73 73 20 77 69 6c 6c 20 62 65 20 61 74 20 74 68 65 20 73 61 6d 65 0a ~ " ~ locations they were in the penultimate pass, or that" ~ " nothing has" 20 20 20 20 7e 20 6c 6f 63 61 74 69 6f 6e 73 20 74 68 65 79 20 77 65 72 65 20 69 6e 20 74 68 65 20 70 65 6e 75 6c 74 69 6d 61 74 65 20 70 61 73 73 2c 20 6f 72 20 74 68 61 74 20 6e 6f 74 68 69 6e 67 20 68 61 73 0a ~ " ~ scribbled over them, so don't get it wrong!" 20 20 20 20 7e 20 73 63 72 69 62 62 6c 65 64 20 6f 76 65 72 20 74 68 65 6d 2c 20 73 6f 20 64 6f 6e 27 74 20 67 65 74 20 69 74 20 77 72 6f 6e 67 21 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ Okay, got that firmly in mind? Good. Now, what" ~ " we're doing is a" 20 20 20 20 7e 20 20 20 4f 6b 61 79 2c 20 67 6f 74 20 74 68 61 74 20 66 69 72 6d 6c 79 20 69 6e 20 6d 69 6e 64 3f 20 47 6f 6f 64 2e 20 4e 6f 77 2c 20 77 68 61 74 20 77 65 27 72 65 20 64 6f 69 6e 67 20 69 73 20 61 0a ~ " ~ two-layer iteration. That may be surprising" ~ " complexity. To motivate it," 20 20 20 20 7e 20 74 77 6f 2d 6c 61 79 65 72 20 69 74 65 72 61 74 69 6f 6e 2e 20 54 68 61 74 20 6d 61 79 20 62 65 20 73 75 72 70 72 69 73 69 6e 67 20 63 6f 6d 70 6c 65 78 69 74 79 2e 20 54 6f 20 6d 6f 74 69 76 61 74 65 20 69 74 2c 0a ~ " ~ contemplate how the text inside the string is likely" ~ " wrapped to 80" 20 20 20 20 7e 20 63 6f 6e 74 65 6d 70 6c 61 74 65 20 68 6f 77 20 74 68 65 20 74 65 78 74 20 69 6e 73 69 64 65 20 74 68 65 20 73 74 72 69 6e 67 20 69 73 20 6c 69 6b 65 6c 79 20 77 72 61 70 70 65 64 20 74 6f 20 38 30 0a ~ " ~ columns wide, and the formatted hex dump we're" ~ " producing is likely ALSO" 20 20 20 20 7e 20 63 6f 6c 75 6d 6e 73 20 77 69 64 65 2c 20 61 6e 64 20 74 68 65 20 66 6f 72 6d 61 74 74 65 64 20 68 65 78 20 64 75 6d 70 20 77 65 27 72 65 20 70 72 6f 64 75 63 69 6e 67 20 69 73 20 6c 69 6b 65 6c 79 20 41 4c 53 4f 0a ~ " ~ wrapped to 80 columns wide. Our choice to displaying" ~ " everything in" 20 20 20 20 7e 20 77 72 61 70 70 65 64 20 74 6f 20 38 30 20 63 6f 6c 75 6d 6e 73 20 77 69 64 65 2e 20 4f 75 72 20 63 68 6f 69 63 65 20 74 6f 20 64 69 73 70 6c 61 79 69 6e 67 20 65 76 65 72 79 74 68 69 6e 67 20 69 6e 0a ~ " ~ hexadecimal, with comment syntax, and so on, results" ~ " in us not being" 20 20 20 20 7e 20 68 65 78 61 64 65 63 69 6d 61 6c 2c 20 77 69 74 68 20 63 6f 6d 6d 65 6e 74 20 73 79 6e 74 61 78 2c 20 61 6e 64 20 73 6f 20 6f 6e 2c 20 72 65 73 75 6c 74 73 20 69 6e 20 75 73 20 6e 6f 74 20 62 65 69 6e 67 0a ~ " ~ able to give the inner text the 80 columns it wants," ~ " and we have to get" 20 20 20 20 7e 20 61 62 6c 65 20 74 6f 20 67 69 76 65 20 74 68 65 20 69 6e 6e 65 72 20 74 65 78 74 20 74 68 65 20 38 30 20 63 6f 6c 75 6d 6e 73 20 69 74 20 77 61 6e 74 73 2c 20 61 6e 64 20 77 65 20 68 61 76 65 20 74 6f 20 67 65 74 0a ~ " ~ creative." 20 20 20 20 7e 20 63 72 65 61 74 69 76 65 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ We resolve this by having an outer loop which" ~ " breaks the string into" 20 20 20 20 7e 20 20 20 57 65 20 72 65 73 6f 6c 76 65 20 74 68 69 73 20 62 79 20 68 61 76 69 6e 67 20 61 6e 20 6f 75 74 65 72 20 6c 6f 6f 70 20 77 68 69 63 68 20 62 72 65 61 6b 73 20 74 68 65 20 73 74 72 69 6e 67 20 69 6e 74 6f 0a ~ " ~ lines (preferring to do so at newlines when" ~ " possible), and renders each" 20 20 20 20 7e 20 6c 69 6e 65 73 20 28 70 72 65 66 65 72 72 69 6e 67 20 74 6f 20 64 6f 20 73 6f 20 61 74 20 6e 65 77 6c 69 6e 65 73 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 29 2c 20 61 6e 64 20 72 65 6e 64 65 72 73 20 65 61 63 68 0a ~ " ~ of these as a consecutive block of hex, nothing" ~ " interrupting it. Then" 20 20 20 20 7e 20 6f 66 20 74 68 65 73 65 20 61 73 20 61 20 63 6f 6e 73 65 63 75 74 69 76 65 20 62 6c 6f 63 6b 20 6f 66 20 68 65 78 2c 20 6e 6f 74 68 69 6e 67 20 69 6e 74 65 72 72 75 70 74 69 6e 67 20 69 74 2e 20 54 68 65 6e 0a ~ " ~ we also have an inner loop which breaks the comments" ~ " preceding the hex" 20 20 20 20 7e 20 77 65 20 61 6c 73 6f 20 68 61 76 65 20 61 6e 20 69 6e 6e 65 72 20 6c 6f 6f 70 20 77 68 69 63 68 20 62 72 65 61 6b 73 20 74 68 65 20 63 6f 6d 6d 65 6e 74 73 20 70 72 65 63 65 64 69 6e 67 20 74 68 65 20 68 65 78 0a ~ " ~ (preferring to do so at spaces when possible), to" ~ " make a block of" 20 20 20 20 7e 20 28 70 72 65 66 65 72 72 69 6e 67 20 74 6f 20 64 6f 20 73 6f 20 61 74 20 73 70 61 63 65 73 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 29 2c 20 74 6f 20 6d 61 6b 65 20 61 20 62 6c 6f 63 6b 20 6f 66 0a ~ " ~ comments that correspond to the hex and all come at" ~ " the start of it." 20 20 20 20 7e 20 63 6f 6d 6d 65 6e 74 73 20 74 68 61 74 20 63 6f 72 72 65 73 70 6f 6e 64 20 74 6f 20 74 68 65 20 68 65 78 20 61 6e 64 20 61 6c 6c 20 63 6f 6d 65 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 69 74 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ In the event that lines are very long, fallback" ~ " behavior may break" 20 20 20 20 7e 20 20 20 49 6e 20 74 68 65 20 65 76 65 6e 74 20 74 68 61 74 20 6c 69 6e 65 73 20 61 72 65 20 76 65 72 79 20 6c 6f 6e 67 2c 20 66 61 6c 6c 62 61 63 6b 20 62 65 68 61 76 69 6f 72 20 6d 61 79 20 62 72 65 61 6b 0a ~ " ~ them somewhere other than a newline, but conceptually" ~ " it's easiest if" 20 20 20 20 7e 20 74 68 65 6d 20 73 6f 6d 65 77 68 65 72 65 20 6f 74 68 65 72 20 74 68 61 6e 20 61 20 6e 65 77 6c 69 6e 65 2c 20 62 75 74 20 63 6f 6e 63 65 70 74 75 61 6c 6c 79 20 69 74 27 73 20 65 61 73 69 65 73 74 20 69 66 0a ~ " ~ you think of each hex "paragraph" as representing a" ~ " single line of text" 20 20 20 20 7e 20 79 6f 75 20 74 68 69 6e 6b 20 6f 66 20 65 61 63 68 20 68 65 78 20 22 70 61 72 61 67 72 61 70 68 22 20 61 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 61 20 73 69 6e 67 6c 65 20 6c 69 6e 65 20 6f 66 20 74 65 78 74 0a ~ " ~ from the inside-the-string perspective." 20 20 20 20 7e 20 66 72 6f 6d 20 74 68 65 20 69 6e 73 69 64 65 2d 74 68 65 2d 73 74 72 69 6e 67 20 70 65 72 73 70 65 63 74 69 76 65 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ If that sounds abstract, it's a good idea to go" ~ " look at an example of" 20 20 20 20 7e 20 20 20 49 66 20 74 68 61 74 20 73 6f 75 6e 64 73 20 61 62 73 74 72 61 63 74 2c 20 69 74 27 73 20 61 20 67 6f 6f 64 20 69 64 65 61 20 74 6f 20 67 6f 20 6c 6f 6f 6b 20 61 74 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 0a ~ " ~ the rendered output at this point. Look in" ~ " "evoke.hex" for the label" 20 20 20 20 7e 20 74 68 65 20 72 65 6e 64 65 72 65 64 20 6f 75 74 70 75 74 20 61 74 20 74 68 69 73 20 70 6f 69 6e 74 2e 20 4c 6f 6f 6b 20 69 6e 20 22 65 76 6f 6b 65 2e 68 65 78 22 20 66 6f 72 20 74 68 65 20 6c 61 62 65 6c 0a ~ " ~ "boot-source" and skim its contents; that's all" ~ " rendered by this code." 20 20 20 20 7e 20 22 62 6f 6f 74 2d 73 6f 75 72 63 65 22 20 61 6e 64 20 73 6b 69 6d 20 69 74 73 20 63 6f 6e 74 65 6e 74 73 3b 20 74 68 61 74 27 73 20 61 6c 6c 20 72 65 6e 64 65 72 65 64 20 62 79 20 74 68 69 73 20 63 6f 64 65 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ Anyway, this "while" block is the outer loop." 20 20 20 20 7e 20 20 20 41 6e 79 77 61 79 2c 20 74 68 69 73 20 22 77 68 69 6c 65 22 20 62 6c 6f 63 6b 20 69 73 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 6f 70 2e 0a ~ " swap { dup } {" 20 20 20 20 73 77 61 70 20 7b 20 64 75 70 20 7d 20 7b 0a ~ " ~ (output point, outer string point, remaining" ~ " length)" 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 75 74 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 72 65 6d 61 69 6e 69 6e 67 20 6c 65 6e 67 74 68 29 0a ~ " 2 pick" ~ " add-long-string-outer-iteration-header-entries" 20 20 20 20 20 20 32 20 70 69 63 6b 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 6f 75 74 65 72 2d 69 74 65 72 61 74 69 6f 6e 2d 68 65 61 64 65 72 2d 65 6e 74 72 69 65 73 0a ~ "" 0a ~ " dup long-string-threshold min" 20 20 20 20 20 20 64 75 70 20 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 74 68 72 65 73 68 6f 6c 64 20 6d 69 6e 0a ~ " ~ (output point, outer string point, remaining" ~ " length," 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 75 74 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 72 65 6d 61 69 6e 69 6e 67 20 6c 65 6e 67 74 68 2c 0a ~ " ~ max length this outer iteration)" 20 20 20 20 20 20 7e 20 20 6d 61 78 20 6c 65 6e 67 74 68 20 74 68 69 73 20 6f 75 74 65 72 20 69 74 65 72 61 74 69 6f 6e 29 0a ~ " 2 pick swap choose-string-outer-break-point" 20 20 20 20 20 20 32 20 70 69 63 6b 20 73 77 61 70 20 63 68 6f 6f 73 65 2d 73 74 72 69 6e 67 2d 6f 75 74 65 72 2d 62 72 65 61 6b 2d 70 6f 69 6e 74 0a ~ " ~ (output point, outer string point, remaining" ~ " length," 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 75 74 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 72 65 6d 61 69 6e 69 6e 67 20 6c 65 6e 67 74 68 2c 0a ~ " ~ outer iteration length)" 20 20 20 20 20 20 7e 20 20 6f 75 74 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6c 65 6e 67 74 68 29 0a ~ "" 0a ~ " 2 pick 0" 20 20 20 20 20 20 32 20 70 69 63 6b 20 30 0a ~ " ~ (output point, outer string point, remaining" ~ " length," 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 75 74 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 72 65 6d 61 69 6e 69 6e 67 20 6c 65 6e 67 74 68 2c 0a ~ " ~ outer iteration length, inner string point, inner" ~ " iteration offset)" 20 20 20 20 20 20 7e 20 20 6f 75 74 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6c 65 6e 67 74 68 2c 20 69 6e 6e 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 69 6e 6e 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6f 66 66 73 65 74 29 0a ~ "" 0a ~ " { 2 pick over < } {" 20 20 20 20 20 20 7b 20 32 20 70 69 63 6b 20 6f 76 65 72 20 3c 20 7d 20 7b 0a ~ " ~ (output point, outer string point, remaining" ~ " length," 20 20 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 75 74 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 72 65 6d 61 69 6e 69 6e 67 20 6c 65 6e 67 74 68 2c 0a ~ " ~ outer iteration length, inner string point," ~ " inner iteration offset)" 20 20 20 20 20 20 20 20 7e 20 20 6f 75 74 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6c 65 6e 67 74 68 2c 20 69 6e 6e 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 69 6e 6e 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6f 66 66 73 65 74 29 0a ~ " 2 pick over -" 20 20 20 20 20 20 20 20 32 20 70 69 63 6b 20 6f 76 65 72 20 2d 0a ~ " ~ (output point, outer string point, remaining" ~ " length," 20 20 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 75 74 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 72 65 6d 61 69 6e 69 6e 67 20 6c 65 6e 67 74 68 2c 0a ~ " ~ outer iteration length, inner string point," ~ " inner iteration offset," 20 20 20 20 20 20 20 20 7e 20 20 6f 75 74 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6c 65 6e 67 74 68 2c 20 69 6e 6e 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 69 6e 6e 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6f 66 66 73 65 74 2c 0a ~ " ~ inner iteration length)" 20 20 20 20 20 20 20 20 7e 20 20 69 6e 6e 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6c 65 6e 67 74 68 29 0a ~ " 2 pick swap choose-string-inner-break-point" 20 20 20 20 20 20 20 20 32 20 70 69 63 6b 20 73 77 61 70 20 63 68 6f 6f 73 65 2d 73 74 72 69 6e 67 2d 69 6e 6e 65 72 2d 62 72 65 61 6b 2d 70 6f 69 6e 74 0a ~ "" 0a ~ " ~ It's worth noticing that we use the same output" ~ " point for all of" 20 20 20 20 20 20 20 20 7e 20 20 20 49 74 27 73 20 77 6f 72 74 68 20 6e 6f 74 69 63 69 6e 67 20 74 68 61 74 20 77 65 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 66 6f 72 20 61 6c 6c 20 6f 66 0a ~ " ~ these, which is what makes them appear at the top" ~ " of the hex block" 20 20 20 20 20 20 20 20 7e 20 74 68 65 73 65 2c 20 77 68 69 63 68 20 69 73 20 77 68 61 74 20 6d 61 6b 65 73 20 74 68 65 6d 20 61 70 70 65 61 72 20 61 74 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 68 65 78 20 62 6c 6f 63 6b 0a ~ " ~ rather than interspersed throughout it." 20 20 20 20 20 20 20 20 7e 20 72 61 74 68 65 72 20 74 68 61 6e 20 69 6e 74 65 72 73 70 65 72 73 65 64 20 74 68 72 6f 75 67 68 6f 75 74 20 69 74 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 7e 0a ~ " ~ We leave the newline-ignoring logic to" ~ " add-long-string-entry-pair," 20 20 20 20 20 20 20 20 7e 20 20 20 57 65 20 6c 65 61 76 65 20 74 68 65 20 6e 65 77 6c 69 6e 65 2d 69 67 6e 6f 72 69 6e 67 20 6c 6f 67 69 63 20 74 6f 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 65 6e 74 72 79 2d 70 61 69 72 2c 0a ~ " ~ as described further therein." 20 20 20 20 20 20 20 20 7e 20 61 73 20 64 65 73 63 72 69 62 65 64 20 66 75 72 74 68 65 72 20 74 68 65 72 65 69 6e 2e 0a ~ " 6 pick over 4 pick add-long-string-entry-pair" 20 20 20 20 20 20 20 20 36 20 70 69 63 6b 20 6f 76 65 72 20 34 20 70 69 63 6b 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 65 6e 74 72 79 2d 70 61 69 72 0a ~ "" 0a ~ " ~ (output point, outer string point, remaining" ~ " length," 20 20 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 75 74 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 72 65 6d 61 69 6e 69 6e 67 20 6c 65 6e 67 74 68 2c 0a ~ " ~ outer iteration length, inner string point," ~ " inner iteration offset," 20 20 20 20 20 20 20 20 7e 20 20 6f 75 74 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6c 65 6e 67 74 68 2c 20 69 6e 6e 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 69 6e 6e 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6f 66 66 73 65 74 2c 0a ~ " ~ inner iteration length)" 20 20 20 20 20 20 20 20 7e 20 20 69 6e 6e 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6c 65 6e 67 74 68 29 0a ~ " dup 4 roll + 3unroll" 20 20 20 20 20 20 20 20 64 75 70 20 34 20 72 6f 6c 6c 20 2b 20 33 75 6e 72 6f 6c 6c 0a ~ " dup 3roll + swap" 20 20 20 20 20 20 20 20 64 75 70 20 33 72 6f 6c 6c 20 2b 20 73 77 61 70 0a ~ " drop" 20 20 20 20 20 20 20 20 64 72 6f 70 0a ~ " } while 2drop" 20 20 20 20 20 20 7d 20 77 68 69 6c 65 20 32 64 72 6f 70 0a ~ " ~ (output point, outer string point, remaining" ~ " length," 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 6f 75 74 65 72 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 2c 20 72 65 6d 61 69 6e 69 6e 67 20 6c 65 6e 67 74 68 2c 0a ~ " ~ outer iteration length)" 20 20 20 20 20 20 7e 20 20 6f 75 74 65 72 20 69 74 65 72 61 74 69 6f 6e 20 6c 65 6e 67 74 68 29 0a ~ "" 0a ~ " dup 5 roll + 4 unroll" 20 20 20 20 20 20 64 75 70 20 35 20 72 6f 6c 6c 20 2b 20 34 20 75 6e 72 6f 6c 6c 0a ~ " dup 4 roll + 3unroll" 20 20 20 20 20 20 64 75 70 20 34 20 72 6f 6c 6c 20 2b 20 33 75 6e 72 6f 6c 6c 0a ~ " -" 20 20 20 20 20 20 2d 0a ~ " } while" 20 20 20 20 7d 20 77 68 69 6c 65 0a ~ "" 0a ~ " 2drop add-long-string-footer-entries" 20 20 20 20 32 64 72 6f 70 20 61 64 64 2d 6c 6f 6e 67 2d 73 74 72 69 6e 67 2d 66 6f 6f 74 65 72 2d 65 6e 74 72 69 65 73 0a ~ " } if-else ;" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "~ The purpose of this word is to make sure that the" ~ " memory-sliding" 7e 20 20 20 54 68 65 20 70 75 72 70 6f 73 65 20 6f 66 20 74 68 69 73 20 77 6f 72 64 20 69 73 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 74 68 65 20 6d 65 6d 6f 72 79 2d 73 6c 69 64 69 6e 67 0a ~ "~ techniques used by the high-level flow control words are" ~ " appropriately" 7e 20 74 65 63 68 6e 69 71 75 65 73 20 75 73 65 64 20 62 79 20 74 68 65 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 20 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 20 61 72 65 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 0a ~ "~ reflected in the output metadata. This is accomplished by" ~ " finding all" 7e 20 72 65 66 6c 65 63 74 65 64 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 2e 20 54 68 69 73 20 69 73 20 61 63 63 6f 6d 70 6c 69 73 68 65 64 20 62 79 20 66 69 6e 64 69 6e 67 20 61 6c 6c 0a ~ "~ entries whose data start pointer or string content" ~ " pointer is within the" 7e 20 65 6e 74 72 69 65 73 20 77 68 6f 73 65 20 64 61 74 61 20 73 74 61 72 74 20 70 6f 69 6e 74 65 72 20 6f 72 20 73 74 72 69 6e 67 20 63 6f 6e 74 65 6e 74 20 70 6f 69 6e 74 65 72 20 69 73 20 77 69 74 68 69 6e 20 74 68 65 0a ~ "~ slid region, and adjusting the relevant pointer" ~ " appropriately." 7e 20 73 6c 69 64 20 72 65 67 69 6f 6e 2c 20 61 6e 64 20 61 64 6a 75 73 74 69 6e 67 20 74 68 65 20 72 65 6c 65 76 61 6e 74 20 70 6f 69 6e 74 65 72 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a ~ "~" 7e 0a ~ "~ Notice that this strategy means there's no metadata" ~ " entry describing the" 7e 20 20 20 4e 6f 74 69 63 65 20 74 68 61 74 20 74 68 69 73 20 73 74 72 61 74 65 67 79 20 6d 65 61 6e 73 20 74 68 65 72 65 27 73 20 6e 6f 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 0a ~ "~ old location of the slid memory, though sliding is" ~ " non-destructive. The" 7e 20 6f 6c 64 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 6c 69 64 20 6d 65 6d 6f 72 79 2c 20 74 68 6f 75 67 68 20 73 6c 69 64 69 6e 67 20 69 73 20 6e 6f 6e 2d 64 65 73 74 72 75 63 74 69 76 65 2e 20 54 68 65 0a ~ "~ assumption is that that location is going to be" ~ " overwritten with new code," 7e 20 61 73 73 75 6d 70 74 69 6f 6e 20 69 73 20 74 68 61 74 20 74 68 61 74 20 6c 6f 63 61 74 69 6f 6e 20 69 73 20 67 6f 69 6e 67 20 74 6f 20 62 65 20 6f 76 65 72 77 72 69 74 74 65 6e 20 77 69 74 68 20 6e 65 77 20 63 6f 64 65 2c 0a ~ "~ which will have its own metadata entries created as the" ~ " new code is written." 7e 20 77 68 69 63 68 20 77 69 6c 6c 20 68 61 76 65 20 69 74 73 20 6f 77 6e 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 63 72 65 61 74 65 64 20 61 73 20 74 68 65 20 6e 65 77 20 63 6f 64 65 20 69 73 20 77 72 69 74 74 65 6e 2e 0a ~ "~ Otherwise, since we don't do anything to erase metadata" ~ " entries pertaining" 7e 20 4f 74 68 65 72 77 69 73 65 2c 20 73 69 6e 63 65 20 77 65 20 64 6f 6e 27 74 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 74 6f 20 65 72 61 73 65 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 70 65 72 74 61 69 6e 69 6e 67 0a ~ "~ to overwritten locations, old and new metadata entries" ~ " would overlap and" 7e 20 74 6f 20 6f 76 65 72 77 72 69 74 74 65 6e 20 6c 6f 63 61 74 69 6f 6e 73 2c 20 6f 6c 64 20 61 6e 64 20 6e 65 77 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 77 6f 75 6c 64 20 6f 76 65 72 6c 61 70 20 61 6e 64 0a ~ "~ cause confusion. The assumption is correct for all" ~ " existing uses of" 7e 20 63 61 75 73 65 20 63 6f 6e 66 75 73 69 6f 6e 2e 20 54 68 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 69 73 20 63 6f 72 72 65 63 74 20 66 6f 72 20 61 6c 6c 20 65 78 69 73 74 69 6e 67 20 75 73 65 73 20 6f 66 0a ~ "~ memory-sliding as of the time this was written, but it's" ~ " possible it will" 7e 20 6d 65 6d 6f 72 79 2d 73 6c 69 64 69 6e 67 20 61 73 20 6f 66 20 74 68 65 20 74 69 6d 65 20 74 68 69 73 20 77 61 73 20 77 72 69 74 74 65 6e 2c 20 62 75 74 20 69 74 27 73 20 70 6f 73 73 69 62 6c 65 20 69 74 20 77 69 6c 6c 0a ~ "~ need to be revisited someday." 7e 20 6e 65 65 64 20 74 6f 20 62 65 20 72 65 76 69 73 69 74 65 64 20 73 6f 6d 65 64 61 79 2e 0a ~ "~" 7e 0a ~ "~ This word is called for both memcopy and memmove. It's" ~ " called by" 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 69 73 20 63 61 6c 6c 65 64 20 66 6f 72 20 62 6f 74 68 20 6d 65 6d 63 6f 70 79 20 61 6e 64 20 6d 65 6d 6d 6f 76 65 2e 20 49 74 27 73 20 63 61 6c 6c 65 64 20 62 79 0a ~ "~ hex-memory-slide-replacement, which is itself installed" ~ " by a variety of" 7e 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 77 68 69 63 68 20 69 73 20 69 74 73 65 6c 66 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 61 20 76 61 72 69 65 74 79 20 6f 66 0a ~ "~ means for different situations; see its documentation for" ~ " more detail." 7e 20 6d 65 61 6e 73 20 66 6f 72 20 64 69 66 66 65 72 65 6e 74 20 73 69 74 75 61 74 69 6f 6e 73 3b 20 73 65 65 20 69 74 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 2e 0a ~ "~" 7e 0a ~ "~ (source, destination, length --)" 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 20 2d 2d 29 0a ~ ": hex-memory-slide-trace" 3a 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 74 72 61 63 65 0a ~ " 2 pick is-in-label-loop-buffer" 20 20 32 20 70 69 63 6b 20 69 73 2d 69 6e 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 0a ~ " 2 pick is-in-label-loop-buffer &&" 20 20 32 20 70 69 63 6b 20 69 73 2d 69 6e 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 20 26 26 0a ~ " {" 20 20 7b 0a ~ " ~ At the time this runs, the metadata entry array" ~ " isn't sorted, so we" 20 20 20 20 7e 20 20 20 41 74 20 74 68 65 20 74 69 6d 65 20 74 68 69 73 20 72 75 6e 73 2c 20 74 68 65 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 20 61 72 72 61 79 20 69 73 6e 27 74 20 73 6f 72 74 65 64 2c 20 73 6f 20 77 65 0a ~ " ~ check the whole thing." 20 20 20 20 7e 20 63 68 65 63 6b 20 74 68 65 20 77 68 6f 6c 65 20 74 68 69 6e 67 2e 0a ~ " transformation-state" ~ " transformation-state-output-metadata @" 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-first-entry" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 66 69 72 73 74 2d 65 6e 74 72 79 0a ~ " ~ (source, destination, length, initial metadata scan" ~ " pointer)" 20 20 20 20 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 2c 20 69 6e 69 74 69 61 6c 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 29 0a ~ " { dup @ } {" 20 20 20 20 7b 20 64 75 70 20 40 20 7d 20 7b 0a ~ " ~ (source, destination, length, metadata scan" ~ " pointer)" 20 20 20 20 20 20 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 2c 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " dup hex-output-metadata-entry-data-start @ 4 pick <=" 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 20 34 20 70 69 63 6b 20 3c 3d 0a ~ " ~ (source, destination, length, metadata scan" ~ " pointer, lower bound okay)" 20 20 20 20 20 20 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 2c 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 2c 20 6c 6f 77 65 72 20 62 6f 75 6e 64 20 6f 6b 61 79 29 0a ~ " over hex-output-metadata-entry-data-start @ 5 pick 4" ~ " pick + >" 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 20 35 20 70 69 63 6b 20 34 20 70 69 63 6b 20 2b 20 3e 0a ~ " && {" 20 20 20 20 20 20 26 26 20 7b 0a ~ " ~ (source, destination, length, metadata scan" ~ " pointer)" 20 20 20 20 20 20 20 20 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 2c 20 6d 65 74 61 64 61 74 61 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 29 0a ~ " dup hex-output-metadata-entry-data-start @ 4 pick -" ~ " 3 pick +" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 40 20 34 20 70 69 63 6b 20 2d 20 33 20 70 69 63 6b 20 2b 0a ~ " over hex-output-metadata-entry-data-start !" 20 20 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 64 61 74 61 2d 73 74 61 72 74 20 21 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup hex-output-metadata-entry-type @" 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 20 40 0a ~ " dup hex-output-metadata-entry-type-string-literal =" 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 74 72 69 6e 67 2d 6c 69 74 65 72 61 6c 20 3d 0a ~ " swap dup" ~ " hex-output-metadata-entry-type-raw-string-literal = ||" 20 20 20 20 20 20 73 77 61 70 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 61 77 2d 73 74 72 69 6e 67 2d 6c 69 74 65 72 61 6c 20 3d 20 7c 7c 0a ~ " swap" ~ " hex-output-metadata-entry-type-push-subitem-string = || {" 20 20 20 20 20 20 73 77 61 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 3d 20 7c 7c 20 7b 0a ~ " dup hex-output-metadata-entry-content @" 20 20 20 20 20 20 20 20 64 75 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 40 0a ~ " ~ (source, destination, length, scan pointer," ~ " content pointer)" 20 20 20 20 20 20 20 20 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 2c 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 2c 20 63 6f 6e 74 65 6e 74 20 70 6f 69 6e 74 65 72 29 0a ~ " dup 5 pick <=" 20 20 20 20 20 20 20 20 64 75 70 20 35 20 70 69 63 6b 20 3c 3d 0a ~ " ~ (source, destination, length, scan pointer," ~ " content pointer," 20 20 20 20 20 20 20 20 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 2c 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 2c 20 63 6f 6e 74 65 6e 74 20 70 6f 69 6e 74 65 72 2c 0a ~ " ~ lower bound okay)" 20 20 20 20 20 20 20 20 7e 20 20 6c 6f 77 65 72 20 62 6f 75 6e 64 20 6f 6b 61 79 29 0a ~ " over 6 pick 5 pick + > && {" 20 20 20 20 20 20 20 20 6f 76 65 72 20 36 20 70 69 63 6b 20 35 20 70 69 63 6b 20 2b 20 3e 20 26 26 20 7b 0a ~ " ~ (source, destination, length, scan pointer," ~ " content pointer)" 20 20 20 20 20 20 20 20 20 20 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 2c 20 73 63 61 6e 20 70 6f 69 6e 74 65 72 2c 20 63 6f 6e 74 65 6e 74 20 70 6f 69 6e 74 65 72 29 0a ~ " 4 pick - 3 pick +" 20 20 20 20 20 20 20 20 20 20 34 20 70 69 63 6b 20 2d 20 33 20 70 69 63 6b 20 2b 0a ~ " over hex-output-metadata-entry-content !" 20 20 20 20 20 20 20 20 20 20 6f 76 65 72 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 63 6f 6e 74 65 6e 74 20 21 0a ~ " } { drop } if-else" 20 20 20 20 20 20 20 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " hex-output-metadata-next-entry" 20 20 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6e 65 78 74 2d 65 6e 74 72 79 0a ~ " } while 4 ndrop" 20 20 20 20 7d 20 77 68 69 6c 65 20 34 20 6e 64 72 6f 70 0a ~ " } { drop drop drop } if-else ;" 20 20 7d 20 7b 20 64 72 6f 70 20 64 72 6f 70 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ By overriding colon, we can special-case the" ~ " definitions of particular" 7e 20 20 20 42 79 20 6f 76 65 72 72 69 64 69 6e 67 20 63 6f 6c 6f 6e 2c 20 77 65 20 63 61 6e 20 73 70 65 63 69 61 6c 2d 63 61 73 65 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 6f 66 20 70 61 72 74 69 63 75 6c 61 72 0a ~ "~ words. It's very metacircular." 7e 20 77 6f 72 64 73 2e 20 49 74 27 73 20 76 65 72 79 20 6d 65 74 61 63 69 72 63 75 6c 61 72 2e 0a ~ "~" 7e 0a ~ "~ This lets us prepend trap code to the original" ~ " definition. For those not" 7e 20 20 20 54 68 69 73 20 6c 65 74 73 20 75 73 20 70 72 65 70 65 6e 64 20 74 72 61 70 20 63 6f 64 65 20 74 6f 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 64 65 66 69 6e 69 74 69 6f 6e 2e 20 46 6f 72 20 74 68 6f 73 65 20 6e 6f 74 0a ~ "~ familiar, a "trap" in systems programming is code that" ~ " runs instead of some" 7e 20 66 61 6d 69 6c 69 61 72 2c 20 61 20 22 74 72 61 70 22 20 69 6e 20 73 79 73 74 65 6d 73 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 69 73 20 63 6f 64 65 20 74 68 61 74 20 72 75 6e 73 20 69 6e 73 74 65 61 64 20 6f 66 20 73 6f 6d 65 0a ~ "~ other, pre-existing code, by violating the usual" ~ " abstractions in some way." 7e 20 6f 74 68 65 72 2c 20 70 72 65 2d 65 78 69 73 74 69 6e 67 20 63 6f 64 65 2c 20 62 79 20 76 69 6f 6c 61 74 69 6e 67 20 74 68 65 20 75 73 75 61 6c 20 61 62 73 74 72 61 63 74 69 6f 6e 73 20 69 6e 20 73 6f 6d 65 20 77 61 79 2e 0a ~ "~ We implement our traps by creating the word header," ~ " including the docol" 7e 20 57 65 20 69 6d 70 6c 65 6d 65 6e 74 20 6f 75 72 20 74 72 61 70 73 20 62 79 20 63 72 65 61 74 69 6e 67 20 74 68 65 20 77 6f 72 64 20 68 65 61 64 65 72 2c 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 64 6f 63 6f 6c 0a ~ "~ pointer, then compiling the trap code before we return" ~ " from the colon" 7e 20 70 6f 69 6e 74 65 72 2c 20 74 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 74 72 61 70 20 63 6f 64 65 20 62 65 66 6f 72 65 20 77 65 20 72 65 74 75 72 6e 20 66 72 6f 6d 20 74 68 65 20 63 6f 6c 6f 6e 0a ~ "~ alternate, so that it's already been output before the" ~ " original word's body" 7e 20 61 6c 74 65 72 6e 61 74 65 2c 20 73 6f 20 74 68 61 74 20 69 74 27 73 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 6f 75 74 70 75 74 20 62 65 66 6f 72 65 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 77 6f 72 64 27 73 20 62 6f 64 79 0a ~ "~ starts to compile." 7e 20 73 74 61 72 74 73 20 74 6f 20 63 6f 6d 70 69 6c 65 2e 0a ~ "~" 7e 0a ~ "~ Prepending our trap code to the original code like this" ~ " can also be used" 7e 20 20 20 50 72 65 70 65 6e 64 69 6e 67 20 6f 75 72 20 74 72 61 70 20 63 6f 64 65 20 74 6f 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 20 6c 69 6b 65 20 74 68 69 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 0a ~ "~ to get the effect of replacing the original code entirely" ~ " by calling "exit"" 7e 20 74 6f 20 67 65 74 20 74 68 65 20 65 66 66 65 63 74 20 6f 66 20 72 65 70 6c 61 63 69 6e 67 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 20 65 6e 74 69 72 65 6c 79 20 62 79 20 63 61 6c 6c 69 6e 67 20 22 65 78 69 74 22 0a ~ "~ at the end of our trap. The original code will still be" ~ " compiled, after the" 7e 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 6f 75 72 20 74 72 61 70 2e 20 54 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 20 77 69 6c 6c 20 73 74 69 6c 6c 20 62 65 20 63 6f 6d 70 69 6c 65 64 2c 20 61 66 74 65 72 20 74 68 65 0a ~ "~ trap code, but doing this will make sure it doesn't run." ~ " Most of the time," 7e 20 74 72 61 70 20 63 6f 64 65 2c 20 62 75 74 20 64 6f 69 6e 67 20 74 68 69 73 20 77 69 6c 6c 20 6d 61 6b 65 20 73 75 72 65 20 69 74 20 64 6f 65 73 6e 27 74 20 72 75 6e 2e 20 4d 6f 73 74 20 6f 66 20 74 68 65 20 74 69 6d 65 2c 0a ~ "~ though, we do want to run the original code, so we allow" ~ " the trap to fall" 7e 20 74 68 6f 75 67 68 2c 20 77 65 20 64 6f 20 77 61 6e 74 20 74 6f 20 72 75 6e 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 2c 20 73 6f 20 77 65 20 61 6c 6c 6f 77 20 74 68 65 20 74 72 61 70 20 74 6f 20 66 61 6c 6c 0a ~ "~ through to it. We carefully note fall-through with" ~ " comments, to make the" 7e 20 74 68 72 6f 75 67 68 20 74 6f 20 69 74 2e 20 57 65 20 63 61 72 65 66 75 6c 6c 79 20 6e 6f 74 65 20 66 61 6c 6c 2d 74 68 72 6f 75 67 68 20 77 69 74 68 20 63 6f 6d 6d 65 6e 74 73 2c 20 74 6f 20 6d 61 6b 65 20 74 68 65 0a ~ "~ traps easier to maintain." 7e 20 74 72 61 70 73 20 65 61 73 69 65 72 20 74 6f 20 6d 61 69 6e 74 61 69 6e 2e 0a ~ "~" 7e 0a ~ "~ The kinds of side-effects we care about can all be" ~ " written this way," 7e 20 20 20 54 68 65 20 6b 69 6e 64 73 20 6f 66 20 73 69 64 65 2d 65 66 66 65 63 74 73 20 77 65 20 63 61 72 65 20 61 62 6f 75 74 20 63 61 6e 20 61 6c 6c 20 62 65 20 77 72 69 74 74 65 6e 20 74 68 69 73 20 77 61 79 2c 0a ~ "~ though occasionally we wind up having to compute an" ~ " intermediate value that" 7e 20 74 68 6f 75 67 68 20 6f 63 63 61 73 69 6f 6e 61 6c 6c 79 20 77 65 20 77 69 6e 64 20 75 70 20 68 61 76 69 6e 67 20 74 6f 20 63 6f 6d 70 75 74 65 20 61 6e 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 76 61 6c 75 65 20 74 68 61 74 0a ~ "~ the code we're trapping will then compute independently," ~ " and it's important" 7e 20 74 68 65 20 63 6f 64 65 20 77 65 27 72 65 20 74 72 61 70 70 69 6e 67 20 77 69 6c 6c 20 74 68 65 6e 20 63 6f 6d 70 75 74 65 20 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79 2c 20 61 6e 64 20 69 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 0a ~ "~ to keep those implementations in sync." 7e 20 74 6f 20 6b 65 65 70 20 74 68 6f 73 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 69 6e 20 73 79 6e 63 2e 0a ~ "~" 7e 0a ~ "~ The most significant challenge is that, because our" ~ " trap will be defined" 7e 20 20 20 54 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 63 68 61 6c 6c 65 6e 67 65 20 69 73 20 74 68 61 74 2c 20 62 65 63 61 75 73 65 20 6f 75 72 20 74 72 61 70 20 77 69 6c 6c 20 62 65 20 64 65 66 69 6e 65 64 0a ~ "~ at the same point in loading as the original word would" ~ " be, it can only use" 7e 20 61 74 20 74 68 65 20 73 61 6d 65 20 70 6f 69 6e 74 20 69 6e 20 6c 6f 61 64 69 6e 67 20 61 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 77 6f 72 64 20 77 6f 75 6c 64 20 62 65 2c 20 69 74 20 63 61 6e 20 6f 6e 6c 79 20 75 73 65 0a ~ "~ words that are available at that point. Occasionally this" ~ " results in some" 7e 20 77 6f 72 64 73 20 74 68 61 74 20 61 72 65 20 61 76 61 69 6c 61 62 6c 65 20 61 74 20 74 68 61 74 20 70 6f 69 6e 74 2e 20 4f 63 63 61 73 69 6f 6e 61 6c 6c 79 20 74 68 69 73 20 72 65 73 75 6c 74 73 20 69 6e 20 73 6f 6d 65 0a ~ "~ awkwardness." 7e 20 61 77 6b 77 61 72 64 6e 65 73 73 2e 0a ~ "~" 7e 0a ~ "~ Code for these traps winds up looking a lot like code" ~ " written for log-load" 7e 20 20 20 43 6f 64 65 20 66 6f 72 20 74 68 65 73 65 20 74 72 61 70 73 20 77 69 6e 64 73 20 75 70 20 6c 6f 6f 6b 69 6e 67 20 61 20 6c 6f 74 20 6c 69 6b 65 20 63 6f 64 65 20 77 72 69 74 74 65 6e 20 66 6f 72 20 6c 6f 67 2d 6c 6f 61 64 0a ~ "~ alternates, in that we have to do the dictionary lookups" ~ " and other" 7e 20 61 6c 74 65 72 6e 61 74 65 73 2c 20 69 6e 20 74 68 61 74 20 77 65 20 68 61 76 65 20 74 6f 20 64 6f 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 6c 6f 6f 6b 75 70 73 20 61 6e 64 20 6f 74 68 65 72 0a ~ "~ compilation ourselves." 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 75 72 73 65 6c 76 65 73 2e 0a ~ "~" 7e 0a ~ "~ At times, we also need to trap words that are" ~ " implemented in assembler." 7e 20 20 20 41 74 20 74 69 6d 65 73 2c 20 77 65 20 61 6c 73 6f 20 6e 65 65 64 20 74 6f 20 74 72 61 70 20 77 6f 72 64 73 20 74 68 61 74 20 61 72 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 69 6e 20 61 73 73 65 6d 62 6c 65 72 2e 0a ~ "~ The most notable of these is "sys-write", which is" ~ " fundamental to what the" 7e 20 54 68 65 20 6d 6f 73 74 20 6e 6f 74 61 62 6c 65 20 6f 66 20 74 68 65 73 65 20 69 73 20 22 73 79 73 2d 77 72 69 74 65 22 2c 20 77 68 69 63 68 20 69 73 20 66 75 6e 64 61 6d 65 6e 74 61 6c 20 74 6f 20 77 68 61 74 20 74 68 65 0a ~ "~ hex transform does. The details of how we make our traps" ~ " work with assembler" 7e 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 64 6f 65 73 2e 20 54 68 65 20 64 65 74 61 69 6c 73 20 6f 66 20 68 6f 77 20 77 65 20 6d 61 6b 65 20 6f 75 72 20 74 72 61 70 73 20 77 6f 72 6b 20 77 69 74 68 20 61 73 73 65 6d 62 6c 65 72 0a ~ "~ words are explained below, as they arise." 7e 20 77 6f 72 64 73 20 61 72 65 20 65 78 70 6c 61 69 6e 65 64 20 62 65 6c 6f 77 2c 20 61 73 20 74 68 65 79 20 61 72 69 73 65 2e 0a ~ ": hex-colon-alternate" 3a 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " word value@" 20 20 77 6f 72 64 20 76 61 6c 75 65 40 0a ~ "" 0a ~ " ~ The word "variable" is itself a word-defining word," ~ " and we will" 20 20 7e 20 20 20 54 68 65 20 77 6f 72 64 20 22 76 61 72 69 61 62 6c 65 22 20 69 73 20 69 74 73 65 6c 66 20 61 20 77 6f 72 64 2d 64 65 66 69 6e 69 6e 67 20 77 6f 72 64 2c 20 61 6e 64 20 77 65 20 77 69 6c 6c 0a ~ " ~ special-case its definition to special-case the" ~ " definitions of particular" 20 20 7e 20 73 70 65 63 69 61 6c 2d 63 61 73 65 20 69 74 73 20 64 65 66 69 6e 69 74 69 6f 6e 20 74 6f 20 73 70 65 63 69 61 6c 2d 63 61 73 65 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 6f 66 20 70 61 72 74 69 63 75 6c 61 72 0a ~ " ~ variables. It's very very metacircular." 20 20 7e 20 76 61 72 69 61 62 6c 65 73 2e 20 49 74 27 73 20 76 65 72 79 20 76 65 72 79 20 6d 65 74 61 63 69 72 63 75 6c 61 72 2e 0a ~ " dup s" variable" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 76 61 72 69 61 62 6c 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Don't lose track of the layering happening here." ~ " The word "variable"" 20 20 20 20 7e 20 20 20 44 6f 6e 27 74 20 6c 6f 73 65 20 74 72 61 63 6b 20 6f 66 20 74 68 65 20 6c 61 79 65 72 69 6e 67 20 68 61 70 70 65 6e 69 6e 67 20 68 65 72 65 2e 20 54 68 65 20 77 6f 72 64 20 22 76 61 72 69 61 62 6c 65 22 0a ~ " ~ is a regular docol word; it's defining a word that's" ~ " implemented in" 20 20 20 20 7e 20 69 73 20 61 20 72 65 67 75 6c 61 72 20 64 6f 63 6f 6c 20 77 6f 72 64 3b 20 69 74 27 73 20 64 65 66 69 6e 69 6e 67 20 61 20 77 6f 72 64 20 74 68 61 74 27 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 69 6e 0a ~ " ~ assembly, but it can use whatever Forthy logic it" ~ " wants to do so. In" 20 20 20 20 7e 20 61 73 73 65 6d 62 6c 79 2c 20 62 75 74 20 69 74 20 63 61 6e 20 75 73 65 20 77 68 61 74 65 76 65 72 20 46 6f 72 74 68 79 20 6c 6f 67 69 63 20 69 74 20 77 61 6e 74 73 20 74 6f 20 64 6f 20 73 6f 2e 20 49 6e 0a ~ " ~ this case we're going to have it run a little extra" ~ " logic, then continue" 20 20 20 20 7e 20 74 68 69 73 20 63 61 73 65 20 77 65 27 72 65 20 67 6f 69 6e 67 20 74 6f 20 68 61 76 65 20 69 74 20 72 75 6e 20 61 20 6c 69 74 74 6c 65 20 65 78 74 72 61 20 6c 6f 67 69 63 2c 20 74 68 65 6e 20 63 6f 6e 74 69 6e 75 65 0a ~ " ~ with the rest of its usual definition." 20 20 20 20 7e 20 77 69 74 68 20 74 68 65 20 72 65 73 74 20 6f 66 20 69 74 73 20 75 73 75 61 6c 20 64 65 66 69 6e 69 74 69 6f 6e 2e 0a ~ "" 0a ~ " ~ Before we get to the extra logic, we do want an" ~ " entry header for" 20 20 20 20 7e 20 20 20 42 65 66 6f 72 65 20 77 65 20 67 65 74 20 74 6f 20 74 68 65 20 65 78 74 72 61 20 6c 6f 67 69 63 2c 20 77 65 20 64 6f 20 77 61 6e 74 20 61 6e 20 65 6e 74 72 79 20 68 65 61 64 65 72 20 66 6f 72 0a ~ " ~ "variable" itself, so we do that... This takes care" ~ " of all of colon's" 20 20 20 20 7e 20 22 76 61 72 69 61 62 6c 65 22 20 69 74 73 65 6c 66 2c 20 73 6f 20 77 65 20 64 6f 20 74 68 61 74 2e 2e 2e 20 54 68 69 73 20 74 61 6b 65 73 20 63 61 72 65 20 6f 66 20 61 6c 6c 20 6f 66 20 63 6f 6c 6f 6e 27 73 0a ~ " ~ responsibilities except switching to compile mode;" ~ " we'll do that part" 20 20 20 20 7e 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 20 65 78 63 65 70 74 20 73 77 69 74 63 68 69 6e 67 20 74 6f 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 3b 20 77 65 27 6c 6c 20 64 6f 20 74 68 61 74 20 70 61 72 74 0a ~ " ~ after we've output our payload." 20 20 20 20 7e 20 61 66 74 65 72 20 77 65 27 76 65 20 6f 75 74 70 75 74 20 6f 75 72 20 70 61 79 6c 6f 61 64 2e 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ There's two variables that we want to point to the" ~ " outer backing" 20 20 20 20 7e 20 20 20 54 68 65 72 65 27 73 20 74 77 6f 20 76 61 72 69 61 62 6c 65 73 20 74 68 61 74 20 77 65 20 77 61 6e 74 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 6f 75 74 65 72 20 62 61 63 6b 69 6e 67 0a ~ " ~ stores, rather than the inner ones. The code for that" ~ " is a bit" 20 20 20 20 7e 20 73 74 6f 72 65 73 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 74 68 65 20 69 6e 6e 65 72 20 6f 6e 65 73 2e 20 54 68 65 20 63 6f 64 65 20 66 6f 72 20 74 68 61 74 20 69 73 20 61 20 62 69 74 0a ~ " ~ repetitive, so we have a helper for it; see above." 20 20 20 20 7e 20 72 65 70 65 74 69 74 69 76 65 2c 20 73 6f 20 77 65 20 68 61 76 65 20 61 20 68 65 6c 70 65 72 20 66 6f 72 20 69 74 3b 20 73 65 65 20 61 62 6f 76 65 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ It is worth stopping to contemplate the meaning of" ~ " sharing these two" 20 20 20 20 7e 20 20 20 49 74 20 69 73 20 77 6f 72 74 68 20 73 74 6f 70 70 69 6e 67 20 74 6f 20 63 6f 6e 74 65 6d 70 6c 61 74 65 20 74 68 65 20 6d 65 61 6e 69 6e 67 20 6f 66 20 73 68 61 72 69 6e 67 20 74 68 65 73 65 20 74 77 6f 0a ~ " ~ variables in particular between the inner and outer" ~ " contexts." 20 20 20 20 7e 20 76 61 72 69 61 62 6c 65 73 20 69 6e 20 70 61 72 74 69 63 75 6c 61 72 20 62 65 74 77 65 65 6e 20 74 68 65 20 69 6e 6e 65 72 20 61 6e 64 20 6f 75 74 65 72 20 63 6f 6e 74 65 78 74 73 2e 0a ~ " ~ Essentially this says that they're both reading the" ~ " same input stream," 20 20 20 20 7e 20 45 73 73 65 6e 74 69 61 6c 6c 79 20 74 68 69 73 20 73 61 79 73 20 74 68 61 74 20 74 68 65 79 27 72 65 20 62 6f 74 68 20 72 65 61 64 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 73 74 72 65 61 6d 2c 0a ~ " ~ and the two copies of the interpreter both share the" ~ " same state. Thus," 20 20 20 20 7e 20 61 6e 64 20 74 68 65 20 74 77 6f 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 62 6f 74 68 20 73 68 61 72 65 20 74 68 65 20 73 61 6d 65 20 73 74 61 74 65 2e 20 54 68 75 73 2c 0a ~ " ~ trading off responsibility for lexing between inner" ~ " and outer contexts" 20 20 20 20 7e 20 74 72 61 64 69 6e 67 20 6f 66 66 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 66 6f 72 20 6c 65 78 69 6e 67 20 62 65 74 77 65 65 6e 20 69 6e 6e 65 72 20 61 6e 64 20 6f 75 74 65 72 20 63 6f 6e 74 65 78 74 73 0a ~ " ~ works just like trading off responsibility between" ~ " two interpreters" 20 20 20 20 7e 20 77 6f 72 6b 73 20 6a 75 73 74 20 6c 69 6b 65 20 74 72 61 64 69 6e 67 20 6f 66 66 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 62 65 74 77 65 65 6e 20 74 77 6f 20 69 6e 74 65 72 70 72 65 74 65 72 73 0a ~ " ~ when there's no transformation involved, or between a" ~ " regular" 20 20 20 20 7e 20 77 68 65 6e 20 74 68 65 72 65 27 73 20 6e 6f 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 69 6e 76 6f 6c 76 65 64 2c 20 6f 72 20 62 65 74 77 65 65 6e 20 61 20 72 65 67 75 6c 61 72 0a ~ " ~ interpreter and a transform." 20 20 20 20 7e 20 69 6e 74 65 72 70 72 65 74 65 72 20 61 6e 64 20 61 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ If we didn't do this, we'd still have to invent" ~ " some way to control" 20 20 20 20 7e 20 20 20 49 66 20 77 65 20 64 69 64 6e 27 74 20 64 6f 20 74 68 69 73 2c 20 77 65 27 64 20 73 74 69 6c 6c 20 68 61 76 65 20 74 6f 20 69 6e 76 65 6e 74 20 73 6f 6d 65 20 77 61 79 20 74 6f 20 63 6f 6e 74 72 6f 6c 0a ~ " ~ what input the inner context sees, and the concept of" ~ " "the next" 20 20 20 20 7e 20 77 68 61 74 20 69 6e 70 75 74 20 74 68 65 20 69 6e 6e 65 72 20 63 6f 6e 74 65 78 74 20 73 65 65 73 2c 20 61 6e 64 20 74 68 65 20 63 6f 6e 63 65 70 74 20 6f 66 20 22 74 68 65 20 6e 65 78 74 0a ~ " ~ character" would become more complex during the" ~ " transform and require" 20 20 20 20 7e 20 63 68 61 72 61 63 74 65 72 22 20 77 6f 75 6c 64 20 62 65 63 6f 6d 65 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 78 20 64 75 72 69 6e 67 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 61 6e 64 20 72 65 71 75 69 72 65 0a ~ " ~ care and attention. Sharing this stuff keeps it" ~ " simple." 20 20 20 20 7e 20 63 61 72 65 20 61 6e 64 20 61 74 74 65 6e 74 69 6f 6e 2e 20 53 68 61 72 69 6e 67 20 74 68 69 73 20 73 74 75 66 66 20 6b 65 65 70 73 20 69 74 20 73 69 6d 70 6c 65 2e 0a ~ " s" interpreter-flags" hex-variable-use-outer" 20 20 20 20 73 22 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 22 20 68 65 78 2d 76 61 72 69 61 62 6c 65 2d 75 73 65 2d 6f 75 74 65 72 0a ~ " s" main-input-buffer" hex-variable-use-outer" 20 20 20 20 73 22 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 22 20 68 65 78 2d 76 61 72 69 61 62 6c 65 2d 75 73 65 2d 6f 75 74 65 72 0a ~ " ~ After this, we can return control to the" ~ " regularly-scheduled" 20 20 20 20 7e 20 20 20 41 66 74 65 72 20 74 68 69 73 2c 20 77 65 20 63 61 6e 20 72 65 74 75 72 6e 20 63 6f 6e 74 72 6f 6c 20 74 6f 20 74 68 65 20 72 65 67 75 6c 61 72 6c 79 2d 73 63 68 65 64 75 6c 65 64 0a ~ " ~ "variable", which will do the "create" and all that." ~ " That stuff isn't" 20 20 20 20 7e 20 22 76 61 72 69 61 62 6c 65 22 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 64 6f 20 74 68 65 20 22 63 72 65 61 74 65 22 20 61 6e 64 20 61 6c 6c 20 74 68 61 74 2e 20 54 68 61 74 20 73 74 75 66 66 20 69 73 6e 27 74 0a ~ " ~ colon's responsibility, so it isn't our" ~ " responsibility, it'll happen" 20 20 20 20 7e 20 63 6f 6c 6f 6e 27 73 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 2c 20 73 6f 20 69 74 20 69 73 6e 27 74 20 6f 75 72 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 2c 20 69 74 27 6c 6c 20 68 61 70 70 65 6e 0a ~ " ~ regardless." 20 20 20 20 7e 20 72 65 67 61 72 64 6c 65 73 73 2e 0a ~ "" 0a ~ " ~ Notably, we do NOT share transformation-state." ~ " There are at least a" 20 20 20 20 7e 20 20 20 4e 6f 74 61 62 6c 79 2c 20 77 65 20 64 6f 20 4e 4f 54 20 73 68 61 72 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2e 20 54 68 65 72 65 20 61 72 65 20 61 74 20 6c 65 61 73 74 20 61 0a ~ " ~ hundred places where it would need to be carefully" ~ " swapped, and we" 20 20 20 20 7e 20 68 75 6e 64 72 65 64 20 70 6c 61 63 65 73 20 77 68 65 72 65 20 69 74 20 77 6f 75 6c 64 20 6e 65 65 64 20 74 6f 20 62 65 20 63 61 72 65 66 75 6c 6c 79 20 73 77 61 70 70 65 64 2c 20 61 6e 64 20 77 65 0a ~ " ~ already have quite enough of that kind of brittleness" ~ " in the log-load" 20 20 20 20 7e 20 61 6c 72 65 61 64 79 20 68 61 76 65 20 71 75 69 74 65 20 65 6e 6f 75 67 68 20 6f 66 20 74 68 61 74 20 6b 69 6e 64 20 6f 66 20 62 72 69 74 74 6c 65 6e 65 73 73 20 69 6e 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ " ~ transform. Plus, there's no obvious way to do a real" ~ " push/pop notion for" 20 20 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 2e 20 50 6c 75 73 2c 20 74 68 65 72 65 27 73 20 6e 6f 20 6f 62 76 69 6f 75 73 20 77 61 79 20 74 6f 20 64 6f 20 61 20 72 65 61 6c 20 70 75 73 68 2f 70 6f 70 20 6e 6f 74 69 6f 6e 20 66 6f 72 0a ~ " ~ it, so we wouldn't get arbitrary nesting of" ~ " transforms anyway. By" 20 20 20 20 7e 20 69 74 2c 20 73 6f 20 77 65 20 77 6f 75 6c 64 6e 27 74 20 67 65 74 20 61 72 62 69 74 72 61 72 79 20 6e 65 73 74 69 6e 67 20 6f 66 20 74 72 61 6e 73 66 6f 72 6d 73 20 61 6e 79 77 61 79 2e 20 42 79 0a ~ " ~ letting the code inside the hex transform have its" ~ " own, separate copy of" 20 20 20 20 7e 20 6c 65 74 74 69 6e 67 20 74 68 65 20 63 6f 64 65 20 69 6e 73 69 64 65 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 68 61 76 65 20 69 74 73 20 6f 77 6e 2c 20 73 65 70 61 72 61 74 65 20 63 6f 70 79 20 6f 66 0a ~ " ~ transformation-state, we avoid that problem entirely," ~ " and it's still not" 20 20 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2c 20 77 65 20 61 76 6f 69 64 20 74 68 61 74 20 70 72 6f 62 6c 65 6d 20 65 6e 74 69 72 65 6c 79 2c 20 61 6e 64 20 69 74 27 73 20 73 74 69 6c 6c 20 6e 6f 74 0a ~ " ~ hard to access the "other" one when circumstances" ~ " require." 20 20 20 20 7e 20 68 61 72 64 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 22 6f 74 68 65 72 22 20 6f 6e 65 20 77 68 65 6e 20 63 69 72 63 75 6d 73 74 61 6e 63 65 73 20 72 65 71 75 69 72 65 2e 0a ~ "" 0a ~ " ~ Now we close out colon's responsibilities by" ~ " switching to compile" 20 20 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 63 6c 6f 73 65 20 6f 75 74 20 63 6f 6c 6f 6e 27 73 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 20 62 79 20 73 77 69 74 63 68 69 6e 67 20 74 6f 20 63 6f 6d 70 69 6c 65 0a ~ " ~ mode. We return from colon after this. The hex" ~ " transform will continue" 20 20 20 20 7e 20 6d 6f 64 65 2e 20 57 65 20 72 65 74 75 72 6e 20 66 72 6f 6d 20 63 6f 6c 6f 6e 20 61 66 74 65 72 20 74 68 69 73 2e 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 77 69 6c 6c 20 63 6f 6e 74 69 6e 75 65 0a ~ " ~ by processing the source words that form the regular" ~ " body of "variable"," 20 20 20 20 7e 20 62 79 20 70 72 6f 63 65 73 73 69 6e 67 20 74 68 65 20 73 6f 75 72 63 65 20 77 6f 72 64 73 20 74 68 61 74 20 66 6f 72 6d 20 74 68 65 20 72 65 67 75 6c 61 72 20 62 6f 64 79 20 6f 66 20 22 76 61 72 69 61 62 6c 65 22 2c 0a ~ " ~ eventually hitting the matching semicolon. Our" ~ " friendly tampering is" 20 20 20 20 7e 20 65 76 65 6e 74 75 61 6c 6c 79 20 68 69 74 74 69 6e 67 20 74 68 65 20 6d 61 74 63 68 69 6e 67 20 73 65 6d 69 63 6f 6c 6f 6e 2e 20 4f 75 72 20 66 72 69 65 6e 64 6c 79 20 74 61 6d 70 65 72 69 6e 67 20 69 73 0a ~ " ~ now complete!" 20 20 20 20 7e 20 6e 6f 77 20 63 6f 6d 70 6c 65 74 65 21 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Now we want to override s". As usual, that's the" ~ " single most annoying" 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 77 61 6e 74 20 74 6f 20 6f 76 65 72 72 69 64 65 20 73 22 2e 20 41 73 20 75 73 75 61 6c 2c 20 74 68 61 74 27 73 20 74 68 65 20 73 69 6e 67 6c 65 20 6d 6f 73 74 20 61 6e 6e 6f 79 69 6e 67 0a ~ " ~ string to quote, so we cheat." 20 20 7e 20 73 74 72 69 6e 67 20 74 6f 20 71 75 6f 74 65 2c 20 73 6f 20 77 65 20 63 68 65 61 74 2e 0a ~ " dup ' s" entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create the word header. It's a normal docol word, so" ~ " that much is" 20 20 20 20 7e 20 20 43 72 65 61 74 65 20 74 68 65 20 77 6f 72 64 20 68 65 61 64 65 72 2e 20 49 74 27 73 20 61 20 6e 6f 72 6d 61 6c 20 64 6f 63 6f 6c 20 77 6f 72 64 2c 20 73 6f 20 74 68 61 74 20 6d 75 63 68 20 69 73 0a ~ " ~ simple." 20 20 20 20 7e 20 73 69 6d 70 6c 65 2e 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ This time around we would really rather just always" ~ " use the alternate," 20 20 20 20 7e 20 20 20 54 68 69 73 20 74 69 6d 65 20 61 72 6f 75 6e 64 20 77 65 20 77 6f 75 6c 64 20 72 65 61 6c 6c 79 20 72 61 74 68 65 72 20 6a 75 73 74 20 61 6c 77 61 79 73 20 75 73 65 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 2c 0a ~ " ~ which already untangles the layered nonsense. So we" ~ " have the payload" 20 20 20 20 7e 20 77 68 69 63 68 20 61 6c 72 65 61 64 79 20 75 6e 74 61 6e 67 6c 65 73 20 74 68 65 20 6c 61 79 65 72 65 64 20 6e 6f 6e 73 65 6e 73 65 2e 20 53 6f 20 77 65 20 68 61 76 65 20 74 68 65 20 70 61 79 6c 6f 61 64 0a ~ " ~ call the alternate directly, then exit. We could come" ~ " up with a way to" 20 20 20 20 7e 20 63 61 6c 6c 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 64 69 72 65 63 74 6c 79 2c 20 74 68 65 6e 20 65 78 69 74 2e 20 57 65 20 63 6f 75 6c 64 20 63 6f 6d 65 20 75 70 20 77 69 74 68 20 61 20 77 61 79 20 74 6f 0a ~ " ~ then skip forward in the code under transformation," ~ " but that would be" 20 20 20 20 7e 20 74 68 65 6e 20 73 6b 69 70 20 66 6f 72 77 61 72 64 20 69 6e 20 74 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2c 20 62 75 74 20 74 68 61 74 20 77 6f 75 6c 64 20 62 65 0a ~ " ~ complex, and it's unnecessary: We let it keep" ~ " running, outputting the" 20 20 20 20 7e 20 63 6f 6d 70 6c 65 78 2c 20 61 6e 64 20 69 74 27 73 20 75 6e 6e 65 63 65 73 73 61 72 79 3a 20 57 65 20 6c 65 74 20 69 74 20 6b 65 65 70 20 72 75 6e 6e 69 6e 67 2c 20 6f 75 74 70 75 74 74 69 6e 67 20 74 68 65 0a ~ " ~ usual body of s", which we know will never be" ~ " reached." 20 20 20 20 7e 20 75 73 75 61 6c 20 62 6f 64 79 20 6f 66 20 73 22 2c 20 77 68 69 63 68 20 77 65 20 6b 6e 6f 77 20 77 69 6c 6c 20 6e 65 76 65 72 20 62 65 20 72 65 61 63 68 65 64 2e 0a ~ " ' hex-string-alternate entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" exit" find entry-to-execution-token ," 20 20 20 20 73 22 20 65 78 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " ~ As before, finish up colon's responsibilities, then" ~ " return control to" 20 20 20 20 7e 20 20 20 41 73 20 62 65 66 6f 72 65 2c 20 66 69 6e 69 73 68 20 75 70 20 63 6f 6c 6f 6e 27 73 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 2c 20 74 68 65 6e 20 72 65 74 75 72 6e 20 63 6f 6e 74 72 6f 6c 20 74 6f 0a ~ " ~ the code under transformation." 20 20 20 20 7e 20 74 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Same deal for .". Hey, we're getting good at this!" 20 20 7e 20 53 61 6d 65 20 64 65 61 6c 20 66 6f 72 20 2e 22 2e 20 48 65 79 2c 20 77 65 27 72 65 20 67 65 74 74 69 6e 67 20 67 6f 6f 64 20 61 74 20 74 68 69 73 21 0a ~ " dup ' ." entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 2e 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ' hex-dot-string-alternate entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 64 6f 74 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" exit" find entry-to-execution-token ," 20 20 20 20 73 22 20 65 78 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ We want to suppress the behavior of" ~ " relink-main-input-buffer-to-stdin" 20 20 7e 20 20 20 57 65 20 77 61 6e 74 20 74 6f 20 73 75 70 70 72 65 73 73 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 72 65 6c 69 6e 6b 2d 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 74 6f 2d 73 74 64 69 6e 0a ~ " ~ entirely. Happily, that's easy. We need to do this" ~ " because otherwise the" 20 20 7e 20 65 6e 74 69 72 65 6c 79 2e 20 48 61 70 70 69 6c 79 2c 20 74 68 61 74 27 73 20 65 61 73 79 2e 20 57 65 20 6e 65 65 64 20 74 6f 20 64 6f 20 74 68 69 73 20 62 65 63 61 75 73 65 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 0a ~ " ~ transformed code will mess with our outer interpreter!" 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 77 69 6c 6c 20 6d 65 73 73 20 77 69 74 68 20 6f 75 72 20 6f 75 74 65 72 20 69 6e 74 65 72 70 72 65 74 65 72 21 0a ~ " dup s" relink-main-input-buffer-to-stdin" stringcmp 0 =" ~ " {" 20 20 64 75 70 20 73 22 20 72 65 6c 69 6e 6b 2d 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 74 6f 2d 73 74 64 69 6e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ Return before doing anything." 20 20 20 20 7e 20 52 65 74 75 72 6e 20 62 65 66 6f 72 65 20 64 6f 69 6e 67 20 61 6e 79 74 68 69 6e 67 2e 0a ~ " s" exit" find entry-to-execution-token ," 20 20 20 20 73 22 20 65 78 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ We are entirely replacing sys-write with our own" ~ " version. It's an" 20 20 7e 20 20 20 57 65 20 61 72 65 20 65 6e 74 69 72 65 6c 79 20 72 65 70 6c 61 63 69 6e 67 20 73 79 73 2d 77 72 69 74 65 20 77 69 74 68 20 6f 75 72 20 6f 77 6e 20 76 65 72 73 69 6f 6e 2e 20 49 74 27 73 20 61 6e 0a ~ " ~ assembly word, and we're replacing it with a Forth" ~ " word, so there's some" 20 20 7e 20 61 73 73 65 6d 62 6c 79 20 77 6f 72 64 2c 20 61 6e 64 20 77 65 27 72 65 20 72 65 70 6c 61 63 69 6e 67 20 69 74 20 77 69 74 68 20 61 20 46 6f 72 74 68 20 77 6f 72 64 2c 20 73 6f 20 74 68 65 72 65 27 73 20 73 6f 6d 65 0a ~ " ~ matching code in the ;asm alternate that makes sure to" ~ " not mess that up." 20 20 7e 20 6d 61 74 63 68 69 6e 67 20 63 6f 64 65 20 69 6e 20 74 68 65 20 3b 61 73 6d 20 61 6c 74 65 72 6e 61 74 65 20 74 68 61 74 20 6d 61 6b 65 73 20 73 75 72 65 20 74 6f 20 6e 6f 74 20 6d 65 73 73 20 74 68 61 74 20 75 70 2e 0a ~ " dup s" sys-write" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 79 73 2d 77 72 69 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ' hex-sys-write-replacement entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 73 79 73 2d 77 72 69 74 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" exit" find entry-to-execution-token ," 20 20 20 20 73 22 20 65 78 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Now we have a bunch of patches that keep track of" ~ " output metadata. These" 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 68 61 76 65 20 61 20 62 75 6e 63 68 20 6f 66 20 70 61 74 63 68 65 73 20 74 68 61 74 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 2e 20 54 68 65 73 65 0a ~ " ~ are all Forth words, nothing too complicated about the" ~ " actual patching." 20 20 7e 20 61 72 65 20 61 6c 6c 20 46 6f 72 74 68 20 77 6f 72 64 73 2c 20 6e 6f 74 68 69 6e 67 20 74 6f 6f 20 63 6f 6d 70 6c 69 63 61 74 65 64 20 61 62 6f 75 74 20 74 68 65 20 61 63 74 75 61 6c 20 70 61 74 63 68 69 6e 67 2e 0a ~ " dup s" reset-labels" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 72 65 73 65 74 2d 6c 61 62 65 6c 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ This is only ever called in one place, the end of a" ~ " failed iteration" 20 20 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 6f 6e 6c 79 20 65 76 65 72 20 63 61 6c 6c 65 64 20 69 6e 20 6f 6e 65 20 70 6c 61 63 65 2c 20 74 68 65 20 65 6e 64 20 6f 66 20 61 20 66 61 69 6c 65 64 20 69 74 65 72 61 74 69 6f 6e 0a ~ " ~ of label-loop. We need to reinitialize all the" ~ " metadata entries whenever" 20 20 20 20 7e 20 6f 66 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2e 20 57 65 20 6e 65 65 64 20 74 6f 20 72 65 69 6e 69 74 69 61 6c 69 7a 65 20 61 6c 6c 20 74 68 65 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 69 65 73 20 77 68 65 6e 65 76 65 72 0a ~ " ~ that happens, and reset-labels is a good semantic" ~ " match for that" 20 20 20 20 7e 20 74 68 61 74 20 68 61 70 70 65 6e 73 2c 20 61 6e 64 20 72 65 73 65 74 2d 6c 61 62 65 6c 73 20 69 73 20 61 20 67 6f 6f 64 20 73 65 6d 61 6e 74 69 63 20 6d 61 74 63 68 20 66 6f 72 20 74 68 61 74 0a ~ " ~ behavior, so it's a good place for the hook." 20 20 20 20 7e 20 62 65 68 61 76 69 6f 72 2c 20 73 6f 20 69 74 27 73 20 61 20 67 6f 6f 64 20 70 6c 61 63 65 20 66 6f 72 20 74 68 65 20 68 6f 6f 6b 2e 0a ~ " ' create-hex-output-metadata-top-of-file-entries" 20 20 20 20 27 20 63 72 65 61 74 65 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 74 6f 70 2d 6f 66 2d 66 69 6c 65 2d 65 6e 74 72 69 65 73 0a ~ " entry-to-execution-token ," 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ Fall through to the inner implementation." 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" set-label" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 65 74 2d 6c 61 62 65 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ (new label value, label entry pointer --)" 20 20 20 20 7e 20 28 6e 65 77 20 6c 61 62 65 6c 20 76 61 6c 75 65 2c 20 6c 61 62 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ " s" 2dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 32 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ' hex-set-label-trace entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 73 65 74 2d 6c 61 62 65 6c 2d 74 72 61 63 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ Fall through to the inner implementation." 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ "" 0a ~ " dup s" packstring" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 61 63 6b 73 74 72 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ (output point, string pointer)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " s" 2dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 32 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ This one's a lot of work, so we defer to a" ~ " single-purpose word." 20 20 20 20 7e 20 54 68 69 73 20 6f 6e 65 27 73 20 61 20 6c 6f 74 20 6f 66 20 77 6f 72 6b 2c 20 73 6f 20 77 65 20 64 65 66 65 72 20 74 6f 20 61 20 73 69 6e 67 6c 65 2d 70 75 72 70 6f 73 65 20 77 6f 72 64 2e 0a ~ " ' hex-packstring-trace entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 70 61 63 6b 73 74 72 69 6e 67 2d 74 72 61 63 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ Fall through to the inner implementation." 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ This is highly similar to packstring." 20 20 7e 20 54 68 69 73 20 69 73 20 68 69 67 68 6c 79 20 73 69 6d 69 6c 61 72 20 74 6f 20 70 61 63 6b 73 74 72 69 6e 67 2e 0a ~ " dup s" pack-raw-string" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ (output point, string pointer)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " s" 2dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 32 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" stringlen" find entry-to-execution-token ," 20 20 20 20 73 22 20 73 74 72 69 6e 67 6c 65 6e 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ (output point, string pointer, string length NOT" ~ " including terminator)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 4e 4f 54 20 69 6e 63 6c 75 64 69 6e 67 20 74 65 72 6d 69 6e 61 74 6f 72 29 0a ~ "" 0a ~ " ~ Before we add the metadata entry, we also want to" ~ " call hex-pack-trace" 20 20 20 20 7e 20 20 20 42 65 66 6f 72 65 20 77 65 20 61 64 64 20 74 68 65 20 6d 65 74 61 64 61 74 61 20 65 6e 74 72 79 2c 20 77 65 20 61 6c 73 6f 20 77 61 6e 74 20 74 6f 20 63 61 6c 6c 20 68 65 78 2d 70 61 63 6b 2d 74 72 61 63 65 0a ~ " ~ to make sure latest-output-point gets adjusted for" ~ " the string." 20 20 20 20 7e 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 67 65 74 73 20 61 64 6a 75 73 74 65 64 20 66 6f 72 20 74 68 65 20 73 74 72 69 6e 67 2e 0a ~ " ~ Otherwise, we'd see magic comments in the wrong" ~ " place." 20 20 20 20 7e 20 4f 74 68 65 72 77 69 73 65 2c 20 77 65 27 64 20 73 65 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 74 68 65 20 77 72 6f 6e 67 20 70 6c 61 63 65 2e 0a ~ " s" 3roll" find entry-to-execution-token ," 20 20 20 20 73 22 20 33 72 6f 6c 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" lit" find entry-to-execution-token ," 20 20 20 20 73 22 20 6c 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " 4 ," 20 20 20 20 34 20 2c 0a ~ " s" unroll" find entry-to-execution-token ," 20 20 20 20 73 22 20 75 6e 72 6f 6c 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" swap" find entry-to-execution-token ," 20 20 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" 3unroll" find entry-to-execution-token ," 20 20 20 20 73 22 20 33 75 6e 72 6f 6c 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ (output point, string pointer, string length NOT" ~ " including terminator," 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 4e 4f 54 20 69 6e 63 6c 75 64 69 6e 67 20 74 65 72 6d 69 6e 61 74 6f 72 2c 0a ~ " ~ output point, string length NOT including" ~ " terminator)" 20 20 20 20 7e 20 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 4e 4f 54 20 69 6e 63 6c 75 64 69 6e 67 20 74 65 72 6d 69 6e 61 74 6f 72 29 0a ~ " ' hex-pack-trace entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 70 61 63 6b 2d 74 72 61 63 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " ~ (output point, string pointer, string length" ~ " including terminator)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 69 6e 63 6c 75 64 69 6e 67 20 74 65 72 6d 69 6e 61 74 6f 72 29 0a ~ " s" swap" find entry-to-execution-token ," 20 20 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ' hex-output-metadata-entry-type-raw-string-literal" 20 20 20 20 27 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 61 77 2d 73 74 72 69 6e 67 2d 6c 69 74 65 72 61 6c 0a ~ " entry-to-execution-token ," 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" swap" find entry-to-execution-token ," 20 20 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ' add-hex-output-metadata-entry" ~ " entry-to-execution-token ," 20 20 20 20 27 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ (output point, string pointer)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ Fall through to the inner implementation." 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ "" 0a ~ " dup s" pack8" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 61 63 6b 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ We can't use over because this patch happens at the" ~ " time pack8 is" 20 20 20 20 7e 20 20 20 57 65 20 63 61 6e 27 74 20 75 73 65 20 6f 76 65 72 20 62 65 63 61 75 73 65 20 74 68 69 73 20 70 61 74 63 68 20 68 61 70 70 65 6e 73 20 61 74 20 74 68 65 20 74 69 6d 65 20 70 61 63 6b 38 20 69 73 0a ~ " ~ being defined, and it would be a forward reference." ~ " We do the equivalent" 20 20 20 20 7e 20 62 65 69 6e 67 20 64 65 66 69 6e 65 64 2c 20 61 6e 64 20 69 74 20 77 6f 75 6c 64 20 62 65 20 61 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 2e 20 57 65 20 64 6f 20 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 0a ~ " ~ by hand." 20 20 20 20 7e 20 62 79 20 68 61 6e 64 2e 0a ~ " ~ (output point, value)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 76 61 6c 75 65 29 0a ~ " s" swap" find entry-to-execution-token ," 20 20 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" 3unroll" find entry-to-execution-token ," 20 20 20 20 73 22 20 33 75 6e 72 6f 6c 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ (output point, value, output point)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 76 61 6c 75 65 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " s" lit" find entry-to-execution-token ," 20 20 20 20 73 22 20 6c 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " 1 ," 20 20 20 20 31 20 2c 0a ~ " ' hex-pack-trace entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 70 61 63 6b 2d 74 72 61 63 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ Fall through to the inner implementation." 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Extremely similar to the pack8 patch." 20 20 7e 20 45 78 74 72 65 6d 65 6c 79 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 70 61 63 6b 38 20 70 61 74 63 68 2e 0a ~ " dup s" pack16" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 61 63 6b 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ We can't use over because this patch happens at the" ~ " time pack8 is" 20 20 20 20 7e 20 20 20 57 65 20 63 61 6e 27 74 20 75 73 65 20 6f 76 65 72 20 62 65 63 61 75 73 65 20 74 68 69 73 20 70 61 74 63 68 20 68 61 70 70 65 6e 73 20 61 74 20 74 68 65 20 74 69 6d 65 20 70 61 63 6b 38 20 69 73 0a ~ " ~ being defined, and it would be a forward reference." ~ " We do the equivalent" 20 20 20 20 7e 20 62 65 69 6e 67 20 64 65 66 69 6e 65 64 2c 20 61 6e 64 20 69 74 20 77 6f 75 6c 64 20 62 65 20 61 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 2e 20 57 65 20 64 6f 20 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 0a ~ " ~ by hand." 20 20 20 20 7e 20 62 79 20 68 61 6e 64 2e 0a ~ " ~ (output point, value)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 76 61 6c 75 65 29 0a ~ " s" swap" find entry-to-execution-token ," 20 20 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" 3unroll" find entry-to-execution-token ," 20 20 20 20 73 22 20 33 75 6e 72 6f 6c 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ (output point, value, output point)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 76 61 6c 75 65 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " s" lit" find entry-to-execution-token ," 20 20 20 20 73 22 20 6c 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " 2 ," 20 20 20 20 32 20 2c 0a ~ " ' hex-pack-trace entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 70 61 63 6b 2d 74 72 61 63 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ Fall through to the inner implementation." 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Extremely similar to the pack8 patch." 20 20 7e 20 45 78 74 72 65 6d 65 6c 79 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 70 61 63 6b 38 20 70 61 74 63 68 2e 0a ~ " dup s" pack32" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 61 63 6b 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ We can't use over because this patch happens at the" ~ " time pack8 is" 20 20 20 20 7e 20 20 20 57 65 20 63 61 6e 27 74 20 75 73 65 20 6f 76 65 72 20 62 65 63 61 75 73 65 20 74 68 69 73 20 70 61 74 63 68 20 68 61 70 70 65 6e 73 20 61 74 20 74 68 65 20 74 69 6d 65 20 70 61 63 6b 38 20 69 73 0a ~ " ~ being defined, and it would be a forward reference." ~ " We do the equivalent" 20 20 20 20 7e 20 62 65 69 6e 67 20 64 65 66 69 6e 65 64 2c 20 61 6e 64 20 69 74 20 77 6f 75 6c 64 20 62 65 20 61 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 2e 20 57 65 20 64 6f 20 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 0a ~ " ~ by hand." 20 20 20 20 7e 20 62 79 20 68 61 6e 64 2e 0a ~ " ~ (output point, value)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 76 61 6c 75 65 29 0a ~ " s" swap" find entry-to-execution-token ," 20 20 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" 3unroll" find entry-to-execution-token ," 20 20 20 20 73 22 20 33 75 6e 72 6f 6c 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ (output point, value, output point)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 76 61 6c 75 65 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " s" lit" find entry-to-execution-token ," 20 20 20 20 73 22 20 6c 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " 4 ," 20 20 20 20 34 20 2c 0a ~ " ' hex-pack-trace entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 70 61 63 6b 2d 74 72 61 63 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ Fall through to the inner implementation." 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Extremely similar to the pack8 patch." 20 20 7e 20 45 78 74 72 65 6d 65 6c 79 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 70 61 63 6b 38 20 70 61 74 63 68 2e 0a ~ " dup s" pack64" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 61 63 6b 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " create dropstring" 20 20 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ "" 0a ~ " ~ We can't use over because this patch happens at the" ~ " time pack8 is" 20 20 20 20 7e 20 20 20 57 65 20 63 61 6e 27 74 20 75 73 65 20 6f 76 65 72 20 62 65 63 61 75 73 65 20 74 68 69 73 20 70 61 74 63 68 20 68 61 70 70 65 6e 73 20 61 74 20 74 68 65 20 74 69 6d 65 20 70 61 63 6b 38 20 69 73 0a ~ " ~ being defined, and it would be a forward reference." ~ " We do the equivalent" 20 20 20 20 7e 20 62 65 69 6e 67 20 64 65 66 69 6e 65 64 2c 20 61 6e 64 20 69 74 20 77 6f 75 6c 64 20 62 65 20 61 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 2e 20 57 65 20 64 6f 20 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 0a ~ " ~ by hand." 20 20 20 20 7e 20 62 79 20 68 61 6e 64 2e 0a ~ " ~ (output point, value)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 76 61 6c 75 65 29 0a ~ " s" swap" find entry-to-execution-token ," 20 20 20 20 73 22 20 73 77 61 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" dup" find entry-to-execution-token ," 20 20 20 20 73 22 20 64 75 70 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" 3unroll" find entry-to-execution-token ," 20 20 20 20 73 22 20 33 75 6e 72 6f 6c 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ (output point, value, output point)" 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 76 61 6c 75 65 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " s" lit" find entry-to-execution-token ," 20 20 20 20 73 22 20 6c 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " 8 ," 20 20 20 20 38 20 2c 0a ~ " ' hex-pack-trace entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 70 61 63 6b 2d 74 72 61 63 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ~ Fall through to the inner implementation." 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a ~ "" 0a ~ " ' ] entry-to-execution-token execute" 20 20 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ If no special case matches, we fall back to just" ~ " being a regular colon." 20 20 7e 20 20 20 49 66 20 6e 6f 20 73 70 65 63 69 61 6c 20 63 61 73 65 20 6d 61 74 63 68 65 73 2c 20 77 65 20 66 61 6c 6c 20 62 61 63 6b 20 74 6f 20 6a 75 73 74 20 62 65 69 6e 67 20 61 20 72 65 67 75 6c 61 72 20 63 6f 6c 6f 6e 2e 0a ~ " ~ We already read the word name above, so we have to do" ~ " the rest of the" 20 20 7e 20 57 65 20 61 6c 72 65 61 64 79 20 72 65 61 64 20 74 68 65 20 77 6f 72 64 20 6e 61 6d 65 20 61 62 6f 76 65 2c 20 73 6f 20 77 65 20 68 61 76 65 20 74 6f 20 64 6f 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 0a ~ " ~ steps ourselves as well." 20 20 7e 20 73 74 65 70 73 20 6f 75 72 73 65 6c 76 65 73 20 61 73 20 77 65 6c 6c 2e 0a ~ " create dropstring" 20 20 63 72 65 61 74 65 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " s" docol" find entry-to-execution-token execute ," 20 20 73 22 20 64 6f 63 6f 6c 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 2c 0a ~ " make-hidden" 20 20 6d 61 6b 65 2d 68 69 64 64 65 6e 0a ~ " ' ] entry-to-execution-token execute" 20 20 27 20 5d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This word gets installed as a trap at the beginning of" ~ " every Forth word," 7e 20 20 54 68 69 73 20 77 6f 72 64 20 67 65 74 73 20 69 6e 73 74 61 6c 6c 65 64 20 61 73 20 61 20 74 72 61 70 20 61 74 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 65 76 65 72 79 20 46 6f 72 74 68 20 77 6f 72 64 2c 0a ~ "~ so that it can examine the control stack and produce" ~ " kinds of metadata that" 7e 20 73 6f 20 74 68 61 74 20 69 74 20 63 61 6e 20 65 78 61 6d 69 6e 65 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 61 6e 64 20 70 72 6f 64 75 63 65 20 6b 69 6e 64 73 20 6f 66 20 6d 65 74 61 64 61 74 61 20 74 68 61 74 0a ~ "~ require information that only exists at runtime. See" 7e 20 72 65 71 75 69 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 68 61 74 20 6f 6e 6c 79 20 65 78 69 73 74 73 20 61 74 20 72 75 6e 74 69 6d 65 2e 20 53 65 65 0a ~ "~ hex-semicolon-alterante, below, for details of how it's" ~ " installed." 7e 20 68 65 78 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 61 6e 74 65 2c 20 62 65 6c 6f 77 2c 20 66 6f 72 20 64 65 74 61 69 6c 73 20 6f 66 20 68 6f 77 20 69 74 27 73 20 69 6e 73 74 61 6c 6c 65 64 2e 0a ~ "~" 7e 0a ~ "~ It is worth noting that hex-trap can coexist with the" ~ " more-targeted traps" 7e 20 20 20 49 74 20 69 73 20 77 6f 72 74 68 20 6e 6f 74 69 6e 67 20 74 68 61 74 20 68 65 78 2d 74 72 61 70 20 63 61 6e 20 63 6f 65 78 69 73 74 20 77 69 74 68 20 74 68 65 20 6d 6f 72 65 2d 74 61 72 67 65 74 65 64 20 74 72 61 70 73 0a ~ "~ installed by hex-colon-alternate, above. It runs before" ~ " them, because" 7e 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 2c 20 61 62 6f 76 65 2e 20 49 74 20 72 75 6e 73 20 62 65 66 6f 72 65 20 74 68 65 6d 2c 20 62 65 63 61 75 73 65 0a ~ "~ hex-colon-alternate prepends its stuff first and then" 7e 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 70 72 65 70 65 6e 64 73 20 69 74 73 20 73 74 75 66 66 20 66 69 72 73 74 20 61 6e 64 20 74 68 65 6e 0a ~ "~ hex-semicolon-alternate slides that all forward to" ~ " prepend the call to" 7e 20 68 65 78 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 73 6c 69 64 65 73 20 74 68 61 74 20 61 6c 6c 20 66 6f 72 77 61 72 64 20 74 6f 20 70 72 65 70 65 6e 64 20 74 68 65 20 63 61 6c 6c 20 74 6f 0a ~ "~ hex-trace." 7e 20 68 65 78 2d 74 72 61 63 65 2e 0a ~ "~" 7e 0a ~ "~ TODO this probably doesn't serve a purpose in the end," ~ " and should go away," 7e 20 54 4f 44 4f 20 74 68 69 73 20 70 72 6f 62 61 62 6c 79 20 64 6f 65 73 6e 27 74 20 73 65 72 76 65 20 61 20 70 75 72 70 6f 73 65 20 69 6e 20 74 68 65 20 65 6e 64 2c 20 61 6e 64 20 73 68 6f 75 6c 64 20 67 6f 20 61 77 61 79 2c 0a ~ "~ but the actual stack-walking code is useful and should be" ~ " kept until it's" 7e 20 62 75 74 20 74 68 65 20 61 63 74 75 61 6c 20 73 74 61 63 6b 2d 77 61 6c 6b 69 6e 67 20 63 6f 64 65 20 69 73 20 75 73 65 66 75 6c 20 61 6e 64 20 73 68 6f 75 6c 64 20 62 65 20 6b 65 70 74 20 75 6e 74 69 6c 20 69 74 27 73 0a ~ "~ been refactored into something worth keeping." 7e 20 62 65 65 6e 20 72 65 66 61 63 74 6f 72 65 64 20 69 6e 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 77 6f 72 74 68 20 6b 65 65 70 69 6e 67 2e 0a ~ ": hex-trace" 3a 20 68 65 78 2d 74 72 61 63 65 0a ~ " exit" 20 20 65 78 69 74 0a ~ " ~ value@ here @ swap 0" ~ " hex-output-metadata-entry-type-line-comment" 20 20 7e 20 76 61 6c 75 65 40 20 68 65 72 65 20 40 20 73 77 61 70 20 30 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 0a ~ " ~ add-hex-output-metadata-entry" 20 20 7e 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " newline" 20 20 6e 65 77 6c 69 6e 65 0a ~ " ~ This stack-walking code is modeled off the code in" ~ " list-callers, in" 20 20 7e 20 20 20 54 68 69 73 20 73 74 61 63 6b 2d 77 61 6c 6b 69 6e 67 20 63 6f 64 65 20 69 73 20 6d 6f 64 65 6c 65 64 20 6f 66 66 20 74 68 65 20 63 6f 64 65 20 69 6e 20 6c 69 73 74 2d 63 61 6c 6c 65 72 73 2c 20 69 6e 0a ~ " ~ language/dynamic/dynamic.e." 20 20 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 64 79 6e 61 6d 69 63 2e 65 2e 0a ~ " ~" 20 20 7e 0a ~ "" 0a ~ " ~ This is the bit of the hex transform where all the" ~ " memory-management" 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 62 69 74 20 6f 66 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 77 68 65 72 65 20 61 6c 6c 20 74 68 65 20 6d 65 6d 6f 72 79 2d 6d 61 6e 61 67 65 6d 65 6e 74 0a ~ " ~ assumptions are in play at once, so, in understanding" ~ " it, it's probably" 20 20 7e 20 61 73 73 75 6d 70 74 69 6f 6e 73 20 61 72 65 20 69 6e 20 70 6c 61 79 20 61 74 20 6f 6e 63 65 2c 20 73 6f 2c 20 69 6e 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 20 69 74 2c 20 69 74 27 73 20 70 72 6f 62 61 62 6c 79 0a ~ " ~ a good idea to skim back over the background described" ~ " under "hex" 20 20 7e 20 61 20 67 6f 6f 64 20 69 64 65 61 20 74 6f 20 73 6b 69 6d 20 62 61 63 6b 20 6f 76 65 72 20 74 68 65 20 62 61 63 6b 67 72 6f 75 6e 64 20 64 65 73 63 72 69 62 65 64 20 75 6e 64 65 72 20 22 68 65 78 0a ~ " ~ transform implementation", above, and make sure it's" ~ " fresh in your mind." 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 22 2c 20 61 62 6f 76 65 2c 20 61 6e 64 20 6d 61 6b 65 20 73 75 72 65 20 69 74 27 73 20 66 72 65 73 68 20 69 6e 20 79 6f 75 72 20 6d 69 6e 64 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ It's important to notice that, as we walk it, the" ~ " values of "here" and" 20 20 7e 20 20 20 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 74 6f 20 6e 6f 74 69 63 65 20 74 68 61 74 2c 20 61 73 20 77 65 20 77 61 6c 6b 20 69 74 2c 20 74 68 65 20 76 61 6c 75 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 0a ~ " ~ "latest" reflect the log and dictionary of the code" ~ " being transformed, ie." 20 20 7e 20 22 6c 61 74 65 73 74 22 20 72 65 66 6c 65 63 74 20 74 68 65 20 6c 6f 67 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 79 20 6f 66 20 74 68 65 20 63 6f 64 65 20 62 65 69 6e 67 20 74 72 61 6e 73 66 6f 72 6d 65 64 2c 20 69 65 2e 0a ~ " ~ they are the ones in the output buffer, not the log and" ~ " dictionary of the" 20 20 7e 20 74 68 65 79 20 61 72 65 20 74 68 65 20 6f 6e 65 73 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 2c 20 6e 6f 74 20 74 68 65 20 6c 6f 67 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 79 20 6f 66 20 74 68 65 0a ~ " ~ outer program. Therefore, we can use containing-entry" ~ " to find the entry" 20 20 7e 20 6f 75 74 65 72 20 70 72 6f 67 72 61 6d 2e 20 54 68 65 72 65 66 6f 72 65 2c 20 77 65 20 63 61 6e 20 75 73 65 20 63 6f 6e 74 61 69 6e 69 6e 67 2d 65 6e 74 72 79 20 74 6f 20 66 69 6e 64 20 74 68 65 20 65 6e 74 72 79 0a ~ " ~ headers for words inside the transform, and if we want" ~ " to look at words" 20 20 7e 20 68 65 61 64 65 72 73 20 66 6f 72 20 77 6f 72 64 73 20 69 6e 73 69 64 65 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 2c 20 61 6e 64 20 69 66 20 77 65 20 77 61 6e 74 20 74 6f 20 6c 6f 6f 6b 20 61 74 20 77 6f 72 64 73 0a ~ " ~ outside the transform we can wrap containing-entry in" 20 20 7e 20 6f 75 74 73 69 64 65 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 77 65 20 63 61 6e 20 77 72 61 70 20 63 6f 6e 74 61 69 6e 69 6e 67 2d 65 6e 74 72 79 20 69 6e 0a ~ " ~ swap-transform-variables. We can't use is-in-log," ~ " though, because the" 20 20 7e 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 2e 20 57 65 20 63 61 6e 27 74 20 75 73 65 20 69 73 2d 69 6e 2d 6c 6f 67 2c 20 74 68 6f 75 67 68 2c 20 62 65 63 61 75 73 65 20 74 68 65 0a ~ " ~ label-loop buffer is inside the output buffer, which is" ~ " inside the outer" 20 20 7e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 20 69 73 20 69 6e 73 69 64 65 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 2c 20 77 68 69 63 68 20 69 73 20 69 6e 73 69 64 65 20 74 68 65 20 6f 75 74 65 72 0a ~ " ~ log, so it doesn't make the distinctions we need it" ~ " to." 20 20 7e 20 6c 6f 67 2c 20 73 6f 20 69 74 20 64 6f 65 73 6e 27 74 20 6d 61 6b 65 20 74 68 65 20 64 69 73 74 69 6e 63 74 69 6f 6e 73 20 77 65 20 6e 65 65 64 20 69 74 20 74 6f 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Every word inside the transform will have" ~ " hex-transform-one exactly once" 20 20 7e 20 20 20 45 76 65 72 79 20 77 6f 72 64 20 69 6e 73 69 64 65 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 77 69 6c 6c 20 68 61 76 65 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 20 65 78 61 63 74 6c 79 20 6f 6e 63 65 0a ~ " ~ in its call chain, so we walk the control stack only up" ~ " to that point." 20 20 7e 20 69 6e 20 69 74 73 20 63 61 6c 6c 20 63 68 61 69 6e 2c 20 73 6f 20 77 65 20 77 61 6c 6b 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 6f 6e 6c 79 20 75 70 20 74 6f 20 74 68 61 74 20 70 6f 69 6e 74 2e 0a ~ " control@" 20 20 63 6f 6e 74 72 6f 6c 40 0a ~ " { ~ First, check to make sure we haven't run off the" ~ " bottom of the control" 20 20 7b 20 7e 20 20 20 46 69 72 73 74 2c 20 63 68 65 63 6b 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 77 65 20 68 61 76 65 6e 27 74 20 72 75 6e 20 6f 66 66 20 74 68 65 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 63 6f 6e 74 72 6f 6c 0a ~ " ~ stack. Remember, the control stack is an array of" ~ " pointers, so this is a" 20 20 20 20 7e 20 73 74 61 63 6b 2e 20 52 65 6d 65 6d 62 65 72 2c 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 70 6f 69 6e 74 65 72 73 2c 20 73 6f 20 74 68 69 73 20 69 73 20 61 0a ~ " ~ simple bounds check." 20 20 20 20 7e 20 73 69 6d 70 6c 65 20 62 6f 75 6e 64 73 20 63 68 65 63 6b 2e 0a ~ " dup r0 @ >" 20 20 20 20 64 75 70 20 72 30 20 40 20 3e 0a ~ "" 0a ~ " ~ If it is, we also want to look at what it points" ~ " to." 20 20 20 20 7e 20 20 20 49 66 20 69 74 20 69 73 2c 20 77 65 20 61 6c 73 6f 20 77 61 6e 74 20 74 6f 20 6c 6f 6f 6b 20 61 74 20 77 68 61 74 20 69 74 20 70 6f 69 6e 74 73 20 74 6f 2e 0a ~ " dup {" 20 20 20 20 64 75 70 20 7b 0a ~ " ~ Dereference the pointer we've been iterating (..." ~ " we're actually" 20 20 20 20 20 20 7e 20 20 20 44 65 72 65 66 65 72 65 6e 63 65 20 74 68 65 20 70 6f 69 6e 74 65 72 20 77 65 27 76 65 20 62 65 65 6e 20 69 74 65 72 61 74 69 6e 67 20 28 2e 2e 2e 20 77 65 27 72 65 20 61 63 74 75 61 6c 6c 79 0a ~ " ~ looking at a pointer to a pointer ...), and check" ~ " that it's not inside" 20 20 20 20 20 20 7e 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 2e 2e 2e 29 2c 20 61 6e 64 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 27 73 20 6e 6f 74 20 69 6e 73 69 64 65 0a ~ " ~ hex-transform-one's body." 20 20 20 20 20 20 7e 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 27 73 20 62 6f 64 79 2e 0a ~ " drop dup @" 20 20 20 20 20 20 64 72 6f 70 20 64 75 70 20 40 0a ~ "" 0a ~ " ~ The inner dictionary is inside the outer log, so" ~ " we'll get an entry" 20 20 20 20 20 20 7e 20 20 20 54 68 65 20 69 6e 6e 65 72 20 64 69 63 74 69 6f 6e 61 72 79 20 69 73 20 69 6e 73 69 64 65 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 2c 20 73 6f 20 77 65 27 6c 6c 20 67 65 74 20 61 6e 20 65 6e 74 72 79 0a ~ " ~ header regardless of which dictionary we consider," ~ " but it may not be" 20 20 20 20 20 20 7e 20 68 65 61 64 65 72 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 69 63 68 20 64 69 63 74 69 6f 6e 61 72 79 20 77 65 20 63 6f 6e 73 69 64 65 72 2c 20 62 75 74 20 69 74 20 6d 61 79 20 6e 6f 74 20 62 65 0a ~ " ~ the one we care about. If we want to get the" ~ " correct entry pointer, we" 20 20 20 20 20 20 7e 20 74 68 65 20 6f 6e 65 20 77 65 20 63 61 72 65 20 61 62 6f 75 74 2e 20 49 66 20 77 65 20 77 61 6e 74 20 74 6f 20 67 65 74 20 74 68 65 20 63 6f 72 72 65 63 74 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 77 65 0a ~ " ~ have to make sure we're looking at the outer" ~ " dictionary." 20 20 20 20 20 20 7e 20 68 61 76 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 77 65 27 72 65 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 65 20 6f 75 74 65 72 20 64 69 63 74 69 6f 6e 61 72 79 2e 0a ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ Check what entry the control pointer is in." 20 20 20 20 20 20 7e 20 43 68 65 63 6b 20 77 68 61 74 20 65 6e 74 72 79 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 70 6f 69 6e 74 65 72 20 69 73 20 69 6e 2e 0a ~ " containing-entry" 20 20 20 20 20 20 63 6f 6e 74 61 69 6e 69 6e 67 2d 65 6e 74 72 79 0a ~ "" 0a ~ " ~ Get the entry for hex-transform-one to compare" ~ " against. This would" 20 20 20 20 20 20 7e 20 20 20 47 65 74 20 74 68 65 20 65 6e 74 72 79 20 66 6f 72 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 20 74 6f 20 63 6f 6d 70 61 72 65 20 61 67 61 69 6e 73 74 2e 20 20 54 68 69 73 20 77 6f 75 6c 64 0a ~ " ~ be a forward reference, so we need to look it up at" ~ " runtime." 20 20 20 20 20 20 7e 20 62 65 20 61 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 2c 20 73 6f 20 77 65 20 6e 65 65 64 20 74 6f 20 6c 6f 6f 6b 20 69 74 20 75 70 20 61 74 20 72 75 6e 74 69 6d 65 2e 0a ~ " s" hex-transform-one" find" 20 20 20 20 20 20 73 22 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 22 20 66 69 6e 64 0a ~ "" 0a ~ " ~ Now switch back." 20 20 20 20 20 20 7e 20 4e 6f 77 20 73 77 69 74 63 68 20 62 61 63 6b 2e 0a ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ If they're equal, we want to stop the loop." 20 20 20 20 20 20 7e 20 49 66 20 74 68 65 79 27 72 65 20 65 71 75 61 6c 2c 20 77 65 20 77 61 6e 74 20 74 6f 20 73 74 6f 70 20 74 68 65 20 6c 6f 6f 70 2e 0a ~ " !=" 20 20 20 20 20 20 21 3d 0a ~ " } if }" 20 20 20 20 7d 20 69 66 20 7d 0a ~ " { dup @" 20 20 7b 20 64 75 70 20 40 0a ~ "" 0a ~ " ~ TODO this isn't in quine.asm, so if we keep this code" ~ " at all, that needs" 20 20 20 20 7e 20 54 4f 44 4f 20 74 68 69 73 20 69 73 6e 27 74 20 69 6e 20 71 75 69 6e 65 2e 61 73 6d 2c 20 73 6f 20 69 66 20 77 65 20 6b 65 65 70 20 74 68 69 73 20 63 6f 64 65 20 61 74 20 61 6c 6c 2c 20 74 68 61 74 20 6e 65 65 64 73 0a ~ " ~ to be dealt with" 20 20 20 20 7e 20 74 6f 20 62 65 20 64 65 61 6c 74 20 77 69 74 68 0a ~ " ~ symbolize-pointer space" 20 20 20 20 7e 20 73 79 6d 62 6f 6c 69 7a 65 2d 70 6f 69 6e 74 65 72 20 73 70 61 63 65 0a ~ "" 0a ~ " ~ Iterate to the next pointer in the control stack." ~ " It's an array of" 20 20 20 20 7e 20 20 20 49 74 65 72 61 74 65 20 74 6f 20 74 68 65 20 6e 65 78 74 20 70 6f 69 6e 74 65 72 20 69 6e 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 2e 20 49 74 27 73 20 61 6e 20 61 72 72 61 79 20 6f 66 0a ~ " ~ pointers, so this is just arithmetic." 20 20 20 20 7e 20 70 6f 69 6e 74 65 72 73 2c 20 73 6f 20 74 68 69 73 20 69 73 20 6a 75 73 74 20 61 72 69 74 68 6d 65 74 69 63 2e 0a ~ " 8 + } while" 20 20 20 20 38 20 2b 20 7d 20 77 68 69 6c 65 0a ~ " drop ;" 20 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ We want to trace every call to a Forth word, for use in" ~ " generating" 7e 20 20 20 57 65 20 77 61 6e 74 20 74 6f 20 74 72 61 63 65 20 65 76 65 72 79 20 63 61 6c 6c 20 74 6f 20 61 20 46 6f 72 74 68 20 77 6f 72 64 2c 20 66 6f 72 20 75 73 65 20 69 6e 20 67 65 6e 65 72 61 74 69 6e 67 0a ~ "~ metadata. To do this, we want to add a prefix trap to the" ~ " calls, but we" 7e 20 6d 65 74 61 64 61 74 61 2e 20 54 6f 20 64 6f 20 74 68 69 73 2c 20 77 65 20 77 61 6e 74 20 74 6f 20 61 64 64 20 61 20 70 72 65 66 69 78 20 74 72 61 70 20 74 6f 20 74 68 65 20 63 61 6c 6c 73 2c 20 62 75 74 20 77 65 0a ~ "~ can't put the logic in hex-colon-alternate because we" ~ " don't know which" 7e 20 63 61 6e 27 74 20 70 75 74 20 74 68 65 20 6c 6f 67 69 63 20 69 6e 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 62 65 63 61 75 73 65 20 77 65 20 64 6f 6e 27 74 20 6b 6e 6f 77 20 77 68 69 63 68 0a ~ "~ words are Forth words and which are assembly words until" ~ " we see the" 7e 20 77 6f 72 64 73 20 61 72 65 20 46 6f 72 74 68 20 77 6f 72 64 73 20 61 6e 64 20 77 68 69 63 68 20 61 72 65 20 61 73 73 65 6d 62 6c 79 20 77 6f 72 64 73 20 75 6e 74 69 6c 20 77 65 20 73 65 65 20 74 68 65 0a ~ "~ semicolon." 7e 20 73 65 6d 69 63 6f 6c 6f 6e 2e 0a ~ "~" 7e 0a ~ "~ So, we do it here in hex-semicolon-alternate. The word" ~ " body has already" 7e 20 20 20 53 6f 2c 20 77 65 20 64 6f 20 69 74 20 68 65 72 65 20 69 6e 20 68 65 78 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 2e 20 54 68 65 20 77 6f 72 64 20 62 6f 64 79 20 68 61 73 20 61 6c 72 65 61 64 79 0a ~ "~ been compiled at this point, so we slide the whole body" ~ " forward to make" 7e 20 62 65 65 6e 20 63 6f 6d 70 69 6c 65 64 20 61 74 20 74 68 69 73 20 70 6f 69 6e 74 2c 20 73 6f 20 77 65 20 73 6c 69 64 65 20 74 68 65 20 77 68 6f 6c 65 20 62 6f 64 79 20 66 6f 72 77 61 72 64 20 74 6f 20 6d 61 6b 65 0a ~ "~ room. This is explicitly allowed by our compilation" ~ " model; you may be" 7e 20 72 6f 6f 6d 2e 20 54 68 69 73 20 69 73 20 65 78 70 6c 69 63 69 74 6c 79 20 61 6c 6c 6f 77 65 64 20 62 79 20 6f 75 72 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6d 6f 64 65 6c 3b 20 79 6f 75 20 6d 61 79 20 62 65 0a ~ "~ aware that it's also how high-level flow control is" ~ " implemented." 7e 20 61 77 61 72 65 20 74 68 61 74 20 69 74 27 73 20 61 6c 73 6f 20 68 6f 77 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 20 63 6f 6e 74 72 6f 6c 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 2e 0a ~ "~" 7e 0a ~ "~ You might find it useful to compare this code to the" ~ " implementations of" 7e 20 20 20 59 6f 75 20 6d 69 67 68 74 20 66 69 6e 64 20 69 74 20 75 73 65 66 75 6c 20 74 6f 20 63 6f 6d 70 61 72 65 20 74 68 69 73 20 63 6f 64 65 20 74 6f 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 6f 66 0a ~ "~ high-level flow-control utilities in" ~ " language/static/log-load.e; it operates" 7e 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 75 74 69 6c 69 74 69 65 73 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 6c 6f 67 2d 6c 6f 61 64 2e 65 3b 20 69 74 20 6f 70 65 72 61 74 65 73 0a ~ "~ under a very similar set of constraints, except that" ~ " fortunately we don't" 7e 20 75 6e 64 65 72 20 61 20 76 65 72 79 20 73 69 6d 69 6c 61 72 20 73 65 74 20 6f 66 20 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 65 78 63 65 70 74 20 74 68 61 74 20 66 6f 72 74 75 6e 61 74 65 6c 79 20 77 65 20 64 6f 6e 27 74 0a ~ "~ have the nightmare multi-dictionary situation that the" ~ " log-load transform" 7e 20 68 61 76 65 20 74 68 65 20 6e 69 67 68 74 6d 61 72 65 20 6d 75 6c 74 69 2d 64 69 63 74 69 6f 6e 61 72 79 20 73 69 74 75 61 74 69 6f 6e 20 74 68 61 74 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ does." 7e 20 64 6f 65 73 2e 0a ~ ": hex-semicolon-alternate" 3a 20 68 65 78 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " latest @ entry-to-execution-token 8 +" 20 20 6c 61 74 65 73 74 20 40 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 38 20 2b 0a ~ " dup dup dup" 20 20 64 75 70 20 64 75 70 20 64 75 70 0a ~ " ~ (start, start, start, start)" 20 20 7e 20 28 73 74 61 72 74 2c 20 73 74 61 72 74 2c 20 73 74 61 72 74 2c 20 73 74 61 72 74 29 0a ~ "" 0a ~ " ~ The actual body of the trap is just a single word" ~ " long (see below). If" 20 20 7e 20 20 20 54 68 65 20 61 63 74 75 61 6c 20 62 6f 64 79 20 6f 66 20 74 68 65 20 74 72 61 70 20 69 73 20 6a 75 73 74 20 61 20 73 69 6e 67 6c 65 20 77 6f 72 64 20 6c 6f 6e 67 20 28 73 65 65 20 62 65 6c 6f 77 29 2e 20 49 66 0a ~ " ~ that ever changes, make sure to keep the amount we" ~ " slide by in sync with" 20 20 7e 20 74 68 61 74 20 65 76 65 72 20 63 68 61 6e 67 65 73 2c 20 6d 61 6b 65 20 73 75 72 65 20 74 6f 20 6b 65 65 70 20 74 68 65 20 61 6d 6f 75 6e 74 20 77 65 20 73 6c 69 64 65 20 62 79 20 69 6e 20 73 79 6e 63 20 77 69 74 68 0a ~ " ~ it." 20 20 7e 20 69 74 2e 0a ~ " 8 + swap ~ TODO change number of words" 20 20 38 20 2b 20 73 77 61 70 20 7e 20 54 4f 44 4f 20 63 68 61 6e 67 65 20 6e 75 6d 62 65 72 20 6f 66 20 77 6f 72 64 73 0a ~ " ~ (start, start, adjusted start, start)" 20 20 7e 20 28 73 74 61 72 74 2c 20 73 74 61 72 74 2c 20 61 64 6a 75 73 74 65 64 20 73 74 61 72 74 2c 20 73 74 61 72 74 29 0a ~ "" 0a ~ " here @ swap -" 20 20 68 65 72 65 20 40 20 73 77 61 70 20 2d 0a ~ " ~ (start, start, adjusted start, length)" 20 20 7e 20 28 73 74 61 72 74 2c 20 73 74 61 72 74 2c 20 61 64 6a 75 73 74 65 64 20 73 74 61 72 74 2c 20 6c 65 6e 67 74 68 29 0a ~ "" 0a ~ " memmove" 20 20 6d 65 6d 6d 6f 76 65 0a ~ " ~ (start)" 20 20 7e 20 28 73 74 61 72 74 29 0a ~ "" 0a ~ " ~ We're going to use comma to append compiled code, so" ~ " let's swap out the" 20 20 7e 20 20 20 57 65 27 72 65 20 67 6f 69 6e 67 20 74 6f 20 75 73 65 20 63 6f 6d 6d 61 20 74 6f 20 61 70 70 65 6e 64 20 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 2c 20 73 6f 20 6c 65 74 27 73 20 73 77 61 70 20 6f 75 74 20 74 68 65 0a ~ " ~ value of "here" to point to the space we just opened" ~ " up." 20 20 7e 20 76 61 6c 75 65 20 6f 66 20 22 68 65 72 65 22 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 73 70 61 63 65 20 77 65 20 6a 75 73 74 20 6f 70 65 6e 65 64 20 75 70 2e 0a ~ " here @ swap here !" 20 20 68 65 72 65 20 40 20 73 77 61 70 20 68 65 72 65 20 21 0a ~ " ~ (old "here")" 20 20 7e 20 28 6f 6c 64 20 22 68 65 72 65 22 29 0a ~ "" 0a ~ " ~ This applies to every single word terminated with" ~ " semicolon, which is" 20 20 7e 20 20 20 54 68 69 73 20 61 70 70 6c 69 65 73 20 74 6f 20 65 76 65 72 79 20 73 69 6e 67 6c 65 20 77 6f 72 64 20 74 65 72 6d 69 6e 61 74 65 64 20 77 69 74 68 20 73 65 6d 69 63 6f 6c 6f 6e 2c 20 77 68 69 63 68 20 69 73 0a ~ " ~ all the Forth words that are created directly rather" ~ " than with "variable"" 20 20 7e 20 61 6c 6c 20 74 68 65 20 46 6f 72 74 68 20 77 6f 72 64 73 20 74 68 61 74 20 61 72 65 20 63 72 65 61 74 65 64 20 64 69 72 65 63 74 6c 79 20 72 61 74 68 65 72 20 74 68 61 6e 20 77 69 74 68 20 22 76 61 72 69 61 62 6c 65 22 0a ~ " ~ or some similar high-level facility. Because we also" ~ " can't have forward" 20 20 7e 20 6f 72 20 73 6f 6d 65 20 73 69 6d 69 6c 61 72 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 61 63 69 6c 69 74 79 2e 20 42 65 63 61 75 73 65 20 77 65 20 61 6c 73 6f 20 63 61 6e 27 74 20 68 61 76 65 20 66 6f 72 77 61 72 64 0a ~ " ~ references, that means we can't assume we'll have any" ~ " available words in" 20 20 7e 20 72 65 66 65 72 65 6e 63 65 73 2c 20 74 68 61 74 20 6d 65 61 6e 73 20 77 65 20 63 61 6e 27 74 20 61 73 73 75 6d 65 20 77 65 27 6c 6c 20 68 61 76 65 20 61 6e 79 20 61 76 61 69 6c 61 62 6c 65 20 77 6f 72 64 73 20 69 6e 0a ~ " ~ the transformed code to call, at all. So, the only" ~ " thing we can usefully" 20 20 7e 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 74 6f 20 63 61 6c 6c 2c 20 61 74 20 61 6c 6c 2e 20 53 6f 2c 20 74 68 65 20 6f 6e 6c 79 20 74 68 69 6e 67 20 77 65 20 63 61 6e 20 75 73 65 66 75 6c 6c 79 0a ~ " ~ have the trap do is call a word that's defined as part" ~ " of the transform." 20 20 7e 20 68 61 76 65 20 74 68 65 20 74 72 61 70 20 64 6f 20 69 73 20 63 61 6c 6c 20 61 20 77 6f 72 64 20 74 68 61 74 27 73 20 64 65 66 69 6e 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Fortunately, we do get to assume there will be a" ~ " normal entry header in" 20 20 7e 20 20 20 46 6f 72 74 75 6e 61 74 65 6c 79 2c 20 77 65 20 64 6f 20 67 65 74 20 74 6f 20 61 73 73 75 6d 65 20 74 68 65 72 65 20 77 69 6c 6c 20 62 65 20 61 20 6e 6f 72 6d 61 6c 20 65 6e 74 72 79 20 68 65 61 64 65 72 20 69 6e 0a ~ " ~ place for the word we're trapping. So we don't need to" ~ " scrounge up any" 20 20 7e 20 70 6c 61 63 65 20 66 6f 72 20 74 68 65 20 77 6f 72 64 20 77 65 27 72 65 20 74 72 61 70 70 69 6e 67 2e 20 53 6f 20 77 65 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 73 63 72 6f 75 6e 67 65 20 75 70 20 61 6e 79 0a ~ " ~ runtime data for the trap's benefit; the trap will be" ~ " able to get what it" 20 20 7e 20 72 75 6e 74 69 6d 65 20 64 61 74 61 20 66 6f 72 20 74 68 65 20 74 72 61 70 27 73 20 62 65 6e 65 66 69 74 3b 20 74 68 65 20 74 72 61 70 20 77 69 6c 6c 20 62 65 20 61 62 6c 65 20 74 6f 20 67 65 74 20 77 68 61 74 20 69 74 0a ~ " ~ needs by inspecting the control stack and the log." 20 20 7e 20 6e 65 65 64 73 20 62 79 20 69 6e 73 70 65 63 74 69 6e 67 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 61 6e 64 20 74 68 65 20 6c 6f 67 2e 0a ~ " ' hex-trace entry-to-execution-token ," 20 20 27 20 68 65 78 2d 74 72 61 63 65 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " ~ We're done compiling the trap's contents, so swap" ~ " "here" back. Again," 20 20 7e 20 20 20 57 65 27 72 65 20 64 6f 6e 65 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 74 72 61 70 27 73 20 63 6f 6e 74 65 6e 74 73 2c 20 73 6f 20 73 77 61 70 20 22 68 65 72 65 22 20 62 61 63 6b 2e 20 41 67 61 69 6e 2c 0a ~ " ~ keep this in sync with the length of the trap." 20 20 7e 20 6b 65 65 70 20 74 68 69 73 20 69 6e 20 73 79 6e 63 20 77 69 74 68 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 74 72 61 70 2e 0a ~ " 8 + here !" 20 20 38 20 2b 20 68 65 72 65 20 21 0a ~ "" 0a ~ " ~ Now we do the regular semicolon stuff." 20 20 7e 20 4e 6f 77 20 77 65 20 64 6f 20 74 68 65 20 72 65 67 75 6c 61 72 20 73 65 6d 69 63 6f 6c 6f 6e 20 73 74 75 66 66 2e 0a ~ " [ ' ; entry-to-execution-token , ]" 20 20 5b 20 27 20 3b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ ": hex-semicolon-assembly-alternate" 3a 20 68 65 78 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " latest @ entry-to-name" 20 20 6c 61 74 65 73 74 20 40 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 0a ~ " dup s" sys-write" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 79 73 2d 77 72 69 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ As detailed in hex-colon-alternate, above," ~ " sys-write is implemented in" 20 20 20 20 7e 20 20 20 41 73 20 64 65 74 61 69 6c 65 64 20 69 6e 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 2c 20 61 62 6f 76 65 2c 20 73 79 73 2d 77 72 69 74 65 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 69 6e 0a ~ " ~ assembly but we replace it with Forth. This logic" ~ " here collaborates with" 20 20 20 20 7e 20 61 73 73 65 6d 62 6c 79 20 62 75 74 20 77 65 20 72 65 70 6c 61 63 65 20 69 74 20 77 69 74 68 20 46 6f 72 74 68 2e 20 54 68 69 73 20 6c 6f 67 69 63 20 68 65 72 65 20 63 6f 6c 6c 61 62 6f 72 61 74 65 73 20 77 69 74 68 0a ~ " ~ the logic there to make that work." 20 20 20 20 7e 20 74 68 65 20 6c 6f 67 69 63 20 74 68 65 72 65 20 74 6f 20 6d 61 6b 65 20 74 68 61 74 20 77 6f 72 6b 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ The transformed code will still have compiled some" ~ " assembly, though it" 20 20 20 20 7e 20 20 20 54 68 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 77 69 6c 6c 20 73 74 69 6c 6c 20 68 61 76 65 20 63 6f 6d 70 69 6c 65 64 20 73 6f 6d 65 20 61 73 73 65 6d 62 6c 79 2c 20 74 68 6f 75 67 68 20 69 74 0a ~ " ~ won't be reached and would crash, so we need to fix" ~ " alignment before we" 20 20 20 20 7e 20 77 6f 6e 27 74 20 62 65 20 72 65 61 63 68 65 64 20 61 6e 64 20 77 6f 75 6c 64 20 63 72 61 73 68 2c 20 73 6f 20 77 65 20 6e 65 65 64 20 74 6f 20 66 69 78 20 61 6c 69 67 6e 6d 65 6e 74 20 62 65 66 6f 72 65 20 77 65 0a ~ " ~ call semicolon." 20 20 20 20 7e 20 63 61 6c 6c 20 73 65 6d 69 63 6f 6c 6f 6e 2e 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ " here @ 8 packalign here !" 20 20 20 20 68 65 72 65 20 40 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " [ ' ; entry-to-execution-token , ]" 20 20 20 20 5b 20 27 20 3b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " drop" 20 20 64 72 6f 70 0a ~ "" 0a ~ " ~ If no special case matches, we fall back to the regular" ~ " behavior." 20 20 7e 20 49 66 20 6e 6f 20 73 70 65 63 69 61 6c 20 63 61 73 65 20 6d 61 74 63 68 65 73 2c 20 77 65 20 66 61 6c 6c 20 62 61 63 6b 20 74 6f 20 74 68 65 20 72 65 67 75 6c 61 72 20 62 65 68 61 76 69 6f 72 2e 0a ~ " [ ' ;asm entry-to-execution-token , ]" 20 20 5b 20 27 20 3b 61 73 6d 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 5d 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ Because docol requires it, we provide a special" ~ " mini-version of the label" 7e 20 20 20 42 65 63 61 75 73 65 20 64 6f 63 6f 6c 20 72 65 71 75 69 72 65 73 20 69 74 2c 20 77 65 20 70 72 6f 76 69 64 65 20 61 20 73 70 65 63 69 61 6c 20 6d 69 6e 69 2d 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 0a ~ "~ system. We only do L@' and L!', because that's all we" ~ " need. Unlike with the" 7e 20 73 79 73 74 65 6d 2e 20 57 65 20 6f 6e 6c 79 20 64 6f 20 4c 40 27 20 61 6e 64 20 4c 21 27 2c 20 62 65 63 61 75 73 65 20 74 68 61 74 27 73 20 61 6c 6c 20 77 65 20 6e 65 65 64 2e 20 55 6e 6c 69 6b 65 20 77 69 74 68 20 74 68 65 0a ~ "~ label transform, these are NOT real labels; they're" ~ " restricted similarly to" 7e 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 73 65 20 61 72 65 20 4e 4f 54 20 72 65 61 6c 20 6c 61 62 65 6c 73 3b 20 74 68 65 79 27 72 65 20 72 65 73 74 72 69 63 74 65 64 20 73 69 6d 69 6c 61 72 6c 79 20 74 6f 0a ~ "~ how they are for the log-load transform." 7e 20 68 6f 77 20 74 68 65 79 20 61 72 65 20 66 6f 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~" 7e 0a ~ "~ Per the precedence rules in hex-transform-one, this" ~ " version will apply to" 7e 20 20 20 50 65 72 20 74 68 65 20 70 72 65 63 65 64 65 6e 63 65 20 72 75 6c 65 73 20 69 6e 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2c 20 74 68 69 73 20 76 65 72 73 69 6f 6e 20 77 69 6c 6c 20 61 70 70 6c 79 20 74 6f 0a ~ "~ all invocations, regardless of compile mode vs. immediate" ~ " execution." 7e 20 61 6c 6c 20 69 6e 76 6f 63 61 74 69 6f 6e 73 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 20 76 73 2e 20 69 6d 6d 65 64 69 61 74 65 20 65 78 65 63 75 74 69 6f 6e 2e 0a ~ "~ However, its own logic defers to the inner label system" ~ " when that exists." 7e 20 48 6f 77 65 76 65 72 2c 20 69 74 73 20 6f 77 6e 20 6c 6f 67 69 63 20 64 65 66 65 72 73 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 6c 61 62 65 6c 20 73 79 73 74 65 6d 20 77 68 65 6e 20 74 68 61 74 20 65 78 69 73 74 73 2e 0a ~ ": hex-L@'-alternate" 3a 20 68 65 78 2d 4c 40 27 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ If there's an inner copy of L@' defined, defer to it." 20 20 7e 20 49 66 20 74 68 65 72 65 27 73 20 61 6e 20 69 6e 6e 65 72 20 63 6f 70 79 20 6f 66 20 4c 40 27 20 64 65 66 69 6e 65 64 2c 20 64 65 66 65 72 20 74 6f 20 69 74 2e 0a ~ " s" L@'" find dup {" 20 20 73 22 20 4c 40 27 22 20 66 69 6e 64 20 64 75 70 20 7b 0a ~ " entry-to-execution-token execute" 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } { drop } if-else" 20 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " word dropstring" 20 20 77 6f 72 64 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " transformation-state transformation-state-label-scratch" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6c 61 62 65 6c 2d 73 63 72 61 74 63 68 20 40 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ ": hex-L!'-alternate" 3a 20 68 65 78 2d 4c 21 27 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ If there's an inner copy of L!' defined, defer to it." 20 20 7e 20 49 66 20 74 68 65 72 65 27 73 20 61 6e 20 69 6e 6e 65 72 20 63 6f 70 79 20 6f 66 20 4c 21 27 20 64 65 66 69 6e 65 64 2c 20 64 65 66 65 72 20 74 6f 20 69 74 2e 0a ~ " s" L!'" find dup {" 20 20 73 22 20 4c 21 27 22 20 66 69 6e 64 20 64 75 70 20 7b 0a ~ " entry-to-execution-token execute" 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } { drop } if-else" 20 20 7d 20 7b 20 64 72 6f 70 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " word dropstring" 20 20 77 6f 72 64 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ " transformation-state transformation-state-label-scratch" ~ " !" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6c 61 62 65 6c 2d 73 63 72 61 74 63 68 20 21 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ The code we're compiling may try to exit when it's" ~ " done. We want to return" 7e 20 20 20 54 68 65 20 63 6f 64 65 20 77 65 27 72 65 20 63 6f 6d 70 69 6c 69 6e 67 20 6d 61 79 20 74 72 79 20 74 6f 20 65 78 69 74 20 77 68 65 6e 20 69 74 27 73 20 64 6f 6e 65 2e 20 57 65 20 77 61 6e 74 20 74 6f 20 72 65 74 75 72 6e 0a ~ "~ to our caller instead; we turn that into an nop. This" ~ " isn't quite correct," 7e 20 74 6f 20 6f 75 72 20 63 61 6c 6c 65 72 20 69 6e 73 74 65 61 64 3b 20 77 65 20 74 75 72 6e 20 74 68 61 74 20 69 6e 74 6f 20 61 6e 20 6e 6f 70 2e 20 54 68 69 73 20 69 73 6e 27 74 20 71 75 69 74 65 20 63 6f 72 72 65 63 74 2c 0a ~ "~ but it will work as long as the inner code doesn't try to" ~ " do anything else" 7e 20 62 75 74 20 69 74 20 77 69 6c 6c 20 77 6f 72 6b 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 20 69 6e 6e 65 72 20 63 6f 64 65 20 64 6f 65 73 6e 27 74 20 74 72 79 20 74 6f 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 65 6c 73 65 0a ~ "~ after." 7e 20 61 66 74 65 72 2e 0a ~ ": hex-bye-alternate ;" 3a 20 68 65 78 2d 62 79 65 2d 61 6c 74 65 72 6e 61 74 65 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Okay, now here's an interesting one. We need to provide" ~ " additional" 7e 20 20 20 4f 6b 61 79 2c 20 6e 6f 77 20 68 65 72 65 27 73 20 61 6e 20 69 6e 74 65 72 65 73 74 69 6e 67 20 6f 6e 65 2e 20 57 65 20 6e 65 65 64 20 74 6f 20 70 72 6f 76 69 64 65 20 61 64 64 69 74 69 6f 6e 61 6c 0a ~ "~ behavior for "allocate", but only when it is called" ~ " directly from the body" 7e 20 62 65 68 61 76 69 6f 72 20 66 6f 72 20 22 61 6c 6c 6f 63 61 74 65 22 2c 20 62 75 74 20 6f 6e 6c 79 20 77 68 65 6e 20 69 74 20 69 73 20 63 61 6c 6c 65 64 20 64 69 72 65 63 74 6c 79 20 66 72 6f 6d 20 74 68 65 20 62 6f 64 79 0a ~ "~ of label-loop. That condition of being in the body is" ~ " only testable" 7e 20 6f 66 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2e 20 54 68 61 74 20 63 6f 6e 64 69 74 69 6f 6e 20 6f 66 20 62 65 69 6e 67 20 69 6e 20 74 68 65 20 62 6f 64 79 20 69 73 20 6f 6e 6c 79 20 74 65 73 74 61 62 6c 65 0a ~ "~ immediately, though "allocate" is not an immediate word" ~ " and the effect of it" 7e 20 69 6d 6d 65 64 69 61 74 65 6c 79 2c 20 74 68 6f 75 67 68 20 22 61 6c 6c 6f 63 61 74 65 22 20 69 73 20 6e 6f 74 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 20 61 6e 64 20 74 68 65 20 65 66 66 65 63 74 20 6f 66 20 69 74 0a ~ "~ needs to happen later. This is crucial functionality that" ~ " we can't work" 7e 20 6e 65 65 64 73 20 74 6f 20 68 61 70 70 65 6e 20 6c 61 74 65 72 2e 20 54 68 69 73 20 69 73 20 63 72 75 63 69 61 6c 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20 74 68 61 74 20 77 65 20 63 61 6e 27 74 20 77 6f 72 6b 0a ~ "~ without. So, we use a replacement and an alternate that" ~ " work in tandem." 7e 20 77 69 74 68 6f 75 74 2e 20 53 6f 2c 20 77 65 20 75 73 65 20 61 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 61 6e 64 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 74 68 61 74 20 77 6f 72 6b 20 69 6e 20 74 61 6e 64 65 6d 2e 0a ~ "~" 7e 0a ~ "~ First, we define the replacement..." 7e 20 20 20 46 69 72 73 74 2c 20 77 65 20 64 65 66 69 6e 65 20 74 68 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 2e 2e 2e 0a ~ "~" 7e 0a ~ "~ (size -- pointer)" 7e 20 28 73 69 7a 65 20 2d 2d 20 70 6f 69 6e 74 65 72 29 0a ~ ": hex-allocate-replacement" 3a 20 68 65 78 2d 61 6c 6c 6f 63 61 74 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " dup allocate swap" 20 20 64 75 70 20 61 6c 6c 6f 63 61 74 65 20 73 77 61 70 0a ~ " ~ (result pointer, size)" 20 20 7e 20 28 72 65 73 75 6c 74 20 70 6f 69 6e 74 65 72 2c 20 73 69 7a 65 29 0a ~ "" 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-label-loop-buffer-length !" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 6c 65 6e 67 74 68 20 21 0a ~ " ~ (result pointer)" 20 20 7e 20 28 72 65 73 75 6c 74 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " dup" 20 20 64 75 70 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-label-loop-buffer-start !" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 21 0a ~ " ~ (result pointer)" 20 20 7e 20 28 72 65 73 75 6c 74 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " create-hex-output-metadata-top-of-file-entries ;" 20 20 63 72 65 61 74 65 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 74 6f 70 2d 6f 66 2d 66 69 6c 65 2d 65 6e 74 72 69 65 73 20 3b 0a ~ "" 0a ~ "~ ... then, we define the alternate." 7e 20 2e 2e 2e 20 74 68 65 6e 2c 20 77 65 20 64 65 66 69 6e 65 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 2e 0a ~ "~" 7e 0a ~ "~ The alternate is flagged as immediate, which means" ~ " hex-transform-one will" 7e 20 20 20 54 68 65 20 61 6c 74 65 72 6e 61 74 65 20 69 73 20 66 6c 61 67 67 65 64 20 61 73 20 69 6d 6d 65 64 69 61 74 65 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 20 77 69 6c 6c 0a ~ "~ treat it as always having the highest priority. It checks" ~ " what mode we're" 7e 20 74 72 65 61 74 20 69 74 20 61 73 20 61 6c 77 61 79 73 20 68 61 76 69 6e 67 20 74 68 65 20 68 69 67 68 65 73 74 20 70 72 69 6f 72 69 74 79 2e 20 49 74 20 63 68 65 63 6b 73 20 77 68 61 74 20 6d 6f 64 65 20 77 65 27 72 65 0a ~ "~ in; if we're immediate, it runs the inner "allocate" if" ~ " it exists or the" 7e 20 69 6e 3b 20 69 66 20 77 65 27 72 65 20 69 6d 6d 65 64 69 61 74 65 2c 20 69 74 20 72 75 6e 73 20 74 68 65 20 69 6e 6e 65 72 20 22 61 6c 6c 6f 63 61 74 65 22 20 69 66 20 69 74 20 65 78 69 73 74 73 20 6f 72 20 74 68 65 0a ~ "~ outer one if not. If we're compiling, it checks if we're" ~ " in the body of" 7e 20 6f 75 74 65 72 20 6f 6e 65 20 69 66 20 6e 6f 74 2e 20 49 66 20 77 65 27 72 65 20 63 6f 6d 70 69 6c 69 6e 67 2c 20 69 74 20 63 68 65 63 6b 73 20 69 66 20 77 65 27 72 65 20 69 6e 20 74 68 65 20 62 6f 64 79 20 6f 66 0a ~ "~ label-loop and compiles an execution token for the" ~ " replacement if so, or the" 7e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 61 6e 64 20 63 6f 6d 70 69 6c 65 73 20 61 6e 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 66 6f 72 20 74 68 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 69 66 20 73 6f 2c 20 6f 72 20 74 68 65 0a ~ "~ inner "allocate" if not." 7e 20 69 6e 6e 65 72 20 22 61 6c 6c 6f 63 61 74 65 22 20 69 66 20 6e 6f 74 2e 0a ~ "~" 7e 0a ~ "~ If that was confusing: The point is, by having the" ~ " immediate effect be" 7e 20 20 20 49 66 20 74 68 61 74 20 77 61 73 20 63 6f 6e 66 75 73 69 6e 67 3a 20 54 68 65 20 70 6f 69 6e 74 20 69 73 2c 20 62 79 20 68 61 76 69 6e 67 20 74 68 65 20 69 6d 6d 65 64 69 61 74 65 20 65 66 66 65 63 74 20 62 65 0a ~ "~ compilation, we get to have it both ways." 7e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2c 20 77 65 20 67 65 74 20 74 6f 20 68 61 76 65 20 69 74 20 62 6f 74 68 20 77 61 79 73 2e 0a ~ ": hex-allocate-alternate" 3a 20 68 65 78 2d 61 6c 6c 6f 63 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ Compile mode." 20 20 20 20 7e 20 43 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 0a ~ " latest @ entry-to-name dup s" label-loop" stringcmp 0 =" ~ " {" 20 20 20 20 6c 61 74 65 73 74 20 40 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 64 75 70 20 73 22 20 6c 61 62 65 6c 2d 6c 6f 6f 70 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ In label-loop." 20 20 20 20 20 20 7e 20 49 6e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2e 0a ~ " drop" 20 20 20 20 20 20 64 72 6f 70 0a ~ " ' hex-allocate-replacement entry-to-execution-token" ~ " ," 20 20 20 20 20 20 27 20 68 65 78 2d 61 6c 6c 6f 63 61 74 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ Not in label-loop." 20 20 20 20 20 20 7e 20 4e 6f 74 20 69 6e 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2e 0a ~ " drop" 20 20 20 20 20 20 64 72 6f 70 0a ~ " s" allocate" find entry-to-execution-token ," 20 20 20 20 20 20 73 22 20 61 6c 6c 6f 63 61 74 65 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ Immediate mode." 20 20 20 20 7e 20 49 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 0a ~ " s" allocate" find" 20 20 20 20 73 22 20 61 6c 6c 6f 63 61 74 65 22 20 66 69 6e 64 0a ~ " dup { entry-to-execution-token execute } { drop" ~ " allocate } if-else" 20 20 20 20 64 75 70 20 7b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 7d 20 7b 20 64 72 6f 70 20 61 6c 6c 6f 63 61 74 65 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } if-else ; make-immediate" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ In order to handle code that slides compiled code" ~ " around, most notably the" 7e 20 20 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 68 61 6e 64 6c 65 20 63 6f 64 65 20 74 68 61 74 20 73 6c 69 64 65 73 20 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 20 61 72 6f 75 6e 64 2c 20 6d 6f 73 74 20 6e 6f 74 61 62 6c 79 20 74 68 65 0a ~ "~ high-level flow-control words, we trap memcopy and" ~ " memmove. These are" 7e 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 2c 20 77 65 20 74 72 61 70 20 6d 65 6d 63 6f 70 79 20 61 6e 64 20 6d 65 6d 6d 6f 76 65 2e 20 54 68 65 73 65 20 61 72 65 0a ~ "~ assembly words, so trapping them with hex-colon-alternate" ~ " is inconvenient;" 7e 20 61 73 73 65 6d 62 6c 79 20 77 6f 72 64 73 2c 20 73 6f 20 74 72 61 70 70 69 6e 67 20 74 68 65 6d 20 77 69 74 68 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 69 73 20 69 6e 63 6f 6e 76 65 6e 69 65 6e 74 3b 0a ~ "~ instead we patch their callers. This is like the" ~ " "allocate" trap, but" 7e 20 69 6e 73 74 65 61 64 20 77 65 20 70 61 74 63 68 20 74 68 65 69 72 20 63 61 6c 6c 65 72 73 2e 20 54 68 69 73 20 69 73 20 6c 69 6b 65 20 74 68 65 20 22 61 6c 6c 6f 63 61 74 65 22 20 74 72 61 70 2c 20 62 75 74 0a ~ "~ simpler. There's no special logic needed here, we just" ~ " unconditionally" 7e 20 73 69 6d 70 6c 65 72 2e 20 54 68 65 72 65 27 73 20 6e 6f 20 73 70 65 63 69 61 6c 20 6c 6f 67 69 63 20 6e 65 65 64 65 64 20 68 65 72 65 2c 20 77 65 20 6a 75 73 74 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 0a ~ "~ install the trap." 7e 20 69 6e 73 74 61 6c 6c 20 74 68 65 20 74 72 61 70 2e 0a ~ "~" 7e 0a ~ "~ This word is responsible for processing the hook. For" ~ " code running" 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 69 73 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 70 72 6f 63 65 73 73 69 6e 67 20 74 68 65 20 68 6f 6f 6b 2e 20 46 6f 72 20 63 6f 64 65 20 72 75 6e 6e 69 6e 67 0a ~ "~ directly under the hex transform, it's installed by" ~ " hex-memcopy-alternate" 7e 20 64 69 72 65 63 74 6c 79 20 75 6e 64 65 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2c 20 69 74 27 73 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 68 65 78 2d 6d 65 6d 63 6f 70 79 2d 61 6c 74 65 72 6e 61 74 65 0a ~ "~ and hex-memmove-alternate, immediately below. For code" ~ " running in a nested" 7e 20 61 6e 64 20 68 65 78 2d 6d 65 6d 6d 6f 76 65 2d 61 6c 74 65 72 6e 61 74 65 2c 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 62 65 6c 6f 77 2e 20 46 6f 72 20 63 6f 64 65 20 72 75 6e 6e 69 6e 67 20 69 6e 20 61 20 6e 65 73 74 65 64 0a ~ "~ label transform, see hex-label-word-replacement, further" ~ " down. Note" 7e 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 73 65 65 20 68 65 78 2d 6c 61 62 65 6c 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 66 75 72 74 68 65 72 20 64 6f 77 6e 2e 20 4e 6f 74 65 0a ~ "~ carefully that when it's in a nested transform, the hook" ~ " only runs in" 7e 20 63 61 72 65 66 75 6c 6c 79 20 74 68 61 74 20 77 68 65 6e 20 69 74 27 73 20 69 6e 20 61 20 6e 65 73 74 65 64 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 20 68 6f 6f 6b 20 6f 6e 6c 79 20 72 75 6e 73 20 69 6e 0a ~ "~ immediate mode; running it in compile mode would affect" ~ " the program being" 7e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 3b 20 72 75 6e 6e 69 6e 67 20 69 74 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 20 77 6f 75 6c 64 20 61 66 66 65 63 74 20 74 68 65 20 70 72 6f 67 72 61 6d 20 62 65 69 6e 67 0a ~ "~ compiled." 7e 20 63 6f 6d 70 69 6c 65 64 2e 0a ~ "~" 7e 0a ~ "~ It is worth noting that, as of the time this code was" ~ " written, there is" 7e 20 20 20 49 74 20 69 73 20 77 6f 72 74 68 20 6e 6f 74 69 6e 67 20 74 68 61 74 2c 20 61 73 20 6f 66 20 74 68 65 20 74 69 6d 65 20 74 68 69 73 20 63 6f 64 65 20 77 61 73 20 77 72 69 74 74 65 6e 2c 20 74 68 65 72 65 20 69 73 0a ~ "~ never actually any memory sliding of compiled code that" ~ " occurs outside of a" 7e 20 6e 65 76 65 72 20 61 63 74 75 61 6c 6c 79 20 61 6e 79 20 6d 65 6d 6f 72 79 20 73 6c 69 64 69 6e 67 20 6f 66 20 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 20 74 68 61 74 20 6f 63 63 75 72 73 20 6f 75 74 73 69 64 65 20 6f 66 20 61 0a ~ "~ nested transform. This aligns with intuition, since" ~ " sliding is really only" 7e 20 6e 65 73 74 65 64 20 74 72 61 6e 73 66 6f 72 6d 2e 20 54 68 69 73 20 61 6c 69 67 6e 73 20 77 69 74 68 20 69 6e 74 75 69 74 69 6f 6e 2c 20 73 69 6e 63 65 20 73 6c 69 64 69 6e 67 20 69 73 20 72 65 61 6c 6c 79 20 6f 6e 6c 79 0a ~ "~ done in the high-level flow-control words. However," ~ " should it happen in the" 7e 20 64 6f 6e 65 20 69 6e 20 74 68 65 20 68 69 67 68 2d 6c 65 76 65 6c 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 2e 20 48 6f 77 65 76 65 72 2c 20 73 68 6f 75 6c 64 20 69 74 20 68 61 70 70 65 6e 20 69 6e 20 74 68 65 0a ~ "~ future, we still want it to work, so it's implemented." 7e 20 66 75 74 75 72 65 2c 20 77 65 20 73 74 69 6c 6c 20 77 61 6e 74 20 69 74 20 74 6f 20 77 6f 72 6b 2c 20 73 6f 20 69 74 27 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 2e 0a ~ "~" 7e 0a ~ "~ The actual metadata handling is done by" ~ " hex-memory-slide-trace, which is" 7e 20 20 20 54 68 65 20 61 63 74 75 61 6c 20 6d 65 74 61 64 61 74 61 20 68 61 6e 64 6c 69 6e 67 20 69 73 20 64 6f 6e 65 20 62 79 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 74 72 61 63 65 2c 20 77 68 69 63 68 20 69 73 0a ~ "~ above, near the other words that trace memory operations." ~ " We let the" 7e 20 61 62 6f 76 65 2c 20 6e 65 61 72 20 74 68 65 20 6f 74 68 65 72 20 77 6f 72 64 73 20 74 68 61 74 20 74 72 61 63 65 20 6d 65 6d 6f 72 79 20 6f 70 65 72 61 74 69 6f 6e 73 2e 20 57 65 20 6c 65 74 20 74 68 65 0a ~ "~ replacement handle preserving the parameters so that the" ~ " trace doesn't need" 7e 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 68 61 6e 64 6c 65 20 70 72 65 73 65 72 76 69 6e 67 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 73 20 73 6f 20 74 68 61 74 20 74 68 65 20 74 72 61 63 65 20 64 6f 65 73 6e 27 74 20 6e 65 65 64 0a ~ "~ to, since that would be a difference between it and the" ~ " other words similar" 7e 20 74 6f 2c 20 73 69 6e 63 65 20 74 68 61 74 20 77 6f 75 6c 64 20 62 65 20 61 20 64 69 66 66 65 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 69 74 20 61 6e 64 20 74 68 65 20 6f 74 68 65 72 20 77 6f 72 64 73 20 73 69 6d 69 6c 61 72 0a ~ "~ to it." 7e 20 74 6f 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ (source, destination, length -- source, destination," ~ " length)" 7e 20 28 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 20 2d 2d 20 73 6f 75 72 63 65 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 2c 20 6c 65 6e 67 74 68 29 0a ~ ": hex-memory-slide-replacement" 3a 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " 2 pick 2 pick 2 pick hex-memory-slide-trace ;" 20 20 32 20 70 69 63 6b 20 32 20 70 69 63 6b 20 32 20 70 69 63 6b 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 74 72 61 63 65 20 3b 0a ~ "" 0a ~ "~ These two alternates are responsible for installing" 7e 20 20 20 54 68 65 73 65 20 74 77 6f 20 61 6c 74 65 72 6e 61 74 65 73 20 61 72 65 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 69 6e 73 74 61 6c 6c 69 6e 67 0a ~ "~ hex-memory-slide-replacement, immediately above, in" ~ " invocations of memcopy" 7e 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 62 6f 76 65 2c 20 69 6e 20 69 6e 76 6f 63 61 74 69 6f 6e 73 20 6f 66 20 6d 65 6d 63 6f 70 79 0a ~ "~ and memmove that occur directly under the hex transform." ~ " For invocations" 7e 20 61 6e 64 20 6d 65 6d 6d 6f 76 65 20 74 68 61 74 20 6f 63 63 75 72 20 64 69 72 65 63 74 6c 79 20 75 6e 64 65 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 46 6f 72 20 69 6e 76 6f 63 61 74 69 6f 6e 73 0a ~ "~ that occur in nested transforms, see" ~ " hex-label-word-replacement, further" 7e 20 74 68 61 74 20 6f 63 63 75 72 20 69 6e 20 6e 65 73 74 65 64 20 74 72 61 6e 73 66 6f 72 6d 73 2c 20 73 65 65 20 68 65 78 2d 6c 61 62 65 6c 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 66 75 72 74 68 65 72 0a ~ "~ down." 7e 20 64 6f 77 6e 2e 0a ~ ": hex-memcopy-alternate" 3a 20 68 65 78 2d 6d 65 6d 63 6f 70 79 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ' hex-memory-slide-replacement entry-to-execution-token" ~ " ," 20 20 20 20 27 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" memcopy" find entry-to-execution-token ," 20 20 20 20 73 22 20 6d 65 6d 63 6f 70 79 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } {" 20 20 7d 20 7b 0a ~ " hex-memory-slide-replacement" 20 20 20 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " s" memcopy" find entry-to-execution-token execute" 20 20 20 20 73 22 20 6d 65 6d 63 6f 70 79 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " } if-else ; make-immediate" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ ": hex-memmove-alternate" 3a 20 68 65 78 2d 6d 65 6d 6d 6f 76 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ' hex-memory-slide-replacement entry-to-execution-token" ~ " ," 20 20 20 20 27 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " s" memmove" find entry-to-execution-token ," 20 20 20 20 73 22 20 6d 65 6d 6d 6f 76 65 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } {" 20 20 7d 20 7b 0a ~ " hex-memory-slide-replacement" 20 20 20 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " s" memmove" find entry-to-execution-token execute" 20 20 20 20 73 22 20 6d 65 6d 6d 6f 76 65 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " } if-else ; make-immediate" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ Similar to how we handle "allocate" as a replacement" ~ " which is installed by" 7e 20 20 20 53 69 6d 69 6c 61 72 20 74 6f 20 68 6f 77 20 77 65 20 68 61 6e 64 6c 65 20 22 61 6c 6c 6f 63 61 74 65 22 20 61 73 20 61 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 77 68 69 63 68 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 0a ~ "~ an alternate, we do the same for tilde, but for a" ~ " different reason. The" 7e 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 2c 20 77 65 20 64 6f 20 74 68 65 20 73 61 6d 65 20 66 6f 72 20 74 69 6c 64 65 2c 20 62 75 74 20 66 6f 72 20 61 20 64 69 66 66 65 72 65 6e 74 20 72 65 61 73 6f 6e 2e 20 54 68 65 0a ~ "~ semantics of ordinary, non-transformed tilde skip over" ~ " comment text while" 7e 20 73 65 6d 61 6e 74 69 63 73 20 6f 66 20 6f 72 64 69 6e 61 72 79 2c 20 6e 6f 6e 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 74 69 6c 64 65 20 73 6b 69 70 20 6f 76 65 72 20 63 6f 6d 6d 65 6e 74 20 74 65 78 74 20 77 68 69 6c 65 0a ~ "~ compiling, and discard it. We need to do processing of" ~ " that text later, when" 7e 20 63 6f 6d 70 69 6c 69 6e 67 2c 20 61 6e 64 20 64 69 73 63 61 72 64 20 69 74 2e 20 57 65 20 6e 65 65 64 20 74 6f 20 64 6f 20 70 72 6f 63 65 73 73 69 6e 67 20 6f 66 20 74 68 61 74 20 74 65 78 74 20 6c 61 74 65 72 2c 20 77 68 65 6e 0a ~ "~ the comment's position would be reached in running the" ~ " word it's part of, so" 7e 20 74 68 65 20 63 6f 6d 6d 65 6e 74 27 73 20 70 6f 73 69 74 69 6f 6e 20 77 6f 75 6c 64 20 62 65 20 72 65 61 63 68 65 64 20 69 6e 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 77 6f 72 64 20 69 74 27 73 20 70 61 72 74 20 6f 66 2c 20 73 6f 0a ~ "~ the alternate compiles it appropriately." 7e 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 63 6f 6d 70 69 6c 65 73 20 69 74 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a ~ "~" 7e 0a ~ "~ Importantly, the replacement is only used for comments" ~ " that have a special" 7e 20 20 20 49 6d 70 6f 72 74 61 6e 74 6c 79 2c 20 74 68 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 69 73 20 6f 6e 6c 79 20 75 73 65 64 20 66 6f 72 20 63 6f 6d 6d 65 6e 74 73 20 74 68 61 74 20 68 61 76 65 20 61 20 73 70 65 63 69 61 6c 0a ~ "~ comment syntax unique to the hex transform, as described" ~ " in more detail in" 7e 20 63 6f 6d 6d 65 6e 74 20 73 79 6e 74 61 78 20 75 6e 69 71 75 65 20 74 6f 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2c 20 61 73 20 64 65 73 63 72 69 62 65 64 20 69 6e 20 6d 6f 72 65 20 64 65 74 61 69 6c 20 69 6e 0a ~ "~ the alternate, below. If it were used for all comments," ~ " it would interfere" 7e 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 2c 20 62 65 6c 6f 77 2e 20 49 66 20 69 74 20 77 65 72 65 20 75 73 65 64 20 66 6f 72 20 61 6c 6c 20 63 6f 6d 6d 65 6e 74 73 2c 20 69 74 20 77 6f 75 6c 64 20 69 6e 74 65 72 66 65 72 65 0a ~ "~ with the distance of branches, which could get quite" ~ " complex to work around." 7e 20 77 69 74 68 20 74 68 65 20 64 69 73 74 61 6e 63 65 20 6f 66 20 62 72 61 6e 63 68 65 73 2c 20 77 68 69 63 68 20 63 6f 75 6c 64 20 67 65 74 20 71 75 69 74 65 20 63 6f 6d 70 6c 65 78 20 74 6f 20 77 6f 72 6b 20 61 72 6f 75 6e 64 2e 0a ~ "~ It is the responsibility of words that use the" ~ " hex-transform comment syntax" 7e 20 49 74 20 69 73 20 74 68 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 6f 66 20 77 6f 72 64 73 20 74 68 61 74 20 75 73 65 20 74 68 65 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 20 63 6f 6d 6d 65 6e 74 20 73 79 6e 74 61 78 0a ~ "~ to avoid placing such comments within the scope of a" ~ " branch. This applies" 7e 20 74 6f 20 61 76 6f 69 64 20 70 6c 61 63 69 6e 67 20 73 75 63 68 20 63 6f 6d 6d 65 6e 74 73 20 77 69 74 68 69 6e 20 74 68 65 20 73 63 6f 70 65 20 6f 66 20 61 20 62 72 61 6e 63 68 2e 20 54 68 69 73 20 61 70 70 6c 69 65 73 0a ~ "~ only to explicit, precomputed branches using the words" ~ " "branch" and" 7e 20 6f 6e 6c 79 20 74 6f 20 65 78 70 6c 69 63 69 74 2c 20 70 72 65 63 6f 6d 70 75 74 65 64 20 62 72 61 6e 63 68 65 73 20 75 73 69 6e 67 20 74 68 65 20 77 6f 72 64 73 20 22 62 72 61 6e 63 68 22 20 61 6e 64 0a ~ "~ "branch0". Fortunately, implicit branches that are part" ~ " of high-level" 7e 20 22 62 72 61 6e 63 68 30 22 2e 20 46 6f 72 74 75 6e 61 74 65 6c 79 2c 20 69 6d 70 6c 69 63 69 74 20 62 72 61 6e 63 68 65 73 20 74 68 61 74 20 61 72 65 20 70 61 72 74 20 6f 66 20 68 69 67 68 2d 6c 65 76 65 6c 0a ~ "~ flow-control words such as "if" and "while" will work" ~ " fine, since the" 7e 20 66 6c 6f 77 2d 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 20 73 75 63 68 20 61 73 20 22 69 66 22 20 61 6e 64 20 22 77 68 69 6c 65 22 20 77 69 6c 6c 20 77 6f 72 6b 20 66 69 6e 65 2c 20 73 69 6e 63 65 20 74 68 65 0a ~ "~ substitution occurs before the flow control words start" ~ " sliding code around," 7e 20 73 75 62 73 74 69 74 75 74 69 6f 6e 20 6f 63 63 75 72 73 20 62 65 66 6f 72 65 20 74 68 65 20 66 6c 6f 77 20 63 6f 6e 74 72 6f 6c 20 77 6f 72 64 73 20 73 74 61 72 74 20 73 6c 69 64 69 6e 67 20 63 6f 64 65 20 61 72 6f 75 6e 64 2c 0a ~ "~ and it updates "here" appropriately." 7e 20 61 6e 64 20 69 74 20 75 70 64 61 74 65 73 20 22 68 65 72 65 22 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a ~ "~" 7e 0a ~ "~ Because hex-tilde-replacement is called in various" ~ " situations during" 7e 20 20 20 42 65 63 61 75 73 65 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 69 73 20 63 61 6c 6c 65 64 20 69 6e 20 76 61 72 69 6f 75 73 20 73 69 74 75 61 74 69 6f 6e 73 20 64 75 72 69 6e 67 0a ~ "~ various phases of compilation and interpreting, it can't" ~ " take responsibility" 7e 20 76 61 72 69 6f 75 73 20 70 68 61 73 65 73 20 6f 66 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 69 6e 74 65 72 70 72 65 74 69 6e 67 2c 20 69 74 20 63 61 6e 27 74 20 74 61 6b 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 0a ~ "~ for knowing how the string pointer it's given is" ~ " allocated. It assumes the" 7e 20 66 6f 72 20 6b 6e 6f 77 69 6e 67 20 68 6f 77 20 74 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 69 74 27 73 20 67 69 76 65 6e 20 69 73 20 61 6c 6c 6f 63 61 74 65 64 2e 20 49 74 20 61 73 73 75 6d 65 73 20 74 68 65 0a ~ "~ string pointer will be valid indefinitely; it's the" ~ " caller's responsibility" 7e 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 77 69 6c 6c 20 62 65 20 76 61 6c 69 64 20 69 6e 64 65 66 69 6e 69 74 65 6c 79 3b 20 69 74 27 73 20 74 68 65 20 63 61 6c 6c 65 72 27 73 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 0a ~ "~ to make sure of that." 7e 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 6f 66 20 74 68 61 74 2e 0a ~ "~" 7e 0a ~ "~ (has non-space this line, string pointer --)" 7e 20 28 68 61 73 20 6e 6f 6e 2d 73 70 61 63 65 20 74 68 69 73 20 6c 69 6e 65 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 29 0a ~ ": hex-tilde-replacement" 3a 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " transformation-state transformation-state-output-metadata" ~ " @" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 40 0a ~ " hex-output-metadata-latest-output-point @" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 20 40 0a ~ " swap" 20 20 73 77 61 70 0a ~ " ~ (has non-space this line, data start, string pointer)" 20 20 7e 20 28 68 61 73 20 6e 6f 6e 2d 73 70 61 63 65 20 74 68 69 73 20 6c 69 6e 65 2c 20 64 61 74 61 20 73 74 61 72 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ If the output wouldn't go in the label-loop buffer," ~ " don't do any of" 20 20 7e 20 20 20 49 66 20 74 68 65 20 6f 75 74 70 75 74 20 77 6f 75 6c 64 6e 27 74 20 67 6f 20 69 6e 20 74 68 65 20 6c 61 62 65 6c 2d 6c 6f 6f 70 20 62 75 66 66 65 72 2c 20 64 6f 6e 27 74 20 64 6f 20 61 6e 79 20 6f 66 0a ~ " ~ this." 20 20 7e 20 74 68 69 73 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ That may seem spurious, but remember, the same" ~ " assembly instructions" 20 20 7e 20 20 20 54 68 61 74 20 6d 61 79 20 73 65 65 6d 20 73 70 75 72 69 6f 75 73 2c 20 62 75 74 20 72 65 6d 65 6d 62 65 72 2c 20 74 68 65 20 73 61 6d 65 20 61 73 73 65 6d 62 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 0a ~ " ~ are used for compiling the final binary and defining" ~ " words within the" 20 20 7e 20 61 72 65 20 75 73 65 64 20 66 6f 72 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 66 69 6e 61 6c 20 62 69 6e 61 72 79 20 61 6e 64 20 64 65 66 69 6e 69 6e 67 20 77 6f 72 64 73 20 77 69 74 68 69 6e 20 74 68 65 0a ~ " ~ compiler. In particular, "variable" will hit this, and" ~ " there are surely" 20 20 7e 20 63 6f 6d 70 69 6c 65 72 2e 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 22 76 61 72 69 61 62 6c 65 22 20 77 69 6c 6c 20 68 69 74 20 74 68 69 73 2c 20 61 6e 64 20 74 68 65 72 65 20 61 72 65 20 73 75 72 65 6c 79 0a ~ " ~ others." 20 20 7e 20 6f 74 68 65 72 73 2e 0a ~ " over is-in-label-loop-buffer not { 3 ndrop exit } if" 20 20 6f 76 65 72 20 69 73 2d 69 6e 2d 6c 61 62 65 6c 2d 6c 6f 6f 70 2d 62 75 66 66 65 72 20 6e 6f 74 20 7b 20 33 20 6e 64 72 6f 70 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Copy the first space-separated word of the comment" ~ " body into scratch" 20 20 7e 20 20 20 43 6f 70 79 20 74 68 65 20 66 69 72 73 74 20 73 70 61 63 65 2d 73 65 70 61 72 61 74 65 64 20 77 6f 72 64 20 6f 66 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 62 6f 64 79 20 69 6e 74 6f 20 73 63 72 61 74 63 68 0a ~ " ~ space to see if it's a special instruction. To minimize" ~ " interference with" 20 20 7e 20 73 70 61 63 65 20 74 6f 20 73 65 65 20 69 66 20 69 74 27 73 20 61 20 73 70 65 63 69 61 6c 20 69 6e 73 74 72 75 63 74 69 6f 6e 2e 20 54 6f 20 6d 69 6e 69 6d 69 7a 65 20 69 6e 74 65 72 66 65 72 65 6e 63 65 20 77 69 74 68 0a ~ " ~ the program under transformation, we use the outer" ~ " log's scratch space" 20 20 7e 20 74 68 65 20 70 72 6f 67 72 61 6d 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2c 20 77 65 20 75 73 65 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 27 73 20 73 63 72 61 74 63 68 20 73 70 61 63 65 0a ~ " ~ rather than the inner one's." 20 20 7e 20 72 61 74 68 65 72 20 74 68 61 6e 20 74 68 65 20 69 6e 6e 65 72 20 6f 6e 65 27 73 2e 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " dup" 20 20 64 75 70 0a ~ " here @" 20 20 68 65 72 65 20 40 0a ~ " ~ (... source pointer, destination pointer)" 20 20 7e 20 28 2e 2e 2e 20 73 6f 75 72 63 65 20 70 6f 69 6e 74 65 72 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 70 6f 69 6e 74 65 72 29 0a ~ " { over 8@ dup 0x20 != && } {" 20 20 7b 20 6f 76 65 72 20 38 40 20 64 75 70 20 30 78 32 30 20 21 3d 20 26 26 20 7d 20 7b 0a ~ " swap unpack8 swap 3unroll pack8" 20 20 20 20 73 77 61 70 20 75 6e 70 61 63 6b 38 20 73 77 61 70 20 33 75 6e 72 6f 6c 6c 20 70 61 63 6b 38 0a ~ " } while" 20 20 7d 20 77 68 69 6c 65 0a ~ " 0 pack8 drop drop" 20 20 30 20 70 61 63 6b 38 20 64 72 6f 70 20 64 72 6f 70 0a ~ "" 0a ~ " here @" 20 20 68 65 72 65 20 40 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ (has non-space this line, data start, string pointer," 20 20 7e 20 28 68 61 73 20 6e 6f 6e 2d 73 70 61 63 65 20 74 68 69 73 20 6c 69 6e 65 2c 20 64 61 74 61 20 73 74 61 72 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 0a ~ " ~ first word string pointer)" 20 20 7e 20 20 66 69 72 73 74 20 77 6f 72 64 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " dup read-integer 0 = {" 20 20 64 75 70 20 72 65 61 64 2d 69 6e 74 65 67 65 72 20 30 20 3d 20 7b 0a ~ " ~ (has non-space, data start, string pointer, first" ~ " word string pointer," 20 20 20 20 7e 20 28 68 61 73 20 6e 6f 6e 2d 73 70 61 63 65 2c 20 64 61 74 61 20 73 74 61 72 74 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 66 69 72 73 74 20 77 6f 72 64 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 0a ~ " ~ data length)" 20 20 20 20 7e 20 20 64 61 74 61 20 6c 65 6e 67 74 68 29 0a ~ " 3unroll stringlen 1+ +" 20 20 20 20 33 75 6e 72 6f 6c 6c 20 73 74 72 69 6e 67 6c 65 6e 20 31 2b 20 2b 0a ~ " ~ (has non-space, data start, data length, adjusted" ~ " string pointer)" 20 20 20 20 7e 20 28 68 61 73 20 6e 6f 6e 2d 73 70 61 63 65 2c 20 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 61 64 6a 75 73 74 65 64 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " 4 roll drop" 20 20 20 20 34 20 72 6f 6c 6c 20 64 72 6f 70 0a ~ " 1 swap" 20 20 20 20 31 20 73 77 61 70 0a ~ " ~ (data start, data length, is suffix, adjusted string" ~ " pointer)" 20 20 20 20 7e 20 28 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 69 73 20 73 75 66 66 69 78 2c 20 61 64 6a 75 73 74 65 64 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " } {" 20 20 7d 20 7b 0a ~ " drop 0 swap" 20 20 20 20 64 72 6f 70 20 30 20 73 77 61 70 0a ~ " ~ (has non-space, data start, data length, string" ~ " pointer)" 20 20 20 20 7e 20 28 68 61 73 20 6e 6f 6e 2d 73 70 61 63 65 2c 20 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " 4 roll swap" 20 20 20 20 34 20 72 6f 6c 6c 20 73 77 61 70 0a ~ " ~ (data start, data length, is suffix, string pointer)" 20 20 20 20 7e 20 28 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 69 73 20 73 75 66 66 69 78 2c 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ~ (data start, data length, is suffix, adjusted string" ~ " pointer)" 20 20 7e 20 28 64 61 74 61 20 73 74 61 72 74 2c 20 64 61 74 61 20 6c 65 6e 67 74 68 2c 20 69 73 20 73 75 66 66 69 78 2c 20 61 64 6a 75 73 74 65 64 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Now look for instruction keywords. These keywords are" ~ " expected to be the" 20 20 7e 20 20 20 4e 6f 77 20 6c 6f 6f 6b 20 66 6f 72 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 6b 65 79 77 6f 72 64 73 2e 20 54 68 65 73 65 20 6b 65 79 77 6f 72 64 73 20 61 72 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 74 68 65 0a ~ " ~ entire line, except that a length field can come before" ~ " them." 20 20 7e 20 65 6e 74 69 72 65 20 6c 69 6e 65 2c 20 65 78 63 65 70 74 20 74 68 61 74 20 61 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 20 63 61 6e 20 63 6f 6d 65 20 62 65 66 6f 72 65 20 74 68 65 6d 2e 0a ~ " dup s" adjust-length" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Modify the most recent comment entry by adjusting its" ~ " length." 20 20 20 20 7e 20 4d 6f 64 69 66 79 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 20 62 79 20 61 64 6a 75 73 74 69 6e 67 20 69 74 73 20 6c 65 6e 67 74 68 2e 0a ~ " drop drop swap drop" ~ " adjust-latest-comment-metadata-entry-length" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 6c 65 6e 67 74 68 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" adjust-start" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 61 64 6a 75 73 74 2d 73 74 61 72 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Modify the most recent output-producing entry by" ~ " adjusting its start." 20 20 20 20 7e 20 4d 6f 64 69 66 79 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 20 65 6e 74 72 79 20 62 79 20 61 64 6a 75 73 74 69 6e 67 20 69 74 73 20 73 74 61 72 74 2e 0a ~ " drop drop swap drop" ~ " adjust-latest-output-producing-metadata-entry-start" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 61 72 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" set-output-point" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 65 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Override the latest output point." 20 20 20 20 7e 20 4f 76 65 72 72 69 64 65 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2e 0a ~ " drop drop swap drop set-latest-output-point" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 73 65 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" adjust-output-point" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 61 64 6a 75 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Modify the latest output point." 20 20 20 20 7e 20 4d 6f 64 69 66 79 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2e 0a ~ " drop drop swap drop adjust-latest-output-point" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" data-adjust-length" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Modify the most recent comment entry by adjusting" ~ " its length, also" 20 20 20 20 7e 20 20 20 4d 6f 64 69 66 79 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 20 62 79 20 61 64 6a 75 73 74 69 6e 67 20 69 74 73 20 6c 65 6e 67 74 68 2c 20 61 6c 73 6f 0a ~ " ~ using data from the most recent data entry." 20 20 20 20 7e 20 75 73 69 6e 67 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 64 61 74 61 20 65 6e 74 72 79 2e 0a ~ " drop drop swap drop" ~ " data-adjust-latest-comment-metadata-entry-length" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 6c 65 6e 67 74 68 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" data-adjust-start" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 73 74 61 72 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Modify the most recent output-producing entry by" ~ " adjusting its start," 20 20 20 20 7e 20 20 20 4d 6f 64 69 66 79 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 20 65 6e 74 72 79 20 62 79 20 61 64 6a 75 73 74 69 6e 67 20 69 74 73 20 73 74 61 72 74 2c 0a ~ " ~ also using data from the most recent data entry." 20 20 20 20 7e 20 61 6c 73 6f 20 75 73 69 6e 67 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 64 61 74 61 20 65 6e 74 72 79 2e 0a ~ " drop drop swap drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 0a ~ " " ~ " data-adjust-latest-output-producing-metadata-entry-start" 20 20 20 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 72 6f 64 75 63 69 6e 67 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 73 74 61 72 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" data-set-output-point" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 64 61 74 61 2d 73 65 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Override the latest output point, also using data" ~ " from the most recent" 20 20 20 20 7e 20 20 20 4f 76 65 72 72 69 64 65 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 61 6c 73 6f 20 75 73 69 6e 67 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 0a ~ " ~ data entry." 20 20 20 20 7e 20 64 61 74 61 20 65 6e 74 72 79 2e 0a ~ " drop drop swap drop data-set-latest-output-point" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 64 61 74 61 2d 73 65 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" data-adjust-output-point" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Modify the latest output point, also using data" ~ " from the most recent" 20 20 20 20 7e 20 20 20 4d 6f 64 69 66 79 20 74 68 65 20 6c 61 74 65 73 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 61 6c 73 6f 20 75 73 69 6e 67 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 0a ~ " ~ data entry." 20 20 20 20 7e 20 64 61 74 61 20 65 6e 74 72 79 2e 0a ~ " drop drop swap drop data-adjust-latest-output-point" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 61 74 65 73 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" suppress" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 75 70 70 72 65 73 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Suppress the next N entries, or adjust the" ~ " remaining count of entries" 20 20 20 20 7e 20 20 20 53 75 70 70 72 65 73 73 20 74 68 65 20 6e 65 78 74 20 4e 20 65 6e 74 72 69 65 73 2c 20 6f 72 20 61 64 6a 75 73 74 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 63 6f 75 6e 74 20 6f 66 20 65 6e 74 72 69 65 73 0a ~ " ~ to suppress." 20 20 20 20 7e 20 74 6f 20 73 75 70 70 72 65 73 73 2e 0a ~ " drop drop swap drop" ~ " adjust-hex-output-suppression-count" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 73 77 61 70 20 64 72 6f 70 20 61 64 6a 75 73 74 2d 68 65 78 2d 6f 75 74 70 75 74 2d 73 75 70 70 72 65 73 73 69 6f 6e 2d 63 6f 75 6e 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" delete-first-comment-at-output-point" stringcmp 0" ~ " = {" 20 20 64 75 70 20 73 22 20 64 65 6c 65 74 65 2d 66 69 72 73 74 2d 63 6f 6d 6d 65 6e 74 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " 4 ndrop" ~ " delete-first-comment-metadata-entry-at-output-point" 20 20 20 20 34 20 6e 64 72 6f 70 20 64 65 6c 65 74 65 2d 66 69 72 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" delete-last-comment-at-output-point" stringcmp 0 =" ~ " {" 20 20 64 75 70 20 73 22 20 64 65 6c 65 74 65 2d 6c 61 73 74 2d 63 6f 6d 6d 65 6e 74 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " 4 ndrop" ~ " delete-latest-comment-metadata-entry-at-output-point" 20 20 20 20 34 20 6e 64 72 6f 70 20 64 65 6c 65 74 65 2d 6c 61 74 65 73 74 2d 63 6f 6d 6d 65 6e 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 61 74 2d 6f 75 74 70 75 74 2d 70 6f 69 6e 74 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" fresh-line" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 66 72 65 73 68 2d 6c 69 6e 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new fresh-line entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 66 72 65 73 68 2d 6c 69 6e 65 20 65 6e 74 72 79 2e 0a ~ " drop drop hex-output-metadata-entry-type-fresh-line 0" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 66 72 65 73 68 2d 6c 69 6e 65 20 30 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" blank-line" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 62 6c 61 6e 6b 2d 6c 69 6e 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new blank-line entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 62 6c 61 6e 6b 2d 6c 69 6e 65 20 65 6e 74 72 79 2e 0a ~ " drop drop hex-output-metadata-entry-type-blank-line 0" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 20 30 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" indent" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 69 6e 64 65 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new indent entry with a positive indentation" ~ " delta." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 69 6e 64 65 6e 74 20 65 6e 74 72 79 20 77 69 74 68 20 61 20 70 6f 73 69 74 69 76 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 64 65 6c 74 61 2e 0a ~ " drop drop hex-output-metadata-entry-type-indent 2" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 69 6e 64 65 6e 74 20 32 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" deindent" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 64 65 69 6e 64 65 6e 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new indent entry with a negative indentation" ~ " delta." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 69 6e 64 65 6e 74 20 65 6e 74 72 79 20 77 69 74 68 20 61 20 6e 65 67 61 74 69 76 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 64 65 6c 74 61 2e 0a ~ " drop drop hex-output-metadata-entry-type-indent -2" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 69 6e 64 65 6e 74 20 2d 32 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Now we have some commands for the various" ~ " -provide-subitem- variants." 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 68 61 76 65 20 73 6f 6d 65 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 74 68 65 20 76 61 72 69 6f 75 73 20 2d 70 72 6f 76 69 64 65 2d 73 75 62 69 74 65 6d 2d 20 76 61 72 69 61 6e 74 73 2e 0a ~ " ~ Notice with all of these that we intentionally read one" ~ " stack level deeper" 20 20 7e 20 4e 6f 74 69 63 65 20 77 69 74 68 20 61 6c 6c 20 6f 66 20 74 68 65 73 65 20 74 68 61 74 20 77 65 20 69 6e 74 65 6e 74 69 6f 6e 61 6c 6c 79 20 72 65 61 64 20 6f 6e 65 20 73 74 61 63 6b 20 6c 65 76 65 6c 20 64 65 65 70 65 72 0a ~ " ~ than anything of ours, which will be a value provided" ~ " by the code the" 20 20 7e 20 74 68 61 6e 20 61 6e 79 74 68 69 6e 67 20 6f 66 20 6f 75 72 73 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 62 65 20 61 20 76 61 6c 75 65 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 63 6f 64 65 20 74 68 65 0a ~ " ~ magic comment is embedded in." 20 20 7e 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 69 73 20 65 6d 62 65 64 64 65 64 20 69 6e 2e 0a ~ " dup s" provide-decimal" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 64 65 63 69 6d 61 6c 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "push subitem decimal" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 70 75 73 68 20 73 75 62 69 74 65 6d 20 64 65 63 69 6d 61 6c 22 20 65 6e 74 72 79 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " 2 pick" ~ " hex-output-metadata-entry-type-push-subitem-decimal swap" 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 64 65 63 69 6d 61 6c 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-hex" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 68 65 78 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "push subitem hex" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 70 75 73 68 20 73 75 62 69 74 65 6d 20 68 65 78 22 20 65 6e 74 72 79 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " 2 pick hex-output-metadata-entry-type-push-subitem-hex" ~ " swap" 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-hex8" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 68 65 78 38 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "push subitem hex8" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 70 75 73 68 20 73 75 62 69 74 65 6d 20 68 65 78 38 22 20 65 6e 74 72 79 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " 2 pick hex-output-metadata-entry-type-push-subitem-hex8" ~ " swap" 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 38 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-hex16" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 68 65 78 31 36 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "push subitem hex16" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 70 75 73 68 20 73 75 62 69 74 65 6d 20 68 65 78 31 36 22 20 65 6e 74 72 79 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " 2 pick" ~ " hex-output-metadata-entry-type-push-subitem-hex16 swap" 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 31 36 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-hex32" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 68 65 78 33 32 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "push subitem hex32" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 70 75 73 68 20 73 75 62 69 74 65 6d 20 68 65 78 33 32 22 20 65 6e 74 72 79 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " 2 pick" ~ " hex-output-metadata-entry-type-push-subitem-hex32 swap" 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 33 32 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-hex64" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 68 65 78 36 34 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "push subitem hex64" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 70 75 73 68 20 73 75 62 69 74 65 6d 20 68 65 78 36 34 22 20 65 6e 74 72 79 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " 2 pick" ~ " hex-output-metadata-entry-type-push-subitem-hex64 swap" 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 68 65 78 36 34 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-string" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " drop over dup stringlen swap" 20 20 20 20 64 72 6f 70 20 6f 76 65 72 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 73 77 61 70 0a ~ " hex-output-metadata-entry-type-push-subitem-string" ~ " swap" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-string-copy" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 73 74 72 69 6e 67 2d 63 6f 70 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " drop over dup stringlen swap" 20 20 20 20 64 72 6f 70 20 6f 76 65 72 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 73 77 61 70 0a ~ " hex-output-metadata-entry-type-push-subitem-string" ~ " swap" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 73 77 61 70 0a ~ " swap-transform-variables here @" ~ " swap-transform-variables dup 3unroll" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 64 75 70 20 33 75 6e 72 6f 6c 6c 0a ~ " ~ (copy, original, copy)" 20 20 20 20 7e 20 28 63 6f 70 79 2c 20 6f 72 69 67 69 6e 61 6c 2c 20 63 6f 70 79 29 0a ~ " over stringlen 1+ memcopy" 20 20 20 20 6f 76 65 72 20 73 74 72 69 6e 67 6c 65 6e 20 31 2b 20 6d 65 6d 63 6f 70 79 0a ~ " swap-transform-variables allocate-string" ~ " swap-transform-variables" 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-keyword" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 6b 65 79 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "push subitem string" entry given a" ~ " keyword pointer." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 70 75 73 68 20 73 75 62 69 74 65 6d 20 73 74 72 69 6e 67 22 20 65 6e 74 72 79 20 67 69 76 65 6e 20 61 20 6b 65 79 77 6f 72 64 20 70 6f 69 6e 74 65 72 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " drop over execution-token-to-entry entry-to-name" 20 20 20 20 64 72 6f 70 20 6f 76 65 72 20 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 2d 74 6f 2d 65 6e 74 72 79 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 0a ~ " dup stringlen swap" 20 20 20 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 73 77 61 70 0a ~ " hex-output-metadata-entry-type-push-subitem-string" ~ " swap" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 70 75 73 68 2d 73 75 62 69 74 65 6d 2d 73 74 72 69 6e 67 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" provide-data" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 70 72 6f 76 69 64 65 2d 64 61 74 61 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "push subitem data" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 70 75 73 68 20 73 75 62 69 74 65 6d 20 64 61 74 61 22 20 65 6e 74 72 79 2e 0a ~ " drop drop" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " 2 pick hex-output-metadata-entry-type-saved-data swap" 20 20 20 20 32 20 70 69 63 6b 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 61 76 65 64 2d 64 61 74 61 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Next are the subitem stack manipulation commands." ~ " These deal with the" 20 20 7e 20 20 20 4e 65 78 74 20 61 72 65 20 74 68 65 20 73 75 62 69 74 65 6d 20 73 74 61 63 6b 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 63 6f 6d 6d 61 6e 64 73 2e 20 54 68 65 73 65 20 64 65 61 6c 20 77 69 74 68 20 74 68 65 0a ~ " ~ subitem entry stack, just as the provide-* commands do," ~ " but at this phase" 20 20 7e 20 73 75 62 69 74 65 6d 20 65 6e 74 72 79 20 73 74 61 63 6b 2c 20 6a 75 73 74 20 61 73 20 74 68 65 20 70 72 6f 76 69 64 65 2d 2a 20 63 6f 6d 6d 61 6e 64 73 20 64 6f 2c 20 62 75 74 20 61 74 20 74 68 69 73 20 70 68 61 73 65 0a ~ " ~ of processing the effect is just to create an entry in" ~ " the entry array," 20 20 7e 20 6f 66 20 70 72 6f 63 65 73 73 69 6e 67 20 74 68 65 20 65 66 66 65 63 74 20 69 73 20 6a 75 73 74 20 74 6f 20 63 72 65 61 74 65 20 61 6e 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 65 6e 74 72 79 20 61 72 72 61 79 2c 0a ~ " ~ not to do any actual stack manipulation, so their" ~ " implementations are" 20 20 7e 20 6e 6f 74 20 74 6f 20 64 6f 20 61 6e 79 20 61 63 74 75 61 6c 20 73 74 61 63 6b 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 2c 20 73 6f 20 74 68 65 69 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 61 72 65 0a ~ " ~ quite simple." 20 20 7e 20 71 75 69 74 65 20 73 69 6d 70 6c 65 2e 0a ~ " dup s" drop-subitem" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 64 72 6f 70 2d 73 75 62 69 74 65 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "drop subitem" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 64 72 6f 70 20 73 75 62 69 74 65 6d 22 20 65 6e 74 72 79 2e 0a ~ " drop drop hex-output-metadata-entry-type-drop-subitem" ~ " 0" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 64 72 6f 70 2d 73 75 62 69 74 65 6d 20 30 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" swap-subitems" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 77 61 70 2d 73 75 62 69 74 65 6d 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "swap subitem" entry." 20 20 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 73 77 61 70 20 73 75 62 69 74 65 6d 22 20 65 6e 74 72 79 2e 0a ~ " drop drop hex-output-metadata-entry-type-swap-subitems" ~ " 0" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 77 61 70 2d 73 75 62 69 74 65 6d 73 20 30 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" roll-subitems" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 72 6f 6c 6c 2d 73 75 62 69 74 65 6d 73 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ Create a new "roll subitem" entry. The parameter" ~ " goes in the content" 20 20 20 20 7e 20 20 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 22 72 6f 6c 6c 20 73 75 62 69 74 65 6d 22 20 65 6e 74 72 79 2e 20 54 68 65 20 70 61 72 61 6d 65 74 65 72 20 67 6f 65 73 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 6e 74 0a ~ " ~ field, and the length is always zero." 20 20 20 20 7e 20 66 69 65 6c 64 2c 20 61 6e 64 20 74 68 65 20 6c 65 6e 67 74 68 20 69 73 20 61 6c 77 61 79 73 20 7a 65 72 6f 2e 0a ~ " drop drop 0 swap" ~ " hex-output-metadata-entry-type-roll-subitems swap" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 20 30 20 73 77 61 70 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 72 6f 6c 6c 2d 73 75 62 69 74 65 6d 73 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ If it's flagged as a suffix by the logic above," ~ " create a new" 20 20 7e 20 20 20 49 66 20 69 74 27 73 20 66 6c 61 67 67 65 64 20 61 73 20 61 20 73 75 66 66 69 78 20 62 79 20 74 68 65 20 6c 6f 67 69 63 20 61 62 6f 76 65 2c 20 63 72 65 61 74 65 20 61 20 6e 65 77 0a ~ " ~ suffix-comment entry." 20 20 7e 20 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 2e 0a ~ " swap {" 20 20 73 77 61 70 20 7b 0a ~ " hex-output-metadata-entry-type-suffix-comment swap" 20 20 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 73 75 66 66 69 78 2d 63 6f 6d 6d 65 6e 74 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry" 20 20 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 0a ~ " exit" 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Create a new line-comment entry." 20 20 7e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 20 65 6e 74 72 79 2e 0a ~ " hex-output-metadata-entry-type-line-comment swap" 20 20 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 2d 74 79 70 65 2d 6c 69 6e 65 2d 63 6f 6d 6d 65 6e 74 20 73 77 61 70 0a ~ " add-hex-output-metadata-entry ;" 20 20 61 64 64 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 2d 65 6e 74 72 79 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ We need to define a few helpers for use in" 7e 20 20 20 57 65 20 6e 65 65 64 20 74 6f 20 64 65 66 69 6e 65 20 61 20 66 65 77 20 68 65 6c 70 65 72 73 20 66 6f 72 20 75 73 65 20 69 6e 0a ~ "~ hex-read-magic-comment-introducer, below. The string" ~ " pointers these return" 7e 20 68 65 78 2d 72 65 61 64 2d 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 2d 69 6e 74 72 6f 64 75 63 65 72 2c 20 62 65 6c 6f 77 2e 20 54 68 65 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 73 20 74 68 65 73 65 20 72 65 74 75 72 6e 0a ~ "~ are allocated in the manner described there." 7e 20 61 72 65 20 61 6c 6c 6f 63 61 74 65 64 20 69 6e 20 74 68 65 20 6d 61 6e 6e 65 72 20 64 65 73 63 72 69 62 65 64 20 74 68 65 72 65 2e 0a ~ "~" 7e 0a ~ "~ (first key -- body-string-pointer)" 7e 20 28 66 69 72 73 74 20 6b 65 79 20 2d 2d 20 62 6f 64 79 2d 73 74 72 69 6e 67 2d 70 6f 69 6e 74 65 72 29 0a ~ ": hex-read-nonempty-comment-body" 3a 20 68 65 78 2d 72 65 61 64 2d 6e 6f 6e 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 0a ~ " ~ This is the rare case in the transforms where we want" ~ " to get into the" 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 72 61 72 65 20 63 61 73 65 20 69 6e 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 73 20 77 68 65 72 65 20 77 65 20 77 61 6e 74 20 74 6f 20 67 65 74 20 69 6e 74 6f 20 74 68 65 0a ~ " ~ nitty-gritty of lexing. Normally we rely on the" ~ " upstream implementations," 20 20 7e 20 6e 69 74 74 79 2d 67 72 69 74 74 79 20 6f 66 20 6c 65 78 69 6e 67 2e 20 4e 6f 72 6d 61 6c 6c 79 20 77 65 20 72 65 6c 79 20 6f 6e 20 74 68 65 20 75 70 73 74 72 65 61 6d 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2c 0a ~ " ~ even when we have to go out of our way to do so," ~ " because we don't want to" 20 20 7e 20 65 76 65 6e 20 77 68 65 6e 20 77 65 20 68 61 76 65 20 74 6f 20 67 6f 20 6f 75 74 20 6f 66 20 6f 75 72 20 77 61 79 20 74 6f 20 64 6f 20 73 6f 2c 20 62 65 63 61 75 73 65 20 77 65 20 64 6f 6e 27 74 20 77 61 6e 74 20 74 6f 0a ~ " ~ have to update the transforms every time there's a new" ~ " syntax feature." 20 20 7e 20 68 61 76 65 20 74 6f 20 75 70 64 61 74 65 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 73 20 65 76 65 72 79 20 74 69 6d 65 20 74 68 65 72 65 27 73 20 61 20 6e 65 77 20 73 79 6e 74 61 78 20 66 65 61 74 75 72 65 2e 0a ~ " ~ Here, however, we've got a syntax that only has meaning" ~ " to the transform," 20 20 7e 20 48 65 72 65 2c 20 68 6f 77 65 76 65 72 2c 20 77 65 27 76 65 20 67 6f 74 20 61 20 73 79 6e 74 61 78 20 74 68 61 74 20 6f 6e 6c 79 20 68 61 73 20 6d 65 61 6e 69 6e 67 20 74 6f 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 2c 0a ~ " ~ so there's no choice." 20 20 7e 20 73 6f 20 74 68 65 72 65 27 73 20 6e 6f 20 63 68 6f 69 63 65 2e 0a ~ " swap-transform-variables here @ swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " ~ This little loop is a modified version of the original" ~ " tilde loop." 20 20 7e 20 54 68 69 73 20 6c 69 74 74 6c 65 20 6c 6f 6f 70 20 69 73 20 61 20 6d 6f 64 69 66 69 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 74 69 6c 64 65 20 6c 6f 6f 70 2e 0a ~ " swap { dup dup 0x0a != && } { pack8 key } while drop" 20 20 73 77 61 70 20 7b 20 64 75 70 20 64 75 70 20 30 78 30 61 20 21 3d 20 26 26 20 7d 20 7b 20 70 61 63 6b 38 20 6b 65 79 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 0a ~ "" 0a ~ " 0 pack8" 20 20 30 20 70 61 63 6b 38 0a ~ " 8 packalign" 20 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ "" 0a ~ " drop" 20 20 64 72 6f 70 0a ~ " swap-transform-variables here @ swap-transform-variables" ~ " ;" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 3b 0a ~ "" 0a ~ ": hex-read-empty-comment-body" 3a 20 68 65 78 2d 72 65 61 64 2d 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 0a ~ " swap-transform-variables here @ swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ "" 0a ~ " 0 pack8" 20 20 30 20 70 61 63 6b 38 0a ~ " 8 packalign" 20 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ "" 0a ~ " drop" 20 20 64 72 6f 70 0a ~ " swap-transform-variables here @ swap-transform-variables" ~ " ;" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 40 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This is called from a tilde alternate (such as" ~ " hex-tilde-alternate, but" 7e 20 20 20 54 68 69 73 20 69 73 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 61 20 74 69 6c 64 65 20 61 6c 74 65 72 6e 61 74 65 20 28 73 75 63 68 20 61 73 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 2c 20 62 75 74 0a ~ "~ there are several). Its purpose is to do the lexical" ~ " analysis of the" 7e 20 74 68 65 72 65 20 61 72 65 20 73 65 76 65 72 61 6c 29 2e 20 49 74 73 20 70 75 72 70 6f 73 65 20 69 73 20 74 6f 20 64 6f 20 74 68 65 20 6c 65 78 69 63 61 6c 20 61 6e 61 6c 79 73 69 73 20 6f 66 20 74 68 65 0a ~ "~ sequence that introduces a magic comment; it assumes that" ~ " the leading tilde" 7e 20 73 65 71 75 65 6e 63 65 20 74 68 61 74 20 69 6e 74 72 6f 64 75 63 65 73 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 3b 20 69 74 20 61 73 73 75 6d 65 73 20 74 68 61 74 20 74 68 65 20 6c 65 61 64 69 6e 67 20 74 69 6c 64 65 0a ~ "~ character has just been consumed from the main input," ~ " leaving the separating" 7e 20 63 68 61 72 61 63 74 65 72 20 68 61 73 20 6a 75 73 74 20 62 65 65 6e 20 63 6f 6e 73 75 6d 65 64 20 66 72 6f 6d 20 74 68 65 20 6d 61 69 6e 20 69 6e 70 75 74 2c 20 6c 65 61 76 69 6e 67 20 74 68 65 20 73 65 70 61 72 61 74 69 6e 67 0a ~ "~ space as the next character ready to be read." 7e 20 73 70 61 63 65 20 61 73 20 74 68 65 20 6e 65 78 74 20 63 68 61 72 61 63 74 65 72 20 72 65 61 64 79 20 74 6f 20 62 65 20 72 65 61 64 2e 0a ~ "~" 7e 0a ~ "~ Recall that the delimiter for a regular comment is "~ "" ~ " (the trailing" 7e 20 20 20 52 65 63 61 6c 6c 20 74 68 61 74 20 74 68 65 20 64 65 6c 69 6d 69 74 65 72 20 66 6f 72 20 61 20 72 65 67 75 6c 61 72 20 63 6f 6d 6d 65 6e 74 20 69 73 20 22 7e 20 22 20 28 74 68 65 20 74 72 61 69 6c 69 6e 67 0a ~ "~ space is part of it for this purpose). The delimiter for" ~ " a magic comment is" 7e 20 73 70 61 63 65 20 69 73 20 70 61 72 74 20 6f 66 20 69 74 20 66 6f 72 20 74 68 69 73 20 70 75 72 70 6f 73 65 29 2e 20 54 68 65 20 64 65 6c 69 6d 69 74 65 72 20 66 6f 72 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 69 73 0a ~ "~ "~ : ". A regular comment may also have a linefeed" ~ " instead of a space," 7e 20 22 7e 20 3a 20 22 2e 20 41 20 72 65 67 75 6c 61 72 20 63 6f 6d 6d 65 6e 74 20 6d 61 79 20 61 6c 73 6f 20 68 61 76 65 20 61 20 6c 69 6e 65 66 65 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 61 20 73 70 61 63 65 2c 0a ~ "~ indicating that it's empty; magic comments likewise can" ~ " be empty, by ending" 7e 20 69 6e 64 69 63 61 74 69 6e 67 20 74 68 61 74 20 69 74 27 73 20 65 6d 70 74 79 3b 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 6c 69 6b 65 77 69 73 65 20 63 61 6e 20 62 65 20 65 6d 70 74 79 2c 20 62 79 20 65 6e 64 69 6e 67 0a ~ "~ the line immediately after the colon." 7e 20 74 68 65 20 6c 69 6e 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 74 68 65 20 63 6f 6c 6f 6e 2e 0a ~ "~" 7e 0a ~ "~ This word does the necessary reading, then leaves the" ~ " input pointing at" 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 64 6f 65 73 20 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 72 65 61 64 69 6e 67 2c 20 74 68 65 6e 20 6c 65 61 76 65 73 20 74 68 65 20 69 6e 70 75 74 20 70 6f 69 6e 74 69 6e 67 20 61 74 0a ~ "~ the body of the comment and returns a value indicating" ~ " what type of comment" 7e 20 74 68 65 20 62 6f 64 79 20 6f 66 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 76 61 6c 75 65 20 69 6e 64 69 63 61 74 69 6e 67 20 77 68 61 74 20 74 79 70 65 20 6f 66 20 63 6f 6d 6d 65 6e 74 0a ~ "~ this is. A result code of 0 indicates it's a regular" ~ " comment and the input" 7e 20 74 68 69 73 20 69 73 2e 20 41 20 72 65 73 75 6c 74 20 63 6f 64 65 20 6f 66 20 30 20 69 6e 64 69 63 61 74 65 73 20 69 74 27 73 20 61 20 72 65 67 75 6c 61 72 20 63 6f 6d 6d 65 6e 74 20 61 6e 64 20 74 68 65 20 69 6e 70 75 74 0a ~ "~ now points immediately after its ending delimiter; that" ~ " is, to the start of" 7e 20 6e 6f 77 20 70 6f 69 6e 74 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 69 74 73 20 65 6e 64 69 6e 67 20 64 65 6c 69 6d 69 74 65 72 3b 20 74 68 61 74 20 69 73 2c 20 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 0a ~ "~ the next line of text. A value of 1 indicates it's a" ~ " magic comment with" 7e 20 74 68 65 20 6e 65 78 74 20 6c 69 6e 65 20 6f 66 20 74 65 78 74 2e 20 41 20 76 61 6c 75 65 20 6f 66 20 31 20 69 6e 64 69 63 61 74 65 73 20 69 74 27 73 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 77 69 74 68 0a ~ "~ non-zero length and the input points immediately after" ~ " the delimiter. A" 7e 20 6e 6f 6e 2d 7a 65 72 6f 20 6c 65 6e 67 74 68 20 61 6e 64 20 74 68 65 20 69 6e 70 75 74 20 70 6f 69 6e 74 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 74 68 65 20 64 65 6c 69 6d 69 74 65 72 2e 20 41 0a ~ "~ value of 2 indicates it's a magic comment with zero" ~ " length, and the input" 7e 20 76 61 6c 75 65 20 6f 66 20 32 20 69 6e 64 69 63 61 74 65 73 20 69 74 27 73 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 77 69 74 68 20 7a 65 72 6f 20 6c 65 6e 67 74 68 2c 20 61 6e 64 20 74 68 65 20 69 6e 70 75 74 0a ~ "~ again points to the start of the next line." 7e 20 61 67 61 69 6e 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 6e 65 78 74 20 6c 69 6e 65 2e 0a ~ "~" 7e 0a ~ "~ Our caller will want to do things with the comment" ~ " body, so we also return" 7e 20 20 20 4f 75 72 20 63 61 6c 6c 65 72 20 77 69 6c 6c 20 77 61 6e 74 20 74 6f 20 64 6f 20 74 68 69 6e 67 73 20 77 69 74 68 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 62 6f 64 79 2c 20 73 6f 20 77 65 20 61 6c 73 6f 20 72 65 74 75 72 6e 0a ~ "~ a pointer to a string in temporary storage, for use in" ~ " further processing." 7e 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 74 72 69 6e 67 20 69 6e 20 74 65 6d 70 6f 72 61 72 79 20 73 74 6f 72 61 67 65 2c 20 66 6f 72 20 75 73 65 20 69 6e 20 66 75 72 74 68 65 72 20 70 72 6f 63 65 73 73 69 6e 67 2e 0a ~ "~ This temporary storage is taken from the "real" log," ~ " outside the transform's" 7e 20 54 68 69 73 20 74 65 6d 70 6f 72 61 72 79 20 73 74 6f 72 61 67 65 20 69 73 20 74 61 6b 65 6e 20 66 72 6f 6d 20 74 68 65 20 22 72 65 61 6c 22 20 6c 6f 67 2c 20 6f 75 74 73 69 64 65 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 27 73 0a ~ "~ scope. It's not allocated, merely using the space right" ~ " after "here"," 7e 20 73 63 6f 70 65 2e 20 49 74 27 73 20 6e 6f 74 20 61 6c 6c 6f 63 61 74 65 64 2c 20 6d 65 72 65 6c 79 20 75 73 69 6e 67 20 74 68 65 20 73 70 61 63 65 20 72 69 67 68 74 20 61 66 74 65 72 20 22 68 65 72 65 22 2c 0a ~ "~ because the caller may or may not wish to allocate it for" ~ " the long term, and" 7e 20 62 65 63 61 75 73 65 20 74 68 65 20 63 61 6c 6c 65 72 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 77 69 73 68 20 74 6f 20 61 6c 6c 6f 63 61 74 65 20 69 74 20 66 6f 72 20 74 68 65 20 6c 6f 6e 67 20 74 65 72 6d 2c 20 61 6e 64 0a ~ "~ may prefer that its long-term location be elsewhere." 7e 20 6d 61 79 20 70 72 65 66 65 72 20 74 68 61 74 20 69 74 73 20 6c 6f 6e 67 2d 74 65 72 6d 20 6c 6f 63 61 74 69 6f 6e 20 62 65 20 65 6c 73 65 77 68 65 72 65 2e 0a ~ "~" 7e 0a ~ "~ Some of the various magic-comment syntaxes care about" ~ " spacing within the" 7e 20 20 20 53 6f 6d 65 20 6f 66 20 74 68 65 20 76 61 72 69 6f 75 73 20 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 20 73 79 6e 74 61 78 65 73 20 63 61 72 65 20 61 62 6f 75 74 20 73 70 61 63 69 6e 67 20 77 69 74 68 69 6e 20 74 68 65 0a ~ "~ comment body, so it's important to notice that only the" ~ " first space after" 7e 20 63 6f 6d 6d 65 6e 74 20 62 6f 64 79 2c 20 73 6f 20 69 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 74 6f 20 6e 6f 74 69 63 65 20 74 68 61 74 20 6f 6e 6c 79 20 74 68 65 20 66 69 72 73 74 20 73 70 61 63 65 20 61 66 74 65 72 0a ~ "~ the colon is consumed. Any subsequent spaces are part of" ~ " the body." 7e 20 74 68 65 20 63 6f 6c 6f 6e 20 69 73 20 63 6f 6e 73 75 6d 65 64 2e 20 41 6e 79 20 73 75 62 73 65 71 75 65 6e 74 20 73 70 61 63 65 73 20 61 72 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 62 6f 64 79 2e 0a ~ "~" 7e 0a ~ "~ (-- body string pointer, result code)" 7e 20 28 2d 2d 20 62 6f 64 79 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 72 65 73 75 6c 74 20 63 6f 64 65 29 0a ~ ": hex-read-magic-comment-introducer" 3a 20 68 65 78 2d 72 65 61 64 2d 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 2d 69 6e 74 72 6f 64 75 63 65 72 0a ~ " ~ The original code goes byte-by-byte, checks that the" ~ " value is nonzero" 20 20 7e 20 20 20 54 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 20 67 6f 65 73 20 62 79 74 65 2d 62 79 2d 62 79 74 65 2c 20 63 68 65 63 6b 73 20 74 68 61 74 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 6e 6f 6e 7a 65 72 6f 0a ~ " ~ and not equal to 0x0a (linefeed), and exits when either" ~ " property fails." 20 20 7e 20 61 6e 64 20 6e 6f 74 20 65 71 75 61 6c 20 74 6f 20 30 78 30 61 20 28 6c 69 6e 65 66 65 65 64 29 2c 20 61 6e 64 20 65 78 69 74 73 20 77 68 65 6e 20 65 69 74 68 65 72 20 70 72 6f 70 65 72 74 79 20 66 61 69 6c 73 2e 0a ~ " ~ We want to do something different based on the very" ~ " first characters of" 20 20 7e 20 57 65 20 77 61 6e 74 20 74 6f 20 64 6f 20 73 6f 6d 65 74 68 69 6e 67 20 64 69 66 66 65 72 65 6e 74 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 76 65 72 79 20 66 69 72 73 74 20 63 68 61 72 61 63 74 65 72 73 20 6f 66 0a ~ " ~ the comment body. So, we unroll the first few" ~ " iterations of the loop so we" 20 20 7e 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 62 6f 64 79 2e 20 53 6f 2c 20 77 65 20 75 6e 72 6f 6c 6c 20 74 68 65 20 66 69 72 73 74 20 66 65 77 20 69 74 65 72 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 6c 6f 6f 70 20 73 6f 20 77 65 0a ~ " ~ can do that test before we fall back to the normal" ~ " behavior." 20 20 7e 20 63 61 6e 20 64 6f 20 74 68 61 74 20 74 65 73 74 20 62 65 66 6f 72 65 20 77 65 20 66 61 6c 6c 20 62 61 63 6b 20 74 6f 20 74 68 65 20 6e 6f 72 6d 61 6c 20 62 65 68 61 76 69 6f 72 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Specifically, we want to recognize a colon (0x3a)" ~ " with a space (0x20)" 20 20 7e 20 20 20 53 70 65 63 69 66 69 63 61 6c 6c 79 2c 20 77 65 20 77 61 6e 74 20 74 6f 20 72 65 63 6f 67 6e 69 7a 65 20 61 20 63 6f 6c 6f 6e 20 28 30 78 33 61 29 20 77 69 74 68 20 61 20 73 70 61 63 65 20 28 30 78 32 30 29 0a ~ " ~ immediately after it. Since the interpeter peeked at" ~ " the space delimiter," 20 20 7e 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 69 74 2e 20 53 69 6e 63 65 20 74 68 65 20 69 6e 74 65 72 70 65 74 65 72 20 70 65 65 6b 65 64 20 61 74 20 74 68 65 20 73 70 61 63 65 20 64 65 6c 69 6d 69 74 65 72 2c 0a ~ " ~ but didn't consume it, we also need to check for a" ~ " space before the colon," 20 20 7e 20 62 75 74 20 64 69 64 6e 27 74 20 63 6f 6e 73 75 6d 65 20 69 74 2c 20 77 65 20 61 6c 73 6f 20 6e 65 65 64 20 74 6f 20 63 68 65 63 6b 20 66 6f 72 20 61 20 73 70 61 63 65 20 62 65 66 6f 72 65 20 74 68 65 20 63 6f 6c 6f 6e 2c 0a ~ " ~ for a total sequence of three bytes we need to match." ~ " We can't just skip" 20 20 7e 20 66 6f 72 20 61 20 74 6f 74 61 6c 20 73 65 71 75 65 6e 63 65 20 6f 66 20 74 68 72 65 65 20 62 79 74 65 73 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 74 63 68 2e 20 57 65 20 63 61 6e 27 74 20 6a 75 73 74 20 73 6b 69 70 0a ~ " ~ over the space with "consume", because it might also be" ~ " a linefeed, which" 20 20 7e 20 6f 76 65 72 20 74 68 65 20 73 70 61 63 65 20 77 69 74 68 20 22 63 6f 6e 73 75 6d 65 22 2c 20 62 65 63 61 75 73 65 20 69 74 20 6d 69 67 68 74 20 61 6c 73 6f 20 62 65 20 61 20 6c 69 6e 65 66 65 65 64 2c 20 77 68 69 63 68 0a ~ " ~ would satisfy the exit criterion. We need to properly" ~ " match it." 20 20 7e 20 77 6f 75 6c 64 20 73 61 74 69 73 66 79 20 74 68 65 20 65 78 69 74 20 63 72 69 74 65 72 69 6f 6e 2e 20 57 65 20 6e 65 65 64 20 74 6f 20 70 72 6f 70 65 72 6c 79 20 6d 61 74 63 68 20 69 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We also recognize a colon followed immediately by a" ~ " linefeed, as" 20 20 7e 20 20 20 57 65 20 61 6c 73 6f 20 72 65 63 6f 67 6e 69 7a 65 20 61 20 63 6f 6c 6f 6e 20 66 6f 6c 6c 6f 77 65 64 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 62 79 20 61 20 6c 69 6e 65 66 65 65 64 2c 20 61 73 0a ~ " ~ denoting an empty comment." 20 20 7e 20 64 65 6e 6f 74 69 6e 67 20 61 6e 20 65 6d 70 74 79 20 63 6f 6d 6d 65 6e 74 2e 0a ~ " key dup dup 0x0a != && {" 20 20 6b 65 79 20 64 75 70 20 64 75 70 20 30 78 30 61 20 21 3d 20 26 26 20 7b 0a ~ " ~ If we got here, the first byte was not 0 or 0x0a. Now" ~ " we check if it's" 20 20 20 20 7e 20 49 66 20 77 65 20 67 6f 74 20 68 65 72 65 2c 20 74 68 65 20 66 69 72 73 74 20 62 79 74 65 20 77 61 73 20 6e 6f 74 20 30 20 6f 72 20 30 78 30 61 2e 20 4e 6f 77 20 77 65 20 63 68 65 63 6b 20 69 66 20 69 74 27 73 0a ~ " ~ colon." 20 20 20 20 7e 20 63 6f 6c 6f 6e 2e 0a ~ " 0x20 = {" 20 20 20 20 30 78 32 30 20 3d 20 7b 0a ~ " ~ The first byte was 0x20. Now check the second." 20 20 20 20 20 20 7e 20 54 68 65 20 66 69 72 73 74 20 62 79 74 65 20 77 61 73 20 30 78 32 30 2e 20 4e 6f 77 20 63 68 65 63 6b 20 74 68 65 20 73 65 63 6f 6e 64 2e 0a ~ " key dup dup 0x0a != && {" 20 20 20 20 20 20 6b 65 79 20 64 75 70 20 64 75 70 20 30 78 30 61 20 21 3d 20 26 26 20 7b 0a ~ " dup 0x3a = {" 20 20 20 20 20 20 20 20 64 75 70 20 30 78 33 61 20 3d 20 7b 0a ~ " ~ The second byte was 0x3a. Now check the third." 20 20 20 20 20 20 20 20 20 20 7e 20 54 68 65 20 73 65 63 6f 6e 64 20 62 79 74 65 20 77 61 73 20 30 78 33 61 2e 20 4e 6f 77 20 63 68 65 63 6b 20 74 68 65 20 74 68 69 72 64 2e 0a ~ " drop key dup {" 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 20 6b 65 79 20 64 75 70 20 7b 0a ~ " ~ The third byte is not 0." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 54 68 65 20 74 68 69 72 64 20 62 79 74 65 20 69 73 20 6e 6f 74 20 30 2e 0a ~ " dup 0x20 = {" 20 20 20 20 20 20 20 20 20 20 20 20 64 75 70 20 30 78 32 30 20 3d 20 7b 0a ~ " ~ We have a magic comment with a nonempty" ~ " body. We must save" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 57 65 20 68 61 76 65 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 77 69 74 68 20 61 20 6e 6f 6e 65 6d 70 74 79 20 62 6f 64 79 2e 20 57 65 20 6d 75 73 74 20 73 61 76 65 0a ~ " ~ the rest of it so we can return it." 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 74 68 65 20 72 65 73 74 20 6f 66 20 69 74 20 73 6f 20 77 65 20 63 61 6e 20 72 65 74 75 72 6e 20 69 74 2e 0a ~ " drop key hex-read-nonempty-comment-body 1" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 20 6b 65 79 20 68 65 78 2d 72 65 61 64 2d 6e 6f 6e 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 20 31 0a ~ " } {" 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ The third byte is not 0 or 0x20." 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 65 20 74 68 69 72 64 20 62 79 74 65 20 69 73 20 6e 6f 74 20 30 20 6f 72 20 30 78 32 30 2e 0a ~ " dup 0x0a = {" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 75 70 20 30 78 30 61 20 3d 20 7b 0a ~ " ~ We have a magic comment with an empty" ~ " body, ending at a" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 57 65 20 68 61 76 65 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 77 69 74 68 20 61 6e 20 65 6d 70 74 79 20 62 6f 64 79 2c 20 65 6e 64 69 6e 67 20 61 74 20 61 0a ~ " ~ linefeed. As with nonempty ones, we" ~ " prepare a temporary" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 6c 69 6e 65 66 65 65 64 2e 20 41 73 20 77 69 74 68 20 6e 6f 6e 65 6d 70 74 79 20 6f 6e 65 73 2c 20 77 65 20 70 72 65 70 61 72 65 20 61 20 74 65 6d 70 6f 72 61 72 79 0a ~ " ~ string to return." 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 73 74 72 69 6e 67 20 74 6f 20 72 65 74 75 72 6e 2e 0a ~ " drop hex-read-empty-comment-body 2" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 20 68 65 78 2d 72 65 61 64 2d 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 20 32 0a ~ " } {" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ The third byte was not 0, 0x0a, or" ~ " 0x20. We got a space," 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 65 20 74 68 69 72 64 20 62 79 74 65 20 77 61 73 20 6e 6f 74 20 30 2c 20 30 78 30 61 2c 20 6f 72 20 30 78 32 30 2e 20 57 65 20 67 6f 74 20 61 20 73 70 61 63 65 2c 0a ~ " ~ a colon, and something else. So our" ~ " special test failed, but" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 61 20 63 6f 6c 6f 6e 2c 20 61 6e 64 20 73 6f 6d 65 74 68 69 6e 67 20 65 6c 73 65 2e 20 53 6f 20 6f 75 72 20 73 70 65 63 69 61 6c 20 74 65 73 74 20 66 61 69 6c 65 64 2c 20 62 75 74 0a ~ " ~ the exit condition isn't met. So we're" ~ " done unrolling." 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 74 68 65 20 65 78 69 74 20 63 6f 6e 64 69 74 69 6f 6e 20 69 73 6e 27 74 20 6d 65 74 2e 20 53 6f 20 77 65 27 72 65 20 64 6f 6e 65 20 75 6e 72 6f 6c 6c 69 6e 67 2e 0a ~ " hex-read-nonempty-comment-body 0" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 65 78 2d 72 65 61 64 2d 6e 6f 6e 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 20 30 0a ~ " } if-else" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } if-else" 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 20 20 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ We got a colon and a zero. This is a magic" ~ " comment with an" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 57 65 20 67 6f 74 20 61 20 63 6f 6c 6f 6e 20 61 6e 64 20 61 20 7a 65 72 6f 2e 20 54 68 69 73 20 69 73 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 77 69 74 68 20 61 6e 0a ~ " ~ empty body, ending at the end of the file." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 65 6d 70 74 79 20 62 6f 64 79 2c 20 65 6e 64 69 6e 67 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 0a ~ " drop hex-read-empty-comment-body 2" 20 20 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 20 68 65 78 2d 72 65 61 64 2d 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 20 32 0a ~ " } if-else" 20 20 20 20 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ Again, the special test failed but the exit" ~ " condition isn't met." 20 20 20 20 20 20 20 20 20 20 7e 20 41 67 61 69 6e 2c 20 74 68 65 20 73 70 65 63 69 61 6c 20 74 65 73 74 20 66 61 69 6c 65 64 20 62 75 74 20 74 68 65 20 65 78 69 74 20 63 6f 6e 64 69 74 69 6f 6e 20 69 73 6e 27 74 20 6d 65 74 2e 0a ~ " hex-read-nonempty-comment-body 0" 20 20 20 20 20 20 20 20 20 20 68 65 78 2d 72 65 61 64 2d 6e 6f 6e 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 20 30 0a ~ " } if-else" 20 20 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ Again, the exit condition is met." 20 20 20 20 20 20 20 20 7e 20 41 67 61 69 6e 2c 20 74 68 65 20 65 78 69 74 20 63 6f 6e 64 69 74 69 6f 6e 20 69 73 20 6d 65 74 2e 0a ~ " drop hex-read-empty-comment-body 0" 20 20 20 20 20 20 20 20 64 72 6f 70 20 68 65 78 2d 72 65 61 64 2d 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 20 30 0a ~ " } if-else" 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ Once more, the special test failed but the exit" ~ " condition isn't met." 20 20 20 20 20 20 7e 20 4f 6e 63 65 20 6d 6f 72 65 2c 20 74 68 65 20 73 70 65 63 69 61 6c 20 74 65 73 74 20 66 61 69 6c 65 64 20 62 75 74 20 74 68 65 20 65 78 69 74 20 63 6f 6e 64 69 74 69 6f 6e 20 69 73 6e 27 74 20 6d 65 74 2e 0a ~ " hex-read-nonempty-comment-body 0" 20 20 20 20 20 20 68 65 78 2d 72 65 61 64 2d 6e 6f 6e 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 20 30 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ For the last time, the exit condition is met." 20 20 20 20 7e 20 46 6f 72 20 74 68 65 20 6c 61 73 74 20 74 69 6d 65 2c 20 74 68 65 20 65 78 69 74 20 63 6f 6e 64 69 74 69 6f 6e 20 69 73 20 6d 65 74 2e 0a ~ " drop hex-read-empty-comment-body 0" 20 20 20 20 64 72 6f 70 20 68 65 78 2d 72 65 61 64 2d 65 6d 70 74 79 2d 63 6f 6d 6d 65 6e 74 2d 62 6f 64 79 20 30 0a ~ " } if-else ;" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 0a ~ "" 0a ~ "" 0a ~ "" 0a ~ "~ The tilde alternate is a very important word for the" ~ " hex transform; it has" 7e 20 20 20 54 68 65 20 74 69 6c 64 65 20 61 6c 74 65 72 6e 61 74 65 20 69 73 20 61 20 76 65 72 79 20 69 6d 70 6f 72 74 61 6e 74 20 77 6f 72 64 20 66 6f 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 3b 20 69 74 20 68 61 73 0a ~ "~ the task of hooking comment processing to detect a" ~ " special comment syntax" 7e 20 74 68 65 20 74 61 73 6b 20 6f 66 20 68 6f 6f 6b 69 6e 67 20 63 6f 6d 6d 65 6e 74 20 70 72 6f 63 65 73 73 69 6e 67 20 74 6f 20 64 65 74 65 63 74 20 61 20 73 70 65 63 69 61 6c 20 63 6f 6d 6d 65 6e 74 20 73 79 6e 74 61 78 0a ~ "~ which can be used by words that generate binary output," ~ " to define comments" 7e 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 75 73 65 64 20 62 79 20 77 6f 72 64 73 20 74 68 61 74 20 67 65 6e 65 72 61 74 65 20 62 69 6e 61 72 79 20 6f 75 74 70 75 74 2c 20 74 6f 20 64 65 66 69 6e 65 20 63 6f 6d 6d 65 6e 74 73 0a ~ "~ which will appear as part of the hex-dump version of that" ~ " output, but which" 7e 20 77 68 69 63 68 20 77 69 6c 6c 20 61 70 70 65 61 72 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 68 65 78 2d 64 75 6d 70 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 61 74 20 6f 75 74 70 75 74 2c 20 62 75 74 20 77 68 69 63 68 0a ~ "~ will be ignored in normal execution." 7e 20 77 69 6c 6c 20 62 65 20 69 67 6e 6f 72 65 64 20 69 6e 20 6e 6f 72 6d 61 6c 20 65 78 65 63 75 74 69 6f 6e 2e 0a ~ "~" 7e 0a ~ "~ This mechanism allows us, for example, to avoid putting" ~ " detailed knowledge" 7e 20 20 20 54 68 69 73 20 6d 65 63 68 61 6e 69 73 6d 20 61 6c 6c 6f 77 73 20 75 73 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 6f 20 61 76 6f 69 64 20 70 75 74 74 69 6e 67 20 64 65 74 61 69 6c 65 64 20 6b 6e 6f 77 6c 65 64 67 65 0a ~ "~ of the amd64 Evocation-assembly instructions in the hex" ~ " transform; instead" 7e 20 6f 66 20 74 68 65 20 61 6d 64 36 34 20 45 76 6f 63 61 74 69 6f 6e 2d 61 73 73 65 6d 62 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 69 6e 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 3b 20 69 6e 73 74 65 61 64 0a ~ "~ all the details are kept in one place, the authoritative" ~ " implementations of" 7e 20 61 6c 6c 20 74 68 65 20 64 65 74 61 69 6c 73 20 61 72 65 20 6b 65 70 74 20 69 6e 20 6f 6e 65 20 70 6c 61 63 65 2c 20 74 68 65 20 61 75 74 68 6f 72 69 74 61 74 69 76 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 6f 66 0a ~ "~ those instructions. This will substantially improve the" ~ " maintainability of" 7e 20 74 68 6f 73 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2e 20 54 68 69 73 20 77 69 6c 6c 20 73 75 62 73 74 61 6e 74 69 61 6c 6c 79 20 69 6d 70 72 6f 76 65 20 74 68 65 20 6d 61 69 6e 74 61 69 6e 61 62 69 6c 69 74 79 20 6f 66 0a ~ "~ the code, especially when adding new architectures." 7e 20 74 68 65 20 63 6f 64 65 2c 20 65 73 70 65 63 69 61 6c 6c 79 20 77 68 65 6e 20 61 64 64 69 6e 67 20 6e 65 77 20 61 72 63 68 69 74 65 63 74 75 72 65 73 2e 0a ~ "~" 7e 0a ~ "~ This word hex-tilde-alternate only applies to code that" ~ " is running" 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 6f 6e 6c 79 20 61 70 70 6c 69 65 73 20 74 6f 20 63 6f 64 65 20 74 68 61 74 20 69 73 20 72 75 6e 6e 69 6e 67 0a ~ "~ directly within the hex transform. When an inner" ~ " transform runs within the" 7e 20 64 69 72 65 63 74 6c 79 20 77 69 74 68 69 6e 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 57 68 65 6e 20 61 6e 20 69 6e 6e 65 72 20 74 72 61 6e 73 66 6f 72 6d 20 72 75 6e 73 20 77 69 74 68 69 6e 20 74 68 65 0a ~ "~ hex transform, the inner transform is responsible for" ~ " lexical processing, so" 7e 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2c 20 74 68 65 20 69 6e 6e 65 72 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 6c 65 78 69 63 61 6c 20 70 72 6f 63 65 73 73 69 6e 67 2c 20 73 6f 0a ~ "~ this word never gets invoked. There is an additional" ~ " variant word" 7e 20 74 68 69 73 20 77 6f 72 64 20 6e 65 76 65 72 20 67 65 74 73 20 69 6e 76 6f 6b 65 64 2e 20 54 68 65 72 65 20 69 73 20 61 6e 20 61 64 64 69 74 69 6f 6e 61 6c 20 76 61 72 69 61 6e 74 20 77 6f 72 64 0a ~ "~ hex-*-tilde-alternate for each inner transform that the" ~ " hex transform" 7e 20 68 65 78 2d 2a 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 66 6f 72 20 65 61 63 68 20 69 6e 6e 65 72 20 74 72 61 6e 73 66 6f 72 6d 20 74 68 61 74 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ supports, responsible for conducting the analogous task" ~ " within the rules of" 7e 20 73 75 70 70 6f 72 74 73 2c 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 63 6f 6e 64 75 63 74 69 6e 67 20 74 68 65 20 61 6e 61 6c 6f 67 6f 75 73 20 74 61 73 6b 20 77 69 74 68 69 6e 20 74 68 65 20 72 75 6c 65 73 20 6f 66 0a ~ "~ that inner transform." 7e 20 74 68 61 74 20 69 6e 6e 65 72 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ ": hex-tilde-alternate" 3a 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " ~ The original tilde is already an immediate word, so" ~ " we can take over" 20 20 7e 20 20 20 54 68 65 20 6f 72 69 67 69 6e 61 6c 20 74 69 6c 64 65 20 69 73 20 61 6c 72 65 61 64 79 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2c 20 73 6f 20 77 65 20 63 61 6e 20 74 61 6b 65 20 6f 76 65 72 0a ~ " ~ those responsibilities directly without needing to do" ~ " any extra work to" 20 20 7e 20 74 68 6f 73 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 20 64 69 72 65 63 74 6c 79 20 77 69 74 68 6f 75 74 20 6e 65 65 64 69 6e 67 20 74 6f 20 64 6f 20 61 6e 79 20 65 78 74 72 61 20 77 6f 72 6b 20 74 6f 0a ~ " ~ check the mode we're in or anything like that." 20 20 7e 20 63 68 65 63 6b 20 74 68 65 20 6d 6f 64 65 20 77 65 27 72 65 20 69 6e 20 6f 72 20 61 6e 79 74 68 69 6e 67 20 6c 69 6b 65 20 74 68 61 74 2e 0a ~ " hex-read-magic-comment-introducer" 20 20 68 65 78 2d 72 65 61 64 2d 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 2d 69 6e 74 72 6f 64 75 63 65 72 0a ~ " ~ (body string pointer, result code)" 20 20 7e 20 28 62 6f 64 79 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 72 65 73 75 6c 74 20 63 6f 64 65 29 0a ~ "" 0a ~ " {" 20 20 7b 0a ~ " ~ It's a magic comment, which may or may not be" ~ " empty. We want to either" 20 20 20 20 7e 20 20 20 49 74 27 73 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 2c 20 77 68 69 63 68 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 62 65 20 65 6d 70 74 79 2e 20 57 65 20 77 61 6e 74 20 74 6f 20 65 69 74 68 65 72 0a ~ " ~ compile or execute a call to hex-tilde-replacement." 20 20 20 20 7e 20 63 6f 6d 70 69 6c 65 20 6f 72 20 65 78 65 63 75 74 65 20 61 20 63 61 6c 6c 20 74 6f 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode." 20 20 20 20 20 20 7e 20 20 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 0a ~ " ~" 20 20 20 20 20 20 7e 0a ~ " ~ Fortunately, we can pack the string directly into" ~ " the output buffer," 20 20 20 20 20 20 7e 20 20 20 46 6f 72 74 75 6e 61 74 65 6c 79 2c 20 77 65 20 63 61 6e 20 70 61 63 6b 20 74 68 65 20 73 74 72 69 6e 67 20 64 69 72 65 63 74 6c 79 20 69 6e 74 6f 20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 2c 0a ~ " ~ so we don't need to mess around with" ~ " accumulate-string." 20 20 20 20 20 20 7e 20 73 6f 20 77 65 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 6d 65 73 73 20 61 72 6f 75 6e 64 20 77 69 74 68 20 61 63 63 75 6d 75 6c 61 74 65 2d 73 74 72 69 6e 67 2e 0a ~ " s" lit" find entry-to-execution-token ," 20 20 20 20 20 20 73 22 20 6c 69 74 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " has-non-space-this-input-line@ ," 20 20 20 20 20 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 40 20 2c 0a ~ "" 0a ~ " s" litstring" find entry-to-execution-token ," 20 20 20 20 20 20 73 22 20 6c 69 74 73 74 72 69 6e 67 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " here @" 20 20 20 20 20 20 68 65 72 65 20 40 0a ~ " swap packstring" 20 20 20 20 20 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 0a ~ " 8 packalign" 20 20 20 20 20 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " here !" 20 20 20 20 20 20 68 65 72 65 20 21 0a ~ "" 0a ~ " ' hex-tilde-replacement entry-to-execution-token ," 20 20 20 20 20 20 27 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ We're in interpret mode." 20 20 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 69 6e 74 65 72 70 72 65 74 20 6d 6f 64 65 2e 0a ~ " has-non-space-this-input-line@ swap" 20 20 20 20 20 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 40 20 73 77 61 70 0a ~ " hex-tilde-replacement" 20 20 20 20 20 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ If it's a regular comment, we just ignore it." 20 20 20 20 7e 20 49 66 20 69 74 27 73 20 61 20 72 65 67 75 6c 61 72 20 63 6f 6d 6d 65 6e 74 2c 20 77 65 20 6a 75 73 74 20 69 67 6e 6f 72 65 20 69 74 2e 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " ~ Regardless of what path we took, we just consumed a" ~ " newline, so make" 20 20 7e 20 20 20 52 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 61 74 20 70 61 74 68 20 77 65 20 74 6f 6f 6b 2c 20 77 65 20 6a 75 73 74 20 63 6f 6e 73 75 6d 65 64 20 61 20 6e 65 77 6c 69 6e 65 2c 20 73 6f 20 6d 61 6b 65 0a ~ " ~ note of the fact." 20 20 7e 20 6e 6f 74 65 20 6f 66 20 74 68 65 20 66 61 63 74 2e 0a ~ " 0 has-non-space-this-input-line!" 20 20 30 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 21 0a ~ " ; make-immediate" 20 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This word runs whenever the label transform, running" ~ " inside the hex" 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 72 75 6e 73 20 77 68 65 6e 65 76 65 72 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2c 20 72 75 6e 6e 69 6e 67 20 69 6e 73 69 64 65 20 74 68 65 20 68 65 78 0a ~ "~ transform, encounters a tilde. It completely replaces the" ~ " normal invocation" 7e 20 74 72 61 6e 73 66 6f 72 6d 2c 20 65 6e 63 6f 75 6e 74 65 72 73 20 61 20 74 69 6c 64 65 2e 20 49 74 20 63 6f 6d 70 6c 65 74 65 6c 79 20 72 65 70 6c 61 63 65 73 20 74 68 65 20 6e 6f 72 6d 61 6c 20 69 6e 76 6f 63 61 74 69 6f 6e 0a ~ "~ of tilde, just as hex-tilde-alternate does. It has the" ~ " same responsibilities" 7e 20 6f 66 20 74 69 6c 64 65 2c 20 6a 75 73 74 20 61 73 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 64 6f 65 73 2e 20 49 74 20 68 61 73 20 74 68 65 20 73 61 6d 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 0a ~ "~ around magic comments as hex-tilde-alternate, but for" ~ " code which is" 7e 20 61 72 6f 75 6e 64 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 61 73 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 2c 20 62 75 74 20 66 6f 72 20 63 6f 64 65 20 77 68 69 63 68 20 69 73 0a ~ "~ lexically processed by label-transform-one rather than by" ~ " hex-transform-one." 7e 20 6c 65 78 69 63 61 6c 6c 79 20 70 72 6f 63 65 73 73 65 64 20 62 79 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 62 79 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2e 0a ~ "~" 7e 0a ~ "~ The actions it takes upon finding various sorts of" ~ " comments differ from" 7e 20 20 20 54 68 65 20 61 63 74 69 6f 6e 73 20 69 74 20 74 61 6b 65 73 20 75 70 6f 6e 20 66 69 6e 64 69 6e 67 20 76 61 72 69 6f 75 73 20 73 6f 72 74 73 20 6f 66 20 63 6f 6d 6d 65 6e 74 73 20 64 69 66 66 65 72 20 66 72 6f 6d 0a ~ "~ hex-tilde-alternate, because the behavior of the label" ~ " transform is" 7e 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 0a ~ "~ different from the behavior of the hex transform." 7e 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~" 7e 0a ~ "~ This is installed by hex-label-word-replacement," ~ " bypassing the label" 7e 20 20 20 54 68 69 73 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 68 65 78 2d 6c 61 62 65 6c 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 62 79 70 61 73 73 69 6e 67 20 74 68 65 20 6c 61 62 65 6c 0a ~ "~ transform's normal precedence rules, so there's no need" ~ " for it to be" 7e 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 6e 6f 72 6d 61 6c 20 70 72 65 63 65 64 65 6e 63 65 20 72 75 6c 65 73 2c 20 73 6f 20 74 68 65 72 65 27 73 20 6e 6f 20 6e 65 65 64 20 66 6f 72 20 69 74 20 74 6f 20 62 65 0a ~ "~ immediate." 7e 20 69 6d 6d 65 64 69 61 74 65 2e 0a ~ "~" 7e 0a ~ "~ Installing this word is the most significant change the" ~ " hex transform" 7e 20 20 20 49 6e 73 74 61 6c 6c 69 6e 67 20 74 68 69 73 20 77 6f 72 64 20 69 73 20 74 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 63 68 61 6e 67 65 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ makes to the behavior of the label transform." 7e 20 6d 61 6b 65 73 20 74 6f 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ ": hex-label-tilde-alternate" 3a 20 68 65 78 2d 6c 61 62 65 6c 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " hex-read-magic-comment-introducer" 20 20 68 65 78 2d 72 65 61 64 2d 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 2d 69 6e 74 72 6f 64 75 63 65 72 0a ~ " ~ (body string pointer, result code)" 20 20 7e 20 28 62 6f 64 79 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 72 65 73 75 6c 74 20 63 6f 64 65 29 0a ~ "" 0a ~ " {" 20 20 7b 0a ~ " ~ It's a magic comment, which may or may not be empty." 20 20 20 20 7e 20 49 74 27 73 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 2c 20 77 68 69 63 68 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 62 65 20 65 6d 70 74 79 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode. We ignore magic comments" ~ " in compile mode," 20 20 20 20 20 20 7e 20 20 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 20 57 65 20 69 67 6e 6f 72 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 0a ~ " ~ because they shouldn't become part of the program" ~ " being compiled." 20 20 20 20 20 20 7e 20 62 65 63 61 75 73 65 20 74 68 65 79 20 73 68 6f 75 6c 64 6e 27 74 20 62 65 63 6f 6d 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 2e 0a ~ " drop" 20 20 20 20 20 20 64 72 6f 70 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ We're in interpret mode. We run the magic comment" ~ " immediately." 20 20 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 69 6e 74 65 72 70 72 65 74 20 6d 6f 64 65 2e 20 57 65 20 72 75 6e 20 74 68 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 69 6d 6d 65 64 69 61 74 65 6c 79 2e 0a ~ " has-non-space-this-input-line@ swap" 20 20 20 20 20 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 40 20 73 77 61 70 0a ~ " swap-transform-variables allocate-string" ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " hex-tilde-replacement" 20 20 20 20 20 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ If it's a regular comment, we just ignore it." 20 20 20 20 7e 20 49 66 20 69 74 27 73 20 61 20 72 65 67 75 6c 61 72 20 63 6f 6d 6d 65 6e 74 2c 20 77 65 20 6a 75 73 74 20 69 67 6e 6f 72 65 20 69 74 2e 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " ~ Regardless of what path we took, we just consumed a" ~ " newline, so make" 20 20 7e 20 20 20 52 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 61 74 20 70 61 74 68 20 77 65 20 74 6f 6f 6b 2c 20 77 65 20 6a 75 73 74 20 63 6f 6e 73 75 6d 65 64 20 61 20 6e 65 77 6c 69 6e 65 2c 20 73 6f 20 6d 61 6b 65 0a ~ " ~ note of the fact." 20 20 7e 20 6e 6f 74 65 20 6f 66 20 74 68 65 20 66 61 63 74 2e 0a ~ " 0 has-non-space-this-input-line! ;" 20 20 30 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 21 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This word runs whenever the log-load transform, running" ~ " inside the hex" 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 72 75 6e 73 20 77 68 65 6e 65 76 65 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2c 20 72 75 6e 6e 69 6e 67 20 69 6e 73 69 64 65 20 74 68 65 20 68 65 78 0a ~ "~ transform, encounters a tilde. It completely replaces the" ~ " normal invocation" 7e 20 74 72 61 6e 73 66 6f 72 6d 2c 20 65 6e 63 6f 75 6e 74 65 72 73 20 61 20 74 69 6c 64 65 2e 20 49 74 20 63 6f 6d 70 6c 65 74 65 6c 79 20 72 65 70 6c 61 63 65 73 20 74 68 65 20 6e 6f 72 6d 61 6c 20 69 6e 76 6f 63 61 74 69 6f 6e 0a ~ "~ of tilde, just as hex-tilde-alternate does. It has the" ~ " same responsibilities" 7e 20 6f 66 20 74 69 6c 64 65 2c 20 6a 75 73 74 20 61 73 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 64 6f 65 73 2e 20 49 74 20 68 61 73 20 74 68 65 20 73 61 6d 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 0a ~ "~ around magic comments as hex-tilde-alternate, but for" ~ " code which is" 7e 20 61 72 6f 75 6e 64 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 61 73 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 2c 20 62 75 74 20 66 6f 72 20 63 6f 64 65 20 77 68 69 63 68 20 69 73 0a ~ "~ lexically processed by log-load-transform-one rather than" ~ " by" 7e 20 6c 65 78 69 63 61 6c 6c 79 20 70 72 6f 63 65 73 73 65 64 20 62 79 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 62 79 0a ~ "~ hex-transform-one." 7e 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2e 0a ~ "~" 7e 0a ~ "~ The actions it takes upon finding various sorts of" ~ " comments differ from" 7e 20 20 20 54 68 65 20 61 63 74 69 6f 6e 73 20 69 74 20 74 61 6b 65 73 20 75 70 6f 6e 20 66 69 6e 64 69 6e 67 20 76 61 72 69 6f 75 73 20 73 6f 72 74 73 20 6f 66 20 63 6f 6d 6d 65 6e 74 73 20 64 69 66 66 65 72 20 66 72 6f 6d 0a ~ "~ hex-tilde-alternate, because the behavior of the log-load" ~ " transform is" 7e 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 69 73 0a ~ "~ different from the behavior of the hex transform." 7e 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~" 7e 0a ~ "~ This is installed by hex-log-load-word-replacement," ~ " bypassing the log-load" 7e 20 20 20 54 68 69 73 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 68 65 78 2d 6c 6f 67 2d 6c 6f 61 64 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 62 79 70 61 73 73 69 6e 67 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ "~ transform's normal precedence rules, so there's no need" ~ " for it to be" 7e 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 6e 6f 72 6d 61 6c 20 70 72 65 63 65 64 65 6e 63 65 20 72 75 6c 65 73 2c 20 73 6f 20 74 68 65 72 65 27 73 20 6e 6f 20 6e 65 65 64 20 66 6f 72 20 69 74 20 74 6f 20 62 65 0a ~ "~ immediate." 7e 20 69 6d 6d 65 64 69 61 74 65 2e 0a ~ "~" 7e 0a ~ "~ Installing this word is the most significant change the" ~ " hex transform" 7e 20 20 20 49 6e 73 74 61 6c 6c 69 6e 67 20 74 68 69 73 20 77 6f 72 64 20 69 73 20 74 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 63 68 61 6e 67 65 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 0a ~ "~ makes to the behavior of the log-load transform." 7e 20 6d 61 6b 65 73 20 74 6f 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ ": hex-log-load-tilde-alternate" 3a 20 68 65 78 2d 6c 6f 67 2d 6c 6f 61 64 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " hex-read-magic-comment-introducer" 20 20 68 65 78 2d 72 65 61 64 2d 6d 61 67 69 63 2d 63 6f 6d 6d 65 6e 74 2d 69 6e 74 72 6f 64 75 63 65 72 0a ~ " ~ (body string pointer, result code)" 20 20 7e 20 28 62 6f 64 79 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 72 65 73 75 6c 74 20 63 6f 64 65 29 0a ~ "" 0a ~ " {" 20 20 7b 0a ~ " ~ It's a magic comment, which may or may not be empty." 20 20 20 20 7e 20 49 74 27 73 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 2c 20 77 68 69 63 68 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 62 65 20 65 6d 70 74 79 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode. We ignore magic comments" ~ " in compile mode," 20 20 20 20 20 20 7e 20 20 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 20 57 65 20 69 67 6e 6f 72 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2c 0a ~ " ~ because they shouldn't become part of the program" ~ " being compiled." 20 20 20 20 20 20 7e 20 62 65 63 61 75 73 65 20 74 68 65 79 20 73 68 6f 75 6c 64 6e 27 74 20 62 65 63 6f 6d 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 2e 0a ~ " drop" 20 20 20 20 20 20 64 72 6f 70 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ We're in interpret mode. We run the magic comment" ~ " immediately." 20 20 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 69 6e 74 65 72 70 72 65 74 20 6d 6f 64 65 2e 20 57 65 20 72 75 6e 20 74 68 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 69 6d 6d 65 64 69 61 74 65 6c 79 2e 0a ~ " has-non-space-this-input-line@ swap" 20 20 20 20 20 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 40 20 73 77 61 70 0a ~ " swap-transform-variables allocate-string" ~ " swap-transform-variables" 20 20 20 20 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " hex-tilde-replacement" 20 20 20 20 20 20 68 65 78 2d 74 69 6c 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ If it's a regular comment, we just ignore it." 20 20 20 20 7e 20 49 66 20 69 74 27 73 20 61 20 72 65 67 75 6c 61 72 20 63 6f 6d 6d 65 6e 74 2c 20 77 65 20 6a 75 73 74 20 69 67 6e 6f 72 65 20 69 74 2e 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ "" 0a ~ " ~ Regardless of what path we took, we just consumed a" ~ " newline, so make" 20 20 7e 20 20 20 52 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 61 74 20 70 61 74 68 20 77 65 20 74 6f 6f 6b 2c 20 77 65 20 6a 75 73 74 20 63 6f 6e 73 75 6d 65 64 20 61 20 6e 65 77 6c 69 6e 65 2c 20 73 6f 20 6d 61 6b 65 0a ~ " ~ note of the fact." 20 20 7e 20 6e 6f 74 65 20 6f 66 20 74 68 65 20 66 61 63 74 2e 0a ~ " 0 has-non-space-this-input-line! ;" 20 20 30 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 21 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This input helper is a very unusual thing: It's used by" ~ " hex-transform-one," 7e 20 20 20 54 68 69 73 20 69 6e 70 75 74 20 68 65 6c 70 65 72 20 69 73 20 61 20 76 65 72 79 20 75 6e 75 73 75 61 6c 20 74 68 69 6e 67 3a 20 49 74 27 73 20 75 73 65 64 20 62 79 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2c 0a ~ "~ hex-label-word-replacement, and" ~ " hex-log-load-word-replacement to skip the" 7e 20 68 65 78 2d 6c 61 62 65 6c 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 61 6e 64 20 68 65 78 2d 6c 6f 67 2d 6c 6f 61 64 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 74 6f 20 73 6b 69 70 20 74 68 65 0a ~ "~ space between words. That's necessary because we need to" ~ " keep track of" 7e 20 73 70 61 63 65 20 62 65 74 77 65 65 6e 20 77 6f 72 64 73 2e 20 54 68 61 74 27 73 20 6e 65 63 65 73 73 61 72 79 20 62 65 63 61 75 73 65 20 77 65 20 6e 65 65 64 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 0a ~ "~ whether we've had any non-blank stuff on each line yet," ~ " so that the tilde" 7e 20 77 68 65 74 68 65 72 20 77 65 27 76 65 20 68 61 64 20 61 6e 79 20 6e 6f 6e 2d 62 6c 61 6e 6b 20 73 74 75 66 66 20 6f 6e 20 65 61 63 68 20 6c 69 6e 65 20 79 65 74 2c 20 73 6f 20 74 68 61 74 20 74 68 65 20 74 69 6c 64 65 0a ~ "~ replacement can figure out certain cases where a magic" ~ " comment needs to be a" 7e 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 63 61 6e 20 66 69 67 75 72 65 20 6f 75 74 20 63 65 72 74 61 69 6e 20 63 61 73 65 73 20 77 68 65 72 65 20 61 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 20 6e 65 65 64 73 20 74 6f 20 62 65 20 61 0a ~ "~ suffix comment rather than a line comment." 7e 20 73 75 66 66 69 78 20 63 6f 6d 6d 65 6e 74 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 20 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 2e 0a ~ ": hex-skip-space" 3a 20 68 65 78 2d 73 6b 69 70 2d 73 70 61 63 65 0a ~ " { peek dup is-space }" 20 20 7b 20 70 65 65 6b 20 64 75 70 20 69 73 2d 73 70 61 63 65 20 7d 0a ~ " { consume" 20 20 7b 20 63 6f 6e 73 75 6d 65 0a ~ " ~ This will set the flag once for each newline, if we" ~ " have multiple" 20 20 20 20 7e 20 20 20 54 68 69 73 20 77 69 6c 6c 20 73 65 74 20 74 68 65 20 66 6c 61 67 20 6f 6e 63 65 20 66 6f 72 20 65 61 63 68 20 6e 65 77 6c 69 6e 65 2c 20 69 66 20 77 65 20 68 61 76 65 20 6d 75 6c 74 69 70 6c 65 0a ~ " ~ consecutive ones or something like that, but that's" ~ " harmless." 20 20 20 20 7e 20 63 6f 6e 73 65 63 75 74 69 76 65 20 6f 6e 65 73 20 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 74 68 61 74 2c 20 62 75 74 20 74 68 61 74 27 73 20 68 61 72 6d 6c 65 73 73 2e 0a ~ " 0x0a = { 0 has-non-space-this-input-line! } if" 20 20 20 20 30 78 30 61 20 3d 20 7b 20 30 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 21 20 7d 20 69 66 0a ~ " } while drop ;" 20 20 20 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "" 0a ~ "~ This word is installed into label-transform-one by the" ~ " hex-word-alternate," 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e 74 6f 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 20 62 79 20 74 68 65 20 68 65 78 2d 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 2c 0a ~ "~ when the label transform runs inside the hex transform." ~ " It has the job of" 7e 20 77 68 65 6e 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 20 72 75 6e 73 20 69 6e 73 69 64 65 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 49 74 20 68 61 73 20 74 68 65 20 6a 6f 62 20 6f 66 0a ~ "~ performing substantive changes to the label transform's" ~ " behavior, as" 7e 20 70 65 72 66 6f 72 6d 69 6e 67 20 73 75 62 73 74 61 6e 74 69 76 65 20 63 68 61 6e 67 65 73 20 74 6f 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 62 65 68 61 76 69 6f 72 2c 20 61 73 0a ~ "~ required by the hex transform." 7e 20 72 65 71 75 69 72 65 64 20 62 79 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~" 7e 0a ~ "~ The most important changes to the base language that" ~ " this word makes are" 7e 20 20 20 54 68 65 20 6d 6f 73 74 20 69 6d 70 6f 72 74 61 6e 74 20 63 68 61 6e 67 65 73 20 74 6f 20 74 68 65 20 62 61 73 65 20 6c 61 6e 67 75 61 67 65 20 74 68 61 74 20 74 68 69 73 20 77 6f 72 64 20 6d 61 6b 65 73 20 61 72 65 0a ~ "~ to call hex-label-tilde-alternate any time a tilde is" ~ " encountered as a word," 7e 20 74 6f 20 63 61 6c 6c 20 68 65 78 2d 6c 61 62 65 6c 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 61 6e 79 20 74 69 6d 65 20 61 20 74 69 6c 64 65 20 69 73 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 61 73 20 61 20 77 6f 72 64 2c 0a ~ "~ and to call hex-skip-space before reading a word." 7e 20 61 6e 64 20 74 6f 20 63 61 6c 6c 20 68 65 78 2d 73 6b 69 70 2d 73 70 61 63 65 20 62 65 66 6f 72 65 20 72 65 61 64 69 6e 67 20 61 20 77 6f 72 64 2e 0a ~ "~" 7e 0a ~ "~ This word is also responsible for invoking" ~ " hex-memory-slide-replacement" 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 69 73 20 61 6c 73 6f 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 69 6e 76 6f 6b 69 6e 67 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ "~ when memcopy or memmove are encountered in immediate" ~ " mode. Note that this" 7e 20 77 68 65 6e 20 6d 65 6d 63 6f 70 79 20 6f 72 20 6d 65 6d 6d 6f 76 65 20 61 72 65 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 20 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 0a ~ "~ really pushes right up against the limit of what it's" ~ " possible for a" 7e 20 72 65 61 6c 6c 79 20 70 75 73 68 65 73 20 72 69 67 68 74 20 75 70 20 61 67 61 69 6e 73 74 20 74 68 65 20 6c 69 6d 69 74 20 6f 66 20 77 68 61 74 20 69 74 27 73 20 70 6f 73 73 69 62 6c 65 20 66 6f 72 20 61 0a ~ "~ transform to do without altering the compilation's" ~ " output; invoking the" 7e 20 74 72 61 6e 73 66 6f 72 6d 20 74 6f 20 64 6f 20 77 69 74 68 6f 75 74 20 61 6c 74 65 72 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 27 73 20 6f 75 74 70 75 74 3b 20 69 6e 76 6f 6b 69 6e 67 20 74 68 65 0a ~ "~ replacement in compile mode would do so." 7e 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 20 77 6f 75 6c 64 20 64 6f 20 73 6f 2e 0a ~ ": hex-label-word-replacement" 3a 20 68 65 78 2d 6c 61 62 65 6c 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " hex-skip-space" 20 20 68 65 78 2d 73 6b 69 70 2d 73 70 61 63 65 0a ~ " word" 20 20 77 6f 72 64 0a ~ "" 0a ~ " value@" 20 20 76 61 6c 75 65 40 0a ~ " dup s" ~" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 7e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ We won't be going back to label-transform-one; clear" ~ " away its state." 20 20 20 20 7e 20 57 65 20 77 6f 6e 27 74 20 62 65 20 67 6f 69 6e 67 20 62 61 63 6b 20 74 6f 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 3b 20 63 6c 65 61 72 20 61 77 61 79 20 69 74 73 20 73 74 61 74 65 2e 0a ~ " drop dropstring" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ "" 0a ~ " hex-label-tilde-alternate" 20 20 20 20 68 65 78 2d 6c 61 62 65 6c 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ "" 0a ~ " ~ Return directly to label-transform, faking the "not" ~ " done" return value" 20 20 20 20 7e 20 20 20 52 65 74 75 72 6e 20 64 69 72 65 63 74 6c 79 20 74 6f 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2c 20 66 61 6b 69 6e 67 20 74 68 65 20 22 6e 6f 74 20 64 6f 6e 65 22 20 72 65 74 75 72 6e 20 76 61 6c 75 65 0a ~ " ~ from label-transform-one." 20 20 20 20 7e 20 66 72 6f 6d 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2e 0a ~ " 0" 20 20 20 20 30 0a ~ " 2 nexit" 20 20 20 20 32 20 6e 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" memcopy" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 6d 65 6d 63 6f 70 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " interpreter-flags @ 0x01 & not {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 6e 6f 74 20 7b 0a ~ " drop hex-memory-slide-replacement exit" 20 20 20 20 20 20 64 72 6f 70 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 78 69 74 0a ~ " ~ Fall through, returning control to" ~ " label-transform-one." 20 20 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 2c 20 72 65 74 75 72 6e 69 6e 67 20 63 6f 6e 74 72 6f 6c 20 74 6f 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2e 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " dup s" memmove" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 6d 65 6d 6d 6f 76 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " interpreter-flags @ 0x01 & not {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 6e 6f 74 20 7b 0a ~ " drop hex-memory-slide-replacement exit" 20 20 20 20 20 20 64 72 6f 70 20 68 65 78 2d 6d 65 6d 6f 72 79 2d 73 6c 69 64 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 78 69 74 0a ~ " ~ Fall through, returning control to" ~ " label-transform-one." 20 20 20 20 20 20 7e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 2c 20 72 65 74 75 72 6e 69 6e 67 20 63 6f 6e 74 72 6f 6c 20 74 6f 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2e 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " drop ;" 20 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This word is installed into log-load-transform-one by" ~ " the" 7e 20 20 20 54 68 69 73 20 77 6f 72 64 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e 74 6f 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 20 62 79 20 74 68 65 0a ~ "~ hex-word-alternate, when the log-load transform runs" ~ " inside the hex" 7e 20 68 65 78 2d 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 2c 20 77 68 65 6e 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 72 75 6e 73 20 69 6e 73 69 64 65 20 74 68 65 20 68 65 78 0a ~ "~ transform. It has the job of performing substantive" ~ " changes to the log-load" 7e 20 74 72 61 6e 73 66 6f 72 6d 2e 20 49 74 20 68 61 73 20 74 68 65 20 6a 6f 62 20 6f 66 20 70 65 72 66 6f 72 6d 69 6e 67 20 73 75 62 73 74 61 6e 74 69 76 65 20 63 68 61 6e 67 65 73 20 74 6f 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 0a ~ "~ transform's behavior, as required by the hex transform." 7e 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 62 65 68 61 76 69 6f 72 2c 20 61 73 20 72 65 71 75 69 72 65 64 20 62 79 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~" 7e 0a ~ "~ The most important changes to the base language that" ~ " this word makes are" 7e 20 20 20 54 68 65 20 6d 6f 73 74 20 69 6d 70 6f 72 74 61 6e 74 20 63 68 61 6e 67 65 73 20 74 6f 20 74 68 65 20 62 61 73 65 20 6c 61 6e 67 75 61 67 65 20 74 68 61 74 20 74 68 69 73 20 77 6f 72 64 20 6d 61 6b 65 73 20 61 72 65 0a ~ "~ to call hex-log-load-tilde-alternate any time a tilde is" ~ " encountered as a" 7e 20 74 6f 20 63 61 6c 6c 20 68 65 78 2d 6c 6f 67 2d 6c 6f 61 64 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 61 6e 79 20 74 69 6d 65 20 61 20 74 69 6c 64 65 20 69 73 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 61 73 20 61 0a ~ "~ word, and to call hex-skip-space before reading a word." 7e 20 77 6f 72 64 2c 20 61 6e 64 20 74 6f 20 63 61 6c 6c 20 68 65 78 2d 73 6b 69 70 2d 73 70 61 63 65 20 62 65 66 6f 72 65 20 72 65 61 64 69 6e 67 20 61 20 77 6f 72 64 2e 0a ~ ": hex-log-load-word-replacement" 3a 20 68 65 78 2d 6c 6f 67 2d 6c 6f 61 64 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " hex-skip-space" 20 20 68 65 78 2d 73 6b 69 70 2d 73 70 61 63 65 0a ~ " word" 20 20 77 6f 72 64 0a ~ "" 0a ~ " value@" 20 20 76 61 6c 75 65 40 0a ~ " dup s" ~" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 7e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " ~ We won't be going back to log-load-transform-one;" ~ " clear away its state." 20 20 20 20 7e 20 57 65 20 77 6f 6e 27 74 20 62 65 20 67 6f 69 6e 67 20 62 61 63 6b 20 74 6f 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 3b 20 63 6c 65 61 72 20 61 77 61 79 20 69 74 73 20 73 74 61 74 65 2e 0a ~ " drop dropstring" 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 0a ~ "" 0a ~ " hex-log-load-tilde-alternate" 20 20 20 20 68 65 78 2d 6c 6f 67 2d 6c 6f 61 64 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 0a ~ "" 0a ~ " ~ Return directly to log-load-transform, faking the" ~ " "not done" return" 20 20 20 20 7e 20 20 20 52 65 74 75 72 6e 20 64 69 72 65 63 74 6c 79 20 74 6f 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2c 20 66 61 6b 69 6e 67 20 74 68 65 20 22 6e 6f 74 20 64 6f 6e 65 22 20 72 65 74 75 72 6e 0a ~ " ~ value from log-load-transform-one." 20 20 20 20 7e 20 76 61 6c 75 65 20 66 72 6f 6d 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2e 0a ~ " 0" 20 20 20 20 30 0a ~ " 2 nexit" 20 20 20 20 32 20 6e 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " drop ;" 20 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Just as hex-allocate-alternate has the job of" ~ " installing" 7e 20 20 20 4a 75 73 74 20 61 73 20 68 65 78 2d 61 6c 6c 6f 63 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 68 61 73 20 74 68 65 20 6a 6f 62 20 6f 66 20 69 6e 73 74 61 6c 6c 69 6e 67 0a ~ "~ hex-allocate-replacement in only one single spot, so" ~ " hex-word-alternate has" 7e 20 68 65 78 2d 61 6c 6c 6f 63 61 74 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 69 6e 20 6f 6e 6c 79 20 6f 6e 65 20 73 69 6e 67 6c 65 20 73 70 6f 74 2c 20 73 6f 20 68 65 78 2d 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 68 61 73 0a ~ "~ the job of installing hex-label-word-replacement. It gets" ~ " installed when" 7e 20 74 68 65 20 6a 6f 62 20 6f 66 20 69 6e 73 74 61 6c 6c 69 6e 67 20 68 65 78 2d 6c 61 62 65 6c 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2e 20 49 74 20 67 65 74 73 20 69 6e 73 74 61 6c 6c 65 64 20 77 68 65 6e 0a ~ "~ "word" is called from lexically within" ~ " label-transform-one, and at no other" 7e 20 22 77 6f 72 64 22 20 69 73 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 6c 65 78 69 63 61 6c 6c 79 20 77 69 74 68 69 6e 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 2c 20 61 6e 64 20 61 74 20 6e 6f 20 6f 74 68 65 72 0a ~ "~ time." 7e 20 74 69 6d 65 2e 0a ~ "~" 7e 0a ~ "~ Notice how the job of each transform's inner bits can" ~ " be thought of as" 7e 20 20 20 4e 6f 74 69 63 65 20 68 6f 77 20 74 68 65 20 6a 6f 62 20 6f 66 20 65 61 63 68 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 69 6e 6e 65 72 20 62 69 74 73 20 63 61 6e 20 62 65 20 74 68 6f 75 67 68 74 20 6f 66 20 61 73 0a ~ "~ calling "word" and doing something with the result, with" ~ " all the lexical" 7e 20 63 61 6c 6c 69 6e 67 20 22 77 6f 72 64 22 20 61 6e 64 20 64 6f 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 77 69 74 68 20 74 68 65 20 72 65 73 75 6c 74 2c 20 77 69 74 68 20 61 6c 6c 20 74 68 65 20 6c 65 78 69 63 61 6c 0a ~ "~ processing delegated to "word". This makes "word" a good" ~ " place to install a" 7e 20 70 72 6f 63 65 73 73 69 6e 67 20 64 65 6c 65 67 61 74 65 64 20 74 6f 20 22 77 6f 72 64 22 2e 20 54 68 69 73 20 6d 61 6b 65 73 20 22 77 6f 72 64 22 20 61 20 67 6f 6f 64 20 70 6c 61 63 65 20 74 6f 20 69 6e 73 74 61 6c 6c 20 61 0a ~ "~ modification to the transform's behavior." 7e 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 62 65 68 61 76 69 6f 72 2e 0a ~ "~" 7e 0a ~ "~ Its structure is highly similar to that of" ~ " hex-allocate-alternate." 7e 20 20 20 49 74 73 20 73 74 72 75 63 74 75 72 65 20 69 73 20 68 69 67 68 6c 79 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 61 74 20 6f 66 20 68 65 78 2d 61 6c 6c 6f 63 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 2e 0a ~ ": hex-word-alternate" 3a 20 68 65 78 2d 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ Compile mode." 20 20 20 20 7e 20 43 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 0a ~ " latest @ entry-to-name" 20 20 20 20 6c 61 74 65 73 74 20 40 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 0a ~ "" 0a ~ " dup s" label-transform-one" stringcmp 0 = {" 20 20 20 20 64 75 70 20 73 22 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " drop" 20 20 20 20 20 20 64 72 6f 70 0a ~ " ' hex-label-word-replacement entry-to-execution-token" ~ " ," 20 20 20 20 20 20 27 20 68 65 78 2d 6c 61 62 65 6c 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " exit" 20 20 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " dup s" log-load-transform-one" stringcmp 0 = {" 20 20 20 20 64 75 70 20 73 22 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " drop" 20 20 20 20 20 20 64 72 6f 70 0a ~ " ' hex-log-load-word-replacement" ~ " entry-to-execution-token ," 20 20 20 20 20 20 27 20 68 65 78 2d 6c 6f 67 2d 6c 6f 61 64 2d 77 6f 72 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " exit" 20 20 20 20 20 20 20 65 78 69 74 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Not in a word we install stuff into." 20 20 20 20 7e 20 4e 6f 74 20 69 6e 20 61 20 77 6f 72 64 20 77 65 20 69 6e 73 74 61 6c 6c 20 73 74 75 66 66 20 69 6e 74 6f 2e 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ " s" word" find entry-to-execution-token ," 20 20 20 20 73 22 20 77 6f 72 64 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ Immediate mode." 20 20 20 20 7e 20 49 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 0a ~ " s" word" find" 20 20 20 20 73 22 20 77 6f 72 64 22 20 66 69 6e 64 0a ~ " dup { entry-to-execution-token execute } { drop" ~ " allocate } if-else" 20 20 20 20 64 75 70 20 7b 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 20 7d 20 7b 20 64 72 6f 70 20 61 6c 6c 6f 63 61 74 65 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } if-else ; make-immediate" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This runs instead of "interpret" in code under the hex" ~ " transform. The" 7e 20 20 20 54 68 69 73 20 72 75 6e 73 20 69 6e 73 74 65 61 64 20 6f 66 20 22 69 6e 74 65 72 70 72 65 74 22 20 69 6e 20 63 6f 64 65 20 75 6e 64 65 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 54 68 65 0a ~ "~ proximate effect of that is to make "include" work. Note," ~ " however, that this" 7e 20 70 72 6f 78 69 6d 61 74 65 20 65 66 66 65 63 74 20 6f 66 20 74 68 61 74 20 69 73 20 74 6f 20 6d 61 6b 65 20 22 69 6e 63 6c 75 64 65 22 20 77 6f 72 6b 2e 20 4e 6f 74 65 2c 20 68 6f 77 65 76 65 72 2c 20 74 68 61 74 20 74 68 69 73 0a ~ "~ replacement only applies directly under the hex" ~ " transform. It isn't a" 7e 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 6f 6e 6c 79 20 61 70 70 6c 69 65 73 20 64 69 72 65 63 74 6c 79 20 75 6e 64 65 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 49 74 20 69 73 6e 27 74 20 61 0a ~ "~ sensible approach under the log-load transform at all," ~ " and under the label" 7e 20 73 65 6e 73 69 62 6c 65 20 61 70 70 72 6f 61 63 68 20 75 6e 64 65 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 61 74 20 61 6c 6c 2c 20 61 6e 64 20 75 6e 64 65 72 20 74 68 65 20 6c 61 62 65 6c 0a ~ "~ transform it would have such strange behavior that it" ~ " isn't a good idea" 7e 20 74 72 61 6e 73 66 6f 72 6d 20 69 74 20 77 6f 75 6c 64 20 68 61 76 65 20 73 75 63 68 20 73 74 72 61 6e 67 65 20 62 65 68 61 76 69 6f 72 20 74 68 61 74 20 69 74 20 69 73 6e 27 74 20 61 20 67 6f 6f 64 20 69 64 65 61 0a ~ "~ either." 7e 20 65 69 74 68 65 72 2e 0a ~ ": hex-interpret-replacement" 3a 20 68 65 78 2d 69 6e 74 65 72 70 72 65 74 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " ~ This is a forward reference, so we need to look it up." 20 20 7e 20 54 68 69 73 20 69 73 20 61 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 2c 20 73 6f 20 77 65 20 6e 65 65 64 20 74 6f 20 6c 6f 6f 6b 20 69 74 20 75 70 2e 0a ~ " s" hex-transform-one"" 20 20 73 22 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 22 0a ~ " swap-transform-variables find swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 66 69 6e 64 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " entry-to-execution-token execute" 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ "" 0a ~ " ~ We ignore the EOF indication, on the assumption" ~ " something else will" 20 20 7e 20 20 20 57 65 20 69 67 6e 6f 72 65 20 74 68 65 20 45 4f 46 20 69 6e 64 69 63 61 74 69 6f 6e 2c 20 6f 6e 20 74 68 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 73 6f 6d 65 74 68 69 6e 67 20 65 6c 73 65 20 77 69 6c 6c 0a ~ " ~ detect it and return to the outer loop, the one that's" ~ " ours. For example," 20 20 7e 20 64 65 74 65 63 74 20 69 74 20 61 6e 64 20 72 65 74 75 72 6e 20 74 6f 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 6f 70 2c 20 74 68 65 20 6f 6e 65 20 74 68 61 74 27 73 20 6f 75 72 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 0a ~ " ~ look at "include", in language/dynamic/files.e." 20 20 7e 20 6c 6f 6f 6b 20 61 74 20 22 69 6e 63 6c 75 64 65 22 2c 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 66 69 6c 65 73 2e 65 2e 0a ~ " drop ;" 20 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This installs hex-interpret-replacement, compiling it" ~ " in compile mode and" 7e 20 20 20 54 68 69 73 20 69 6e 73 74 61 6c 6c 73 20 68 65 78 2d 69 6e 74 65 72 70 72 65 74 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2c 20 63 6f 6d 70 69 6c 69 6e 67 20 69 74 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 20 61 6e 64 0a ~ "~ executing it in immediate mode." 7e 20 65 78 65 63 75 74 69 6e 67 20 69 74 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 0a ~ ": hex-interpret-alternate" 3a 20 68 65 78 2d 69 6e 74 65 72 70 72 65 74 2d 61 6c 74 65 72 6e 61 74 65 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ' hex-interpret-replacement entry-to-execution-token ," 20 20 20 20 27 20 68 65 78 2d 69 6e 74 65 72 70 72 65 74 2d 72 65 70 6c 61 63 65 6d 65 6e 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " } {" 20 20 7d 20 7b 0a ~ " hex-interpret-replacement" 20 20 20 20 68 65 78 2d 69 6e 74 65 72 70 72 65 74 2d 72 65 70 6c 61 63 65 6d 65 6e 74 0a ~ " } if-else ; make-immediate" 20 20 7d 20 69 66 2d 65 6c 73 65 20 3b 20 6d 61 6b 65 2d 69 6d 6d 65 64 69 61 74 65 0a ~ "" 0a ~ "" 0a ~ "~ This implements the hex transform for a single word. It" ~ " is directly" 7e 20 20 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 66 6f 72 20 61 20 73 69 6e 67 6c 65 20 77 6f 72 64 2e 20 49 74 20 69 73 20 64 69 72 65 63 74 6c 79 0a ~ "~ analogous to "interpret", and reading" ~ " language/dynamic/interpret.e may help" 7e 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 22 69 6e 74 65 72 70 72 65 74 22 2c 20 61 6e 64 20 72 65 61 64 69 6e 67 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 69 6e 74 65 72 70 72 65 74 2e 65 20 6d 61 79 20 68 65 6c 70 0a ~ "~ in understanding it, though it's meant to still make" ~ " sense on its own." 7e 20 69 6e 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 20 69 74 2c 20 74 68 6f 75 67 68 20 69 74 27 73 20 6d 65 61 6e 74 20 74 6f 20 73 74 69 6c 6c 20 6d 61 6b 65 20 73 65 6e 73 65 20 6f 6e 20 69 74 73 20 6f 77 6e 2e 0a ~ "~" 7e 0a ~ "~ The hex transform runs code immediately. Whereas most" ~ " transforms alter" 7e 20 20 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 72 75 6e 73 20 63 6f 64 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 2e 20 57 68 65 72 65 61 73 20 6d 6f 73 74 20 74 72 61 6e 73 66 6f 72 6d 73 20 61 6c 74 65 72 0a ~ "~ what the transformed code compiles into, the hex" ~ " transform alters what it" 7e 20 77 68 61 74 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 63 6f 6d 70 69 6c 65 73 20 69 6e 74 6f 2c 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 61 6c 74 65 72 73 20 77 68 61 74 20 69 74 0a ~ "~ outputs. It's assumed that the output is a binary file of" ~ " some sort; the" 7e 20 6f 75 74 70 75 74 73 2e 20 49 74 27 73 20 61 73 73 75 6d 65 64 20 74 68 61 74 20 74 68 65 20 6f 75 74 70 75 74 20 69 73 20 61 20 62 69 6e 61 72 79 20 66 69 6c 65 20 6f 66 20 73 6f 6d 65 20 73 6f 72 74 3b 20 74 68 65 0a ~ "~ binary is output as hexadecimal, interspersed with" ~ " comments describing the" 7e 20 62 69 6e 61 72 79 20 69 73 20 6f 75 74 70 75 74 20 61 73 20 68 65 78 61 64 65 63 69 6d 61 6c 2c 20 69 6e 74 65 72 73 70 65 72 73 65 64 20 77 69 74 68 20 63 6f 6d 6d 65 6e 74 73 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 0a ~ "~ code that produced it, including descriptions of what was" ~ " executed, along" 7e 20 63 6f 64 65 20 74 68 61 74 20 70 72 6f 64 75 63 65 64 20 69 74 2c 20 69 6e 63 6c 75 64 69 6e 67 20 64 65 73 63 72 69 70 74 69 6f 6e 73 20 6f 66 20 77 68 61 74 20 77 61 73 20 65 78 65 63 75 74 65 64 2c 20 61 6c 6f 6e 67 0a ~ "~ with any comments from the original code." 7e 20 77 69 74 68 20 61 6e 79 20 63 6f 6d 6d 65 6e 74 73 20 66 72 6f 6d 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 2e 0a ~ "~" 7e 0a ~ "~ The hex transform's alternates take priority over words" ~ " defined under" 7e 20 20 20 54 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 27 73 20 61 6c 74 65 72 6e 61 74 65 73 20 74 61 6b 65 20 70 72 69 6f 72 69 74 79 20 6f 76 65 72 20 77 6f 72 64 73 20 64 65 66 69 6e 65 64 20 75 6e 64 65 72 0a ~ "~ the transform when running immediately, but for" ~ " compilation, words defined" 7e 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 77 68 65 6e 20 72 75 6e 6e 69 6e 67 20 69 6d 6d 65 64 69 61 74 65 6c 79 2c 20 62 75 74 20 66 6f 72 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2c 20 77 6f 72 64 73 20 64 65 66 69 6e 65 64 0a ~ "~ under the transform take precedence. In the event that" ~ " neither an alternate" 7e 20 75 6e 64 65 72 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 74 61 6b 65 20 70 72 65 63 65 64 65 6e 63 65 2e 20 49 6e 20 74 68 65 20 65 76 65 6e 74 20 74 68 61 74 20 6e 65 69 74 68 65 72 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 0a ~ "~ nor an entry in the inner dictionary is found, the outer" ~ " dictionary is" 7e 20 6e 6f 72 20 61 6e 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 69 6e 6e 65 72 20 64 69 63 74 69 6f 6e 61 72 79 20 69 73 20 66 6f 75 6e 64 2c 20 74 68 65 20 6f 75 74 65 72 20 64 69 63 74 69 6f 6e 61 72 79 20 69 73 0a ~ "~ checked; otherwise it's irrelevant." 7e 20 63 68 65 63 6b 65 64 3b 20 6f 74 68 65 72 77 69 73 65 20 69 74 27 73 20 69 72 72 65 6c 65 76 61 6e 74 2e 0a ~ "~" 7e 0a ~ "~ The point of this precedence rule is that string" ~ " literals, which require" 7e 20 20 20 54 68 65 20 70 6f 69 6e 74 20 6f 66 20 74 68 69 73 20 70 72 65 63 65 64 65 6e 63 65 20 72 75 6c 65 20 69 73 20 74 68 61 74 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 2c 20 77 68 69 63 68 20 72 65 71 75 69 72 65 0a ~ "~ special treatment, will be using the inner implementation" ~ " by the time it" 7e 20 73 70 65 63 69 61 6c 20 74 72 65 61 74 6d 65 6e 74 2c 20 77 69 6c 6c 20 62 65 20 75 73 69 6e 67 20 74 68 65 20 69 6e 6e 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 62 79 20 74 68 65 20 74 69 6d 65 20 69 74 0a ~ "~ gets to actually generating an executable image. It's" ~ " important that there" 7e 20 67 65 74 73 20 74 6f 20 61 63 74 75 61 6c 6c 79 20 67 65 6e 65 72 61 74 69 6e 67 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 69 6d 61 67 65 2e 20 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 61 74 20 74 68 65 72 65 0a ~ "~ not be any alternates altering the generated code, only" ~ " the program actually" 7e 20 6e 6f 74 20 62 65 20 61 6e 79 20 61 6c 74 65 72 6e 61 74 65 73 20 61 6c 74 65 72 69 6e 67 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 2c 20 6f 6e 6c 79 20 74 68 65 20 70 72 6f 67 72 61 6d 20 61 63 74 75 61 6c 6c 79 0a ~ "~ being compiled. Other literal syntaxes, such as tick," ~ " don't have alternates" 7e 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 2e 20 4f 74 68 65 72 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 65 73 2c 20 73 75 63 68 20 61 73 20 74 69 63 6b 2c 20 64 6f 6e 27 74 20 68 61 76 65 20 61 6c 74 65 72 6e 61 74 65 73 0a ~ "~ at all (the hex transform manages to be more parsimonious" ~ " with alternates" 7e 20 61 74 20 61 6c 6c 20 28 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 6d 61 6e 61 67 65 73 20 74 6f 20 62 65 20 6d 6f 72 65 20 70 61 72 73 69 6d 6f 6e 69 6f 75 73 20 77 69 74 68 20 61 6c 74 65 72 6e 61 74 65 73 0a ~ "~ than other transforms), and will always be using inner" ~ " versions." 7e 20 74 68 61 6e 20 6f 74 68 65 72 20 74 72 61 6e 73 66 6f 72 6d 73 29 2c 20 61 6e 64 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 75 73 69 6e 67 20 69 6e 6e 65 72 20 76 65 72 73 69 6f 6e 73 2e 0a ~ "~" 7e 0a ~ "~ The precedence rule does fail to have the desired" ~ " effect for label" 7e 20 20 20 54 68 65 20 70 72 65 63 65 64 65 6e 63 65 20 72 75 6c 65 20 64 6f 65 73 20 66 61 69 6c 20 74 6f 20 68 61 76 65 20 74 68 65 20 64 65 73 69 72 65 64 20 65 66 66 65 63 74 20 66 6f 72 20 6c 61 62 65 6c 0a ~ "~ references. For these, the alternates take the unusual" ~ " step of manually" 7e 20 72 65 66 65 72 65 6e 63 65 73 2e 20 46 6f 72 20 74 68 65 73 65 2c 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 73 20 74 61 6b 65 20 74 68 65 20 75 6e 75 73 75 61 6c 20 73 74 65 70 20 6f 66 20 6d 61 6e 75 61 6c 6c 79 0a ~ "~ calling the inner versions when they exist." 7e 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 69 6e 6e 65 72 20 76 65 72 73 69 6f 6e 73 20 77 68 65 6e 20 74 68 65 79 20 65 78 69 73 74 2e 0a ~ "~ TODO think through whether the precedence rule is" ~ " actually doing anything..." 7e 20 54 4f 44 4f 20 74 68 69 6e 6b 20 74 68 72 6f 75 67 68 20 77 68 65 74 68 65 72 20 74 68 65 20 70 72 65 63 65 64 65 6e 63 65 20 72 75 6c 65 20 69 73 20 61 63 74 75 61 6c 6c 79 20 64 6f 69 6e 67 20 61 6e 79 74 68 69 6e 67 2e 2e 2e 0a ~ "~" 7e 0a ~ "~ It expects to be called from "hex-transform", below," ~ " which loops." 7e 20 49 74 20 65 78 70 65 63 74 73 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 22 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 22 2c 20 62 65 6c 6f 77 2c 20 77 68 69 63 68 20 6c 6f 6f 70 73 2e 0a ~ "~" 7e 0a ~ "~ (-- done)" 7e 20 28 2d 2d 20 64 6f 6e 65 29 0a ~ ": hex-transform-one" 3a 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 0a ~ " hex-skip-space" 20 20 68 65 78 2d 73 6b 69 70 2d 73 70 61 63 65 0a ~ " word" 20 20 77 6f 72 64 0a ~ "" 0a ~ " ~ If no word was returned, end the transformation." 20 20 7e 20 49 66 20 6e 6f 20 77 6f 72 64 20 77 61 73 20 72 65 74 75 72 6e 65 64 2c 20 65 6e 64 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ " dup 0 = { drop 1 exit } if" 20 20 64 75 70 20 30 20 3d 20 7b 20 64 72 6f 70 20 31 20 65 78 69 74 20 7d 20 69 66 0a ~ "" 0a ~ " ~ The string is on the top of the stack, so to get a" ~ " pointer to it we get" 20 20 7e 20 54 68 65 20 73 74 72 69 6e 67 20 69 73 20 6f 6e 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 73 74 61 63 6b 2c 20 73 6f 20 74 6f 20 67 65 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 69 74 20 77 65 20 67 65 74 0a ~ " ~ the stack address." 20 20 7e 20 74 68 65 20 73 74 61 63 6b 20 61 64 64 72 65 73 73 2e 0a ~ " ~ (string)" 20 20 7e 20 28 73 74 72 69 6e 67 29 0a ~ " value@" 20 20 76 61 6c 75 65 40 0a ~ "" 0a ~ " ~ If it's anything but tilde, set the input state flag" ~ " accordingly." 20 20 7e 20 49 66 20 69 74 27 73 20 61 6e 79 74 68 69 6e 67 20 62 75 74 20 74 69 6c 64 65 2c 20 73 65 74 20 74 68 65 20 69 6e 70 75 74 20 73 74 61 74 65 20 66 6c 61 67 20 61 63 63 6f 72 64 69 6e 67 6c 79 2e 0a ~ " dup s" ~" stringcmp 0 != { 1" ~ " has-non-space-this-input-line! } if" 20 20 64 75 70 20 73 22 20 7e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 21 3d 20 7b 20 31 20 68 61 73 2d 6e 6f 6e 2d 73 70 61 63 65 2d 74 68 69 73 2d 69 6e 70 75 74 2d 6c 69 6e 65 21 20 7d 20 69 66 0a ~ "" 0a ~ " ~ Check whether it's one of the words we have" ~ " alternates for, and look up" 20 20 7e 20 20 20 43 68 65 63 6b 20 77 68 65 74 68 65 72 20 69 74 27 73 20 6f 6e 65 20 6f 66 20 74 68 65 20 77 6f 72 64 73 20 77 65 20 68 61 76 65 20 61 6c 74 65 72 6e 61 74 65 73 20 66 6f 72 2c 20 61 6e 64 20 6c 6f 6f 6b 20 75 70 0a ~ " ~ the alternate if so." 20 20 7e 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 69 66 20 73 6f 2e 0a ~ " 0 swap" 20 20 30 20 73 77 61 70 0a ~ " ~ (name as stack string, placeholder, name pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 70 6c 61 63 65 68 6f 6c 64 65 72 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ " dup s" self-codeword" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' hex-self-codeword-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 73 65 6c 66 2d 63 6f 64 65 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " ~ It is nontrivial to construct a string with a" ~ " double-quote in it." 20 20 7e 20 49 74 20 69 73 20 6e 6f 6e 74 72 69 76 69 61 6c 20 74 6f 20 63 6f 6e 73 74 72 75 63 74 20 61 20 73 74 72 69 6e 67 20 77 69 74 68 20 61 20 64 6f 75 62 6c 65 2d 71 75 6f 74 65 20 69 6e 20 69 74 2e 0a ~ " dup ' s" entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 73 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' hex-string-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup ' ." entry-to-name stringcmp 0 = {" 20 20 64 75 70 20 27 20 2e 22 20 65 6e 74 72 79 2d 74 6f 2d 6e 61 6d 65 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' hex-dot-string-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 64 6f 74 2d 73 74 72 69 6e 67 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" create" stringcmp 0 = { swap drop '" ~ " hex-create-alternate swap } if" 20 20 64 75 70 20 73 22 20 63 72 65 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 63 72 65 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" :" stringcmp 0 = { swap drop ' hex-colon-alternate" ~ " swap } if" 20 20 64 75 70 20 73 22 20 3a 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ;" stringcmp 0 = { swap drop '" ~ " hex-semicolon-alternate swap } if" 20 20 64 75 70 20 73 22 20 3b 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ;asm" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 3b 61 73 6d 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' hex-semicolon-assembly-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 73 65 6d 69 63 6f 6c 6f 6e 2d 61 73 73 65 6d 62 6c 79 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" L@'" stringcmp 0 = { swap drop ' hex-L@'-alternate" ~ " swap } if" 20 20 64 75 70 20 73 22 20 4c 40 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 4c 40 27 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" L!'" stringcmp 0 = { swap drop ' hex-L!'-alternate" ~ " swap } if" 20 20 64 75 70 20 73 22 20 4c 21 27 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 4c 21 27 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" bye" stringcmp 0 = { swap drop ' hex-bye-alternate" ~ " swap } if" 20 20 64 75 70 20 73 22 20 62 79 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 62 79 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" allocate" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 61 6c 6c 6f 63 61 74 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' hex-allocate-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 61 6c 6c 6f 63 61 74 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" memcopy" stringcmp 0 = { swap drop '" ~ " hex-memcopy-alternate swap } if" 20 20 64 75 70 20 73 22 20 6d 65 6d 63 6f 70 79 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 6d 65 6d 63 6f 70 79 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" memmove" stringcmp 0 = { swap drop '" ~ " hex-memmove-alternate swap } if" 20 20 64 75 70 20 73 22 20 6d 65 6d 6d 6f 76 65 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 6d 65 6d 6d 6f 76 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" word" stringcmp 0 = { swap drop '" ~ " hex-word-alternate swap } if" 20 20 64 75 70 20 73 22 20 77 6f 72 64 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 77 6f 72 64 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" ~" stringcmp 0 = { swap drop ' hex-tilde-alternate" ~ " swap } if" 20 20 64 75 70 20 73 22 20 7e 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 74 69 6c 64 65 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " dup s" interpret" stringcmp 0 = {" 20 20 64 75 70 20 73 22 20 69 6e 74 65 72 70 72 65 74 22 20 73 74 72 69 6e 67 63 6d 70 20 30 20 3d 20 7b 0a ~ " swap drop ' hex-interpret-alternate swap } if" 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 27 20 68 65 78 2d 69 6e 74 65 72 70 72 65 74 2d 61 6c 74 65 72 6e 61 74 65 20 73 77 61 70 20 7d 20 69 66 0a ~ " ~ (name as stack string, 0 or alternate entry pointer," ~ " name pointer)" 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 30 20 6f 72 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 6e 61 6d 65 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " find" 20 20 66 69 6e 64 0a ~ " ~ (stack string, 0 or alternate entry pointer, 0 or inner" ~ " entry pointer)" 20 20 7e 20 28 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 30 20 6f 72 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 20 30 20 6f 72 20 69 6e 6e 65 72 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " interpreter-flags @ 0x01 & {" 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode. An alternate immediate entry" ~ " has the highest" 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 2e 20 41 6e 20 61 6c 74 65 72 6e 61 74 65 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 20 68 61 73 20 74 68 65 20 68 69 67 68 65 73 74 0a ~ " ~ precedence; an inner entry of any kind has" ~ " second-highest." 20 20 20 20 7e 20 70 72 65 63 65 64 65 6e 63 65 3b 20 61 6e 20 69 6e 6e 65 72 20 65 6e 74 72 79 20 6f 66 20 61 6e 79 20 6b 69 6e 64 20 68 61 73 20 73 65 63 6f 6e 64 2d 68 69 67 68 65 73 74 2e 0a ~ " over {" 20 20 20 20 6f 76 65 72 20 7b 0a ~ " ~ An alternate entry exists; check its flags." 20 20 20 20 20 20 7e 20 41 6e 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 20 65 78 69 73 74 73 3b 20 63 68 65 63 6b 20 69 74 73 20 66 6c 61 67 73 2e 0a ~ " over entry-flags@ 0x01 & {" 20 20 20 20 20 20 6f 76 65 72 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ It's an immediate entry, so it has precedence," ~ " regardless of" 20 20 20 20 20 20 20 20 7e 20 20 20 49 74 27 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 2c 20 73 6f 20 69 74 20 68 61 73 20 70 72 65 63 65 64 65 6e 63 65 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 0a ~ " ~ what's up with the inner entry. Execute it." 20 20 20 20 20 20 20 20 7e 20 77 68 61 74 27 73 20 75 70 20 77 69 74 68 20 74 68 65 20 69 6e 6e 65 72 20 65 6e 74 72 79 2e 20 45 78 65 63 75 74 65 20 69 74 2e 0a ~ " drop dropstring-with-result" 20 20 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token execute" 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } {" 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ The alternate is not immediate, so check if" ~ " there's an inner entry." 20 20 20 20 20 20 20 20 7e 20 54 68 65 20 61 6c 74 65 72 6e 61 74 65 20 69 73 20 6e 6f 74 20 69 6d 6d 65 64 69 61 74 65 2c 20 73 6f 20 63 68 65 63 6b 20 69 66 20 74 68 65 72 65 27 73 20 61 6e 20 69 6e 6e 65 72 20 65 6e 74 72 79 2e 0a ~ " dup {" 20 20 20 20 20 20 20 20 64 75 70 20 7b 0a ~ " ~ There is also an inner entry. Check its flags." 20 20 20 20 20 20 20 20 20 20 7e 20 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 61 6e 20 69 6e 6e 65 72 20 65 6e 74 72 79 2e 20 43 68 65 63 6b 20 69 74 73 20 66 6c 61 67 73 2e 0a ~ " dup entry-flags@ 0x01 & {" 20 20 20 20 20 20 20 20 20 20 64 75 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ The inner entry is immediate, so it has" ~ " precedence. Execute it." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 54 68 65 20 69 6e 6e 65 72 20 65 6e 74 72 79 20 69 73 20 69 6d 6d 65 64 69 61 74 65 2c 20 73 6f 20 69 74 20 68 61 73 20 70 72 65 63 65 64 65 6e 63 65 2e 20 45 78 65 63 75 74 65 20 69 74 2e 0a ~ " swap drop dropstring-with-result" 20 20 20 20 20 20 20 20 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token execute" 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } {" 20 20 20 20 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ The inner entry is not immediate, so the" ~ " alternate has" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 65 20 69 6e 6e 65 72 20 65 6e 74 72 79 20 69 73 20 6e 6f 74 20 69 6d 6d 65 64 69 61 74 65 2c 20 73 6f 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 20 68 61 73 0a ~ " ~ precedence. Compile it." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 70 72 65 63 65 64 65 6e 63 65 2e 20 43 6f 6d 70 69 6c 65 20 69 74 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 20 20 20 20 7e 0a ~ " ~ Watch this space closely for correctness" ~ " issues, it's a rare" 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 57 61 74 63 68 20 74 68 69 73 20 73 70 61 63 65 20 63 6c 6f 73 65 6c 79 20 66 6f 72 20 63 6f 72 72 65 63 74 6e 65 73 73 20 69 73 73 75 65 73 2c 20 69 74 27 73 20 61 20 72 61 72 65 0a ~ " ~ codepath." 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 63 6f 64 65 70 61 74 68 2e 0a ~ " drop dropstring-with-result" 20 20 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token ," 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " 0 exit" 20 20 20 20 20 20 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if-else" 20 20 20 20 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ There's no inner entry. Compile the alternate." 20 20 20 20 20 20 20 20 20 20 7e 20 54 68 65 72 65 27 73 20 6e 6f 20 69 6e 6e 65 72 20 65 6e 74 72 79 2e 20 43 6f 6d 70 69 6c 65 20 74 68 65 20 61 6c 74 65 72 6e 61 74 65 2e 0a ~ " ~" 20 20 20 20 20 20 20 20 20 20 7e 0a ~ " ~ This path, too, is rare and should get close" ~ " scrutiny for" 20 20 20 20 20 20 20 20 20 20 7e 20 20 20 54 68 69 73 20 70 61 74 68 2c 20 74 6f 6f 2c 20 69 73 20 72 61 72 65 20 61 6e 64 20 73 68 6f 75 6c 64 20 67 65 74 20 63 6c 6f 73 65 20 73 63 72 75 74 69 6e 79 20 66 6f 72 0a ~ " ~ correctness." 20 20 20 20 20 20 20 20 20 20 7e 20 63 6f 72 72 65 63 74 6e 65 73 73 2e 0a ~ " drop dropstring-with-result" 20 20 20 20 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token ," 20 20 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " 0 exit" 20 20 20 20 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if-else" 20 20 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } if-else" 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ There is no alternate entry; check for an inner" ~ " entry." 20 20 20 20 20 20 7e 20 54 68 65 72 65 20 69 73 20 6e 6f 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 3b 20 63 68 65 63 6b 20 66 6f 72 20 61 6e 20 69 6e 6e 65 72 20 65 6e 74 72 79 2e 0a ~ " dup {" 20 20 20 20 20 20 64 75 70 20 7b 0a ~ " ~ An inner entry exists; check its flags." 20 20 20 20 20 20 20 20 7e 20 41 6e 20 69 6e 6e 65 72 20 65 6e 74 72 79 20 65 78 69 73 74 73 3b 20 63 68 65 63 6b 20 69 74 73 20 66 6c 61 67 73 2e 0a ~ " dup entry-flags@ 0x01 & {" 20 20 20 20 20 20 20 20 64 75 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ It's an immediate entry. Execute it." 20 20 20 20 20 20 20 20 20 20 7e 20 49 74 27 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 2e 20 45 78 65 63 75 74 65 20 69 74 2e 0a ~ " swap drop dropstring-with-result" 20 20 20 20 20 20 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token execute" 20 20 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } {" 20 20 20 20 20 20 20 20 7d 20 20 7b 0a ~ " ~ It's not an immediate entry. Compile it." 20 20 20 20 20 20 20 20 20 20 7e 20 49 74 27 73 20 6e 6f 74 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 65 6e 74 72 79 2e 20 43 6f 6d 70 69 6c 65 20 69 74 2e 0a ~ " swap drop dropstring-with-result" 20 20 20 20 20 20 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token ," 20 20 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " 0 exit" 20 20 20 20 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if-else" 20 20 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ " ~ If we got here, there's no inner or alternate" ~ " entry; fall through." 20 20 20 20 20 20 7e 20 49 66 20 77 65 20 67 6f 74 20 68 65 72 65 2c 20 74 68 65 72 65 27 73 20 6e 6f 20 69 6e 6e 65 72 20 6f 72 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 3b 20 66 61 6c 6c 20 74 68 72 6f 75 67 68 2e 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ We're in immediate mode. An alternate entry of any" ~ " kind has precedence." 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 20 41 6e 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 20 6f 66 20 61 6e 79 20 6b 69 6e 64 20 68 61 73 20 70 72 65 63 65 64 65 6e 63 65 2e 0a ~ " over {" 20 20 20 20 6f 76 65 72 20 7b 0a ~ " ~ There's an alternate entry. Execute it." 20 20 20 20 20 20 7e 20 54 68 65 72 65 27 73 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 2e 20 45 78 65 63 75 74 65 20 69 74 2e 0a ~ " drop dropstring-with-result" 20 20 20 20 20 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token execute" 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ There's no alternate entry. Check for an inner" ~ " entry." 20 20 20 20 20 20 7e 20 54 68 65 72 65 27 73 20 6e 6f 20 61 6c 74 65 72 6e 61 74 65 20 65 6e 74 72 79 2e 20 43 68 65 63 6b 20 66 6f 72 20 61 6e 20 69 6e 6e 65 72 20 65 6e 74 72 79 2e 0a ~ " dup {" 20 20 20 20 20 20 64 75 70 20 7b 0a ~ " ~ An inner entry exists. Execute it." 20 20 20 20 20 20 20 20 7e 20 41 6e 20 69 6e 6e 65 72 20 65 6e 74 72 79 20 65 78 69 73 74 73 2e 20 45 78 65 63 75 74 65 20 69 74 2e 0a ~ " swap drop dropstring-with-result" 20 20 20 20 20 20 20 20 73 77 61 70 20 64 72 6f 70 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token execute" 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 20 20 20 20 7d 20 69 66 0a ~ " ~ If we got here, there's no inner or alternate; fall" ~ " through." 20 20 20 20 20 20 7e 20 49 66 20 77 65 20 67 6f 74 20 68 65 72 65 2c 20 74 68 65 72 65 27 73 20 6e 6f 20 69 6e 6e 65 72 20 6f 72 20 61 6c 74 65 72 6e 61 74 65 3b 20 66 61 6c 6c 20 74 68 72 6f 75 67 68 2e 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " drop drop" 20 20 64 72 6f 70 20 64 72 6f 70 0a ~ " ~ (stack string)" 20 20 7e 20 28 73 74 61 63 6b 20 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " ~ As a final fallback, we also check the outer" ~ " dictionary, for immediate" 20 20 7e 20 20 20 41 73 20 61 20 66 69 6e 61 6c 20 66 61 6c 6c 62 61 63 6b 2c 20 77 65 20 61 6c 73 6f 20 63 68 65 63 6b 20 74 68 65 20 6f 75 74 65 72 20 64 69 63 74 69 6f 6e 61 72 79 2c 20 66 6f 72 20 69 6d 6d 65 64 69 61 74 65 0a ~ " ~ use only. This will allow things like assembly words to" ~ " work." 20 20 7e 20 75 73 65 20 6f 6e 6c 79 2e 20 54 68 69 73 20 77 69 6c 6c 20 61 6c 6c 6f 77 20 74 68 69 6e 67 73 20 6c 69 6b 65 20 61 73 73 65 6d 62 6c 79 20 77 6f 72 64 73 20 74 6f 20 77 6f 72 6b 2e 0a ~ " value@" 20 20 76 61 6c 75 65 40 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " find" 20 20 66 69 6e 64 0a ~ " swap-transform-variables" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 0a ~ " dup {" 20 20 64 75 70 20 7b 0a ~ " ~ There's an outer entry; check the mode." 20 20 20 20 7e 20 54 68 65 72 65 27 73 20 61 6e 20 6f 75 74 65 72 20 65 6e 74 72 79 3b 20 63 68 65 63 6b 20 74 68 65 20 6d 6f 64 65 2e 0a ~ " interpreter-flags @ 0x01 & {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ We're in compile mode; check the outer entry's" ~ " flags." 20 20 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 63 6f 6d 70 69 6c 65 20 6d 6f 64 65 3b 20 63 68 65 63 6b 20 74 68 65 20 6f 75 74 65 72 20 65 6e 74 72 79 27 73 20 66 6c 61 67 73 2e 0a ~ " dup entry-flags@ 0x01 & {" 20 20 20 20 20 20 64 75 70 20 65 6e 74 72 79 2d 66 6c 61 67 73 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ It's an immediate word; execute it." 20 20 20 20 20 20 20 20 7e 20 49 74 27 73 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 3b 20 65 78 65 63 75 74 65 20 69 74 2e 0a ~ " dropstring-with-result" 20 20 20 20 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token" 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " execute" 20 20 20 20 20 20 20 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } {" 20 20 20 20 20 20 7d 20 7b 0a ~ " ~ It's not an immediate word. Pretend it doesn't" ~ " exist, and fall" 20 20 20 20 20 20 20 20 7e 20 20 20 49 74 27 73 20 6e 6f 74 20 61 6e 20 69 6d 6d 65 64 69 61 74 65 20 77 6f 72 64 2e 20 50 72 65 74 65 6e 64 20 69 74 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 2c 20 61 6e 64 20 66 61 6c 6c 0a ~ " ~ through." 20 20 20 20 20 20 20 20 7e 20 74 68 72 6f 75 67 68 2e 0a ~ " drop" 20 20 20 20 20 20 20 20 64 72 6f 70 0a ~ " } if-else" 20 20 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 20 20 7d 20 7b 0a ~ " ~ We're in immediate mode. Execute the outer entry." 20 20 20 20 20 20 7e 20 57 65 27 72 65 20 69 6e 20 69 6d 6d 65 64 69 61 74 65 20 6d 6f 64 65 2e 20 45 78 65 63 75 74 65 20 74 68 65 20 6f 75 74 65 72 20 65 6e 74 72 79 2e 0a ~ " dropstring-with-result" 20 20 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " entry-to-execution-token" 20 20 20 20 20 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 0a ~ " execute" 20 20 20 20 20 20 65 78 65 63 75 74 65 0a ~ " 0 exit" 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if-else" 20 20 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " } {" 20 20 7d 20 7b 0a ~ " ~ There's no outer entry. Fall through." 20 20 20 20 7e 20 54 68 65 72 65 27 73 20 6e 6f 20 6f 75 74 65 72 20 65 6e 74 72 79 2e 20 46 61 6c 6c 20 74 68 72 6f 75 67 68 2e 0a ~ " drop" 20 20 20 20 64 72 6f 70 0a ~ " } if-else" 20 20 7d 20 69 66 2d 65 6c 73 65 0a ~ " ~ (stack string)" 20 20 7e 20 28 73 74 61 63 6b 20 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " ~ Check whether it's a number literal." 20 20 7e 20 43 68 65 63 6b 20 77 68 65 74 68 65 72 20 69 74 27 73 20 61 20 6e 75 6d 62 65 72 20 6c 69 74 65 72 61 6c 2e 0a ~ " value@ read-integer 0 = {" 20 20 76 61 6c 75 65 40 20 72 65 61 64 2d 69 6e 74 65 67 65 72 20 30 20 3d 20 7b 0a ~ " ~ It's a number." 20 20 20 20 7e 20 49 74 27 73 20 61 20 6e 75 6d 62 65 72 2e 0a ~ " ~" 20 20 20 20 7e 0a ~ " ~ (name as stack string, integer value)" 20 20 20 20 7e 20 28 6e 61 6d 65 20 61 73 20 73 74 61 63 6b 20 73 74 72 69 6e 67 2c 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 29 0a ~ " dropstring-with-result" 20 20 20 20 64 72 6f 70 73 74 72 69 6e 67 2d 77 69 74 68 2d 72 65 73 75 6c 74 0a ~ " ~ (integer value)" 20 20 20 20 7e 20 28 69 6e 74 65 67 65 72 20 76 61 6c 75 65 29 0a ~ "" 0a ~ " interpreter-flags @ 0x01 & {" 20 20 20 20 69 6e 74 65 72 70 72 65 74 65 72 2d 66 6c 61 67 73 20 40 20 30 78 30 31 20 26 20 7b 0a ~ " ~ TODO this probably needs a lit alternate (!)" 20 20 20 20 20 20 7e 20 54 4f 44 4f 20 74 68 69 73 20 70 72 6f 62 61 62 6c 79 20 6e 65 65 64 73 20 61 20 6c 69 74 20 61 6c 74 65 72 6e 61 74 65 20 28 21 29 0a ~ " ' lit entry-to-execution-token , ," 20 20 20 20 20 20 27 20 6c 69 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 20 2c 0a ~ " 0 exit" 20 20 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 20 20 7d 20 69 66 0a ~ "" 0a ~ " 0 exit" 20 20 20 20 30 20 65 78 69 74 0a ~ " } if" 20 20 7d 20 69 66 0a ~ " ~ (stack string)" 20 20 7e 20 28 73 74 61 63 6b 20 73 74 72 69 6e 67 29 0a ~ "" 0a ~ " ." No such word: " value@ emitstring newline dropstring 0" ~ " ;" 20 20 2e 22 20 4e 6f 20 73 75 63 68 20 77 6f 72 64 3a 20 22 20 76 61 6c 75 65 40 20 65 6d 69 74 73 74 72 69 6e 67 20 6e 65 77 6c 69 6e 65 20 64 72 6f 70 73 74 72 69 6e 67 20 30 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This implements the hex transform for all words in a" ~ " region given as" 7e 20 20 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 66 6f 72 20 61 6c 6c 20 77 6f 72 64 73 20 69 6e 20 61 20 72 65 67 69 6f 6e 20 67 69 76 65 6e 20 61 73 0a ~ "~ an input string. It is directly analogous to "quit", in" 7e 20 61 6e 20 69 6e 70 75 74 20 73 74 72 69 6e 67 2e 20 49 74 20 69 73 20 64 69 72 65 63 74 6c 79 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 22 71 75 69 74 22 2c 20 69 6e 0a ~ "~ language/dynamic/interpret.e, but is more complex." 7e 20 6c 61 6e 67 75 61 67 65 2f 64 79 6e 61 6d 69 63 2f 69 6e 74 65 72 70 72 65 74 2e 65 2c 20 62 75 74 20 69 73 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 78 2e 0a ~ "~" 7e 0a ~ "~ (output metadata buffer start, output buffer start," ~ " output point," 7e 20 28 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 0a ~ "~ input string pointer -- output buffer start, output" ~ " point)" 7e 20 20 69 6e 70 75 74 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": hex-transform" 3a 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 0a ~ " main-input-buffer dup push-input-buffer" 20 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 64 75 70 20 70 75 73 68 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ " swap attach-string-to-input-buffer" 20 20 73 77 61 70 20 61 74 74 61 63 68 2d 73 74 72 69 6e 67 2d 74 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ " ~ (output metadata buffer start, output buffer start," ~ " output point)" 20 20 7e 20 28 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ Save the old values of "here" and "latest", and set" ~ " the initial values" 20 20 7e 20 20 20 53 61 76 65 20 74 68 65 20 6f 6c 64 20 76 61 6c 75 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 2c 20 61 6e 64 20 73 65 74 20 74 68 65 20 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 73 0a ~ " ~ of the internal ones. These values need to persist" ~ " across iterations," 20 20 7e 20 6f 66 20 74 68 65 20 69 6e 74 65 72 6e 61 6c 20 6f 6e 65 73 2e 20 54 68 65 73 65 20 76 61 6c 75 65 73 20 6e 65 65 64 20 74 6f 20 70 65 72 73 69 73 74 20 61 63 72 6f 73 73 20 69 74 65 72 61 74 69 6f 6e 73 2c 0a ~ " ~ since client code will make its own updates to them and" ~ " then rely on those" 20 20 7e 20 73 69 6e 63 65 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 77 69 6c 6c 20 6d 61 6b 65 20 69 74 73 20 6f 77 6e 20 75 70 64 61 74 65 73 20 74 6f 20 74 68 65 6d 20 61 6e 64 20 74 68 65 6e 20 72 65 6c 79 20 6f 6e 20 74 68 6f 73 65 0a ~ " ~ updates having taken effect. So we do the swap just" ~ " once, here outside the" 20 20 7e 20 75 70 64 61 74 65 73 20 68 61 76 69 6e 67 20 74 61 6b 65 6e 20 65 66 66 65 63 74 2e 20 53 6f 20 77 65 20 64 6f 20 74 68 65 20 73 77 61 70 20 6a 75 73 74 20 6f 6e 63 65 2c 20 68 65 72 65 20 6f 75 74 73 69 64 65 20 74 68 65 0a ~ " ~ loop, and set it back when the loop ends." 20 20 7e 20 6c 6f 6f 70 2c 20 61 6e 64 20 73 65 74 20 69 74 20 62 61 63 6b 20 77 68 65 6e 20 74 68 65 20 6c 6f 6f 70 20 65 6e 64 73 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We also take this opportunity to initialize the other" ~ " fields of" 20 20 7e 20 20 20 57 65 20 61 6c 73 6f 20 74 61 6b 65 20 74 68 69 73 20 6f 70 70 6f 72 74 75 6e 69 74 79 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 74 68 65 20 6f 74 68 65 72 20 66 69 65 6c 64 73 20 6f 66 0a ~ " ~ transformation-state. While it might be nice to do" ~ " these in some sort of" 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2e 20 57 68 69 6c 65 20 69 74 20 6d 69 67 68 74 20 62 65 20 6e 69 63 65 20 74 6f 20 64 6f 20 74 68 65 73 65 20 69 6e 20 73 6f 6d 65 20 73 6f 72 74 20 6f 66 0a ~ " ~ logical order, it gets unreadable quickly, so we" ~ " initialize them in the" 20 20 7e 20 6c 6f 67 69 63 61 6c 20 6f 72 64 65 72 2c 20 69 74 20 67 65 74 73 20 75 6e 72 65 61 64 61 62 6c 65 20 71 75 69 63 6b 6c 79 2c 20 73 6f 20 77 65 20 69 6e 69 74 69 61 6c 69 7a 65 20 74 68 65 6d 20 69 6e 20 74 68 65 0a ~ " ~ most convenient order given how we received our" ~ " parameters." 20 20 7e 20 6d 6f 73 74 20 63 6f 6e 76 65 6e 69 65 6e 74 20 6f 72 64 65 72 20 67 69 76 65 6e 20 68 6f 77 20 77 65 20 72 65 63 65 69 76 65 64 20 6f 75 72 20 70 61 72 61 6d 65 74 65 72 73 2e 0a ~ " here @ transformation-state" ~ " transformation-state-saved-here !" 20 20 68 65 72 65 20 40 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 21 0a ~ " latest @ transformation-state" ~ " transformation-state-saved-latest !" 20 20 6c 61 74 65 73 74 20 40 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 21 0a ~ " here !" 20 20 68 65 72 65 20 21 0a ~ " 0 latest !" 20 20 30 20 6c 61 74 65 73 74 20 21 0a ~ " transformation-state" ~ " transformation-state-output-buffer-start !" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-user-stack-depth !" 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 21 0a ~ " transformation-state transformation-state-output-metadata" ~ " !" 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 20 21 0a ~ " ~ Now the stack has nothing of ours on it, so client code" ~ " can do its thing." 20 20 7e 20 4e 6f 77 20 74 68 65 20 73 74 61 63 6b 20 68 61 73 20 6e 6f 74 68 69 6e 67 20 6f 66 20 6f 75 72 73 20 6f 6e 20 69 74 2c 20 73 6f 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 63 61 6e 20 64 6f 20 69 74 73 20 74 68 69 6e 67 2e 0a ~ "" 0a ~ " ~ We don't have the real values yet, so we can't create" ~ " the initial" 20 20 7e 20 20 20 57 65 20 64 6f 6e 27 74 20 68 61 76 65 20 74 68 65 20 72 65 61 6c 20 76 61 6c 75 65 73 20 79 65 74 2c 20 73 6f 20 77 65 20 63 61 6e 27 74 20 63 72 65 61 74 65 20 74 68 65 20 69 6e 69 74 69 61 6c 0a ~ " ~ entries in the output metadata, but we can and should" ~ " zero it out to make" 20 20 7e 20 65 6e 74 72 69 65 73 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 6d 65 74 61 64 61 74 61 2c 20 62 75 74 20 77 65 20 63 61 6e 20 61 6e 64 20 73 68 6f 75 6c 64 20 7a 65 72 6f 20 69 74 20 6f 75 74 20 74 6f 20 6d 61 6b 65 0a ~ " ~ sure everything else operating on it finds it" ~ " well-formed." 20 20 7e 20 73 75 72 65 20 65 76 65 72 79 74 68 69 6e 67 20 65 6c 73 65 20 6f 70 65 72 61 74 69 6e 67 20 6f 6e 20 69 74 20 66 69 6e 64 73 20 69 74 20 77 65 6c 6c 2d 66 6f 72 6d 65 64 2e 0a ~ " zero-hex-output-metadata" 20 20 7a 65 72 6f 2d 68 65 78 2d 6f 75 74 70 75 74 2d 6d 65 74 61 64 61 74 61 0a ~ "" 0a ~ " ~ The code under the hex transform never gets a real" ~ " copy of warm-start," 20 20 7e 20 20 20 54 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 20 6e 65 76 65 72 20 67 65 74 73 20 61 20 72 65 61 6c 20 63 6f 70 79 20 6f 66 20 77 61 72 6d 2d 73 74 61 72 74 2c 0a ~ " ~ so it doesn't have the globals "here" and so on. It" ~ " wants to have the" 20 20 7e 20 73 6f 20 69 74 20 64 6f 65 73 6e 27 74 20 68 61 76 65 20 74 68 65 20 67 6c 6f 62 61 6c 73 20 22 68 65 72 65 22 20 61 6e 64 20 73 6f 20 6f 6e 2e 20 49 74 20 77 61 6e 74 73 20 74 6f 20 68 61 76 65 20 74 68 65 0a ~ " ~ globals, but it can't, not without our help. Why aren't" ~ " we helping?" 20 20 7e 20 67 6c 6f 62 61 6c 73 2c 20 62 75 74 20 69 74 20 63 61 6e 27 74 2c 20 6e 6f 74 20 77 69 74 68 6f 75 74 20 6f 75 72 20 68 65 6c 70 2e 20 57 68 79 20 61 72 65 6e 27 74 20 77 65 20 68 65 6c 70 69 6e 67 3f 0a ~ " ~" 20 20 7e 0a ~ " ~ Oh, right, we're helping right here. We just write" ~ " them into the inner" 20 20 7e 20 20 20 4f 68 2c 20 72 69 67 68 74 2c 20 77 65 27 72 65 20 68 65 6c 70 69 6e 67 20 72 69 67 68 74 20 68 65 72 65 2e 20 20 57 65 20 6a 75 73 74 20 77 72 69 74 65 20 74 68 65 6d 20 69 6e 74 6f 20 74 68 65 20 69 6e 6e 65 72 0a ~ " ~ log and dictionary directly, by using our outer copy of" ~ " "variable". These" 20 20 7e 20 6c 6f 67 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 79 20 64 69 72 65 63 74 6c 79 2c 20 62 79 20 75 73 69 6e 67 20 6f 75 72 20 6f 75 74 65 72 20 63 6f 70 79 20 6f 66 20 22 76 61 72 69 61 62 6c 65 22 2e 20 54 68 65 73 65 0a ~ " ~ definitions don't have to do anything special; we point" ~ " them to the same" 20 20 7e 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 64 6f 6e 27 74 20 68 61 76 65 20 74 6f 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 73 70 65 63 69 61 6c 3b 20 77 65 20 70 6f 69 6e 74 20 74 68 65 6d 20 74 6f 20 74 68 65 20 73 61 6d 65 0a ~ " ~ addresses as the outer ones. Note though that the" ~ " actual values the" 20 20 7e 20 61 64 64 72 65 73 73 65 73 20 61 73 20 74 68 65 20 6f 75 74 65 72 20 6f 6e 65 73 2e 20 4e 6f 74 65 20 74 68 6f 75 67 68 20 74 68 61 74 20 74 68 65 20 61 63 74 75 61 6c 20 76 61 6c 75 65 73 20 74 68 65 0a ~ " ~ transformed code sees sees are the wrapped, inner ones," ~ " since we swapped" 20 20 7e 20 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 73 65 65 73 20 73 65 65 73 20 61 72 65 20 74 68 65 20 77 72 61 70 70 65 64 2c 20 69 6e 6e 65 72 20 6f 6e 65 73 2c 20 73 69 6e 63 65 20 77 65 20 73 77 61 70 70 65 64 0a ~ " ~ the values out elsewhere." 20 20 7e 20 74 68 65 20 76 61 6c 75 65 73 20 6f 75 74 20 65 6c 73 65 77 68 65 72 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ If we provided these as alternates instead, that" ~ " would work for code" 20 20 7e 20 20 20 49 66 20 77 65 20 70 72 6f 76 69 64 65 64 20 74 68 65 73 65 20 61 73 20 61 6c 74 65 72 6e 61 74 65 73 20 69 6e 73 74 65 61 64 2c 20 74 68 61 74 20 77 6f 75 6c 64 20 77 6f 72 6b 20 66 6f 72 20 63 6f 64 65 0a ~ " ~ that doesn't have a nested transform, but the inner" ~ " transforms want to be" 20 20 7e 20 74 68 61 74 20 64 6f 65 73 6e 27 74 20 68 61 76 65 20 61 20 6e 65 73 74 65 64 20 74 72 61 6e 73 66 6f 72 6d 2c 20 62 75 74 20 74 68 65 20 69 6e 6e 65 72 20 74 72 61 6e 73 66 6f 72 6d 73 20 77 61 6e 74 20 74 6f 20 62 65 0a ~ " ~ able to look them up by name." 20 20 7e 20 61 62 6c 65 20 74 6f 20 6c 6f 6f 6b 20 74 68 65 6d 20 75 70 20 62 79 20 6e 61 6d 65 2e 0a ~ " swap-transform-variables log swap-transform-variables s"" ~ " log" variable" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 6c 6f 67 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 73 22 20 6c 6f 67 22 20 76 61 72 69 61 62 6c 65 0a ~ " swap-transform-variables s0 swap-transform-variables s"" ~ " s0" variable" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 73 30 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 73 22 20 73 30 22 20 76 61 72 69 61 62 6c 65 0a ~ " swap-transform-variables r0 swap-transform-variables s"" ~ " r0" variable" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 72 30 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 73 22 20 72 30 22 20 76 61 72 69 61 62 6c 65 0a ~ " swap-transform-variables latest swap-transform-variables" ~ " s" latest" variable" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 6c 61 74 65 73 74 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 73 22 20 6c 61 74 65 73 74 22 20 76 61 72 69 61 62 6c 65 0a ~ " swap-transform-variables here swap-transform-variables s"" ~ " here" variable" 20 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 68 65 72 65 20 73 77 61 70 2d 74 72 61 6e 73 66 6f 72 6d 2d 76 61 72 69 61 62 6c 65 73 20 73 22 20 68 65 72 65 22 20 76 61 72 69 61 62 6c 65 0a ~ "" 0a ~ " ~ It's important that the stack has nothing of ours on" ~ " it that persists" 20 20 7e 20 20 20 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 61 74 20 74 68 65 20 73 74 61 63 6b 20 68 61 73 20 6e 6f 74 68 69 6e 67 20 6f 66 20 6f 75 72 73 20 6f 6e 20 69 74 20 74 68 61 74 20 70 65 72 73 69 73 74 73 0a ~ " ~ across iterations, so that client code can add and" ~ " remove stuff there as" 20 20 7e 20 61 63 72 6f 73 73 20 69 74 65 72 61 74 69 6f 6e 73 2c 20 73 6f 20 74 68 61 74 20 63 6c 69 65 6e 74 20 63 6f 64 65 20 63 61 6e 20 61 64 64 20 61 6e 64 20 72 65 6d 6f 76 65 20 73 74 75 66 66 20 74 68 65 72 65 20 61 73 0a ~ " ~ it sees fit." 20 20 7e 20 69 74 20 73 65 65 73 20 66 69 74 2e 0a ~ " { hex-transform-one" 20 20 7b 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 6f 6e 65 0a ~ " ~ (done)" 20 20 20 20 7e 20 28 64 6f 6e 65 29 0a ~ "" 0a ~ " ~ When the loop is done, get the real values of "here"" ~ " and "latest"" 20 20 20 20 7e 20 20 57 68 65 6e 20 74 68 65 20 6c 6f 6f 70 20 69 73 20 64 6f 6e 65 2c 20 67 65 74 20 74 68 65 20 72 65 61 6c 20 76 61 6c 75 65 73 20 6f 66 20 22 68 65 72 65 22 20 61 6e 64 20 22 6c 61 74 65 73 74 22 0a ~ " ~ back. The internal "here" is also the output point," ~ " and will become our" 20 20 20 20 7e 20 62 61 63 6b 2e 20 54 68 65 20 69 6e 74 65 72 6e 61 6c 20 22 68 65 72 65 22 20 69 73 20 61 6c 73 6f 20 74 68 65 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 61 6e 64 20 77 69 6c 6c 20 62 65 63 6f 6d 65 20 6f 75 72 0a ~ " ~ return value. The internal "latest" is discarded." 20 20 20 20 7e 20 72 65 74 75 72 6e 20 76 61 6c 75 65 2e 20 54 68 65 20 69 6e 74 65 72 6e 61 6c 20 22 6c 61 74 65 73 74 22 20 69 73 20 64 69 73 63 61 72 64 65 64 2e 0a ~ " { transformation-state" ~ " transformation-state-output-buffer-start @" 20 20 20 20 7b 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 40 0a ~ " here @" 20 20 20 20 20 20 68 65 72 65 20 40 0a ~ " transformation-state transformation-state-saved-here" ~ " @ here !" 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 40 20 68 65 72 65 20 21 0a ~ " transformation-state" ~ " transformation-state-saved-latest @ latest !" 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 40 20 6c 61 74 65 73 74 20 21 0a ~ " ~ (output point)" 20 20 20 20 20 20 7e 20 28 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ Though we don't actually use transformation-state" ~ " outside of this" 20 20 20 20 20 20 7e 20 20 20 54 68 6f 75 67 68 20 77 65 20 64 6f 6e 27 74 20 61 63 74 75 61 6c 6c 79 20 75 73 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 6f 75 74 73 69 64 65 20 6f 66 20 74 68 69 73 0a ~ " ~ invocation, for tidiness we zero it out." 20 20 20 20 20 20 7e 20 69 6e 76 6f 63 61 74 69 6f 6e 2c 20 66 6f 72 20 74 69 64 69 6e 65 73 73 20 77 65 20 7a 65 72 6f 20 69 74 20 6f 75 74 2e 0a ~ " 0 transformation-state" ~ " transformation-state-saved-here !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 68 65 72 65 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-saved-latest !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 73 61 76 65 64 2d 6c 61 74 65 73 74 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-output-buffer-start !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 73 74 61 72 74 20 21 0a ~ " 0 transformation-state" ~ " transformation-state-user-stack-depth !" 20 20 20 20 20 20 30 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2d 73 74 61 74 65 2d 75 73 65 72 2d 73 74 61 63 6b 2d 64 65 70 74 68 20 21 0a ~ "" 0a ~ " ~ Also put the input source back how it was." 20 20 20 20 20 20 7e 20 20 41 6c 73 6f 20 70 75 74 20 74 68 65 20 69 6e 70 75 74 20 73 6f 75 72 63 65 20 62 61 63 6b 20 68 6f 77 20 69 74 20 77 61 73 2e 0a ~ " main-input-buffer pop-input-buffer" 20 20 20 20 20 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 70 6f 70 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 0a ~ "" 0a ~ " exit } if } forever ;" 20 20 20 20 20 20 65 78 69 74 20 7d 20 69 66 20 7d 20 66 6f 72 65 76 65 72 20 3b 0a ~ "" 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ ~~ Execution model ~~" 7e 20 7e 7e 20 45 78 65 63 75 74 69 6f 6e 20 6d 6f 64 65 6c 20 7e 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ We use Forth-style dual stacks, one for values and one" ~ " for control. We" 7e 20 20 20 20 57 65 20 75 73 65 20 46 6f 72 74 68 2d 73 74 79 6c 65 20 64 75 61 6c 20 73 74 61 63 6b 73 2c 20 6f 6e 65 20 66 6f 72 20 76 61 6c 75 65 73 20 61 6e 64 20 6f 6e 65 20 66 6f 72 20 63 6f 6e 74 72 6f 6c 2e 20 57 65 0a ~ "~ use rsp for values, just like C does. We use rbp for the" ~ " control stack," 7e 20 20 75 73 65 20 72 73 70 20 66 6f 72 20 76 61 6c 75 65 73 2c 20 6a 75 73 74 20 6c 69 6b 65 20 43 20 64 6f 65 73 2e 20 57 65 20 75 73 65 20 72 62 70 20 66 6f 72 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 2c 0a ~ "~ which is a special Forth-y stack: These are pointers" ~ " into the bodies of" 7e 20 20 77 68 69 63 68 20 69 73 20 61 20 73 70 65 63 69 61 6c 20 46 6f 72 74 68 2d 79 20 73 74 61 63 6b 3a 20 54 68 65 73 65 20 61 72 65 20 70 6f 69 6e 74 65 72 73 20 69 6e 74 6f 20 74 68 65 20 62 6f 64 69 65 73 20 6f 66 0a ~ "~ Forth words, not return addresses." 7e 20 20 46 6f 72 74 68 20 77 6f 72 64 73 2c 20 6e 6f 74 20 72 65 74 75 72 6e 20 61 64 64 72 65 73 73 65 73 2e 0a ~ "~" 7e 0a ~ "~ The choice of rsp and rbp for the stack pointers" ~ " imitates Jonesforth;" 7e 20 20 20 20 54 68 65 20 63 68 6f 69 63 65 20 6f 66 20 72 73 70 20 61 6e 64 20 72 62 70 20 66 6f 72 20 74 68 65 20 73 74 61 63 6b 20 70 6f 69 6e 74 65 72 73 20 69 6d 69 74 61 74 65 73 20 4a 6f 6e 65 73 66 6f 72 74 68 3b 0a ~ "~ I'm hopeful that it gives us convenient addressing" ~ " modes, and will report" 7e 20 20 49 27 6d 20 68 6f 70 65 66 75 6c 20 74 68 61 74 20 69 74 20 67 69 76 65 73 20 75 73 20 63 6f 6e 76 65 6e 69 65 6e 74 20 61 64 64 72 65 73 73 69 6e 67 20 6d 6f 64 65 73 2c 20 61 6e 64 20 77 69 6c 6c 20 72 65 70 6f 72 74 0a ~ "~ back about that when I feel that I understand the" ~ " implications." 7e 20 20 62 61 63 6b 20 61 62 6f 75 74 20 74 68 61 74 20 77 68 65 6e 20 49 20 66 65 65 6c 20 74 68 61 74 20 49 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 69 6d 70 6c 69 63 61 74 69 6f 6e 73 2e 0a ~ "~" 7e 0a ~ "~ In Forth, everything is a "word", including mutable" ~ " variables." 7e 20 20 20 20 49 6e 20 46 6f 72 74 68 2c 20 65 76 65 72 79 74 68 69 6e 67 20 69 73 20 61 20 22 77 6f 72 64 22 2c 20 69 6e 63 6c 75 64 69 6e 67 20 6d 75 74 61 62 6c 65 20 76 61 72 69 61 62 6c 65 73 2e 0a ~ "~ Conceptually, a word is a unit of execution, which may" ~ " be implemented" 7e 20 20 43 6f 6e 63 65 70 74 75 61 6c 6c 79 2c 20 61 20 77 6f 72 64 20 69 73 20 61 20 75 6e 69 74 20 6f 66 20 65 78 65 63 75 74 69 6f 6e 2c 20 77 68 69 63 68 20 6d 61 79 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 0a ~ "~ either in machine code or as an array of pointer to" ~ " other words." 7e 20 20 65 69 74 68 65 72 20 69 6e 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 6f 72 20 61 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 70 6f 69 6e 74 65 72 20 74 6f 20 6f 74 68 65 72 20 77 6f 72 64 73 2e 0a ~ "~" 7e 0a ~ "~ This polymorphism is implemented by having each word's" ~ " contents begin" 7e 20 20 20 20 54 68 69 73 20 70 6f 6c 79 6d 6f 72 70 68 69 73 6d 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 62 79 20 68 61 76 69 6e 67 20 65 61 63 68 20 77 6f 72 64 27 73 20 63 6f 6e 74 65 6e 74 73 20 62 65 67 69 6e 0a ~ "~ with a "codeword", which is a pointer to machine code" ~ " that "interprets"" 7e 20 20 77 69 74 68 20 61 20 22 63 6f 64 65 77 6f 72 64 22 2c 20 77 68 69 63 68 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 74 68 61 74 20 22 69 6e 74 65 72 70 72 65 74 73 22 0a ~ "~ the rest of the contents. In the case of words" ~ " implemented in machine" 7e 20 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 2e 20 49 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 77 6f 72 64 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 69 6e 20 6d 61 63 68 69 6e 65 0a ~ "~ code, the codeword points directly to that code, which" ~ " is normally right" 7e 20 20 63 6f 64 65 2c 20 74 68 65 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 73 20 64 69 72 65 63 74 6c 79 20 74 6f 20 74 68 61 74 20 63 6f 64 65 2c 20 77 68 69 63 68 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 72 69 67 68 74 0a ~ "~ next to it." 7e 20 20 6e 65 78 74 20 74 6f 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ Variables, to Forth, are simply one more thing that" ~ " can be executed; the" 7e 20 20 20 20 56 61 72 69 61 62 6c 65 73 2c 20 74 6f 20 46 6f 72 74 68 2c 20 61 72 65 20 73 69 6d 70 6c 79 20 6f 6e 65 20 6d 6f 72 65 20 74 68 69 6e 67 20 74 68 61 74 20 63 61 6e 20 62 65 20 65 78 65 63 75 74 65 64 3b 20 74 68 65 0a ~ "~ effect of executing a variable is to push its address" ~ " onto the value" 7e 20 20 65 66 66 65 63 74 20 6f 66 20 65 78 65 63 75 74 69 6e 67 20 61 20 76 61 72 69 61 62 6c 65 20 69 73 20 74 6f 20 70 75 73 68 20 69 74 73 20 61 64 64 72 65 73 73 20 6f 6e 74 6f 20 74 68 65 20 76 61 6c 75 65 0a ~ "~ stack." 7e 20 20 73 74 61 63 6b 2e 0a ~ "~" 7e 0a ~ "~ We adopt this model of words, codewords, and" ~ " variables-as-words. It's" 7e 20 20 20 20 57 65 20 61 64 6f 70 74 20 74 68 69 73 20 6d 6f 64 65 6c 20 6f 66 20 77 6f 72 64 73 2c 20 63 6f 64 65 77 6f 72 64 73 2c 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73 2d 61 73 2d 77 6f 72 64 73 2e 20 49 74 27 73 0a ~ "~ really nice how it doesn't force anything else on us," ~ " not even a heap," 7e 20 20 72 65 61 6c 6c 79 20 6e 69 63 65 20 68 6f 77 20 69 74 20 64 6f 65 73 6e 27 74 20 66 6f 72 63 65 20 61 6e 79 74 68 69 6e 67 20 65 6c 73 65 20 6f 6e 20 75 73 2c 20 6e 6f 74 20 65 76 65 6e 20 61 20 68 65 61 70 2c 0a ~ "~ though we do end up using the log as a sort-of heap." 7e 20 20 74 68 6f 75 67 68 20 77 65 20 64 6f 20 65 6e 64 20 75 70 20 75 73 69 6e 67 20 74 68 65 20 6c 6f 67 20 61 73 20 61 20 73 6f 72 74 2d 6f 66 20 68 65 61 70 2e 0a ~ "~" 7e 0a ~ "~ We specifically implement a version of calling and" ~ " returning that Forth" 7e 20 20 20 20 57 65 20 73 70 65 63 69 66 69 63 61 6c 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 20 61 20 76 65 72 73 69 6f 6e 20 6f 66 20 63 61 6c 6c 69 6e 67 20 61 6e 64 20 72 65 74 75 72 6e 69 6e 67 20 74 68 61 74 20 46 6f 72 74 68 0a ~ "~ calls indirect threaded code: The control stack is a" ~ " stack of pointers" 7e 20 20 63 61 6c 6c 73 20 69 6e 64 69 72 65 63 74 20 74 68 72 65 61 64 65 64 20 63 6f 64 65 3a 20 54 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 69 73 20 61 20 73 74 61 63 6b 20 6f 66 20 70 6f 69 6e 74 65 72 73 0a ~ "~ into the middle of interpreted words. The interpreter" ~ " snippet, called" 7e 20 20 69 6e 74 6f 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 69 6e 74 65 72 70 72 65 74 65 64 20 77 6f 72 64 73 2e 20 54 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 73 6e 69 70 70 65 74 2c 20 63 61 6c 6c 65 64 0a ~ "~ docol, implements calling. Each word is responsible for" ~ " making sure" 7e 20 20 64 6f 63 6f 6c 2c 20 69 6d 70 6c 65 6d 65 6e 74 73 20 63 61 6c 6c 69 6e 67 2e 20 20 45 61 63 68 20 77 6f 72 64 20 69 73 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 6d 61 6b 69 6e 67 20 73 75 72 65 0a ~ "~ returning works properly. Interpreted words accomplish" ~ " this by ending with" 7e 20 20 72 65 74 75 72 6e 69 6e 67 20 77 6f 72 6b 73 20 70 72 6f 70 65 72 6c 79 2e 20 49 6e 74 65 72 70 72 65 74 65 64 20 77 6f 72 64 73 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 69 73 20 62 79 20 65 6e 64 69 6e 67 20 77 69 74 68 0a ~ "~ the word "exit", while machine-code words accomplish it" ~ " by ending with a" 7e 20 20 74 68 65 20 77 6f 72 64 20 22 65 78 69 74 22 2c 20 77 68 69 6c 65 20 6d 61 63 68 69 6e 65 2d 63 6f 64 65 20 77 6f 72 64 73 20 61 63 63 6f 6d 70 6c 69 73 68 20 69 74 20 62 79 20 65 6e 64 69 6e 67 20 77 69 74 68 20 61 0a ~ "~ verbatim snippet called "next"." 7e 20 20 76 65 72 62 61 74 69 6d 20 73 6e 69 70 70 65 74 20 63 61 6c 6c 65 64 20 22 6e 65 78 74 22 2e 0a ~ "~" 7e 0a ~ "~ Conceptually, "next" returns, but more specifically it" ~ " accomplishes this" 7e 20 20 20 20 43 6f 6e 63 65 70 74 75 61 6c 6c 79 2c 20 22 6e 65 78 74 22 20 72 65 74 75 72 6e 73 2c 20 62 75 74 20 6d 6f 72 65 20 73 70 65 63 69 66 69 63 61 6c 6c 79 20 69 74 20 61 63 63 6f 6d 70 6c 69 73 68 65 73 20 74 68 69 73 0a ~ "~ by doing the caller's next dispatch for it; thus control" ~ " never actually" 7e 20 20 62 79 20 64 6f 69 6e 67 20 74 68 65 20 63 61 6c 6c 65 72 27 73 20 6e 65 78 74 20 64 69 73 70 61 74 63 68 20 66 6f 72 20 69 74 3b 20 74 68 75 73 20 63 6f 6e 74 72 6f 6c 20 6e 65 76 65 72 20 61 63 74 75 61 6c 6c 79 0a ~ "~ goes back to the caller's interpreter after initial" ~ " setup. For performance" 7e 20 20 67 6f 65 73 20 62 61 63 6b 20 74 6f 20 74 68 65 20 63 61 6c 6c 65 72 27 73 20 69 6e 74 65 72 70 72 65 74 65 72 20 61 66 74 65 72 20 69 6e 69 74 69 61 6c 20 73 65 74 75 70 2e 20 46 6f 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 0a ~ "~ reasons, "next" is always inlined, so we define it as a" ~ " macro." 7e 20 20 72 65 61 73 6f 6e 73 2c 20 22 6e 65 78 74 22 20 69 73 20 61 6c 77 61 79 73 20 69 6e 6c 69 6e 65 64 2c 20 73 6f 20 77 65 20 64 65 66 69 6e 65 20 69 74 20 61 73 20 61 20 6d 61 63 72 6f 2e 0a ~ "~" 7e 0a ~ "~ The docol routine is just ordinary code, not a macro." ~ " It's defined later" 7e 20 20 20 20 54 68 65 20 64 6f 63 6f 6c 20 72 6f 75 74 69 6e 65 20 69 73 20 6a 75 73 74 20 6f 72 64 69 6e 61 72 79 20 63 6f 64 65 2c 20 6e 6f 74 20 61 20 6d 61 63 72 6f 2e 20 49 74 27 73 20 64 65 66 69 6e 65 64 20 6c 61 74 65 72 0a ~ "~ in this file, as a label." 7e 20 20 69 6e 20 74 68 69 73 20 66 69 6c 65 2c 20 61 73 20 61 20 6c 61 62 65 6c 2e 0a ~ "~" 7e 0a ~ "~ Notionally, we could consider not having a dictionary," ~ " and not giving" 7e 20 20 20 20 4e 6f 74 69 6f 6e 61 6c 6c 79 2c 20 77 65 20 63 6f 75 6c 64 20 63 6f 6e 73 69 64 65 72 20 6e 6f 74 20 68 61 76 69 6e 67 20 61 20 64 69 63 74 69 6f 6e 61 72 79 2c 20 61 6e 64 20 6e 6f 74 20 67 69 76 69 6e 67 0a ~ "~ our words names. However, it feels silly to stop when" ~ " we're so close to" 7e 20 20 6f 75 72 20 77 6f 72 64 73 20 6e 61 6d 65 73 2e 20 48 6f 77 65 76 65 72 2c 20 69 74 20 66 65 65 6c 73 20 73 69 6c 6c 79 20 74 6f 20 73 74 6f 70 20 77 68 65 6e 20 77 65 27 72 65 20 73 6f 20 63 6c 6f 73 65 20 74 6f 0a ~ "~ being a full Forth, and using names for things solves a" ~ " bootstrapping" 7e 20 20 62 65 69 6e 67 20 61 20 66 75 6c 6c 20 46 6f 72 74 68 2c 20 61 6e 64 20 75 73 69 6e 67 20 6e 61 6d 65 73 20 66 6f 72 20 74 68 69 6e 67 73 20 73 6f 6c 76 65 73 20 61 20 62 6f 6f 74 73 74 72 61 70 70 69 6e 67 0a ~ "~ problem related to log management - see the write-up of" ~ " cold-start about" 7e 20 20 70 72 6f 62 6c 65 6d 20 72 65 6c 61 74 65 64 20 74 6f 20 6c 6f 67 20 6d 61 6e 61 67 65 6d 65 6e 74 20 2d 20 73 65 65 20 74 68 65 20 77 72 69 74 65 2d 75 70 20 6f 66 20 63 6f 6c 64 2d 73 74 61 72 74 20 61 62 6f 75 74 0a ~ "~ how the log is created, below. So, we add an additional" ~ " header before the" 7e 20 20 68 6f 77 20 74 68 65 20 6c 6f 67 20 69 73 20 63 72 65 61 74 65 64 2c 20 62 65 6c 6f 77 2e 20 53 6f 2c 20 77 65 20 61 64 64 20 61 6e 20 61 64 64 69 74 69 6f 6e 61 6c 20 68 65 61 64 65 72 20 62 65 66 6f 72 65 20 74 68 65 0a ~ "~ codeword for this purpose." 7e 20 20 63 6f 64 65 77 6f 72 64 20 66 6f 72 20 74 68 69 73 20 70 75 72 70 6f 73 65 2e 0a ~ "~" 7e 0a ~ "~ The Forth dictionary is usually a linked list of every" ~ " word that has" 7e 20 20 20 20 54 68 65 20 46 6f 72 74 68 20 64 69 63 74 69 6f 6e 61 72 79 20 69 73 20 75 73 75 61 6c 6c 79 20 61 20 6c 69 6e 6b 65 64 20 6c 69 73 74 20 6f 66 20 65 76 65 72 79 20 77 6f 72 64 20 74 68 61 74 20 68 61 73 0a ~ "~ ever been defined, with the newest at the head; the" ~ " names of words are" 7e 20 20 65 76 65 72 20 62 65 65 6e 20 64 65 66 69 6e 65 64 2c 20 77 69 74 68 20 74 68 65 20 6e 65 77 65 73 74 20 61 74 20 74 68 65 20 68 65 61 64 3b 20 74 68 65 20 6e 61 6d 65 73 20 6f 66 20 77 6f 72 64 73 20 61 72 65 0a ~ "~ stored in string fields, often right next to the link" ~ " pointer. We adopt" 7e 20 20 73 74 6f 72 65 64 20 69 6e 20 73 74 72 69 6e 67 20 66 69 65 6c 64 73 2c 20 6f 66 74 65 6e 20 72 69 67 68 74 20 6e 65 78 74 20 74 6f 20 74 68 65 20 6c 69 6e 6b 20 70 6f 69 6e 74 65 72 2e 20 57 65 20 61 64 6f 70 74 0a ~ "~ this model, with the field sizes and order shown in the" ~ " quick reference" 7e 20 20 74 68 69 73 20 6d 6f 64 65 6c 2c 20 77 69 74 68 20 74 68 65 20 66 69 65 6c 64 20 73 69 7a 65 73 20 61 6e 64 20 6f 72 64 65 72 20 73 68 6f 77 6e 20 69 6e 20 74 68 65 20 71 75 69 63 6b 20 72 65 66 65 72 65 6e 63 65 0a ~ "~ below. We break with Forth tradition in one way: Rather" ~ " than having a" 7e 20 20 62 65 6c 6f 77 2e 20 57 65 20 62 72 65 61 6b 20 77 69 74 68 20 46 6f 72 74 68 20 74 72 61 64 69 74 69 6f 6e 20 69 6e 20 6f 6e 65 20 77 61 79 3a 20 52 61 74 68 65 72 20 74 68 61 6e 20 68 61 76 69 6e 67 20 61 0a ~ "~ length field, we use a null-terminated string. Thus," ~ " there's no length" 7e 20 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 2c 20 77 65 20 75 73 65 20 61 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 74 72 69 6e 67 2e 20 54 68 75 73 2c 20 74 68 65 72 65 27 73 20 6e 6f 20 6c 65 6e 67 74 68 0a ~ "~ limit on names. This necessitates breaking out the flags" ~ " (to be explained" 7e 20 20 6c 69 6d 69 74 20 6f 6e 20 6e 61 6d 65 73 2e 20 54 68 69 73 20 6e 65 63 65 73 73 69 74 61 74 65 73 20 62 72 65 61 6b 69 6e 67 20 6f 75 74 20 74 68 65 20 66 6c 61 67 73 20 28 74 6f 20 62 65 20 65 78 70 6c 61 69 6e 65 64 0a ~ "~ later) into their own byte, rather than taking bits from" ~ " the length field" 7e 20 20 6c 61 74 65 72 29 20 69 6e 74 6f 20 74 68 65 69 72 20 6f 77 6e 20 62 79 74 65 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 74 61 6b 69 6e 67 20 62 69 74 73 20 66 72 6f 6d 20 74 68 65 20 6c 65 6e 67 74 68 20 66 69 65 6c 64 0a ~ "~ for them." 7e 20 20 66 6f 72 20 74 68 65 6d 2e 0a ~ "~" 7e 0a ~ "~ There's an important performance consideration:" ~ " Executable words" 7e 20 20 20 20 54 68 65 72 65 27 73 20 61 6e 20 69 6d 70 6f 72 74 61 6e 74 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 63 6f 6e 73 69 64 65 72 61 74 69 6f 6e 3a 20 45 78 65 63 75 74 61 62 6c 65 20 77 6f 72 64 73 0a ~ "~ reference each other by pointers to their respective" ~ " codewords. However," 7e 20 20 72 65 66 65 72 65 6e 63 65 20 65 61 63 68 20 6f 74 68 65 72 20 62 79 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 69 72 20 72 65 73 70 65 63 74 69 76 65 20 63 6f 64 65 77 6f 72 64 73 2e 20 48 6f 77 65 76 65 72 2c 0a ~ "~ dictionary entries reference each other by pointers to" ~ " their respective" 7e 20 20 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 69 65 73 20 72 65 66 65 72 65 6e 63 65 20 65 61 63 68 20 6f 74 68 65 72 20 62 79 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 69 72 20 72 65 73 70 65 63 74 69 76 65 0a ~ "~ link fields. Traversing from the link field to the" ~ " codeword is easy," 7e 20 20 6c 69 6e 6b 20 66 69 65 6c 64 73 2e 20 54 72 61 76 65 72 73 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 6c 69 6e 6b 20 66 69 65 6c 64 20 74 6f 20 74 68 65 20 63 6f 64 65 77 6f 72 64 20 69 73 20 65 61 73 79 2c 0a ~ "~ though it's a non-constant-time operation: Just walk the" ~ " string. In order" 7e 20 20 74 68 6f 75 67 68 20 69 74 27 73 20 61 20 6e 6f 6e 2d 63 6f 6e 73 74 61 6e 74 2d 74 69 6d 65 20 6f 70 65 72 61 74 69 6f 6e 3a 20 4a 75 73 74 20 77 61 6c 6b 20 74 68 65 20 73 74 72 69 6e 67 2e 20 49 6e 20 6f 72 64 65 72 0a ~ "~ to make Forth words easy to "decompile", it would be" ~ " nice to also have a" 7e 20 20 74 6f 20 6d 61 6b 65 20 46 6f 72 74 68 20 77 6f 72 64 73 20 65 61 73 79 20 74 6f 20 22 64 65 63 6f 6d 70 69 6c 65 22 2c 20 69 74 20 77 6f 75 6c 64 20 62 65 20 6e 69 63 65 20 74 6f 20 61 6c 73 6f 20 68 61 76 65 20 61 0a ~ "~ way to traverse backwards. We solve this by making the" ~ " name field be" 7e 20 20 77 61 79 20 74 6f 20 74 72 61 76 65 72 73 65 20 62 61 63 6b 77 61 72 64 73 2e 20 57 65 20 73 6f 6c 76 65 20 74 68 69 73 20 62 79 20 6d 61 6b 69 6e 67 20 74 68 65 20 6e 61 6d 65 20 66 69 65 6c 64 20 62 65 0a ~ "~ null-terminated at both ends. Fun, yeah?" 7e 20 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 61 74 20 62 6f 74 68 20 65 6e 64 73 2e 20 46 75 6e 2c 20 79 65 61 68 3f 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ~ "~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ Quick Reference" 7e 20 20 20 51 75 69 63 6b 20 52 65 66 65 72 65 6e 63 65 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ~ "~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The layout of an interpreted word:" 7e 20 20 54 68 65 20 6c 61 79 6f 75 74 20 6f 66 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 64 20 77 6f 72 64 3a 0a ~ "~" 7e 0a ~ "~ (overall start)" 7e 20 20 28 6f 76 65 72 61 6c 6c 20 73 74 61 72 74 29 0a ~ "~ 0x00 - 0x07 Link (to" ~ " next-oldest word)" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 30 78 30 30 20 2d 20 30 78 30 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 69 6e 6b 20 28 74 6f 20 6e 65 78 74 2d 6f 6c 64 65 73 74 20 77 6f 72 64 29 0a ~ "~ 0x08 - 0x08 HM00000I Flags" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 30 78 30 38 20 2d 20 30 78 30 38 20 20 48 4d 30 30 30 30 30 49 20 20 20 20 20 20 20 20 20 20 20 46 6c 61 67 73 0a ~ "~ H -" ~ " hidden" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48 20 2d 20 68 69 64 64 65 6e 0a ~ "~ M -" ~ " metadata" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4d 20 2d 20 6d 65 74 61 64 61 74 61 0a ~ "~ I -" ~ " immediate" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 20 2d 20 69 6d 6d 65 64 69 61 74 65 0a ~ "~ all other" ~ " bits reserved" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 6c 20 6f 74 68 65 72 20 62 69 74 73 20 72 65 73 65 72 76 65 64 0a ~ "~ (name start)" 7e 20 20 28 6e 61 6d 65 20 73 74 61 72 74 29 0a ~ "~ 0x09 - 0x09 Null byte" ~ " (terminates name)" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 30 78 30 39 20 2d 20 30 78 30 39 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 75 6c 6c 20 62 79 74 65 20 28 74 65 72 6d 69 6e 61 74 65 73 20 6e 61 6d 65 29 0a ~ "~ 0x0a - name-end - 1 Name, as" ~ " UTF-8" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 30 78 30 61 20 2d 20 6e 61 6d 65 2d 65 6e 64 20 2d 20 31 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 61 6d 65 2c 20 61 73 20 55 54 46 2d 38 0a ~ "~ name-end - name-end Null byte" ~ " (terminates name)" 7e 20 20 20 20 20 20 20 20 20 6e 61 6d 65 2d 65 6e 64 20 2d 20 6e 61 6d 65 2d 65 6e 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 75 6c 6c 20 62 79 74 65 20 28 74 65 72 6d 69 6e 61 74 65 73 20 6e 61 6d 65 29 0a ~ "~ (padding start)" 7e 20 20 28 70 61 64 64 69 6e 67 20 73 74 61 72 74 29 0a ~ "~ name-end + 1 - codeword-start - 1 Zero-pad to" ~ " 8-byte boundary" 7e 20 20 20 20 20 6e 61 6d 65 2d 65 6e 64 20 2b 20 31 20 2d 20 63 6f 64 65 77 6f 72 64 2d 73 74 61 72 74 20 2d 20 31 20 20 20 20 20 20 20 5a 65 72 6f 2d 70 61 64 20 74 6f 20 38 2d 62 79 74 65 20 62 6f 75 6e 64 61 72 79 0a ~ "~ (it's possible this will be zero bytes long)" 7e 20 20 20 20 20 28 69 74 27 73 20 70 6f 73 73 69 62 6c 65 20 74 68 69 73 20 77 69 6c 6c 20 62 65 20 7a 65 72 6f 20 62 79 74 65 73 20 6c 6f 6e 67 29 0a ~ "~ (codeword start)" 7e 20 20 28 63 6f 64 65 77 6f 72 64 20 73 74 61 72 74 29 0a ~ "~ ... + 0x00 - ... + 0x08 Codeword (ie." ~ " address of docol)" 7e 20 20 20 20 20 20 20 2e 2e 2e 20 2b 20 30 78 30 30 20 2d 20 2e 2e 2e 20 2b 20 30 78 30 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 6f 64 65 77 6f 72 64 20 28 69 65 2e 20 61 64 64 72 65 73 73 20 6f 66 20 64 6f 63 6f 6c 29 0a ~ "~ (8-byte chunks) Addresses of" ~ " other words" 7e 20 20 20 20 20 20 20 20 20 20 20 28 38 2d 62 79 74 65 20 63 68 75 6e 6b 73 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 64 64 72 65 73 73 65 73 20 6f 66 20 6f 74 68 65 72 20 77 6f 72 64 73 0a ~ "~ - ... (end) Address of" ~ " "exit" word" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2d 20 2e 2e 2e 20 28 65 6e 64 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 64 64 72 65 73 73 20 6f 66 20 22 65 78 69 74 22 20 77 6f 72 64 0a ~ "~" 7e 0a ~ "~ The layout of a machine-code word is different only from" ~ " the codeword on:" 7e 20 20 54 68 65 20 6c 61 79 6f 75 74 20 6f 66 20 61 20 6d 61 63 68 69 6e 65 2d 63 6f 64 65 20 77 6f 72 64 20 69 73 20 64 69 66 66 65 72 65 6e 74 20 6f 6e 6c 79 20 66 72 6f 6d 20 74 68 65 20 63 6f 64 65 77 6f 72 64 20 6f 6e 3a 0a ~ "~" 7e 0a ~ "~ ... + 0x00 - ... + 0x08 Addresss of" ~ " next byte" 7e 20 20 20 20 20 20 20 2e 2e 2e 20 2b 20 30 78 30 30 20 2d 20 2e 2e 2e 20 2b 20 30 78 30 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 64 64 72 65 73 73 73 20 6f 66 20 6e 65 78 74 20 62 79 74 65 0a ~ "~ ... + 0x08 - ???? Arbitrary" ~ " machine code" 7e 20 20 20 20 20 20 20 2e 2e 2e 20 2b 20 30 78 30 38 20 2d 20 3f 3f 3f 3f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 62 69 74 72 61 72 79 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 0a ~ "~ - ... (end) Inlined" ~ " implementation of next" 7e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2d 20 2e 2e 2e 20 28 65 6e 64 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 6c 69 6e 65 64 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 6e 65 78 74 0a ~ "~" 7e 0a ~ "~ Also, words always start at 8-byte boundaries." 7e 20 20 41 6c 73 6f 2c 20 77 6f 72 64 73 20 61 6c 77 61 79 73 20 73 74 61 72 74 20 61 74 20 38 2d 62 79 74 65 20 62 6f 75 6e 64 61 72 69 65 73 2e 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~ REGISTER usage conventions:" 7e 20 20 52 45 47 49 53 54 45 52 20 75 73 61 67 65 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 3a 0a ~ "~" 7e 0a ~ "~ * rsi is the "instruction pointer" for the" ~ " "interpreter"." 7e 20 20 2a 20 72 73 69 20 69 73 20 74 68 65 20 22 69 6e 73 74 72 75 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72 22 20 66 6f 72 20 74 68 65 20 22 69 6e 74 65 72 70 72 65 74 65 72 22 2e 0a ~ "~ That is, it points to some word-pointer inside an" ~ " array of" 7e 20 20 20 20 20 20 54 68 61 74 20 69 73 2c 20 69 74 20 70 6f 69 6e 74 73 20 74 6f 20 73 6f 6d 65 20 77 6f 72 64 2d 70 6f 69 6e 74 65 72 20 69 6e 73 69 64 65 20 61 6e 20 61 72 72 61 79 20 6f 66 0a ~ "~ word-pointers inside the content of the word they're" ~ " part of. It always" 7e 20 20 20 20 77 6f 72 64 2d 70 6f 69 6e 74 65 72 73 20 69 6e 73 69 64 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 20 6f 66 20 74 68 65 20 77 6f 72 64 20 74 68 65 79 27 72 65 20 70 61 72 74 20 6f 66 2e 20 49 74 20 61 6c 77 61 79 73 0a ~ "~ points to the next word that should be executed, whose" ~ " execution hasn't" 7e 20 20 20 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 6e 65 78 74 20 77 6f 72 64 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 65 78 65 63 75 74 65 64 2c 20 77 68 6f 73 65 20 65 78 65 63 75 74 69 6f 6e 20 68 61 73 6e 27 74 0a ~ "~ begun yet." 7e 20 20 20 20 62 65 67 75 6e 20 79 65 74 2e 0a ~ "~" 7e 0a ~ "~ * rbp points to the top of the control stack" 7e 20 20 2a 20 72 62 70 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 0a ~ "~ These are former values of rsi, to eventually be" ~ " returned to, from" 7e 20 20 20 20 20 20 54 68 65 73 65 20 61 72 65 20 66 6f 72 6d 65 72 20 76 61 6c 75 65 73 20 6f 66 20 72 73 69 2c 20 74 6f 20 65 76 65 6e 74 75 61 6c 6c 79 20 62 65 20 72 65 74 75 72 6e 65 64 20 74 6f 2c 20 66 72 6f 6d 0a ~ "~ successively older callers as you look further up the" ~ " stack. The stack" 7e 20 20 20 20 73 75 63 63 65 73 73 69 76 65 6c 79 20 6f 6c 64 65 72 20 63 61 6c 6c 65 72 73 20 61 73 20 79 6f 75 20 6c 6f 6f 6b 20 66 75 72 74 68 65 72 20 75 70 20 74 68 65 20 73 74 61 63 6b 2e 20 54 68 65 20 73 74 61 63 6b 0a ~ "~ grows downwards in memory. Since values are kept" ~ " separately, the only" 7e 20 20 20 20 67 72 6f 77 73 20 64 6f 77 6e 77 61 72 64 73 20 69 6e 20 6d 65 6d 6f 72 79 2e 20 53 69 6e 63 65 20 76 61 6c 75 65 73 20 61 72 65 20 6b 65 70 74 20 73 65 70 61 72 61 74 65 6c 79 2c 20 74 68 65 20 6f 6e 6c 79 0a ~ "~ thing on the control stack is return addresses, one" ~ " per layer of call." 7e 20 20 20 20 74 68 69 6e 67 20 6f 6e 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 69 73 20 72 65 74 75 72 6e 20 61 64 64 72 65 73 73 65 73 2c 20 6f 6e 65 20 70 65 72 20 6c 61 79 65 72 20 6f 66 20 63 61 6c 6c 2e 0a ~ "~" 7e 0a ~ "~ * rsp points to the top of the value stack" 7e 20 20 2a 20 72 73 70 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 0a ~ "~ The value stack has no specific format, but it grows" ~ " downwards in" 7e 20 20 20 20 20 20 54 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 20 68 61 73 20 6e 6f 20 73 70 65 63 69 66 69 63 20 66 6f 72 6d 61 74 2c 20 62 75 74 20 69 74 20 67 72 6f 77 73 20 64 6f 77 6e 77 61 72 64 73 20 69 6e 0a ~ "~ memory. In particular there's no concept of stack" ~ " frames, because items" 7e 20 20 20 20 6d 65 6d 6f 72 79 2e 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 20 74 68 65 72 65 27 73 20 6e 6f 20 63 6f 6e 63 65 70 74 20 6f 66 20 73 74 61 63 6b 20 66 72 61 6d 65 73 2c 20 62 65 63 61 75 73 65 20 69 74 65 6d 73 0a ~ "~ on the stack don't belong to any particular word; the" ~ " value stack in" 7e 20 20 20 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 64 6f 6e 27 74 20 62 65 6c 6f 6e 67 20 74 6f 20 61 6e 79 20 70 61 72 74 69 63 75 6c 61 72 20 77 6f 72 64 3b 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 20 69 6e 0a ~ "~ Forth is in part a mechanism for passing values" ~ " between words." 7e 20 20 20 20 46 6f 72 74 68 20 69 73 20 69 6e 20 70 61 72 74 20 61 20 6d 65 63 68 61 6e 69 73 6d 20 66 6f 72 20 70 61 73 73 69 6e 67 20 76 61 6c 75 65 73 20 62 65 74 77 65 65 6e 20 77 6f 72 64 73 2e 0a ~ "~" 7e 0a ~ "~ Additionally, immediately after beginning execution of a" ~ " word:" 7e 20 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 62 65 67 69 6e 6e 69 6e 67 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 20 77 6f 72 64 3a 0a ~ "~" 7e 0a ~ "~ * rax points to the address of the codeword being" ~ " executed" 7e 20 20 2a 20 72 61 78 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 63 6f 64 65 77 6f 72 64 20 62 65 69 6e 67 20 65 78 65 63 75 74 65 64 0a ~ "~ The value of rax is purely for the callee's benefit," ~ " and does not need" 7e 20 20 20 20 20 20 54 68 65 20 76 61 6c 75 65 20 6f 66 20 72 61 78 20 69 73 20 70 75 72 65 6c 79 20 66 6f 72 20 74 68 65 20 63 61 6c 6c 65 65 27 73 20 62 65 6e 65 66 69 74 2c 20 61 6e 64 20 64 6f 65 73 20 6e 6f 74 20 6e 65 65 64 0a ~ "~ to be preserved." 7e 20 20 20 20 74 6f 20 62 65 20 70 72 65 73 65 72 76 65 64 2e 0a ~ "~" 7e 0a ~ "~ Other registers are purely discretionary, and are not" ~ " preserved across" 7e 20 20 20 20 4f 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 61 72 65 20 70 75 72 65 6c 79 20 64 69 73 63 72 65 74 69 6f 6e 61 72 79 2c 20 61 6e 64 20 61 72 65 20 6e 6f 74 20 70 72 65 73 65 72 76 65 64 20 61 63 72 6f 73 73 0a ~ "~ calls." 7e 20 20 63 61 6c 6c 73 2e 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~ FLAG usage:" 7e 20 20 46 4c 41 47 20 75 73 61 67 65 3a 0a ~ "~" 7e 0a ~ "~ * DF should be 0" 7e 20 20 2a 20 44 46 20 73 68 6f 75 6c 64 20 62 65 20 30 0a ~ "~ We use lodsq extensively and that makes it increment" ~ " rsi after using it." 7e 20 20 20 20 57 65 20 75 73 65 20 6c 6f 64 73 71 20 65 78 74 65 6e 73 69 76 65 6c 79 20 61 6e 64 20 74 68 61 74 20 6d 61 6b 65 73 20 69 74 20 69 6e 63 72 65 6d 65 6e 74 20 72 73 69 20 61 66 74 65 72 20 75 73 69 6e 67 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ~ "~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "" 0a ~ "~ The macros next, beforenext, pushcontrol, and" ~ " popcontrol are implemented" 7e 20 20 20 54 68 65 20 6d 61 63 72 6f 73 20 6e 65 78 74 2c 20 62 65 66 6f 72 65 6e 65 78 74 2c 20 70 75 73 68 63 6f 6e 74 72 6f 6c 2c 20 61 6e 64 20 70 6f 70 63 6f 6e 74 72 6f 6c 20 61 72 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 0a ~ "~ in language/static/execution-support.e. It's a good idea" ~ " to go read about" 7e 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 65 78 65 63 75 74 69 6f 6e 2d 73 75 70 70 6f 72 74 2e 65 2e 20 49 74 27 73 20 61 20 67 6f 6f 64 20 69 64 65 61 20 74 6f 20 67 6f 20 72 65 61 64 20 61 62 6f 75 74 0a ~ "~ them now." 7e 20 74 68 65 6d 20 6e 6f 77 2e 0a ~ "~" 7e 0a ~ "~ TODO the following high-level summary should go..." ~ " somewhere?" 7e 20 54 4f 44 4f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 68 69 67 68 2d 6c 65 76 65 6c 20 73 75 6d 6d 61 72 79 20 73 68 6f 75 6c 64 20 67 6f 2e 2e 2e 20 73 6f 6d 65 77 68 65 72 65 3f 0a ~ "~ When a docol word is invoked, it immediately does" ~ " pushcontrol (see" 7e 20 20 20 57 68 65 6e 20 61 20 64 6f 63 6f 6c 20 77 6f 72 64 20 69 73 20 69 6e 76 6f 6b 65 64 2c 20 69 74 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 64 6f 65 73 20 70 75 73 68 63 6f 6e 74 72 6f 6c 20 28 73 65 65 0a ~ "~ execution-support.e) to push rsi onto the control stack," ~ " whose top is" 7e 20 65 78 65 63 75 74 69 6f 6e 2d 73 75 70 70 6f 72 74 2e 65 29 20 74 6f 20 70 75 73 68 20 72 73 69 20 6f 6e 74 6f 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 2c 20 77 68 6f 73 65 20 74 6f 70 20 69 73 0a ~ "~ indicated by rbp. When an assembly word is invoked, it" ~ " leaves rsi and rbp" 7e 20 69 6e 64 69 63 61 74 65 64 20 62 79 20 72 62 70 2e 20 57 68 65 6e 20 61 6e 20 61 73 73 65 6d 62 6c 79 20 77 6f 72 64 20 69 73 20 69 6e 76 6f 6b 65 64 2c 20 69 74 20 6c 65 61 76 65 73 20 72 73 69 20 61 6e 64 20 72 62 70 0a ~ "~ alone; assembly words don't normally call other words, so" ~ " there's no need" 7e 20 61 6c 6f 6e 65 3b 20 61 73 73 65 6d 62 6c 79 20 77 6f 72 64 73 20 64 6f 6e 27 74 20 6e 6f 72 6d 61 6c 6c 79 20 63 61 6c 6c 20 6f 74 68 65 72 20 77 6f 72 64 73 2c 20 73 6f 20 74 68 65 72 65 27 73 20 6e 6f 20 6e 65 65 64 0a ~ "~ for them to appear on the control stack at all." 7e 20 66 6f 72 20 74 68 65 6d 20 74 6f 20 61 70 70 65 61 72 20 6f 6e 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 61 74 20 61 6c 6c 2e 0a ~ "~" 7e 0a ~ "~ When an assembly word returns, it looks for an" ~ " execution token pointed" 7e 20 20 20 57 68 65 6e 20 61 6e 20 61 73 73 65 6d 62 6c 79 20 77 6f 72 64 20 72 65 74 75 72 6e 73 2c 20 69 74 20 6c 6f 6f 6b 73 20 66 6f 72 20 61 6e 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 70 6f 69 6e 74 65 64 0a ~ "~ to by rsi, increments rsi, and invokes that word as if" ~ " calling it. This" 7e 20 74 6f 20 62 79 20 72 73 69 2c 20 69 6e 63 72 65 6d 65 6e 74 73 20 72 73 69 2c 20 61 6e 64 20 69 6e 76 6f 6b 65 73 20 74 68 61 74 20 77 6f 72 64 20 61 73 20 69 66 20 63 61 6c 6c 69 6e 67 20 69 74 2e 20 54 68 69 73 0a ~ "~ is the threaded calling approach to Forth execution. When" ~ " a docol word" 7e 20 69 73 20 74 68 65 20 74 68 72 65 61 64 65 64 20 63 61 6c 6c 69 6e 67 20 61 70 70 72 6f 61 63 68 20 74 6f 20 46 6f 72 74 68 20 65 78 65 63 75 74 69 6f 6e 2e 20 57 68 65 6e 20 61 20 64 6f 63 6f 6c 20 77 6f 72 64 0a ~ "~ returns, it calls exit, which needs to remove itself from" ~ " the control" 7e 20 72 65 74 75 72 6e 73 2c 20 69 74 20 63 61 6c 6c 73 20 65 78 69 74 2c 20 77 68 69 63 68 20 6e 65 65 64 73 20 74 6f 20 72 65 6d 6f 76 65 20 69 74 73 65 6c 66 20 66 72 6f 6d 20 74 68 65 20 63 6f 6e 74 72 6f 6c 0a ~ "~ stack, so exit pops the top of the control stack into rsi" ~ " to get back into" 7e 20 73 74 61 63 6b 2c 20 73 6f 20 65 78 69 74 20 70 6f 70 73 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 69 6e 74 6f 20 72 73 69 20 74 6f 20 67 65 74 20 62 61 63 6b 20 69 6e 74 6f 0a ~ "~ its caller's context, then does the same steps an" ~ " assembly word would do." 7e 20 69 74 73 20 63 61 6c 6c 65 72 27 73 20 63 6f 6e 74 65 78 74 2c 20 74 68 65 6e 20 64 6f 65 73 20 74 68 65 20 73 61 6d 65 20 73 74 65 70 73 20 61 6e 20 61 73 73 65 6d 62 6c 79 20 77 6f 72 64 20 77 6f 75 6c 64 20 64 6f 2e 0a ~ "" 0a ~ "" 0a ~ "~ Constants" 7e 20 43 6f 6e 73 74 61 6e 74 73 0a ~ "~ ~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ These are used in cold-start, just below." 7e 20 54 68 65 73 65 20 61 72 65 20 75 73 65 64 20 69 6e 20 63 6f 6c 64 2d 73 74 61 72 74 2c 20 6a 75 73 74 20 62 65 6c 6f 77 2e 0a ~ "" 0a ~ ": log-requested-address 0x0000001000000000 ; ~ (very" ~ " arbitrary)" 3a 20 6c 6f 67 2d 72 65 71 75 65 73 74 65 64 2d 61 64 64 72 65 73 73 20 30 78 30 30 30 30 30 30 31 30 30 30 30 30 30 30 30 30 20 20 3b 20 7e 20 28 76 65 72 79 20 61 72 62 69 74 72 61 72 79 29 0a ~ ": log-size 0x0000000001000000 ; ~ 16 MiB" 3a 20 6c 6f 67 2d 73 69 7a 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 30 78 30 30 30 30 30 30 30 30 30 31 30 30 30 30 30 30 20 20 3b 20 7e 20 31 36 20 4d 69 42 0a ~ ": control-stack-size 0x10000 ; ~ 64 KiB" 3a 20 63 6f 6e 74 72 6f 6c 2d 73 74 61 63 6b 2d 73 69 7a 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 30 78 31 30 30 30 30 20 3b 20 7e 20 36 34 20 4b 69 42 0a ~ "" 0a ~ "" 0a ~ "~ Routine cold-start" 7e 20 52 6f 75 74 69 6e 65 20 63 6f 6c 64 2d 73 74 61 72 74 0a ~ "~ ~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ This is the entry point of the whole program, the very" ~ " first code we" 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 65 6e 74 72 79 20 70 6f 69 6e 74 20 6f 66 20 74 68 65 20 77 68 6f 6c 65 20 70 72 6f 67 72 61 6d 2c 20 74 68 65 20 76 65 72 79 20 66 69 72 73 74 20 63 6f 64 65 20 77 65 0a ~ "~ actually execute. Linkers traditionally call this _start," ~ " but let's live a" 7e 20 61 63 74 75 61 6c 6c 79 20 65 78 65 63 75 74 65 2e 20 4c 69 6e 6b 65 72 73 20 74 72 61 64 69 74 69 6f 6e 61 6c 6c 79 20 63 61 6c 6c 20 74 68 69 73 20 5f 73 74 61 72 74 2c 20 62 75 74 20 6c 65 74 27 73 20 6c 69 76 65 20 61 0a ~ "~ little. Anyway, the ELF header points to it and exec()" ~ " jumps to it; from the" 7e 20 6c 69 74 74 6c 65 2e 20 41 6e 79 77 61 79 2c 20 74 68 65 20 45 4c 46 20 68 65 61 64 65 72 20 70 6f 69 6e 74 73 20 74 6f 20 69 74 20 61 6e 64 20 65 78 65 63 28 29 20 6a 75 6d 70 73 20 74 6f 20 69 74 3b 20 66 72 6f 6d 20 74 68 65 0a ~ "~ kernel's perspective, there's no such thing as names." ~ " Also, though this code" 7e 20 6b 65 72 6e 65 6c 27 73 20 70 65 72 73 70 65 63 74 69 76 65 2c 20 74 68 65 72 65 27 73 20 6e 6f 20 73 75 63 68 20 74 68 69 6e 67 20 61 73 20 6e 61 6d 65 73 2e 20 41 6c 73 6f 2c 20 74 68 6f 75 67 68 20 74 68 69 73 20 63 6f 64 65 0a ~ "~ could be anywhere in the code part of the output, in" ~ " order to make the" 7e 20 63 6f 75 6c 64 20 62 65 20 61 6e 79 77 68 65 72 65 20 69 6e 20 74 68 65 20 63 6f 64 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 2c 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 6b 65 20 74 68 65 0a ~ "~ hexdump pretty we put it at the start." 7e 20 68 65 78 64 75 6d 70 20 70 72 65 74 74 79 20 77 65 20 70 75 74 20 69 74 20 61 74 20 74 68 65 20 73 74 61 72 74 2e 0a ~ "~" 7e 0a ~ "~ The kernel gives us most registers zeroed, and rsp" ~ " pointing to the" 7e 20 20 20 54 68 65 20 6b 65 72 6e 65 6c 20 67 69 76 65 73 20 75 73 20 6d 6f 73 74 20 72 65 67 69 73 74 65 72 73 20 7a 65 72 6f 65 64 2c 20 61 6e 64 20 72 73 70 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 74 68 65 0a ~ "~ command-line stuff (argc, argv, envp), which is at an" ~ " ASLR'd address with" 7e 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 73 74 75 66 66 20 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 2c 20 77 68 69 63 68 20 69 73 20 61 74 20 61 6e 20 41 53 4c 52 27 64 20 61 64 64 72 65 73 73 20 77 69 74 68 0a ~ "~ some stack space allocated for us, despite the fact we" ~ " didn't request any." 7e 20 73 6f 6d 65 20 73 74 61 63 6b 20 73 70 61 63 65 20 61 6c 6c 6f 63 61 74 65 64 20 66 6f 72 20 75 73 2c 20 64 65 73 70 69 74 65 20 74 68 65 20 66 61 63 74 20 77 65 20 64 69 64 6e 27 74 20 72 65 71 75 65 73 74 20 61 6e 79 2e 0a ~ "~ It also gives us all the flags clear except IF, but we" ~ " don't rely on that." 7e 20 49 74 20 61 6c 73 6f 20 67 69 76 65 73 20 75 73 20 61 6c 6c 20 74 68 65 20 66 6c 61 67 73 20 63 6c 65 61 72 20 65 78 63 65 70 74 20 49 46 2c 20 62 75 74 20 77 65 20 64 6f 6e 27 74 20 72 65 6c 79 20 6f 6e 20 74 68 61 74 2e 0a ~ "~ Lastly, of course, it loads our code segment and sets the" ~ " instruction" 7e 20 4c 61 73 74 6c 79 2c 20 6f 66 20 63 6f 75 72 73 65 2c 20 69 74 20 6c 6f 61 64 73 20 6f 75 72 20 63 6f 64 65 20 73 65 67 6d 65 6e 74 20 61 6e 64 20 73 65 74 73 20 74 68 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a ~ "~ pointer where we asked; we don't need to check what those" ~ " addresses are," 7e 20 70 6f 69 6e 74 65 72 20 77 68 65 72 65 20 77 65 20 61 73 6b 65 64 3b 20 77 65 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 63 68 65 63 6b 20 77 68 61 74 20 74 68 6f 73 65 20 61 64 64 72 65 73 73 65 73 20 61 72 65 2c 0a ~ "~ because they're not randomized." 7e 20 62 65 63 61 75 73 65 20 74 68 65 79 27 72 65 20 6e 6f 74 20 72 61 6e 64 6f 6d 69 7a 65 64 2e 0a ~ "~" 7e 0a ~ "~ Notably, though cold-start points rbp to the control" ~ " stack, it leaves" 7e 20 20 20 4e 6f 74 61 62 6c 79 2c 20 74 68 6f 75 67 68 20 63 6f 6c 64 2d 73 74 61 72 74 20 70 6f 69 6e 74 73 20 72 62 70 20 74 6f 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 2c 20 69 74 20 6c 65 61 76 65 73 0a ~ "~ the control stack empty, so trying to return will pop a" ~ " value that doesn't" 7e 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 65 6d 70 74 79 2c 20 73 6f 20 74 72 79 69 6e 67 20 74 6f 20 72 65 74 75 72 6e 20 77 69 6c 6c 20 70 6f 70 20 61 20 76 61 6c 75 65 20 74 68 61 74 20 64 6f 65 73 6e 27 74 0a ~ "~ exist, and crash. Eventually, the bottom value on the" ~ " control stack will" 7e 20 65 78 69 73 74 2c 20 61 6e 64 20 63 72 61 73 68 2e 20 45 76 65 6e 74 75 61 6c 6c 79 2c 20 74 68 65 20 62 6f 74 74 6f 6d 20 76 61 6c 75 65 20 6f 6e 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 77 69 6c 6c 0a ~ "~ be the word "quit", which loops forever and is the" ~ " closest thing Forth has" 7e 20 62 65 20 74 68 65 20 77 6f 72 64 20 22 71 75 69 74 22 2c 20 77 68 69 63 68 20 6c 6f 6f 70 73 20 66 6f 72 65 76 65 72 20 61 6e 64 20 69 73 20 74 68 65 20 63 6c 6f 73 65 73 74 20 74 68 69 6e 67 20 46 6f 72 74 68 20 68 61 73 0a ~ "~ to a "main" word, but it's up to warm-start to make that" ~ " happen." 7e 20 74 6f 20 61 20 22 6d 61 69 6e 22 20 77 6f 72 64 2c 20 62 75 74 20 69 74 27 73 20 75 70 20 74 6f 20 77 61 72 6d 2d 73 74 61 72 74 20 74 6f 20 6d 61 6b 65 20 74 68 61 74 20 68 61 70 70 65 6e 2e 0a ~ "~" 7e 0a ~ "~ Cold-start is really only responsible for one-time" ~ " initialization." 7e 20 20 20 43 6f 6c 64 2d 73 74 61 72 74 20 69 73 20 72 65 61 6c 6c 79 20 6f 6e 6c 79 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 6f 6e 65 2d 74 69 6d 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 2e 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~" 7e 0a ~ "~ Registers in:" 7e 20 52 65 67 69 73 74 65 72 73 20 69 6e 3a 0a ~ "~" 7e 0a ~ "~ * rsp points to the logical top of the value stack" 7e 20 2a 20 72 73 70 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 6c 6f 67 69 63 61 6c 20 74 6f 70 20 20 6f 66 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 0a ~ "~ The kernel sets this up for us, and we need to save" ~ " it somewhere so" 7e 20 20 20 20 20 54 68 65 20 6b 65 72 6e 65 6c 20 73 65 74 73 20 74 68 69 73 20 75 70 20 66 6f 72 20 75 73 2c 20 61 6e 64 20 77 65 20 6e 65 65 64 20 74 6f 20 73 61 76 65 20 69 74 20 73 6f 6d 65 77 68 65 72 65 20 73 6f 0a ~ "~ Forth can use it." 7e 20 20 20 46 6f 72 74 68 20 63 61 6e 20 75 73 65 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ Registers out:" 7e 20 52 65 67 69 73 74 65 72 73 20 6f 75 74 3a 0a ~ "~" 7e 0a ~ "~ * rsi points within "warm-start"" 7e 20 2a 20 72 73 69 20 70 6f 69 6e 74 73 20 77 69 74 68 69 6e 20 22 77 61 72 6d 2d 73 74 61 72 74 22 0a ~ "~ * rsp points to the top of the value stack" 7e 20 2a 20 72 73 70 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 0a ~ "~ * rbp points to the top of the control stack" 7e 20 2a 20 72 62 70 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 0a ~ "~" 7e 0a ~ "~ Stack in:" 7e 20 53 74 61 63 6b 20 69 6e 3a 0a ~ "~" 7e 0a ~ "~ * argc, argv, envp in the usual Unix way" 7e 20 2a 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 69 6e 20 74 68 65 20 75 73 75 61 6c 20 55 6e 69 78 20 77 61 79 0a ~ "~ We ignore them, though." 7e 20 20 20 20 20 57 65 20 69 67 6e 6f 72 65 20 74 68 65 6d 2c 20 74 68 6f 75 67 68 2e 0a ~ "~" 7e 0a ~ "~ Stack out:" 7e 20 53 74 61 63 6b 20 6f 75 74 3a 0a ~ "~" 7e 0a ~ "~ * The value of "log", as a pointer" 7e 20 2a 20 54 68 65 20 76 61 6c 75 65 20 6f 66 20 22 6c 6f 67 22 2c 20 61 73 20 61 20 70 6f 69 6e 74 65 72 0a ~ "~ The meaning of this will be explained below." 7e 20 20 20 20 20 54 68 65 20 6d 65 61 6e 69 6e 67 20 6f 66 20 74 68 69 73 20 77 69 6c 6c 20 62 65 20 65 78 70 6c 61 69 6e 65 64 20 62 65 6c 6f 77 2e 0a ~ "~" 7e 0a ~ "~ Registers within:" 7e 20 52 65 67 69 73 74 65 72 73 20 77 69 74 68 69 6e 3a 0a ~ "~" 7e 0a ~ "~ * rdi points to the base the log was allocated at, once" ~ " it exists" 7e 20 2a 20 72 64 69 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 62 61 73 65 20 74 68 65 20 6c 6f 67 20 77 61 73 20 61 6c 6c 6f 63 61 74 65 64 20 61 74 2c 20 6f 6e 63 65 20 69 74 20 65 78 69 73 74 73 0a ~ "~ This is the same value that "log" will hold, once we" ~ " reach a point" 7e 20 20 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 76 61 6c 75 65 20 74 68 61 74 20 22 6c 6f 67 22 20 77 69 6c 6c 20 68 6f 6c 64 2c 20 6f 6e 63 65 20 77 65 20 72 65 61 63 68 20 61 20 70 6f 69 6e 74 0a ~ "~ where we have variables. Of course, variables are" ~ " stored on the log," 7e 20 20 20 77 68 65 72 65 20 77 65 20 68 61 76 65 20 76 61 72 69 61 62 6c 65 73 2e 20 4f 66 20 63 6f 75 72 73 65 2c 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 73 74 6f 72 65 64 20 6f 6e 20 74 68 65 20 6c 6f 67 2c 0a ~ "~ hence this temporary measure." 7e 20 20 20 68 65 6e 63 65 20 74 68 69 73 20 74 65 6d 70 6f 72 61 72 79 20 6d 65 61 73 75 72 65 2e 0a ~ "~" 7e 0a ~ "~ We also take this opportunity to define soeme memory" ~ " layout parameters" 7e 20 20 20 57 65 20 61 6c 73 6f 20 74 61 6b 65 20 74 68 69 73 20 6f 70 70 6f 72 74 75 6e 69 74 79 20 74 6f 20 64 65 66 69 6e 65 20 73 6f 65 6d 65 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 70 61 72 61 6d 65 74 65 72 73 0a ~ "~ that this routine will be responsible for doing something" ~ " with:" 7e 20 74 68 61 74 20 74 68 69 73 20 72 6f 75 74 69 6e 65 20 77 69 6c 6c 20 62 65 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 64 6f 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 77 69 74 68 3a 0a ~ "~" 7e 0a ~ "~ (output memory start, current output point" 7e 20 28 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 0a ~ "~ -- output memory start, current output point)" 7e 20 20 2d 2d 20 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": output-cold-start" 3a 20 6f 75 74 70 75 74 2d 63 6f 6c 64 2d 73 74 61 72 74 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ :" ~ " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ~ "~~~~~~~~~~~~~" 20 20 7e 20 3a 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : This is the start of the cold-start routine, which" ~ " is the first code" 20 20 7e 20 3a 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 63 6f 6c 64 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 20 66 69 72 73 74 20 63 6f 64 65 0a ~ " ~ : of any kind the executable runs. It has the" ~ " responsibility of creating" 20 20 7e 20 3a 20 6f 66 20 61 6e 79 20 6b 69 6e 64 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 72 75 6e 73 2e 20 49 74 20 68 61 73 20 74 68 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 6f 66 20 63 72 65 61 74 69 6e 67 0a ~ " ~ : the Forth execution environment, then invoking the" ~ " warm-start routine," 20 20 7e 20 3a 20 74 68 65 20 46 6f 72 74 68 20 65 78 65 63 75 74 69 6f 6e 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 74 68 65 6e 20 69 6e 76 6f 6b 69 6e 67 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2c 0a ~ " ~ : which is defined below." 20 20 7e 20 3a 20 77 68 69 63 68 20 69 73 20 64 65 66 69 6e 65 64 20 62 65 6c 6f 77 2e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ "" 0a ~ " current-offset L' cold-start set-label" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 4c 27 20 63 6f 6c 64 2d 73 74 61 72 74 20 73 65 74 2d 6c 61 62 65 6c 0a ~ " cld ~ clear the DF" ~ " flag" 20 20 63 6c 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 63 6c 65 61 72 20 74 68 65 20 44 46 20 66 6c 61 67 0a ~ "" 0a ~ " ~ Prepare the log." 20 20 7e 20 20 20 50 72 65 70 61 72 65 20 74 68 65 20 6c 6f 67 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We could ask for a data segment in the program" ~ " header, but where's the" 20 20 7e 20 20 20 57 65 20 63 6f 75 6c 64 20 61 73 6b 20 66 6f 72 20 61 20 64 61 74 61 20 73 65 67 6d 65 6e 74 20 69 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 20 68 65 61 64 65 72 2c 20 62 75 74 20 77 68 65 72 65 27 73 20 74 68 65 0a ~ " ~ fun in that? Instead, we call mmap()." 20 20 7e 20 66 75 6e 20 69 6e 20 74 68 61 74 3f 20 49 6e 73 74 65 61 64 2c 20 77 65 20 63 61 6c 6c 20 6d 6d 61 70 28 29 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ If we wanted the kernel to do ASLR for us, passing" ~ " address zero would" 20 20 7e 20 20 20 49 66 20 77 65 20 77 61 6e 74 65 64 20 74 68 65 20 6b 65 72 6e 65 6c 20 74 6f 20 64 6f 20 41 53 4c 52 20 66 6f 72 20 75 73 2c 20 70 61 73 73 69 6e 67 20 61 64 64 72 65 73 73 20 7a 65 72 6f 20 77 6f 75 6c 64 0a ~ " ~ cause it to pick somewhere at random, but instead we" ~ " choose our own" 20 20 7e 20 63 61 75 73 65 20 69 74 20 74 6f 20 70 69 63 6b 20 73 6f 6d 65 77 68 65 72 65 20 61 74 20 72 61 6e 64 6f 6d 2c 20 62 75 74 20 69 6e 73 74 65 61 64 20 77 65 20 63 68 6f 6f 73 65 20 6f 75 72 20 6f 77 6e 0a ~ " ~ location. It's still not guaranteed to be where we ask" ~ " for, so we still" 20 20 7e 20 6c 6f 63 61 74 69 6f 6e 2e 20 49 74 27 73 20 73 74 69 6c 6c 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 77 68 65 72 65 20 77 65 20 61 73 6b 20 66 6f 72 2c 20 73 6f 20 77 65 20 73 74 69 6c 6c 0a ~ " ~ do the work to record where it wound up. We could pass" ~ " the "fixed" flag" 20 20 7e 20 64 6f 20 74 68 65 20 77 6f 72 6b 20 74 6f 20 72 65 63 6f 72 64 20 77 68 65 72 65 20 69 74 20 77 6f 75 6e 64 20 75 70 2e 20 57 65 20 63 6f 75 6c 64 20 70 61 73 73 20 74 68 65 20 22 66 69 78 65 64 22 20 66 6c 61 67 0a ~ " ~ and the kernel would trust us, but this gives us more" ~ " options for" 20 20 7e 20 61 6e 64 20 74 68 65 20 6b 65 72 6e 65 6c 20 77 6f 75 6c 64 20 74 72 75 73 74 20 75 73 2c 20 62 75 74 20 74 68 69 73 20 67 69 76 65 73 20 75 73 20 6d 6f 72 65 20 6f 70 74 69 6f 6e 73 20 66 6f 72 0a ~ " ~ interoperating with other runtimes." 20 20 7e 20 69 6e 74 65 72 6f 70 65 72 61 74 69 6e 67 20 77 69 74 68 20 6f 74 68 65 72 20 72 75 6e 74 69 6d 65 73 2e 0a ~ " ~" 20 20 7e 0a ~ " 9 :rax mov-reg64-imm64 ~ : mmap()" 20 20 39 20 3a 72 61 78 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 20 20 6d 6d 61 70 28 29 0a ~ " log-requested-address :rdi mov-reg64-imm64" 20 20 6c 6f 67 2d 72 65 71 75 65 73 74 65 64 2d 61 64 64 72 65 73 73 20 3a 72 64 69 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 0a ~ " ~ : 0 address" ~ " (very arbitrary)" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 30 20 20 20 61 64 64 72 65 73 73 20 28 76 65 72 79 20 61 72 62 69 74 72 61 72 79 29 0a ~ " log-size :rsi mov-reg64-imm64 ~ : size (one" ~ " meg)" 20 20 6c 6f 67 2d 73 69 7a 65 20 3a 72 73 69 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 20 20 73 69 7a 65 20 28 6f 6e 65 20 6d 65 67 29 0a ~ " 0x07 :rdx mov-reg64-imm64" 20 20 30 78 30 37 20 3a 72 64 78 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 0a ~ " ~ : 0 " ~ " protection (read+write+exec)" 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 30 20 20 20 70 72 6f 74 65 63 74 69 6f 6e 20 28 72 65 61 64 2b 77 72 69 74 65 2b 65 78 65 63 29 0a ~ " 0x22 :r10 mov-extrareg64-imm64 ~ : flags" ~ " (private+anonymous)" 20 20 30 78 32 32 20 3a 72 31 30 20 6d 6f 76 2d 65 78 74 72 61 72 65 67 36 34 2d 69 6d 6d 36 34 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 20 20 66 6c 61 67 73 20 28 70 72 69 76 61 74 65 2b 61 6e 6f 6e 79 6d 6f 75 73 29 0a ~ " 0 :r8 mov-extrareg64-imm64 ~ : file" ~ " descriptor (ignored)" 20 20 30 20 3a 72 38 20 6d 6f 76 2d 65 78 74 72 61 72 65 67 36 34 2d 69 6d 6d 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 20 20 66 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 20 28 69 67 6e 6f 72 65 64 29 0a ~ " 0 :r9 mov-extrareg64-imm64 ~ : offset" ~ " (ignored)" 20 20 30 20 3a 72 39 20 6d 6f 76 2d 65 78 74 72 61 72 65 67 36 34 2d 69 6d 6d 36 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7e 20 3a 20 20 20 6f 66 66 73 65 74 20 28 69 67 6e 6f 72 65 64 29 0a ~ " syscall" 20 20 73 79 73 63 61 6c 6c 0a ~ "" 0a ~ " ~ The return value of the system call is in rax, we'll" ~ " use it in a sec." 20 20 7e 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 73 79 73 74 65 6d 20 63 61 6c 6c 20 69 73 20 69 6e 20 72 61 78 2c 20 77 65 27 6c 6c 20 75 73 65 20 69 74 20 69 6e 20 61 20 73 65 63 2e 0a ~ " ~ We need to save this somewhere in case we ever want to" ~ " munmap() it;" 20 20 7e 20 57 65 20 6e 65 65 64 20 74 6f 20 73 61 76 65 20 74 68 69 73 20 73 6f 6d 65 77 68 65 72 65 20 69 6e 20 63 61 73 65 20 77 65 20 65 76 65 72 20 77 61 6e 74 20 74 6f 20 6d 75 6e 6d 61 70 28 29 20 69 74 3b 0a ~ " ~ there's no widely-used name for it so we have to make" ~ " one up. S0 and r0" 20 20 7e 20 74 68 65 72 65 27 73 20 6e 6f 20 77 69 64 65 6c 79 2d 75 73 65 64 20 6e 61 6d 65 20 66 6f 72 20 69 74 20 73 6f 20 77 65 20 68 61 76 65 20 74 6f 20 6d 61 6b 65 20 6f 6e 65 20 75 70 2e 20 53 30 20 61 6e 64 20 72 30 0a ~ " ~ are widely-used names for the physical tops (logical" ~ " bottoms) of the" 20 20 7e 20 61 72 65 20 77 69 64 65 6c 79 2d 75 73 65 64 20 6e 61 6d 65 73 20 66 6f 72 20 74 68 65 20 70 68 79 73 69 63 61 6c 20 74 6f 70 73 20 28 6c 6f 67 69 63 61 6c 20 62 6f 74 74 6f 6d 73 29 20 6f 66 20 74 68 65 0a ~ " ~ value and control stacks, respectively, and we will" ~ " eventually set those" 20 20 7e 20 76 61 6c 75 65 20 61 6e 64 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 73 2c 20 72 65 73 70 65 63 74 69 76 65 6c 79 2c 20 61 6e 64 20 77 65 20 77 69 6c 6c 20 65 76 65 6e 74 75 61 6c 6c 79 20 73 65 74 20 74 68 6f 73 65 0a ~ " ~ up as well, so we should keep those names in mind. The" ~ " control stack" 20 20 7e 20 75 70 20 61 73 20 77 65 6c 6c 2c 20 73 6f 20 77 65 20 73 68 6f 75 6c 64 20 6b 65 65 70 20 74 68 6f 73 65 20 6e 61 6d 65 73 20 69 6e 20 6d 69 6e 64 2e 20 54 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 0a ~ " ~ lives within the log, while the value stack is its own" ~ " segment. This" 20 20 7e 20 6c 69 76 65 73 20 77 69 74 68 69 6e 20 74 68 65 20 6c 6f 67 2c 20 77 68 69 6c 65 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 20 69 73 20 69 74 73 20 6f 77 6e 20 73 65 67 6d 65 6e 74 2e 20 54 68 69 73 0a ~ " ~ value, though, is the physical bottom of the segment," ~ " meaning that it" 20 20 7e 20 76 61 6c 75 65 2c 20 74 68 6f 75 67 68 2c 20 69 73 20 74 68 65 20 70 68 79 73 69 63 61 6c 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 73 65 67 6d 65 6e 74 2c 20 6d 65 61 6e 69 6e 67 20 74 68 61 74 20 69 74 0a ~ " ~ stays the same even as we allocate and deallocate" ~ " things within it. This" 20 20 7e 20 73 74 61 79 73 20 74 68 65 20 73 61 6d 65 20 65 76 65 6e 20 61 73 20 77 65 20 61 6c 6c 6f 63 61 74 65 20 61 6e 64 20 64 65 61 6c 6c 6f 63 61 74 65 20 74 68 69 6e 67 73 20 77 69 74 68 69 6e 20 69 74 2e 20 54 68 69 73 0a ~ " ~ is unlike the two stack pointers, so we give it a name" ~ " that doesn't" 20 20 7e 20 69 73 20 75 6e 6c 69 6b 65 20 74 68 65 20 74 77 6f 20 73 74 61 63 6b 20 70 6f 69 6e 74 65 72 73 2c 20 73 6f 20 77 65 20 67 69 76 65 20 69 74 20 61 20 6e 61 6d 65 20 74 68 61 74 20 64 6f 65 73 6e 27 74 0a ~ " ~ suggest similarity: "log"." 20 20 7e 20 73 75 67 67 65 73 74 20 73 69 6d 69 6c 61 72 69 74 79 3a 20 22 6c 6f 67 22 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Once Forth is fully set up, its internal variables" ~ " will be accessed" 20 20 7e 20 20 20 4f 6e 63 65 20 46 6f 72 74 68 20 69 73 20 66 75 6c 6c 79 20 73 65 74 20 75 70 2c 20 69 74 73 20 69 6e 74 65 72 6e 61 6c 20 76 61 72 69 61 62 6c 65 73 20 77 69 6c 6c 20 62 65 20 61 63 63 65 73 73 65 64 0a ~ " ~ through variable-words like any other Forth data," ~ " including "log". To" 20 20 7e 20 74 68 72 6f 75 67 68 20 76 61 72 69 61 62 6c 65 2d 77 6f 72 64 73 20 6c 69 6b 65 20 61 6e 79 20 6f 74 68 65 72 20 46 6f 72 74 68 20 64 61 74 61 2c 20 69 6e 63 6c 75 64 69 6e 67 20 22 6c 6f 67 22 2e 20 54 6f 0a ~ " ~ get to that point, though, we need to be able to hold" ~ " onto variable data" 20 20 7e 20 67 65 74 20 74 6f 20 74 68 61 74 20 70 6f 69 6e 74 2c 20 74 68 6f 75 67 68 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 62 65 20 61 62 6c 65 20 74 6f 20 68 6f 6c 64 20 6f 6e 74 6f 20 76 61 72 69 61 62 6c 65 20 64 61 74 61 0a ~ " ~ between now and then. In fact, if we don't have at" ~ " least one of "log"" 20 20 7e 20 62 65 74 77 65 65 6e 20 6e 6f 77 20 61 6e 64 20 74 68 65 6e 2e 20 49 6e 20 66 61 63 74 2c 20 69 66 20 77 65 20 64 6f 6e 27 74 20 68 61 76 65 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 20 6f 66 20 22 6c 6f 67 22 0a ~ " ~ and "here" (its counterpart which points to the logical" ~ " top end), all" 20 20 7e 20 61 6e 64 20 22 68 65 72 65 22 20 28 69 74 73 20 63 6f 75 6e 74 65 72 70 61 72 74 20 77 68 69 63 68 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 6c 6f 67 69 63 61 6c 20 74 6f 70 20 65 6e 64 29 2c 20 61 6c 6c 0a ~ " ~ our efforts to hold onto anything seem a bit doomed." 20 20 7e 20 6f 75 72 20 65 66 66 6f 72 74 73 20 74 6f 20 68 6f 6c 64 20 6f 6e 74 6f 20 61 6e 79 74 68 69 6e 67 20 73 65 65 6d 20 61 20 62 69 74 20 64 6f 6f 6d 65 64 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ So, we temporarily dedicate rdi to "log" - only" ~ " within this routine -" 20 20 7e 20 20 20 53 6f 2c 20 77 65 20 74 65 6d 70 6f 72 61 72 69 6c 79 20 64 65 64 69 63 61 74 65 20 72 64 69 20 74 6f 20 22 6c 6f 67 22 20 2d 20 6f 6e 6c 79 20 77 69 74 68 69 6e 20 74 68 69 73 20 72 6f 75 74 69 6e 65 20 2d 0a ~ " ~ and store everything else in ways that let us find" ~ " things by reference" 20 20 7e 20 61 6e 64 20 73 74 6f 72 65 20 65 76 65 72 79 74 68 69 6e 67 20 65 6c 73 65 20 69 6e 20 77 61 79 73 20 74 68 61 74 20 6c 65 74 20 75 73 20 66 69 6e 64 20 74 68 69 6e 67 73 20 62 79 20 72 65 66 65 72 65 6e 63 65 0a ~ " ~ to it. We choose rdi because it works with the indexing" ~ " modes we care" 20 20 7e 20 74 6f 20 69 74 2e 20 57 65 20 63 68 6f 6f 73 65 20 72 64 69 20 62 65 63 61 75 73 65 20 69 74 20 77 6f 72 6b 73 20 77 69 74 68 20 74 68 65 20 69 6e 64 65 78 69 6e 67 20 6d 6f 64 65 73 20 77 65 20 63 61 72 65 0a ~ " ~ about, and its name suggests its function." 20 20 7e 20 61 62 6f 75 74 2c 20 61 6e 64 20 69 74 73 20 6e 61 6d 65 20 73 75 67 67 65 73 74 73 20 69 74 73 20 66 75 6e 63 74 69 6f 6e 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ The strategy Jonesforth uses is not applicable to us;" ~ " Jonesforth" 20 20 7e 20 20 20 54 68 65 20 73 74 72 61 74 65 67 79 20 4a 6f 6e 65 73 66 6f 72 74 68 20 75 73 65 73 20 69 73 20 6e 6f 74 20 61 70 70 6c 69 63 61 62 6c 65 20 74 6f 20 75 73 3b 20 4a 6f 6e 65 73 66 6f 72 74 68 0a ~ " ~ takes advantage of the linker to let its code segment" ~ " refer to specific," 20 20 7e 20 74 61 6b 65 73 20 61 64 76 61 6e 74 61 67 65 20 6f 66 20 74 68 65 20 6c 69 6e 6b 65 72 20 74 6f 20 6c 65 74 20 69 74 73 20 63 6f 64 65 20 73 65 67 6d 65 6e 74 20 72 65 66 65 72 20 74 6f 20 73 70 65 63 69 66 69 63 2c 0a ~ " ~ pre-allocated objects in the data segment. We are our" ~ " own linker, and we" 20 20 7e 20 70 72 65 2d 61 6c 6c 6f 63 61 74 65 64 20 6f 62 6a 65 63 74 73 20 69 6e 20 74 68 65 20 64 61 74 61 20 73 65 67 6d 65 6e 74 2e 20 57 65 20 61 72 65 20 6f 75 72 20 6f 77 6e 20 6c 69 6e 6b 65 72 2c 20 61 6e 64 20 77 65 0a ~ " ~ don't care to have a data segment. Hence, this" ~ " approach." 20 20 7e 20 64 6f 6e 27 74 20 63 61 72 65 20 74 6f 20 68 61 76 65 20 61 20 64 61 74 61 20 73 65 67 6d 65 6e 74 2e 20 48 65 6e 63 65 2c 20 74 68 69 73 20 61 70 70 72 6f 61 63 68 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Keying things off "log" is the fundamental decision," ~ " but to make sure" 20 20 7e 20 20 20 4b 65 79 69 6e 67 20 74 68 69 6e 67 73 20 6f 66 66 20 22 6c 6f 67 22 20 69 73 20 74 68 65 20 66 75 6e 64 61 6d 65 6e 74 61 6c 20 64 65 63 69 73 69 6f 6e 2c 20 62 75 74 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 0a ~ " ~ our variables are accessible both during early" ~ " bootstrapping, and later," 20 20 7e 20 6f 75 72 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 61 63 63 65 73 73 69 62 6c 65 20 62 6f 74 68 20 64 75 72 69 6e 67 20 65 61 72 6c 79 20 62 6f 6f 74 73 74 72 61 70 70 69 6e 67 2c 20 61 6e 64 20 6c 61 74 65 72 2c 0a ~ " ~ we also have to be thoughtful about data structures." ~ " More on that in a" 20 20 7e 20 77 65 20 61 6c 73 6f 20 68 61 76 65 20 74 6f 20 62 65 20 74 68 6f 75 67 68 74 66 75 6c 20 61 62 6f 75 74 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 2e 20 4d 6f 72 65 20 6f 6e 20 74 68 61 74 20 69 6e 20 61 0a ~ " ~ moment." 20 20 7e 20 6d 6f 6d 65 6e 74 2e 0a ~ " ~" 20 20 7e 0a ~ " :rax :rdi mov-reg64-reg64" 20 20 3a 72 61 78 20 3a 72 64 69 20 6d 6f 76 2d 72 65 67 36 34 2d 72 65 67 36 34 0a ~ "" 0a ~ " ~ We also initialize rbp. We could hold off and let" ~ " "quit" do this, but" 20 20 7e 20 20 20 57 65 20 61 6c 73 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 72 62 70 2e 20 57 65 20 63 6f 75 6c 64 20 68 6f 6c 64 20 6f 66 66 20 61 6e 64 20 6c 65 74 20 22 71 75 69 74 22 20 64 6f 20 74 68 69 73 2c 20 62 75 74 0a ~ " ~ doing it now is the easiest way to initialize the r0" ~ " variable, since" 20 20 7e 20 64 6f 69 6e 67 20 69 74 20 6e 6f 77 20 69 73 20 74 68 65 20 65 61 73 69 65 73 74 20 77 61 79 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 74 68 65 20 72 30 20 76 61 72 69 61 62 6c 65 2c 20 73 69 6e 63 65 0a ~ " ~ there's no instruction that moves a 64-bit immediate to" ~ " memory." 20 20 7e 20 74 68 65 72 65 27 73 20 6e 6f 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 74 68 61 74 20 6d 6f 76 65 73 20 61 20 36 34 2d 62 69 74 20 69 6d 6d 65 64 69 61 74 65 20 74 6f 20 6d 65 6d 6f 72 79 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ This is the moment at which we decide where the" ~ " control stack starts!" 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 6d 6f 6d 65 6e 74 20 61 74 20 77 68 69 63 68 20 77 65 20 64 65 63 69 64 65 20 77 68 65 72 65 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 73 74 61 72 74 73 21 0a ~ " ~ Fun, right? "Allocation" is just a fancy word for" ~ " picking where we want" 20 20 7e 20 46 75 6e 2c 20 72 69 67 68 74 3f 20 22 41 6c 6c 6f 63 61 74 69 6f 6e 22 20 69 73 20 6a 75 73 74 20 61 20 66 61 6e 63 79 20 77 6f 72 64 20 66 6f 72 20 70 69 63 6b 69 6e 67 20 77 68 65 72 65 20 77 65 20 77 61 6e 74 0a ~ " ~ something, then being consistent about it - like" ~ " placing furniture in" 20 20 7e 20 73 6f 6d 65 74 68 69 6e 67 2c 20 74 68 65 6e 20 62 65 69 6e 67 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 62 6f 75 74 20 69 74 20 2d 20 6c 69 6b 65 20 70 6c 61 63 69 6e 67 20 66 75 72 6e 69 74 75 72 65 20 69 6e 0a ~ " ~ your home. See below for a little more thought about" ~ " why here in" 20 20 7e 20 79 6f 75 72 20 68 6f 6d 65 2e 20 53 65 65 20 62 65 6c 6f 77 20 66 6f 72 20 61 20 6c 69 74 74 6c 65 20 6d 6f 72 65 20 74 68 6f 75 67 68 74 20 61 62 6f 75 74 20 77 68 79 20 68 65 72 65 20 69 6e 0a ~ " ~ particular." 20 20 7e 20 70 61 72 74 69 63 75 6c 61 72 2e 0a ~ " ~" 20 20 7e 0a ~ " :rdi control-stack-size :rbp lea-reg64-disp32-reg64" 20 20 3a 72 64 69 20 63 6f 6e 74 72 6f 6c 2d 73 74 61 63 6b 2d 73 69 7a 65 20 3a 72 62 70 20 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 0a ~ "" 0a ~ " ~ Now we save some stuff onto the log. These are the" ~ " locations that" 20 20 7e 20 20 20 4e 6f 77 20 77 65 20 73 61 76 65 20 73 6f 6d 65 20 73 74 75 66 66 20 6f 6e 74 6f 20 74 68 65 20 6c 6f 67 2e 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20 6c 6f 63 61 74 69 6f 6e 73 20 74 68 61 74 0a ~ " ~ will eventually be the backing stores of the Forth" ~ " variables, but we" 20 20 7e 20 77 69 6c 6c 20 65 76 65 6e 74 75 61 6c 6c 79 20 62 65 20 74 68 65 20 62 61 63 6b 69 6e 67 20 73 74 6f 72 65 73 20 6f 66 20 74 68 65 20 46 6f 72 74 68 20 76 61 72 69 61 62 6c 65 73 2c 20 62 75 74 20 77 65 0a ~ " ~ don't create the word headers yet, since there's no" ~ " requirement that" 20 20 7e 20 64 6f 6e 27 74 20 63 72 65 61 74 65 20 74 68 65 20 77 6f 72 64 20 68 65 61 64 65 72 73 20 79 65 74 2c 20 73 69 6e 63 65 20 74 68 65 72 65 27 73 20 6e 6f 20 72 65 71 75 69 72 65 6d 65 6e 74 20 74 68 61 74 0a ~ " ~ they be next to the backing stores. We'll do that" ~ " later, once we have" 20 20 7e 20 74 68 65 79 20 62 65 20 6e 65 78 74 20 74 6f 20 74 68 65 20 62 61 63 6b 69 6e 67 20 73 74 6f 72 65 73 2e 20 57 65 27 6c 6c 20 64 6f 20 74 68 61 74 20 6c 61 74 65 72 2c 20 6f 6e 63 65 20 77 65 20 68 61 76 65 0a ~ " ~ word-writing infrastructure in place. For now, we just" ~ " use their offsets" 20 20 7e 20 77 6f 72 64 2d 77 72 69 74 69 6e 67 20 69 6e 66 72 61 73 74 72 75 63 74 75 72 65 20 69 6e 20 70 6c 61 63 65 2e 20 46 6f 72 20 6e 6f 77 2c 20 77 65 20 6a 75 73 74 20 75 73 65 20 74 68 65 69 72 20 6f 66 66 73 65 74 73 0a ~ " ~ relative to the physical bottom of the log, which are" ~ " fixed." 20 20 7e 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 70 68 79 73 69 63 61 6c 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 6c 6f 67 2c 20 77 68 69 63 68 20 61 72 65 20 66 69 78 65 64 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ These will be the permanent homes of these values," ~ " though we have" 20 20 7e 20 20 20 54 68 65 73 65 20 77 69 6c 6c 20 62 65 20 74 68 65 20 70 65 72 6d 61 6e 65 6e 74 20 68 6f 6d 65 73 20 6f 66 20 74 68 65 73 65 20 76 61 6c 75 65 73 2c 20 74 68 6f 75 67 68 20 77 65 20 68 61 76 65 0a ~ " ~ copies of them elsewhere while we're still in this" ~ " routine." 20 20 7e 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 6d 20 65 6c 73 65 77 68 65 72 65 20 77 68 69 6c 65 20 77 65 27 72 65 20 73 74 69 6c 6c 20 69 6e 20 74 68 69 73 20 72 6f 75 74 69 6e 65 2e 0a ~ " ~" 20 20 7e 0a ~ " :rdi control-stack-size 0x00 + :rdi" ~ " mov-reg64-disp32-reg64 ~ log" 20 20 3a 72 64 69 20 63 6f 6e 74 72 6f 6c 2d 73 74 61 63 6b 2d 73 69 7a 65 20 30 78 30 30 20 2b 20 3a 72 64 69 20 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 20 20 7e 20 6c 6f 67 0a ~ " :rsp control-stack-size 0x08 + :rdi" ~ " mov-reg64-disp32-reg64 ~ s0" 20 20 3a 72 73 70 20 63 6f 6e 74 72 6f 6c 2d 73 74 61 63 6b 2d 73 69 7a 65 20 30 78 30 38 20 2b 20 3a 72 64 69 20 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 20 20 7e 20 73 30 0a ~ " :rbp control-stack-size 0x10 + :rdi" ~ " mov-reg64-disp32-reg64 ~ r0" 20 20 3a 72 62 70 20 63 6f 6e 74 72 6f 6c 2d 73 74 61 63 6b 2d 73 69 7a 65 20 30 78 31 30 20 2b 20 3a 72 64 69 20 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 20 20 7e 20 72 30 0a ~ " L@' final-word-name :rax mov-reg64-imm64" 20 20 4c 40 27 20 66 69 6e 61 6c 2d 77 6f 72 64 2d 6e 61 6d 65 20 3a 72 61 78 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 0a ~ " :rax control-stack-size 0x18 + :rdi" ~ " mov-reg64-disp32-reg64 ~ latest" 20 20 3a 72 61 78 20 63 6f 6e 74 72 6f 6c 2d 73 74 61 63 6b 2d 73 69 7a 65 20 30 78 31 38 20 2b 20 3a 72 64 69 20 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 20 20 7e 20 6c 61 74 65 73 74 0a ~ " :rdi control-stack-size 0x28 + :rax" ~ " lea-reg64-disp32-reg64" 20 20 3a 72 64 69 20 63 6f 6e 74 72 6f 6c 2d 73 74 61 63 6b 2d 73 69 7a 65 20 30 78 32 38 20 2b 20 3a 72 61 78 20 6c 65 61 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 0a ~ " :rax control-stack-size 0x20 + :rdi" ~ " mov-reg64-disp32-reg64 ~ here" 20 20 3a 72 61 78 20 63 6f 6e 74 72 6f 6c 2d 73 74 61 63 6b 2d 73 69 7a 65 20 30 78 32 30 20 2b 20 3a 72 64 69 20 6d 6f 76 2d 72 65 67 36 34 2d 64 69 73 70 33 32 2d 72 65 67 36 34 20 20 7e 20 68 65 72 65 0a ~ " ~" 20 20 7e 0a ~ " ~ * "log" is the physical bottom of the log" 20 20 7e 20 2a 20 22 6c 6f 67 22 20 69 73 20 74 68 65 20 70 68 79 73 69 63 61 6c 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 6c 6f 67 0a ~ " ~ The log grows upwards in memory, so this is also" ~ " the logical" 20 20 7e 20 20 20 20 20 54 68 65 20 6c 6f 67 20 67 72 6f 77 73 20 75 70 77 61 72 64 73 20 69 6e 20 6d 65 6d 6f 72 79 2c 20 73 6f 20 74 68 69 73 20 69 73 20 61 6c 73 6f 20 74 68 65 20 6c 6f 67 69 63 61 6c 0a ~ " ~ bottom. This comes from the address mmap() just" ~ " returned to us." 20 20 7e 20 20 20 62 6f 74 74 6f 6d 2e 20 54 68 69 73 20 63 6f 6d 65 73 20 66 72 6f 6d 20 74 68 65 20 61 64 64 72 65 73 73 20 6d 6d 61 70 28 29 20 6a 75 73 74 20 72 65 74 75 72 6e 65 64 20 74 6f 20 75 73 2e 0a ~ " ~ * "s0" is the logical bottom of the value stack" 20 20 7e 20 2a 20 22 73 30 22 20 69 73 20 74 68 65 20 6c 6f 67 69 63 61 6c 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 0a ~ " ~ The value stack grows downwards in memory, so this" ~ " is the physical" 20 20 7e 20 20 20 20 20 54 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 20 67 72 6f 77 73 20 64 6f 77 6e 77 61 72 64 73 20 69 6e 20 6d 65 6d 6f 72 79 2c 20 73 6f 20 74 68 69 73 20 69 73 20 74 68 65 20 70 68 79 73 69 63 61 6c 0a ~ " ~ top of it. This comes from the stack pointer the" ~ " kernel initialized us" 20 20 7e 20 20 20 74 6f 70 20 6f 66 20 69 74 2e 20 54 68 69 73 20 63 6f 6d 65 73 20 66 72 6f 6d 20 74 68 65 20 73 74 61 63 6b 20 70 6f 69 6e 74 65 72 20 74 68 65 20 6b 65 72 6e 65 6c 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 75 73 0a ~ " ~ with." 20 20 7e 20 20 20 77 69 74 68 2e 0a ~ " ~ * "r0" is the logical bottom of the control stack" 20 20 7e 20 2a 20 22 72 30 22 20 69 73 20 74 68 65 20 6c 6f 67 69 63 61 6c 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 0a ~ " ~ The control stack also grows downwards, so this is" ~ " its pysical top" 20 20 7e 20 20 20 20 20 54 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 61 6c 73 6f 20 67 72 6f 77 73 20 64 6f 77 6e 77 61 72 64 73 2c 20 73 6f 20 74 68 69 73 20 69 73 20 69 74 73 20 70 79 73 69 63 61 6c 20 74 6f 70 0a ~ " ~ as well. We allocate this dedicated space within the" ~ " log right here," 20 20 7e 20 20 20 61 73 20 77 65 6c 6c 2e 20 57 65 20 61 6c 6c 6f 63 61 74 65 20 74 68 69 73 20 64 65 64 69 63 61 74 65 64 20 73 70 61 63 65 20 77 69 74 68 69 6e 20 74 68 65 20 6c 6f 67 20 72 69 67 68 74 20 68 65 72 65 2c 0a ~ " ~ in this routine, through our choice of where to put" ~ " things." 20 20 7e 20 20 20 69 6e 20 74 68 69 73 20 72 6f 75 74 69 6e 65 2c 20 74 68 72 6f 75 67 68 20 6f 75 72 20 63 68 6f 69 63 65 20 6f 66 20 77 68 65 72 65 20 74 6f 20 70 75 74 20 74 68 69 6e 67 73 2e 0a ~ " ~ * "here" is the physical start of the unallocated space" ~ " in the log" 20 20 7e 20 2a 20 22 68 65 72 65 22 20 69 73 20 74 68 65 20 70 68 79 73 69 63 61 6c 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 75 6e 61 6c 6c 6f 63 61 74 65 64 20 73 70 61 63 65 20 69 6e 20 74 68 65 20 6c 6f 67 0a ~ " ~ We allocate log space from bottom to top, by" ~ " incrementing this" 20 20 7e 20 20 20 20 20 57 65 20 61 6c 6c 6f 63 61 74 65 20 6c 6f 67 20 73 70 61 63 65 20 66 72 6f 6d 20 62 6f 74 74 6f 6d 20 74 6f 20 74 6f 70 2c 20 62 79 20 69 6e 63 72 65 6d 65 6e 74 69 6e 67 20 74 68 69 73 0a ~ " ~ value. So, it would also be accurate to say that it" ~ " points immediately" 20 20 7e 20 20 20 76 61 6c 75 65 2e 20 53 6f 2c 20 69 74 20 77 6f 75 6c 64 20 61 6c 73 6f 20 62 65 20 61 63 63 75 72 61 74 65 20 74 6f 20 73 61 79 20 74 68 61 74 20 69 74 20 70 6f 69 6e 74 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 0a ~ " ~ after the physical top of the allocated space. At any" ~ " rate, the" 20 20 7e 20 20 20 61 66 74 65 72 20 74 68 65 20 70 68 79 73 69 63 61 6c 20 74 6f 70 20 6f 66 20 74 68 65 20 61 6c 6c 6f 63 61 74 65 64 20 73 70 61 63 65 2e 20 41 74 20 61 6e 79 20 72 61 74 65 2c 20 74 68 65 0a ~ " ~ address it points to is the first one that hasn't" ~ " been used yet." 20 20 7e 20 20 20 61 64 64 72 65 73 73 20 69 74 20 70 6f 69 6e 74 73 20 74 6f 20 69 73 20 74 68 65 20 66 69 72 73 74 20 6f 6e 65 20 74 68 61 74 20 68 61 73 6e 27 74 20 62 65 65 6e 20 75 73 65 64 20 79 65 74 2e 0a ~ " ~ * "latest" is the address of the most-recently-defined" ~ " word's header" 20 20 7e 20 2a 20 22 6c 61 74 65 73 74 22 20 69 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 6d 6f 73 74 2d 72 65 63 65 6e 74 6c 79 2d 64 65 66 69 6e 65 64 20 77 6f 72 64 27 73 20 68 65 61 64 65 72 0a ~ " ~ Defining new words changes this value." 20 20 7e 20 20 20 20 20 44 65 66 69 6e 69 6e 67 20 6e 65 77 20 77 6f 72 64 73 20 63 68 61 6e 67 65 73 20 74 68 69 73 20 76 61 6c 75 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ s0 and r0 are mostly used when we want to initialize" ~ " or reinitialize" 20 20 7e 20 20 20 73 30 20 61 6e 64 20 72 30 20 61 72 65 20 6d 6f 73 74 6c 79 20 75 73 65 64 20 77 68 65 6e 20 77 65 20 77 61 6e 74 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 6f 72 20 72 65 69 6e 69 74 69 61 6c 69 7a 65 0a ~ " ~ their respective stacks - that is, discard all their" ~ " contents at once." 20 20 7e 20 74 68 65 69 72 20 72 65 73 70 65 63 74 69 76 65 20 73 74 61 63 6b 73 20 2d 20 74 68 61 74 20 69 73 2c 20 64 69 73 63 61 72 64 20 61 6c 6c 20 74 68 65 69 72 20 63 6f 6e 74 65 6e 74 73 20 61 74 20 6f 6e 63 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ The value of r0 is the same address these variables" ~ " start at, so" 20 20 7e 20 20 20 54 68 65 20 76 61 6c 75 65 20 6f 66 20 72 30 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 64 64 72 65 73 73 20 74 68 65 73 65 20 76 61 72 69 61 62 6c 65 73 20 73 74 61 72 74 20 61 74 2c 20 73 6f 0a ~ " ~ you'll want to do a close read of the implementation of" ~ " pushcontrol" 20 20 7e 20 79 6f 75 27 6c 6c 20 77 61 6e 74 20 74 6f 20 64 6f 20 61 20 63 6c 6f 73 65 20 72 65 61 64 20 6f 66 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 70 75 73 68 63 6f 6e 74 72 6f 6c 0a ~ " ~ and convince yourself that it only ever writes things" ~ " just below the rbp" 20 20 7e 20 61 6e 64 20 63 6f 6e 76 69 6e 63 65 20 79 6f 75 72 73 65 6c 66 20 74 68 61 74 20 69 74 20 6f 6e 6c 79 20 65 76 65 72 20 77 72 69 74 65 73 20 74 68 69 6e 67 73 20 6a 75 73 74 20 62 65 6c 6f 77 20 74 68 65 20 72 62 70 0a ~ " ~ address it receives, never right on top of it." 20 20 7e 20 61 64 64 72 65 73 73 20 69 74 20 72 65 63 65 69 76 65 73 2c 20 6e 65 76 65 72 20 72 69 67 68 74 20 6f 6e 20 74 6f 70 20 6f 66 20 69 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ As an aside, by the way, please notice that strictly" ~ " speaking, r0" 20 20 7e 20 20 20 41 73 20 61 6e 20 61 73 69 64 65 2c 20 62 79 20 74 68 65 20 77 61 79 2c 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 61 74 20 73 74 72 69 63 74 6c 79 20 73 70 65 61 6b 69 6e 67 2c 20 72 30 0a ~ " ~ could be a constant... but it isn't known until" ~ " runtime, so we might as" 20 20 7e 20 63 6f 75 6c 64 20 62 65 20 61 20 63 6f 6e 73 74 61 6e 74 2e 2e 2e 20 62 75 74 20 69 74 20 69 73 6e 27 74 20 6b 6e 6f 77 6e 20 75 6e 74 69 6c 20 72 75 6e 74 69 6d 65 2c 20 73 6f 20 77 65 20 6d 69 67 68 74 20 61 73 0a ~ " ~ well make it a variable. That will play nicely with any" ~ " astonishing" 20 20 7e 20 77 65 6c 6c 20 6d 61 6b 65 20 69 74 20 61 20 76 61 72 69 61 62 6c 65 2e 20 54 68 61 74 20 77 69 6c 6c 20 70 6c 61 79 20 6e 69 63 65 6c 79 20 77 69 74 68 20 61 6e 79 20 61 73 74 6f 6e 69 73 68 69 6e 67 0a ~ " ~ memory shenanigans someone might wish to do in the" ~ " future." 20 20 7e 20 6d 65 6d 6f 72 79 20 73 68 65 6e 61 6e 69 67 61 6e 73 20 73 6f 6d 65 6f 6e 65 20 6d 69 67 68 74 20 77 69 73 68 20 74 6f 20 64 6f 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Notice also that "here" points immediately after" ~ " itself. This is just" 20 20 7e 20 20 20 4e 6f 74 69 63 65 20 61 6c 73 6f 20 74 68 61 74 20 22 68 65 72 65 22 20 70 6f 69 6e 74 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 69 74 73 65 6c 66 2e 20 54 68 69 73 20 69 73 20 6a 75 73 74 0a ~ " ~ a convenience, making it the last one like that so that" ~ " the concern is" 20 20 7e 20 61 20 63 6f 6e 76 65 6e 69 65 6e 63 65 2c 20 6d 61 6b 69 6e 67 20 69 74 20 74 68 65 20 6c 61 73 74 20 6f 6e 65 20 6c 69 6b 65 20 74 68 61 74 20 73 6f 20 74 68 61 74 20 74 68 65 20 63 6f 6e 63 65 72 6e 20 69 73 0a ~ " ~ dealt with in a single place and is easy to keep" ~ " up-to-date with code" 20 20 7e 20 64 65 61 6c 74 20 77 69 74 68 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 70 6c 61 63 65 20 61 6e 64 20 69 73 20 65 61 73 79 20 74 6f 20 6b 65 65 70 20 75 70 2d 74 6f 2d 64 61 74 65 20 77 69 74 68 20 63 6f 64 65 0a ~ " ~ changes." 20 20 7e 20 63 68 61 6e 67 65 73 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ A little more detail about why we offset everything" ~ " by" 20 20 7e 20 20 20 41 20 6c 69 74 74 6c 65 20 6d 6f 72 65 20 64 65 74 61 69 6c 20 61 62 6f 75 74 20 77 68 79 20 77 65 20 6f 66 66 73 65 74 20 65 76 65 72 79 74 68 69 6e 67 20 62 79 0a ~ " ~ control_stack_size: We're carving out some space at the" ~ " bottom of the" 20 20 7e 20 63 6f 6e 74 72 6f 6c 5f 73 74 61 63 6b 5f 73 69 7a 65 3a 20 57 65 27 72 65 20 63 61 72 76 69 6e 67 20 6f 75 74 20 73 6f 6d 65 20 73 70 61 63 65 20 61 74 20 74 68 65 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 0a ~ " ~ log - which grows low-to-high - to be the control stack" ~ " - which grows" 20 20 7e 20 6c 6f 67 20 2d 20 77 68 69 63 68 20 67 72 6f 77 73 20 6c 6f 77 2d 74 6f 2d 68 69 67 68 20 2d 20 74 6f 20 62 65 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 2d 20 77 68 69 63 68 20 67 72 6f 77 73 0a ~ " ~ high-to-low. So the control stack is allocated out of" ~ " the log as a" 20 20 7e 20 68 69 67 68 2d 74 6f 2d 6c 6f 77 2e 20 53 6f 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 74 61 63 6b 20 69 73 20 61 6c 6c 6f 63 61 74 65 64 20 6f 75 74 20 6f 66 20 74 68 65 20 6c 6f 67 20 61 73 20 61 0a ~ " ~ fixed-size, one-time thing, and then the variables come" ~ " immediately" 20 20 7e 20 66 69 78 65 64 2d 73 69 7a 65 2c 20 6f 6e 65 2d 74 69 6d 65 20 74 68 69 6e 67 2c 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 76 61 72 69 61 62 6c 65 73 20 63 6f 6d 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 0a ~ " ~ after that. We do need to use 32-bit displacement" ~ " indexing to access" 20 20 7e 20 61 66 74 65 72 20 74 68 61 74 2e 20 57 65 20 64 6f 20 6e 65 65 64 20 74 6f 20 75 73 65 20 33 32 2d 62 69 74 20 64 69 73 70 6c 61 63 65 6d 65 6e 74 20 69 6e 64 65 78 69 6e 67 20 74 6f 20 61 63 63 65 73 73 0a ~ " ~ them this way, but that's no big deal." 20 20 7e 20 74 68 65 6d 20 74 68 69 73 20 77 61 79 2c 20 62 75 74 20 74 68 61 74 27 73 20 6e 6f 20 62 69 67 20 64 65 61 6c 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ This is perhaps questionable, they should maybe be" ~ " separate segments" 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 70 65 72 68 61 70 73 20 71 75 65 73 74 69 6f 6e 61 62 6c 65 2c 20 74 68 65 79 20 73 68 6f 75 6c 64 20 6d 61 79 62 65 20 62 65 20 73 65 70 61 72 61 74 65 20 73 65 67 6d 65 6e 74 73 0a ~ " ~ created with separate calls to mmap(), but for now" ~ " we're not worried" 20 20 7e 20 63 72 65 61 74 65 64 20 77 69 74 68 20 73 65 70 61 72 61 74 65 20 63 61 6c 6c 73 20 74 6f 20 6d 6d 61 70 28 29 2c 20 62 75 74 20 66 6f 72 20 6e 6f 77 20 77 65 27 72 65 20 6e 6f 74 20 77 6f 72 72 69 65 64 0a ~ " ~ about overflow so we use the same allocation for both." 20 20 7e 20 61 62 6f 75 74 20 6f 76 65 72 66 6c 6f 77 20 73 6f 20 77 65 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 6f 72 20 62 6f 74 68 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We'll come back to these variables a bit later and" ~ " generate the word" 20 20 7e 20 20 20 57 65 27 6c 6c 20 63 6f 6d 65 20 62 61 63 6b 20 74 6f 20 74 68 65 73 65 20 76 61 72 69 61 62 6c 65 73 20 61 20 62 69 74 20 6c 61 74 65 72 20 61 6e 64 20 67 65 6e 65 72 61 74 65 20 74 68 65 20 77 6f 72 64 0a ~ " ~ headers that point at them, but now we're almost ready" ~ " to switch to" 20 20 7e 20 68 65 61 64 65 72 73 20 74 68 61 74 20 70 6f 69 6e 74 20 61 74 20 74 68 65 6d 2c 20 62 75 74 20 6e 6f 77 20 77 65 27 72 65 20 61 6c 6d 6f 73 74 20 72 65 61 64 79 20 74 6f 20 73 77 69 74 63 68 20 74 6f 0a ~ " ~ proper threaded-execution, so we finish that setup" ~ " first..." 20 20 7e 20 70 72 6f 70 65 72 20 74 68 72 65 61 64 65 64 2d 65 78 65 63 75 74 69 6f 6e 2c 20 73 6f 20 77 65 20 66 69 6e 69 73 68 20 74 68 61 74 20 73 65 74 75 70 20 66 69 72 73 74 2e 2e 2e 0a ~ "" 0a ~ " ~ Push the value of "log" onto the value stack so that" ~ " it can be the" 20 20 7e 20 20 20 50 75 73 68 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 22 6c 6f 67 22 20 6f 6e 74 6f 20 74 68 65 20 76 61 6c 75 65 20 73 74 61 63 6b 20 73 6f 20 74 68 61 74 20 69 74 20 63 61 6e 20 62 65 20 74 68 65 0a ~ " ~ breadcrumb the threaded code needs to find... the" ~ " backing store of" 20 20 7e 20 62 72 65 61 64 63 72 75 6d 62 20 74 68 65 20 74 68 72 65 61 64 65 64 20 63 6f 64 65 20 6e 65 65 64 73 20 74 6f 20 66 69 6e 64 2e 2e 2e 20 74 68 65 20 62 61 63 6b 69 6e 67 20 73 74 6f 72 65 20 6f 66 0a ~ " ~ "log". Yes, self-reference can be weird like that" ~ " sometimes. There's" 20 20 7e 20 22 6c 6f 67 22 2e 20 59 65 73 2c 20 73 65 6c 66 2d 72 65 66 65 72 65 6e 63 65 20 63 61 6e 20 62 65 20 77 65 69 72 64 20 6c 69 6b 65 20 74 68 61 74 20 73 6f 6d 65 74 69 6d 65 73 2e 20 54 68 65 72 65 27 73 0a ~ " ~ nothing stopping "quit" from reading rdi, it just" ~ " violates the" 20 20 7e 20 6e 6f 74 68 69 6e 67 20 73 74 6f 70 70 69 6e 67 20 22 71 75 69 74 22 20 66 72 6f 6d 20 72 65 61 64 69 6e 67 20 72 64 69 2c 20 69 74 20 6a 75 73 74 20 76 69 6f 6c 61 74 65 73 20 74 68 65 0a ~ " ~ abstraction..." 20 20 7e 20 61 62 73 74 72 61 63 74 69 6f 6e 2e 2e 2e 0a ~ " :rdi push-reg64" 20 20 3a 72 64 69 20 70 75 73 68 2d 72 65 67 36 34 0a ~ "" 0a ~ " ~ We are about to set up rsi, we did rbp already, and" ~ " rsp came to us" 20 20 7e 20 20 20 57 65 20 61 72 65 20 61 62 6f 75 74 20 74 6f 20 73 65 74 20 75 70 20 72 73 69 2c 20 77 65 20 64 69 64 20 72 62 70 20 61 6c 72 65 61 64 79 2c 20 61 6e 64 20 72 73 70 20 63 61 6d 65 20 74 6f 20 75 73 0a ~ " ~ already set up. That's all that "next" needs, so take" ~ " it away!" 20 20 7e 20 61 6c 72 65 61 64 79 20 73 65 74 20 75 70 2e 20 54 68 61 74 27 73 20 61 6c 6c 20 74 68 61 74 20 22 6e 65 78 74 22 20 6e 65 65 64 73 2c 20 73 6f 20 74 61 6b 65 20 69 74 20 61 77 61 79 21 0a ~ " L@' warm-start L@' origin + :rsi mov-reg64-imm64" 20 20 4c 40 27 20 77 61 72 6d 2d 73 74 61 72 74 20 4c 40 27 20 6f 72 69 67 69 6e 20 2b 20 3a 72 73 69 20 6d 6f 76 2d 72 65 67 36 34 2d 69 6d 6d 36 34 0a ~ " pack-next" 20 20 70 61 63 6b 2d 6e 65 78 74 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Routine warm-start" 7e 20 52 6f 75 74 69 6e 65 20 77 61 72 6d 2d 73 74 61 72 74 0a ~ "~ ~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ This routine runs as Forth code. That is, indirect" ~ " threaded execution has" 7e 20 20 20 54 68 69 73 20 72 6f 75 74 69 6e 65 20 72 75 6e 73 20 61 73 20 46 6f 72 74 68 20 63 6f 64 65 2e 20 54 68 61 74 20 69 73 2c 20 69 6e 64 69 72 65 63 74 20 74 68 72 65 61 64 65 64 20 65 78 65 63 75 74 69 6f 6e 20 68 61 73 0a ~ "~ been initialized, and the structure of this routine is an" ~ " array of codeword" 7e 20 62 65 65 6e 20 69 6e 69 74 69 61 6c 69 7a 65 64 2c 20 61 6e 64 20 74 68 65 20 73 74 72 75 63 74 75 72 65 20 6f 66 20 74 68 69 73 20 72 6f 75 74 69 6e 65 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 63 6f 64 65 77 6f 72 64 0a ~ "~ pointers. It was directly jumped to from cold-start." ~ " There's nowhere to" 7e 20 70 6f 69 6e 74 65 72 73 2e 20 49 74 20 77 61 73 20 64 69 72 65 63 74 6c 79 20 6a 75 6d 70 65 64 20 74 6f 20 66 72 6f 6d 20 63 6f 6c 64 2d 73 74 61 72 74 2e 20 54 68 65 72 65 27 73 20 6e 6f 77 68 65 72 65 20 74 6f 0a ~ "~ return to, so it needs to never return." 7e 20 72 65 74 75 72 6e 20 74 6f 2c 20 73 6f 20 69 74 20 6e 65 65 64 73 20 74 6f 20 6e 65 76 65 72 20 72 65 74 75 72 6e 2e 0a ~ "~" 7e 0a ~ "~ There are a few optional pieces of the warm-start" ~ " routine, so here in the" 7e 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 66 65 77 20 6f 70 74 69 6f 6e 61 6c 20 70 69 65 63 65 73 20 6f 66 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2c 20 73 6f 20 68 65 72 65 20 69 6e 20 74 68 65 0a ~ "~ compile-time code that builds it, we break the routine" ~ " into logical pieces" 7e 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 64 65 20 74 68 61 74 20 62 75 69 6c 64 73 20 69 74 2c 20 77 65 20 62 72 65 61 6b 20 74 68 65 20 72 6f 75 74 69 6e 65 20 69 6e 74 6f 20 6c 6f 67 69 63 61 6c 20 70 69 65 63 65 73 0a ~ "~ which are assembled by calling the appropriate helpers" ~ " sequentially." 7e 20 77 68 69 63 68 20 61 72 65 20 61 73 73 65 6d 62 6c 65 64 20 62 79 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 68 65 6c 70 65 72 73 20 73 65 71 75 65 6e 74 69 61 6c 6c 79 2e 0a ~ "~" 7e 0a ~ "~ Outputting the warm-start routine should always begin" ~ " by calling" 7e 20 20 20 4f 75 74 70 75 74 74 69 6e 67 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 73 68 6f 75 6c 64 20 61 6c 77 61 79 73 20 62 65 67 69 6e 20 62 79 20 63 61 6c 6c 69 6e 67 0a ~ "~ output-warm-start-header." 7e 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 68 65 61 64 65 72 2e 0a ~ "~" 7e 0a ~ "~ (output buffer start, output point -- output buffer" ~ " start, output point)" 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": output-warm-start-header" 3a 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 68 65 61 64 65 72 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ :" ~ " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ~ "~~~~~~~~~~~~~" 20 20 7e 20 3a 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : This is the start of the warm-start routine, which" ~ " is the first Forth" 20 20 7e 20 3a 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 20 66 69 72 73 74 20 46 6f 72 74 68 0a ~ " ~ : code the executable runs, after the cold-start" ~ " routine has created the" 20 20 7e 20 3a 20 63 6f 64 65 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 72 75 6e 73 2c 20 61 66 74 65 72 20 74 68 65 20 63 6f 6c 64 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 68 61 73 20 63 72 65 61 74 65 64 20 74 68 65 0a ~ " ~ : Forth execution environment." 20 20 7e 20 3a 20 46 6f 72 74 68 20 65 78 65 63 75 74 69 6f 6e 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : It does some initial setup here at the top; then" ~ " the vast bulk of it" 20 20 7e 20 3a 20 20 20 49 74 20 64 6f 65 73 20 73 6f 6d 65 20 69 6e 69 74 69 61 6c 20 73 65 74 75 70 20 68 65 72 65 20 61 74 20 74 68 65 20 74 6f 70 3b 20 74 68 65 6e 20 74 68 65 20 76 61 73 74 20 62 75 6c 6b 20 6f 66 20 69 74 0a ~ " ~ : is actually the log-load routine, directly included;" ~ " then finally there" 20 20 7e 20 3a 20 69 73 20 61 63 74 75 61 6c 6c 79 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 2c 20 64 69 72 65 63 74 6c 79 20 69 6e 63 6c 75 64 65 64 3b 20 74 68 65 6e 20 66 69 6e 61 6c 6c 79 20 74 68 65 72 65 0a ~ " ~ : is a small amount of finishing work done at the tail" ~ " end of the" 20 20 7e 20 3a 20 69 73 20 61 20 73 6d 61 6c 6c 20 61 6d 6f 75 6e 74 20 6f 66 20 66 69 6e 69 73 68 69 6e 67 20 77 6f 72 6b 20 64 6f 6e 65 20 61 74 20 74 68 65 20 74 61 69 6c 20 65 6e 64 20 6f 66 20 74 68 65 0a ~ " ~ : warm-start routine." 20 20 7e 20 3a 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : The routine's body is interpreted Forth code," ~ " meaning that it is an" 20 20 7e 20 3a 20 20 20 54 68 65 20 72 6f 75 74 69 6e 65 27 73 20 62 6f 64 79 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 46 6f 72 74 68 20 63 6f 64 65 2c 20 6d 65 61 6e 69 6e 67 20 74 68 61 74 20 69 74 20 69 73 20 61 6e 0a ~ " ~ : an array of pointers to the codewords of Forth words," ~ " occasionally" 20 20 7e 20 3a 20 61 6e 20 61 72 72 61 79 20 6f 66 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 20 63 6f 64 65 77 6f 72 64 73 20 6f 66 20 46 6f 72 74 68 20 77 6f 72 64 73 2c 20 6f 63 63 61 73 69 6f 6e 61 6c 6c 79 0a ~ " ~ : interspersed with literal values." 20 20 7e 20 3a 20 69 6e 74 65 72 73 70 65 72 73 65 64 20 77 69 74 68 20 6c 69 74 65 72 61 6c 20 76 61 6c 75 65 73 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : The codeword pointers were located by using the" ~ " label system, which" 20 20 7e 20 3a 20 20 20 54 68 65 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 73 20 77 65 72 65 20 6c 6f 63 61 74 65 64 20 62 79 20 75 73 69 6e 67 20 74 68 65 20 6c 61 62 65 6c 20 73 79 73 74 65 6d 2c 20 77 68 69 63 68 0a ~ " ~ : means the labels they reference must have been" ~ " defined somewhere else," 20 20 7e 20 3a 20 6d 65 61 6e 73 20 74 68 65 20 6c 61 62 65 6c 73 20 74 68 65 79 20 72 65 66 65 72 65 6e 63 65 20 6d 75 73 74 20 68 61 76 65 20 62 65 65 6e 20 64 65 66 69 6e 65 64 20 73 6f 6d 65 77 68 65 72 65 20 65 6c 73 65 2c 0a ~ " ~ : normally by the label transform. The" ~ " label-transformed code normally" 20 20 7e 20 3a 20 6e 6f 72 6d 61 6c 6c 79 20 62 79 20 74 68 65 20 6c 61 62 65 6c 20 74 72 61 6e 73 66 6f 72 6d 2e 20 54 68 65 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 63 6f 64 65 20 6e 6f 72 6d 61 6c 6c 79 0a ~ " ~ : occurs after the warm-start routine in the" ~ " executable, which means these" 20 20 7e 20 3a 20 6f 63 63 75 72 73 20 61 66 74 65 72 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 69 6e 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 65 73 65 0a ~ " ~ : are forward references to words defined far below." 20 20 7e 20 3a 20 61 72 65 20 66 6f 72 77 61 72 64 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 77 6f 72 64 73 20 64 65 66 69 6e 65 64 20 66 61 72 20 62 65 6c 6f 77 2e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ "" 0a ~ " ~ While it's not actually a requirement that codeword" ~ " pointers be" 20 20 7e 20 20 20 57 68 69 6c 65 20 69 74 27 73 20 6e 6f 74 20 61 63 74 75 61 6c 6c 79 20 61 20 72 65 71 75 69 72 65 6d 65 6e 74 20 74 68 61 74 20 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 73 20 62 65 0a ~ " ~ word-aligned, it's highly likely that it helps" ~ " performance. (Whether it" 20 20 7e 20 77 6f 72 64 2d 61 6c 69 67 6e 65 64 2c 20 69 74 27 73 20 68 69 67 68 6c 79 20 6c 69 6b 65 6c 79 20 74 68 61 74 20 69 74 20 68 65 6c 70 73 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 20 28 57 68 65 74 68 65 72 20 69 74 0a ~ " ~ does is up to Intel's microcode.)" 20 20 7e 20 64 6f 65 73 20 69 73 20 75 70 20 74 6f 20 49 6e 74 65 6c 27 73 20 6d 69 63 72 6f 63 6f 64 65 2e 29 0a ~ " 8 packalign" 20 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " current-offset L!' warm-start" 20 20 63 75 72 72 65 6e 74 2d 6f 66 66 73 65 74 20 4c 21 27 20 77 61 72 6d 2d 73 74 61 72 74 0a ~ " ~ (input string pointer, output buffer start, output" ~ " point)" 20 20 7e 20 28 69 6e 70 75 74 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ Before handing off to us, cold-start pushed a single" ~ " value onto the" 20 20 7e 20 20 20 42 65 66 6f 72 65 20 68 61 6e 64 69 6e 67 20 6f 66 66 20 74 6f 20 75 73 2c 20 63 6f 6c 64 2d 73 74 61 72 74 20 70 75 73 68 65 64 20 61 20 73 69 6e 67 6c 65 20 76 61 6c 75 65 20 6f 6e 74 6f 20 74 68 65 0a ~ " ~ stack, a pointer to the beginning of the log. Now, we" ~ " load our entire" 20 20 7e 20 73 74 61 63 6b 2c 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 6c 6f 67 2e 20 4e 6f 77 2c 20 77 65 20 6c 6f 61 64 20 6f 75 72 20 65 6e 74 69 72 65 0a ~ " ~ Forth implementation onto that log, beginning with the" ~ " minimal set of" 20 20 7e 20 46 6f 72 74 68 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 6e 74 6f 20 74 68 61 74 20 6c 6f 67 2c 20 62 65 67 69 6e 6e 69 6e 67 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 61 6c 20 73 65 74 20 6f 66 0a ~ " ~ words needed to define more words. We do this because" ~ " we need variables as" 20 20 7e 20 77 6f 72 64 73 20 6e 65 65 64 65 64 20 74 6f 20 64 65 66 69 6e 65 20 6d 6f 72 65 20 77 6f 72 64 73 2e 20 57 65 20 64 6f 20 74 68 69 73 20 62 65 63 61 75 73 65 20 77 65 20 6e 65 65 64 20 76 61 72 69 61 62 6c 65 73 20 61 73 0a ~ " ~ infrastructure so we can eventually have dynamic" ~ " definitions." 20 20 7e 20 69 6e 66 72 61 73 74 72 75 63 74 75 72 65 20 73 6f 20 77 65 20 63 61 6e 20 65 76 65 6e 74 75 61 6c 6c 79 20 68 61 76 65 20 64 79 6e 61 6d 69 63 20 64 65 66 69 6e 69 74 69 6f 6e 73 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ There's something non-obvious here: words implemented" ~ " statically as" 20 20 7e 20 20 20 54 68 65 72 65 27 73 20 73 6f 6d 65 74 68 69 6e 67 20 6e 6f 6e 2d 6f 62 76 69 6f 75 73 20 68 65 72 65 3a 20 77 6f 72 64 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 73 74 61 74 69 63 61 6c 6c 79 20 61 73 0a ~ " ~ part of the executable image can't contain things that" ~ " vary at runtime." 20 20 7e 20 70 61 72 74 20 6f 66 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 69 6d 61 67 65 20 63 61 6e 27 74 20 63 6f 6e 74 61 69 6e 20 74 68 69 6e 67 73 20 74 68 61 74 20 76 61 72 79 20 61 74 20 72 75 6e 74 69 6d 65 2e 0a ~ " ~ That means that even if these words tried to implement" ~ " some sort of" 20 20 7e 20 54 68 61 74 20 6d 65 61 6e 73 20 74 68 61 74 20 65 76 65 6e 20 69 66 20 74 68 65 73 65 20 77 6f 72 64 73 20 74 72 69 65 64 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 73 6f 6d 65 20 73 6f 72 74 20 6f 66 0a ~ " ~ dynamic lookup, they would have no way to find the root" ~ " of whatever" 20 20 7e 20 64 79 6e 61 6d 69 63 20 6c 6f 6f 6b 75 70 2c 20 74 68 65 79 20 77 6f 75 6c 64 20 68 61 76 65 20 6e 6f 20 77 61 79 20 74 6f 20 66 69 6e 64 20 74 68 65 20 72 6f 6f 74 20 6f 66 20 77 68 61 74 65 76 65 72 0a ~ " ~ dynamic data structure they use. Dynamism needs to be" ~ " bootstrapped." 20 20 7e 20 64 79 6e 61 6d 69 63 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 74 68 65 79 20 75 73 65 2e 20 44 79 6e 61 6d 69 73 6d 20 6e 65 65 64 73 20 74 6f 20 62 65 20 62 6f 6f 74 73 74 72 61 70 70 65 64 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ In a more traditional C-style program, static code" ~ " could look up" 20 20 7e 20 20 20 49 6e 20 61 20 6d 6f 72 65 20 74 72 61 64 69 74 69 6f 6e 61 6c 20 43 2d 73 74 79 6c 65 20 70 72 6f 67 72 61 6d 2c 20 73 74 61 74 69 63 20 63 6f 64 65 20 63 6f 75 6c 64 20 6c 6f 6f 6b 20 75 70 0a ~ " ~ variables based on fixed addresses that are the same on" ~ " every run." 20 20 7e 20 76 61 72 69 61 62 6c 65 73 20 62 61 73 65 64 20 6f 6e 20 66 69 78 65 64 20 61 64 64 72 65 73 73 65 73 20 74 68 61 74 20 61 72 65 20 74 68 65 20 73 61 6d 65 20 6f 6e 20 65 76 65 72 79 20 72 75 6e 2e 0a ~ " ~ Failing that, we could dedicate a register to it," ~ " though that's a" 20 20 7e 20 46 61 69 6c 69 6e 67 20 74 68 61 74 2c 20 77 65 20 63 6f 75 6c 64 20 64 65 64 69 63 61 74 65 20 61 20 72 65 67 69 73 74 65 72 20 74 6f 20 69 74 2c 20 74 68 6f 75 67 68 20 74 68 61 74 27 73 20 61 0a ~ " ~ considerable expense. We chose not to do either of" ~ " those things, because" 20 20 7e 20 63 6f 6e 73 69 64 65 72 61 62 6c 65 20 65 78 70 65 6e 73 65 2e 20 57 65 20 63 68 6f 73 65 20 6e 6f 74 20 74 6f 20 64 6f 20 65 69 74 68 65 72 20 6f 66 20 74 68 6f 73 65 20 74 68 69 6e 67 73 2c 20 62 65 63 61 75 73 65 0a ~ " ~ we want the versatility that comes with not being picky" ~ " about our" 20 20 7e 20 77 65 20 77 61 6e 74 20 74 68 65 20 76 65 72 73 61 74 69 6c 69 74 79 20 74 68 61 74 20 63 6f 6d 65 73 20 77 69 74 68 20 6e 6f 74 20 62 65 69 6e 67 20 70 69 63 6b 79 20 61 62 6f 75 74 20 6f 75 72 0a ~ " ~ address space: It allows us to contemplate future" ~ " improvements such as" 20 20 7e 20 61 64 64 72 65 73 73 20 73 70 61 63 65 3a 20 49 74 20 61 6c 6c 6f 77 73 20 75 73 20 74 6f 20 63 6f 6e 74 65 6d 70 6c 61 74 65 20 66 75 74 75 72 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 20 73 75 63 68 20 61 73 0a ~ " ~ ASLR, or embedding into other processes that impose" ~ " their own addressing" 20 20 7e 20 41 53 4c 52 2c 20 6f 72 20 65 6d 62 65 64 64 69 6e 67 20 69 6e 74 6f 20 6f 74 68 65 72 20 70 72 6f 63 65 73 73 65 73 20 74 68 61 74 20 69 6d 70 6f 73 65 20 74 68 65 69 72 20 6f 77 6e 20 61 64 64 72 65 73 73 69 6e 67 0a ~ " ~ constraints, or even coexisting with multiple versions" ~ " of ourselves." 20 20 7e 20 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 6f 72 20 65 76 65 6e 20 63 6f 65 78 69 73 74 69 6e 67 20 77 69 74 68 20 6d 75 6c 74 69 70 6c 65 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 6f 75 72 73 65 6c 76 65 73 2e 0a ~ " ~ That choice does mean we have the hard version of this" ~ " bootstrapping" 20 20 7e 20 54 68 61 74 20 63 68 6f 69 63 65 20 64 6f 65 73 20 6d 65 61 6e 20 77 65 20 68 61 76 65 20 74 68 65 20 68 61 72 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 69 73 20 62 6f 6f 74 73 74 72 61 70 70 69 6e 67 0a ~ " ~ problem, and copying ourselves to the log is how we" ~ " solve it." 20 20 7e 20 70 72 6f 62 6c 65 6d 2c 20 61 6e 64 20 63 6f 70 79 69 6e 67 20 6f 75 72 73 65 6c 76 65 73 20 74 6f 20 74 68 65 20 6c 6f 67 20 69 73 20 68 6f 77 20 77 65 20 73 6f 6c 76 65 20 69 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ We do have the log address right now, though that" ~ " won't last. In case" 20 20 7e 20 20 20 57 65 20 64 6f 20 68 61 76 65 20 74 68 65 20 6c 6f 67 20 61 64 64 72 65 73 73 20 72 69 67 68 74 20 6e 6f 77 2c 20 74 68 6f 75 67 68 20 74 68 61 74 20 77 6f 6e 27 74 20 6c 61 73 74 2e 20 49 6e 20 63 61 73 65 0a ~ " ~ it's unclear why not: keeping it on the stack would" ~ " require all future" 20 20 7e 20 69 74 27 73 20 75 6e 63 6c 65 61 72 20 77 68 79 20 6e 6f 74 3a 20 6b 65 65 70 69 6e 67 20 69 74 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 20 77 6f 75 6c 64 20 72 65 71 75 69 72 65 20 61 6c 6c 20 66 75 74 75 72 65 0a ~ " ~ references to walk the stack, and somehow know when" ~ " they've reached the" 20 20 7e 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 77 61 6c 6b 20 74 68 65 20 73 74 61 63 6b 2c 20 61 6e 64 20 73 6f 6d 65 68 6f 77 20 6b 6e 6f 77 20 77 68 65 6e 20 74 68 65 79 27 76 65 20 72 65 61 63 68 65 64 20 74 68 65 0a ~ " ~ bottom. The stack is a good place to keep things with" ~ " clearly delimited" 20 20 7e 20 62 6f 74 74 6f 6d 2e 20 54 68 65 20 73 74 61 63 6b 20 69 73 20 61 20 67 6f 6f 64 20 70 6c 61 63 65 20 74 6f 20 6b 65 65 70 20 74 68 69 6e 67 73 20 77 69 74 68 20 63 6c 65 61 72 6c 79 20 64 65 6c 69 6d 69 74 65 64 0a ~ " ~ lifetimes and visibility, but when we want something to" ~ " live for our" 20 20 7e 20 6c 69 66 65 74 69 6d 65 73 20 61 6e 64 20 76 69 73 69 62 69 6c 69 74 79 2c 20 62 75 74 20 77 68 65 6e 20 77 65 20 77 61 6e 74 20 73 6f 6d 65 74 68 69 6e 67 20 74 6f 20 6c 69 76 65 20 66 6f 72 20 6f 75 72 0a ~ " ~ entire program and be easy to find from any code within" ~ " it, we need to" 20 20 7e 20 65 6e 74 69 72 65 20 70 72 6f 67 72 61 6d 20 61 6e 64 20 62 65 20 65 61 73 79 20 74 6f 20 66 69 6e 64 20 66 72 6f 6d 20 61 6e 79 20 63 6f 64 65 20 77 69 74 68 69 6e 20 69 74 2c 20 77 65 20 6e 65 65 64 20 74 6f 0a ~ " ~ do something else. Anyway, since we have the address," ~ " we can use it for" 20 20 7e 20 64 6f 20 73 6f 6d 65 74 68 69 6e 67 20 65 6c 73 65 2e 20 41 6e 79 77 61 79 2c 20 73 69 6e 63 65 20 77 65 20 68 61 76 65 20 74 68 65 20 61 64 64 72 65 73 73 2c 20 77 65 20 63 61 6e 20 75 73 65 20 69 74 20 66 6f 72 0a ~ " ~ the next little bit of setup. We have a bunch of helper" ~ " words, from" 20 20 7e 20 74 68 65 20 6e 65 78 74 20 6c 69 74 74 6c 65 20 62 69 74 20 6f 66 20 73 65 74 75 70 2e 20 57 65 20 68 61 76 65 20 61 20 62 75 6e 63 68 20 6f 66 20 68 65 6c 70 65 72 20 77 6f 72 64 73 2c 20 66 72 6f 6d 0a ~ " ~ language/static/log-load.e, which make this easier." 20 20 7e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 6c 6f 67 2d 6c 6f 61 64 2e 65 2c 20 77 68 69 63 68 20 6d 61 6b 65 20 74 68 69 73 20 65 61 73 69 65 72 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ The first few words we define are our variables," ~ " which hardcode the" 20 20 7e 20 20 20 54 68 65 20 66 69 72 73 74 20 66 65 77 20 77 6f 72 64 73 20 77 65 20 64 65 66 69 6e 65 20 61 72 65 20 6f 75 72 20 76 61 72 69 61 62 6c 65 73 2c 20 77 68 69 63 68 20 68 61 72 64 63 6f 64 65 20 74 68 65 0a ~ " ~ addresses they will return - but since we're doing this" ~ " at runtime," 20 20 7e 20 61 64 64 72 65 73 73 65 73 20 74 68 65 79 20 77 69 6c 6c 20 72 65 74 75 72 6e 20 2d 20 62 75 74 20 73 69 6e 63 65 20 77 65 27 72 65 20 64 6f 69 6e 67 20 74 68 69 73 20 61 74 20 72 75 6e 74 69 6d 65 2c 0a ~ " ~ "hardcoding" can reflect where our log is. This is the" ~ " fundamental" 20 20 7e 20 22 68 61 72 64 63 6f 64 69 6e 67 22 20 63 61 6e 20 72 65 66 6c 65 63 74 20 77 68 65 72 65 20 6f 75 72 20 6c 6f 67 20 69 73 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 66 75 6e 64 61 6d 65 6e 74 61 6c 0a ~ " ~ trick that makes the log usable." 20 20 7e 20 74 72 69 63 6b 20 74 68 61 74 20 6d 61 6b 65 73 20 74 68 65 20 6c 6f 67 20 75 73 61 62 6c 65 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ One more thing to notice: We already allocated the" ~ " backing stores of" 20 20 7e 20 20 20 4f 6e 65 20 6d 6f 72 65 20 74 68 69 6e 67 20 74 6f 20 6e 6f 74 69 63 65 3a 20 57 65 20 61 6c 72 65 61 64 79 20 61 6c 6c 6f 63 61 74 65 64 20 74 68 65 20 62 61 63 6b 69 6e 67 20 73 74 6f 72 65 73 20 6f 66 0a ~ " ~ these variables, and populated their initial values, in" ~ " cold-start. The" 20 20 7e 20 74 68 65 73 65 20 76 61 72 69 61 62 6c 65 73 2c 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 64 20 74 68 65 69 72 20 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 73 2c 20 69 6e 20 63 6f 6c 64 2d 73 74 61 72 74 2e 20 54 68 65 0a ~ " ~ words we're defining return those same addresses for" ~ " the same backing" 20 20 7e 20 77 6f 72 64 73 20 77 65 27 72 65 20 64 65 66 69 6e 69 6e 67 20 72 65 74 75 72 6e 20 74 68 6f 73 65 20 73 61 6d 65 20 61 64 64 72 65 73 73 65 73 20 66 6f 72 20 74 68 65 20 73 61 6d 65 20 62 61 63 6b 69 6e 67 0a ~ " ~ stores. So, we have continuity: Stuff defined in terms" ~ " of the" 20 20 7e 20 73 74 6f 72 65 73 2e 20 53 6f 2c 20 77 65 20 68 61 76 65 20 63 6f 6e 74 69 6e 75 69 74 79 3a 20 53 74 75 66 66 20 64 65 66 69 6e 65 64 20 69 6e 20 74 65 72 6d 73 20 6f 66 20 74 68 65 0a ~ " ~ variable-words we're defining now will interoperate" ~ " with the stuff that" 20 20 7e 20 76 61 72 69 61 62 6c 65 2d 77 6f 72 64 73 20 77 65 27 72 65 20 64 65 66 69 6e 69 6e 67 20 6e 6f 77 20 77 69 6c 6c 20 69 6e 74 65 72 6f 70 65 72 61 74 65 20 77 69 74 68 20 74 68 65 20 73 74 75 66 66 20 74 68 61 74 0a ~ " ~ we define using the log-load helpers, which includes" ~ " those very words." 20 20 7e 20 77 65 20 64 65 66 69 6e 65 20 75 73 69 6e 67 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 68 65 6c 70 65 72 73 2c 20 77 68 69 63 68 20 69 6e 63 6c 75 64 65 73 20 74 68 6f 73 65 20 76 65 72 79 20 77 6f 72 64 73 2e 0a ~ " ~ Both the log-load code and the later code are dealing" ~ " with the same data" 20 20 7e 20 42 6f 74 68 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 63 6f 64 65 20 61 6e 64 20 74 68 65 20 6c 61 74 65 72 20 63 6f 64 65 20 61 72 65 20 64 65 61 6c 69 6e 67 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 64 61 74 61 0a ~ " ~ structures, they're just using a different technique to" ~ " find them." 20 20 7e 20 73 74 72 75 63 74 75 72 65 73 2c 20 74 68 65 79 27 72 65 20 6a 75 73 74 20 75 73 69 6e 67 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 65 63 68 6e 69 71 75 65 20 74 6f 20 66 69 6e 64 20 74 68 65 6d 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ This is the only hardcoding we need to do; by" ~ " building on top of it," 20 20 7e 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 6f 6e 6c 79 20 68 61 72 64 63 6f 64 69 6e 67 20 77 65 20 6e 65 65 64 20 74 6f 20 64 6f 3b 20 62 79 20 62 75 69 6c 64 69 6e 67 20 6f 6e 20 74 6f 70 20 6f 66 20 69 74 2c 0a ~ " ~ we will soon reach a point where the rest of the system" ~ " can be defined" 20 20 7e 20 77 65 20 77 69 6c 6c 20 73 6f 6f 6e 20 72 65 61 63 68 20 61 20 70 6f 69 6e 74 20 77 68 65 72 65 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 73 79 73 74 65 6d 20 63 61 6e 20 62 65 20 64 65 66 69 6e 65 64 0a ~ " ~ within itself." 20 20 7e 20 77 69 74 68 69 6e 20 69 74 73 65 6c 66 2e 0a ~ "" 0a ~ " L@' log-load-log offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 6f 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-log #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 6f 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" log" packstring 8 packalign" 20 20 73 22 20 6c 6f 67 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-variable offset-to-target-address-space" ~ " pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-variable #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " L@' log-load-s0 offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 73 30 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-s0 #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 73 30 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" s0" packstring 8 packalign" 20 20 73 22 20 73 30 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-variable offset-to-target-address-space" ~ " pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-variable #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " L@' log-load-r0 offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 72 30 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-r0 #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 72 30 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" r0" packstring 8 packalign" 20 20 73 22 20 72 30 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-variable offset-to-target-address-space" ~ " pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-variable #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " L@' log-load-latest offset-to-target-address-space" ~ " pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 61 74 65 73 74 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-latest #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 6c 61 74 65 73 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" latest" packstring 8 packalign" 20 20 73 22 20 6c 61 74 65 73 74 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-variable offset-to-target-address-space" ~ " pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-variable #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " L@' log-load-here offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-here #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 68 65 72 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" here" packstring 8 packalign" 20 20 73 22 20 68 65 72 65 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-variable offset-to-target-address-space" ~ " pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-variable #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 76 61 72 69 61 62 6c 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ Having done that, nothing else needs to be defined in" ~ " an unusual way, so" 20 20 7e 20 20 20 48 61 76 69 6e 67 20 64 6f 6e 65 20 74 68 61 74 2c 20 6e 6f 74 68 69 6e 67 20 65 6c 73 65 20 6e 65 65 64 73 20 74 6f 20 62 65 20 64 65 66 69 6e 65 64 20 69 6e 20 61 6e 20 75 6e 75 73 75 61 6c 20 77 61 79 2c 20 73 6f 0a ~ " ~ at this point the warm-start routine can go ahead and" ~ " dispatch to the" 20 20 7e 20 61 74 20 74 68 69 73 20 70 6f 69 6e 74 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 63 61 6e 20 67 6f 20 61 68 65 61 64 20 61 6e 64 20 64 69 73 70 61 74 63 68 20 74 6f 20 74 68 65 0a ~ " ~ log-load transform, and do the rest of the code through" ~ " that. However, to" 20 20 7e 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 2c 20 61 6e 64 20 64 6f 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 63 6f 64 65 20 74 68 72 6f 75 67 68 20 74 68 61 74 2e 20 48 6f 77 65 76 65 72 2c 20 74 6f 0a ~ " ~ allow customization, we here in output-warm-start will" ~ " let our caller take" 20 20 7e 20 61 6c 6c 6f 77 20 63 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 2c 20 77 65 20 68 65 72 65 20 69 6e 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 20 77 69 6c 6c 20 6c 65 74 20 6f 75 72 20 63 61 6c 6c 65 72 20 74 61 6b 65 0a ~ " ~ responsibility for making sure that happens." 20 20 7e 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 66 6f 72 20 6d 61 6b 69 6e 67 20 73 75 72 65 20 74 68 61 74 20 68 61 70 70 65 6e 73 2e 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This helper doesn't have any actual compile-time" ~ " responsibilities, it" 7e 20 20 20 54 68 69 73 20 68 65 6c 70 65 72 20 64 6f 65 73 6e 27 74 20 68 61 76 65 20 61 6e 79 20 61 63 74 75 61 6c 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 2c 20 69 74 0a ~ "~ exists solely for the sake of the magic comments." 7e 20 65 78 69 73 74 73 20 73 6f 6c 65 6c 79 20 66 6f 72 20 74 68 65 20 73 61 6b 65 20 6f 66 20 74 68 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 2e 0a ~ "~" 7e 0a ~ "~ We could have it be responsible for calling" ~ " log-load-transform, but" 7e 20 20 20 57 65 20 63 6f 75 6c 64 20 68 61 76 65 20 69 74 20 62 65 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 63 61 6c 6c 69 6e 67 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 2c 20 62 75 74 0a ~ "~ honestly it's nicer letting the caller be responsible for" ~ " that, since the" 7e 20 68 6f 6e 65 73 74 6c 79 20 69 74 27 73 20 6e 69 63 65 72 20 6c 65 74 74 69 6e 67 20 74 68 65 20 63 61 6c 6c 65 72 20 62 65 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 74 68 61 74 2c 20 73 69 6e 63 65 20 74 68 65 0a ~ "~ caller is also responsible for calling label-transform." 7e 20 63 61 6c 6c 65 72 20 69 73 20 61 6c 73 6f 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 63 61 6c 6c 69 6e 67 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~" 7e 0a ~ "~ (output buffer start, output point -- output buffer" ~ " start, output point)" 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": output-warm-start-post-log-load-transform" 3a 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 70 6f 73 74 2d 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : We're now done with the log-load routine; the next" ~ " little bit of code" 20 20 7e 20 3a 20 20 20 57 65 27 72 65 20 6e 6f 77 20 64 6f 6e 65 20 77 69 74 68 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 3b 20 74 68 65 20 6e 65 78 74 20 6c 69 74 74 6c 65 20 62 69 74 20 6f 66 20 63 6f 64 65 0a ~ " ~ : here is the final bit of the warm-start routine." 20 20 7e 20 3a 20 68 65 72 65 20 69 73 20 74 68 65 20 66 69 6e 61 6c 20 62 69 74 20 6f 66 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2e 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "" 0a ~ "~ After the log-load routine finishes, everything we need" ~ " has been added to" 7e 20 20 20 41 66 74 65 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 66 69 6e 69 73 68 65 73 2c 20 65 76 65 72 79 74 68 69 6e 67 20 77 65 20 6e 65 65 64 20 68 61 73 20 62 65 65 6e 20 61 64 64 65 64 20 74 6f 0a ~ "~ the log and we're almost ready to jump into dynamic code" ~ " running from the" 7e 20 74 68 65 20 6c 6f 67 20 61 6e 64 20 77 65 27 72 65 20 61 6c 6d 6f 73 74 20 72 65 61 64 79 20 74 6f 20 6a 75 6d 70 20 69 6e 74 6f 20 64 79 6e 61 6d 69 63 20 63 6f 64 65 20 72 75 6e 6e 69 6e 67 20 66 72 6f 6d 20 74 68 65 0a ~ "~ log. That code still needs main-input-buffer to be set up" ~ " in some way. The" 7e 20 6c 6f 67 2e 20 54 68 61 74 20 63 6f 64 65 20 73 74 69 6c 6c 20 6e 65 65 64 73 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 74 6f 20 62 65 20 73 65 74 20 75 70 20 69 6e 20 73 6f 6d 65 20 77 61 79 2e 20 54 68 65 0a ~ "~ simplest approach is to attach it directly to standard" ~ " input. This helper" 7e 20 73 69 6d 70 6c 65 73 74 20 61 70 70 72 6f 61 63 68 20 69 73 20 74 6f 20 61 74 74 61 63 68 20 69 74 20 64 69 72 65 63 74 6c 79 20 74 6f 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 20 54 68 69 73 20 68 65 6c 70 65 72 0a ~ "~ outputs a snippet that does that, structured to be used" ~ " as part of the" 7e 20 6f 75 74 70 75 74 73 20 61 20 73 6e 69 70 70 65 74 20 74 68 61 74 20 64 6f 65 73 20 74 68 61 74 2c 20 73 74 72 75 63 74 75 72 65 64 20 74 6f 20 62 65 20 75 73 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 0a ~ "~ warm-start routine." 7e 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2e 0a ~ "~" 7e 0a ~ "~ Executables that don't call" ~ " output-warm-start-attach-stdin will need to" 7e 20 20 20 45 78 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 20 64 6f 6e 27 74 20 63 61 6c 6c 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 61 74 74 61 63 68 2d 73 74 64 69 6e 20 77 69 6c 6c 20 6e 65 65 64 20 74 6f 0a ~ "~ instead call output-warm-start-attach-boot-source." ~ " Exactly one of these must" 7e 20 69 6e 73 74 65 61 64 20 63 61 6c 6c 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 61 74 74 61 63 68 2d 62 6f 6f 74 2d 73 6f 75 72 63 65 2e 20 45 78 61 63 74 6c 79 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 6d 75 73 74 0a ~ "~ be used." 7e 20 62 65 20 75 73 65 64 2e 0a ~ "~" 7e 0a ~ "~ (output buffer start, output point -- output buffer" ~ " start, output point)" 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": output-warm-start-attach-stdin" 3a 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 61 74 74 61 63 68 2d 73 74 64 69 6e 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" relink-main-input-buffer-to-stdin" packstring 8" ~ " packalign" 20 20 73 22 20 72 65 6c 69 6e 6b 2d 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 74 6f 2d 73 74 64 69 6e 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-find-execution-token" ~ " offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' execute offset-to-target-address-space pack64" 20 20 4c 40 27 20 65 78 65 63 75 74 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 execute #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 65 78 65 63 75 74 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ After the log-load routine finishes, everything we need" ~ " has been added to" 7e 20 20 20 41 66 74 65 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 66 69 6e 69 73 68 65 73 2c 20 65 76 65 72 79 74 68 69 6e 67 20 77 65 20 6e 65 65 64 20 68 61 73 20 62 65 65 6e 20 61 64 64 65 64 20 74 6f 0a ~ "~ the log and we're almost ready to jump into dynamic code" ~ " running from the" 7e 20 74 68 65 20 6c 6f 67 20 61 6e 64 20 77 65 27 72 65 20 61 6c 6d 6f 73 74 20 72 65 61 64 79 20 74 6f 20 6a 75 6d 70 20 69 6e 74 6f 20 64 79 6e 61 6d 69 63 20 63 6f 64 65 20 72 75 6e 6e 69 6e 67 20 66 72 6f 6d 20 74 68 65 0a ~ "~ log. It's inconvenient for code under the log-load" ~ " transform to interact" 7e 20 6c 6f 67 2e 20 49 74 27 73 20 69 6e 63 6f 6e 76 65 6e 69 65 6e 74 20 66 6f 72 20 63 6f 64 65 20 75 6e 64 65 72 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 74 72 61 6e 73 66 6f 72 6d 20 74 6f 20 69 6e 74 65 72 61 63 74 0a ~ "~ with the label system, so if we want to point" ~ " main-input-buffer at a string," 7e 20 77 69 74 68 20 74 68 65 20 6c 61 62 65 6c 20 73 79 73 74 65 6d 2c 20 73 6f 20 69 66 20 77 65 20 77 61 6e 74 20 74 6f 20 70 6f 69 6e 74 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 61 74 20 61 20 73 74 72 69 6e 67 2c 0a ~ "~ that's the place to do it." 7e 20 74 68 61 74 27 73 20 74 68 65 20 70 6c 61 63 65 20 74 6f 20 64 6f 20 69 74 2e 0a ~ "~" 7e 0a ~ "~ That's optional functionality, which any given" ~ " executable may or may not" 7e 20 20 20 54 68 61 74 27 73 20 6f 70 74 69 6f 6e 61 6c 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2c 20 77 68 69 63 68 20 61 6e 79 20 67 69 76 65 6e 20 65 78 65 63 75 74 61 62 6c 65 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 0a ~ "~ want to use, so it's here in this helper. If your" ~ " executable is built with" 7e 20 77 61 6e 74 20 74 6f 20 75 73 65 2c 20 73 6f 20 69 74 27 73 20 68 65 72 65 20 69 6e 20 74 68 69 73 20 68 65 6c 70 65 72 2e 20 49 66 20 79 6f 75 72 20 65 78 65 63 75 74 61 62 6c 65 20 69 73 20 62 75 69 6c 74 20 77 69 74 68 0a ~ "~ a call to output-warm-start-attach-boot-source, it must" ~ " also at some point" 7e 20 61 20 63 61 6c 6c 20 74 6f 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 61 74 74 61 63 68 2d 62 6f 6f 74 2d 73 6f 75 72 63 65 2c 20 69 74 20 6d 75 73 74 20 61 6c 73 6f 20 61 74 20 73 6f 6d 65 20 70 6f 69 6e 74 0a ~ "~ include a call to output-boot-source." 7e 20 69 6e 63 6c 75 64 65 20 61 20 63 61 6c 6c 20 74 6f 20 6f 75 74 70 75 74 2d 62 6f 6f 74 2d 73 6f 75 72 63 65 2e 0a ~ "~" 7e 0a ~ "~ (output buffer start, output point, input string pointer" 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 69 6e 70 75 74 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 0a ~ "~ -- output buffer start, output point)" 7e 20 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": output-warm-start-attach-boot-source" 3a 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 61 74 74 61 63 68 2d 62 6f 6f 74 2d 73 6f 75 72 63 65 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" main-input-buffer" packstring 8 packalign" 20 20 73 22 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-find-execution-token" ~ " offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' execute offset-to-target-address-space pack64" 20 20 4c 40 27 20 65 78 65 63 75 74 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 execute #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 65 78 65 63 75 74 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' lit offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 lit #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' boot-source offset-to-target-address-space pack64" 20 20 4c 40 27 20 62 6f 6f 74 2d 73 6f 75 72 63 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 boot-source #-- (data pointer)" 20 20 7e 20 3a 20 2d 38 20 62 6f 6f 74 2d 73 6f 75 72 63 65 20 23 2d 2d 20 28 64 61 74 61 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' 3roll offset-to-target-address-space pack64" 20 20 4c 40 27 20 33 72 6f 6c 6c 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 3roll #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 33 72 6f 6c 6c 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" attach-string-to-input-buffer" packstring 8 packalign" 20 20 73 22 20 61 74 74 61 63 68 2d 73 74 72 69 6e 67 2d 74 6f 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-find-execution-token" ~ " offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' swap offset-to-target-address-space pack64" 20 20 4c 40 27 20 73 77 61 70 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 swap #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' lit offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 lit #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " 4 ~ : provide-hex" 20 20 34 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 68 65 78 0a ~ " pack64" 20 20 70 61 63 6b 36 34 0a ~ " ~ : -8 # #-- (integer literal)" 20 20 7e 20 3a 20 2d 38 20 23 20 23 2d 2d 20 28 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 29 0a ~ " L@' unroll offset-to-target-address-space pack64" 20 20 4c 40 27 20 75 6e 72 6f 6c 6c 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 unroll #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 75 6e 72 6f 6c 6c 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' execute offset-to-target-address-space pack64" 20 20 4c 40 27 20 65 78 65 63 75 74 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 execute #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 65 78 65 63 75 74 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Once the log-load routine has been run and" ~ " main-input-buffer has been" 7e 20 20 20 4f 6e 63 65 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 68 61 73 20 62 65 65 6e 20 72 75 6e 20 61 6e 64 20 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 20 68 61 73 20 62 65 65 6e 0a ~ "~ prepared, the next layer is built. This helper outputs" ~ " the final little bit" 7e 20 70 72 65 70 61 72 65 64 2c 20 74 68 65 20 6e 65 78 74 20 6c 61 79 65 72 20 69 73 20 62 75 69 6c 74 2e 20 54 68 69 73 20 68 65 6c 70 65 72 20 6f 75 74 70 75 74 73 20 74 68 65 20 66 69 6e 61 6c 20 6c 69 74 74 6c 65 20 62 69 74 0a ~ "~ of the warm-start routine, which moves on to that layer." 7e 20 6f 66 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2c 20 77 68 69 63 68 20 6d 6f 76 65 73 20 6f 6e 20 74 6f 20 74 68 61 74 20 6c 61 79 65 72 2e 0a ~ "~" 7e 0a ~ "~ Outputting the warm-start routine should always end by" ~ " calling" 7e 20 20 20 4f 75 74 70 75 74 74 69 6e 67 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 73 68 6f 75 6c 64 20 61 6c 77 61 79 73 20 65 6e 64 20 62 79 20 63 61 6c 6c 69 6e 67 0a ~ "~ output-warm-start-footer." 7e 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 66 6f 6f 74 65 72 2e 0a ~ "~" 7e 0a ~ "~ (output buffer start, output point -- output buffer" ~ " start, output point)" 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": output-warm-start-footer" 3a 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 66 6f 6f 74 65 72 0a ~ " L@' litstring offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 69 74 73 74 72 69 6e 67 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 litstring #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 69 74 73 74 72 69 6e 67 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " s" quit" packstring 8 packalign" 20 20 73 22 20 71 75 69 74 22 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " L@' log-load-find-execution-token" ~ " offset-to-target-address-space pack64" 20 20 4c 40 27 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 log-load-find-execution-token #-- (codeword" ~ " pointer)" 20 20 7e 20 3a 20 2d 38 20 6c 6f 67 2d 6c 6f 61 64 2d 66 69 6e 64 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' swap offset-to-target-address-space pack64" 20 20 4c 40 27 20 73 77 61 70 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 swap #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 73 77 61 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ : Get rid of that heap pointer on the stack, we're" ~ " finally done with it!" 20 20 7e 20 3a 20 47 65 74 20 72 69 64 20 6f 66 20 74 68 61 74 20 68 65 61 70 20 70 6f 69 6e 74 65 72 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 2c 20 77 65 27 72 65 20 66 69 6e 61 6c 6c 79 20 64 6f 6e 65 20 77 69 74 68 20 69 74 21 0a ~ " L@' drop offset-to-target-address-space pack64" 20 20 4c 40 27 20 64 72 6f 70 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 drop #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 64 72 6f 70 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " L@' execute offset-to-target-address-space pack64" 20 20 4c 40 27 20 65 78 65 63 75 74 65 20 6f 66 66 73 65 74 2d 74 6f 2d 74 61 72 67 65 74 2d 61 64 64 72 65 73 73 2d 73 70 61 63 65 20 70 61 63 6b 36 34 0a ~ " ~ : -8 execute #-- (codeword pointer)" 20 20 7e 20 3a 20 2d 38 20 65 78 65 63 75 74 65 20 23 2d 2d 20 28 63 6f 64 65 77 6f 72 64 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ This helper generates a single word entry named" ~ " "boot-source", flagged as" 7e 20 20 20 54 68 69 73 20 68 65 6c 70 65 72 20 67 65 6e 65 72 61 74 65 73 20 61 20 73 69 6e 67 6c 65 20 77 6f 72 64 20 65 6e 74 72 79 20 6e 61 6d 65 64 20 22 62 6f 6f 74 2d 73 6f 75 72 63 65 22 2c 20 66 6c 61 67 67 65 64 20 61 73 0a ~ "~ hidden, and outputs a string as its contents. This string" ~ " is meant to be" 7e 20 68 69 64 64 65 6e 2c 20 61 6e 64 20 6f 75 74 70 75 74 73 20 61 20 73 74 72 69 6e 67 20 61 73 20 69 74 73 20 63 6f 6e 74 65 6e 74 73 2e 20 54 68 69 73 20 73 74 72 69 6e 67 20 69 73 20 6d 65 61 6e 74 20 74 6f 20 62 65 0a ~ "~ used by the code generated by" ~ " output-warm-start-attach-boot-source, and will" 7e 20 75 73 65 64 20 62 79 20 74 68 65 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 61 74 74 61 63 68 2d 62 6f 6f 74 2d 73 6f 75 72 63 65 2c 20 61 6e 64 20 77 69 6c 6c 0a ~ "~ have no significant effects otherwise." 7e 20 68 61 76 65 20 6e 6f 20 73 69 67 6e 69 66 69 63 61 6e 74 20 65 66 66 65 63 74 73 20 6f 74 68 65 72 77 69 73 65 2e 0a ~ "~" 7e 0a ~ "~ The helper is expecting to be called at a point where" ~ " the generated output" 7e 20 20 20 54 68 65 20 68 65 6c 70 65 72 20 69 73 20 65 78 70 65 63 74 69 6e 67 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 61 74 20 61 20 70 6f 69 6e 74 20 77 68 65 72 65 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 6f 75 74 70 75 74 0a ~ "~ already has a dictionary, and isn't in the middle of" ~ " generating any" 7e 20 61 6c 72 65 61 64 79 20 68 61 73 20 61 20 64 69 63 74 69 6f 6e 61 72 79 2c 20 61 6e 64 20 69 73 6e 27 74 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 67 65 6e 65 72 61 74 69 6e 67 20 61 6e 79 0a ~ "~ routines. The usual place to call it is immediately after" ~ " the label" 7e 20 72 6f 75 74 69 6e 65 73 2e 20 54 68 65 20 75 73 75 61 6c 20 70 6c 61 63 65 20 74 6f 20 63 61 6c 6c 20 69 74 20 69 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20 74 68 65 20 6c 61 62 65 6c 0a ~ "~ transform." 7e 20 74 72 61 6e 73 66 6f 72 6d 2e 0a ~ "~" 7e 0a ~ "~ (output buffer start, output point, previous entry" ~ " pointer," 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 70 72 65 76 69 6f 75 73 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 2c 0a ~ "~ input string pointer -- output buffer start, output" ~ " point)" 7e 20 20 69 6e 70 75 74 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 20 2d 2d 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": output-boot-source" 3a 20 6f 75 74 70 75 74 2d 62 6f 6f 74 2d 73 6f 75 72 63 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~" ~ " ~ ~ ~ ~ ~ ~ ~ ~ ~" 20 20 7e 20 3a 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 20 7e 0a ~ " ~ :" ~ " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ~ "~~~~~~~~~~~~~" 20 20 7e 20 3a 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : This is the start of the boot-source, which is" ~ " Forth code included" 20 20 7e 20 3a 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 62 6f 6f 74 2d 73 6f 75 72 63 65 2c 20 77 68 69 63 68 20 69 73 20 46 6f 72 74 68 20 63 6f 64 65 20 69 6e 63 6c 75 64 65 64 0a ~ " ~ : as text, and invoked by the warm-start routine. At" ~ " the time it runs," 20 20 7e 20 3a 20 61 73 20 74 65 78 74 2c 20 61 6e 64 20 69 6e 76 6f 6b 65 64 20 62 79 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 2e 20 41 74 20 74 68 65 20 74 69 6d 65 20 69 74 20 72 75 6e 73 2c 0a ~ " ~ : the warm-start routine and the log-load routine have" ~ " both completed and" 20 20 7e 20 3a 20 74 68 65 20 77 61 72 6d 2d 73 74 61 72 74 20 72 6f 75 74 69 6e 65 20 61 6e 64 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 20 72 6f 75 74 69 6e 65 20 68 61 76 65 20 62 6f 74 68 20 63 6f 6d 70 6c 65 74 65 64 20 61 6e 64 0a ~ " ~ : the Forth execution environment is fully ready." 20 20 7e 20 3a 20 74 68 65 20 46 6f 72 74 68 20 65 78 65 63 75 74 69 6f 6e 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 69 73 20 66 75 6c 6c 79 20 72 65 61 64 79 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : The routine is stored as a dictionary entry with" ~ " the "hidden" flag" 20 20 7e 20 3a 20 20 20 54 68 65 20 72 6f 75 74 69 6e 65 20 69 73 20 73 74 6f 72 65 64 20 61 73 20 61 20 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 79 20 77 69 74 68 20 74 68 65 20 22 68 69 64 64 65 6e 22 20 66 6c 61 67 0a ~ " ~ : set. It has a regular entry header up to, but not" ~ " including, the" 20 20 7e 20 3a 20 73 65 74 2e 20 49 74 20 68 61 73 20 61 20 72 65 67 75 6c 61 72 20 65 6e 74 72 79 20 68 65 61 64 65 72 20 75 70 20 74 6f 2c 20 62 75 74 20 6e 6f 74 20 69 6e 63 6c 75 64 69 6e 67 2c 20 74 68 65 0a ~ " ~ : codeword. Then it has text, with a null terminator" ~ " and alignment" 20 20 7e 20 3a 20 63 6f 64 65 77 6f 72 64 2e 20 54 68 65 6e 20 69 74 20 68 61 73 20 74 65 78 74 2c 20 77 69 74 68 20 61 20 6e 75 6c 6c 20 74 65 72 6d 69 6e 61 74 6f 72 20 61 6e 64 20 61 6c 69 67 6e 6d 65 6e 74 0a ~ " ~ : padding at the end." 20 20 7e 20 3a 20 70 61 64 64 69 6e 67 20 61 74 20 74 68 65 20 65 6e 64 2e 0a ~ " ~ :" 20 20 7e 20 3a 0a ~ " ~ : Making this readable in the hex dump is no small" ~ " task, but has been" 20 20 7e 20 3a 20 20 20 4d 61 6b 69 6e 67 20 74 68 69 73 20 72 65 61 64 61 62 6c 65 20 69 6e 20 74 68 65 20 68 65 78 20 64 75 6d 70 20 69 73 20 6e 6f 20 73 6d 61 6c 6c 20 74 61 73 6b 2c 20 62 75 74 20 68 61 73 20 62 65 65 6e 0a ~ " ~ : valiantly attempted." 20 20 7e 20 3a 20 76 61 6c 69 61 6e 74 6c 79 20 61 74 74 65 6d 70 74 65 64 2e 0a ~ " ~ : blank-line" 20 20 7e 20 3a 20 62 6c 61 6e 6b 2d 6c 69 6e 65 0a ~ " ~ : indent" 20 20 7e 20 3a 20 69 6e 64 65 6e 74 0a ~ " 3unroll pack64 ~ : -8 #-- (previous entry pointer)" 20 20 33 75 6e 72 6f 6c 6c 20 70 61 63 6b 36 34 20 7e 20 3a 20 2d 38 20 23 2d 2d 20 28 70 72 65 76 69 6f 75 73 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ " ~ : 1 #-- (entry flags)" 20 20 7e 20 3a 20 31 20 23 2d 2d 20 28 65 6e 74 72 79 20 66 6c 61 67 73 29 0a ~ " 0x80 pack8" 20 20 30 78 38 30 20 70 61 63 6b 38 0a ~ " ~ : bidirectional-null-terminated entry name" 20 20 7e 20 3a 20 62 69 64 69 72 65 63 74 69 6f 6e 61 6c 2d 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 65 6e 74 72 79 20 6e 61 6d 65 0a ~ " ~ : 2 adjust-length" 20 20 7e 20 3a 20 32 20 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 0a ~ " 0 pack8" 20 20 30 20 70 61 63 6b 38 0a ~ " ~ (output buffer start, input string pointer, output" ~ " point)" 20 20 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 69 6e 70 75 74 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " s" boot-source"" 20 20 73 22 20 62 6f 6f 74 2d 73 6f 75 72 63 65 22 0a ~ " ~ We do a spurious stringlen just so the magic comments" ~ " can see the" 20 20 7e 20 20 20 57 65 20 64 6f 20 61 20 73 70 75 72 69 6f 75 73 20 73 74 72 69 6e 67 6c 65 6e 20 6a 75 73 74 20 73 6f 20 74 68 65 20 6d 61 67 69 63 20 63 6f 6d 6d 65 6e 74 73 20 63 61 6e 20 73 65 65 20 74 68 65 0a ~ " ~ string's length and use it for an appropriate" ~ " adjustment." 20 20 7e 20 73 74 72 69 6e 67 27 73 20 6c 65 6e 67 74 68 20 61 6e 64 20 75 73 65 20 69 74 20 66 6f 72 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 61 64 6a 75 73 74 6d 65 6e 74 2e 0a ~ " dup stringlen" 20 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 0a ~ " ~ : provide-data" 20 20 7e 20 3a 20 70 72 6f 76 69 64 65 2d 64 61 74 61 0a ~ " ~ : 1 data-adjust-length" 20 20 7e 20 3a 20 31 20 64 61 74 61 2d 61 64 6a 75 73 74 2d 6c 65 6e 67 74 68 0a ~ " drop" 20 20 64 72 6f 70 0a ~ " ~ : 2 suppress" 20 20 7e 20 3a 20 32 20 73 75 70 70 72 65 73 73 0a ~ " packstring" 20 20 70 61 63 6b 73 74 72 69 6e 67 0a ~ " 8 packalign" 20 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " ~ : fresh-line" 20 20 7e 20 3a 20 66 72 65 73 68 2d 6c 69 6e 65 0a ~ " ~ (output buffer start, input string pointer, output" ~ " point)" 20 20 7e 20 28 6f 75 74 70 75 74 20 62 75 66 66 65 72 20 73 74 61 72 74 2c 20 69 6e 70 75 74 20 73 74 72 69 6e 67 20 70 6f 69 6e 74 65 72 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " dup 3 pick - L!' boot-source" 20 20 64 75 70 20 33 20 70 69 63 6b 20 2d 20 4c 21 27 20 62 6f 6f 74 2d 73 6f 75 72 63 65 0a ~ "" 0a ~ " swap packstring 8 packalign" 20 20 73 77 61 70 20 70 61 63 6b 73 74 72 69 6e 67 20 38 20 70 61 63 6b 61 6c 69 67 6e 0a ~ " ~ : deindent" 20 20 7e 20 3a 20 64 65 69 6e 64 65 6e 74 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Where next?" 7e 20 57 68 65 72 65 20 6e 65 78 74 3f 0a ~ "~ ~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ The definitions of "docol" and "exit" are very tightly" ~ " bound up with the" 7e 20 20 20 54 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 6f 66 20 22 64 6f 63 6f 6c 22 20 61 6e 64 20 22 65 78 69 74 22 20 61 72 65 20 76 65 72 79 20 74 69 67 68 74 6c 79 20 62 6f 75 6e 64 20 75 70 20 77 69 74 68 20 74 68 65 0a ~ "~ execution model. They're defined and explained in" ~ " language/static/core.e," 7e 20 65 78 65 63 75 74 69 6f 6e 20 6d 6f 64 65 6c 2e 20 54 68 65 79 27 72 65 20 64 65 66 69 6e 65 64 20 61 6e 64 20 65 78 70 6c 61 69 6e 65 64 20 69 6e 20 6c 61 6e 67 75 61 67 65 2f 73 74 61 74 69 63 2f 63 6f 72 65 2e 65 2c 0a ~ "~ because they need to be part of the build process in two" ~ " different ways," 7e 20 62 65 63 61 75 73 65 20 74 68 65 79 20 6e 65 65 64 20 74 6f 20 62 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 62 75 69 6c 64 20 70 72 6f 63 65 73 73 20 69 6e 20 74 77 6f 20 64 69 66 66 65 72 65 6e 74 20 77 61 79 73 2c 0a ~ "~ like the other core functionality." 7e 20 6c 69 6b 65 20 74 68 65 20 6f 74 68 65 72 20 63 6f 72 65 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2e 0a ~ "" 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~ ~~ Top-level executable builders ~~" 7e 20 7e 7e 20 54 6f 70 2d 6c 65 76 65 6c 20 65 78 65 63 75 74 61 62 6c 65 20 62 75 69 6c 64 65 72 73 20 7e 7e 0a ~ "~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" 7e 20 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a ~ "~" 7e 0a ~ "~ Although it's perfectly possible to manually invoke the" ~ " pieces of the" 7e 20 20 20 41 6c 74 68 6f 75 67 68 20 69 74 27 73 20 70 65 72 66 65 63 74 6c 79 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 6d 61 6e 75 61 6c 6c 79 20 69 6e 76 6f 6b 65 20 74 68 65 20 70 69 65 63 65 73 20 6f 66 20 74 68 65 0a ~ "~ compiler, it's inconvenient to do so. This file has" ~ " helper words which kick" 7e 20 63 6f 6d 70 69 6c 65 72 2c 20 69 74 27 73 20 69 6e 63 6f 6e 76 65 6e 69 65 6e 74 20 74 6f 20 64 6f 20 73 6f 2e 20 54 68 69 73 20 66 69 6c 65 20 68 61 73 20 68 65 6c 70 65 72 20 77 6f 72 64 73 20 77 68 69 63 68 20 6b 69 63 6b 0a ~ "~ off the process of compilation from the top level." 7e 20 6f 66 66 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 66 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 74 68 65 20 74 6f 70 20 6c 65 76 65 6c 2e 0a ~ "~" 7e 0a ~ "~ The two most important words in the top-level facility" ~ " are "enchant"," 7e 20 20 20 54 68 65 20 74 77 6f 20 6d 6f 73 74 20 69 6d 70 6f 72 74 61 6e 74 20 77 6f 72 64 73 20 69 6e 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 66 61 63 69 6c 69 74 79 20 61 72 65 20 22 65 6e 63 68 61 6e 74 22 2c 0a ~ "~ which produces an executable binary, and "inscribe"," ~ " which produces a" 7e 20 77 68 69 63 68 20 70 72 6f 64 75 63 65 73 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 62 69 6e 61 72 79 2c 20 61 6e 64 20 22 69 6e 73 63 72 69 62 65 22 2c 20 77 68 69 63 68 20 70 72 6f 64 75 63 65 73 20 61 0a ~ "~ commented hex dump corresponding to that same binary." 7e 20 63 6f 6d 6d 65 6e 74 65 64 20 68 65 78 20 64 75 6d 70 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 61 74 20 73 61 6d 65 20 62 69 6e 61 72 79 2e 0a ~ "~" 7e 0a ~ "~ Significant effort has been expended to make sure that" ~ " the interfaces to" 7e 20 20 20 53 69 67 6e 69 66 69 63 61 6e 74 20 65 66 66 6f 72 74 20 68 61 73 20 62 65 65 6e 20 65 78 70 65 6e 64 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 74 68 65 20 69 6e 74 65 72 66 61 63 65 73 20 74 6f 0a ~ "~ "enchant" and "inscribe" are the same, despite them" ~ " notionally existing at" 7e 20 22 65 6e 63 68 61 6e 74 22 20 61 6e 64 20 22 69 6e 73 63 72 69 62 65 22 20 61 72 65 20 74 68 65 20 73 61 6d 65 2c 20 64 65 73 70 69 74 65 20 74 68 65 6d 20 6e 6f 74 69 6f 6e 61 6c 6c 79 20 65 78 69 73 74 69 6e 67 20 61 74 0a ~ "~ different levels of abstraction." 7e 20 64 69 66 66 65 72 65 6e 74 20 6c 65 76 65 6c 73 20 6f 66 20 61 62 73 74 72 61 63 74 69 6f 6e 2e 0a ~ "" 0a ~ "" 0a ~ "~ This accepts a pointer to an existing buffer for file" ~ " contents to be" 7e 20 20 20 54 68 69 73 20 61 63 63 65 70 74 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 65 78 69 73 74 69 6e 67 20 62 75 66 66 65 72 20 66 6f 72 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 20 74 6f 20 62 65 0a ~ "~ appended to, and another pointer to the start of a packed" ~ " list of filenames." 7e 20 61 70 70 65 6e 64 65 64 20 74 6f 2c 20 61 6e 64 20 61 6e 6f 74 68 65 72 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 61 20 70 61 63 6b 65 64 20 6c 69 73 74 20 6f 66 20 66 69 6c 65 6e 61 6d 65 73 2e 0a ~ "~ The filename list consists of null-terminated strings," ~ " all directly abutting" 7e 20 54 68 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 74 72 69 6e 67 73 2c 20 61 6c 6c 20 64 69 72 65 63 74 6c 79 20 61 62 75 74 74 69 6e 67 0a ~ "~ each other in memory, terminated by a zero-length string" ~ " (which can also" 7e 20 65 61 63 68 20 6f 74 68 65 72 20 69 6e 20 6d 65 6d 6f 72 79 2c 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 61 20 7a 65 72 6f 2d 6c 65 6e 67 74 68 20 73 74 72 69 6e 67 20 28 77 68 69 63 68 20 63 61 6e 20 61 6c 73 6f 0a ~ "~ be thought of as a freestanding null byte)." 7e 20 62 65 20 74 68 6f 75 67 68 74 20 6f 66 20 61 73 20 61 20 66 72 65 65 73 74 61 6e 64 69 6e 67 20 6e 75 6c 6c 20 62 79 74 65 29 2e 0a ~ "~" 7e 0a ~ "~ It reads the contents of the named files into the" ~ " buffer, with no" 7e 20 20 20 49 74 20 72 65 61 64 73 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 6e 61 6d 65 64 20 66 69 6c 65 73 20 69 6e 74 6f 20 74 68 65 20 62 75 66 66 65 72 2c 20 77 69 74 68 20 6e 6f 0a ~ "~ separation between them, and returns a pointer to the end" ~ " of the contents." 7e 20 73 65 70 61 72 61 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 74 68 65 6d 2c 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 2e 0a ~ "~" 7e 0a ~ "~ (buffer point, filename list point -- buffer point)" 7e 20 28 62 75 66 66 65 72 20 70 6f 69 6e 74 2c 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 20 70 6f 69 6e 74 20 2d 2d 20 62 75 66 66 65 72 20 70 6f 69 6e 74 29 0a ~ ": read-inputs-from-filename-list" 3a 20 72 65 61 64 2d 69 6e 70 75 74 73 2d 66 72 6f 6d 2d 66 69 6c 65 6e 61 6d 65 2d 6c 69 73 74 0a ~ " ~ (buffer point, filename list point)" 20 20 7e 20 28 62 75 66 66 65 72 20 70 6f 69 6e 74 2c 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 20 70 6f 69 6e 74 29 0a ~ " { dup 8@ } {" 20 20 7b 20 64 75 70 20 38 40 20 7d 20 7b 0a ~ " dup 3roll swap pack-file-contents swap" 20 20 20 20 64 75 70 20 33 72 6f 6c 6c 20 73 77 61 70 20 70 61 63 6b 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 73 77 61 70 0a ~ " dup stringlen 1+ +" 20 20 20 20 64 75 70 20 73 74 72 69 6e 67 6c 65 6e 20 31 2b 20 2b 0a ~ " } while drop ;" 20 20 7d 20 77 68 69 6c 65 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (static source filename list, dynamic source filename" ~ " list, boot source" 7e 20 28 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 62 6f 6f 74 20 73 6f 75 72 63 65 0a ~ "~ filename list -- source to precompile, source to copy to" ~ " log," 7e 20 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 20 2d 2d 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 2c 0a ~ "~ source to copy textually)" 7e 20 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 65 78 74 75 61 6c 6c 79 29 0a ~ ": read-inputs" 3a 20 72 65 61 64 2d 69 6e 70 75 74 73 0a ~ " here @ dup" 20 20 68 65 72 65 20 40 20 64 75 70 0a ~ " ~ (static source filename list, dynamic source filename" ~ " list," 20 20 7e 20 28 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ boot source filename list, source to precompile," ~ " buffer point)" 20 20 7e 20 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 20 62 75 66 66 65 72 20 70 6f 69 6e 74 29 0a ~ " 4 pick read-inputs-from-filename-list" 20 20 34 20 70 69 63 6b 20 72 65 61 64 2d 69 6e 70 75 74 73 2d 66 72 6f 6d 2d 66 69 6c 65 6e 61 6d 65 2d 6c 69 73 74 0a ~ " 0 pack8 8 packalign here !" 20 20 30 20 70 61 63 6b 38 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " ~ (static source filename list, dynamic source filename" ~ " list," 20 20 7e 20 28 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ boot source filename list, source to precompile)" 20 20 7e 20 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 29 0a ~ "" 0a ~ " here @ dup" 20 20 68 65 72 65 20 40 20 64 75 70 0a ~ " ~ (static source filename list, dynamic source filename" ~ " list," 20 20 7e 20 28 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ boot source filename list, source to precompile," ~ " source to copy to log," 20 20 7e 20 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 2c 0a ~ " ~ buffer point)" 20 20 7e 20 20 62 75 66 66 65 72 20 70 6f 69 6e 74 29 0a ~ " 5 pick read-inputs-from-filename-list" 20 20 35 20 70 69 63 6b 20 72 65 61 64 2d 69 6e 70 75 74 73 2d 66 72 6f 6d 2d 66 69 6c 65 6e 61 6d 65 2d 6c 69 73 74 0a ~ " 4 pick read-inputs-from-filename-list" 20 20 34 20 70 69 63 6b 20 72 65 61 64 2d 69 6e 70 75 74 73 2d 66 72 6f 6d 2d 66 69 6c 65 6e 61 6d 65 2d 6c 69 73 74 0a ~ " 0 pack8 8 packalign here !" 20 20 30 20 70 61 63 6b 38 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " ~ (static source filename list, dynamic source filename" ~ " list," 20 20 7e 20 28 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ boot source filename list, source to precompile," ~ " source to copy to log)" 20 20 7e 20 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 29 0a ~ "" 0a ~ " here @ dup" 20 20 68 65 72 65 20 40 20 64 75 70 0a ~ " ~ (static source filename list, dynamic source filename" ~ " list," 20 20 7e 20 28 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ boot source filename list, source to precompile," ~ " source to copy to log," 20 20 7e 20 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 2c 0a ~ " ~ source to copy textually, buffer point)" 20 20 7e 20 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 65 78 74 75 61 6c 6c 79 2c 20 62 75 66 66 65 72 20 70 6f 69 6e 74 29 0a ~ " 4 pick read-inputs-from-filename-list" 20 20 34 20 70 69 63 6b 20 72 65 61 64 2d 69 6e 70 75 74 73 2d 66 72 6f 6d 2d 66 69 6c 65 6e 61 6d 65 2d 6c 69 73 74 0a ~ " 0 pack8 8 packalign here !" 20 20 30 20 70 61 63 6b 38 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ " ~ (static source filename list, dynamic source filename" ~ " list," 20 20 7e 20 28 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ boot source filename list, source to precompile," ~ " source to copy to log," 20 20 7e 20 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 2c 0a ~ " ~ source to copy textually)" 20 20 7e 20 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 65 78 74 75 61 6c 6c 79 29 0a ~ "" 0a ~ " 4 roll drop 4 roll drop 4 roll drop ;" 20 20 34 20 72 6f 6c 6c 20 64 72 6f 70 20 34 20 72 6f 6c 6c 20 64 72 6f 70 20 34 20 72 6f 6c 6c 20 64 72 6f 70 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ (output memory start, current output point," 7e 20 28 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 0a ~ "~ compile-header execution token, compile-footer execution" ~ " token," 7e 20 20 63 6f 6d 70 69 6c 65 2d 68 65 61 64 65 72 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 0a ~ "~ source to precompile, source to copy to log, source to" ~ " include textually" 7e 20 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 2c 20 73 6f 75 72 63 65 20 74 6f 20 69 6e 63 6c 75 64 65 20 74 65 78 74 75 61 6c 6c 79 0a ~ "~ -- output memory start, current output point)" 7e 20 20 2d 2d 20 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ ": output-contents" 3a 20 6f 75 74 70 75 74 2d 63 6f 6e 74 65 6e 74 73 0a ~ " 7 roll 7 roll" 20 20 37 20 72 6f 6c 6c 20 37 20 72 6f 6c 6c 0a ~ " ~ (compile-header execution token, compile-footer" ~ " execution token," 20 20 7e 20 28 63 6f 6d 70 69 6c 65 2d 68 65 61 64 65 72 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 0a ~ " ~ source to precompile, source to copy to log, source to" ~ " include textually," 20 20 7e 20 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 2c 20 73 6f 75 72 63 65 20 74 6f 20 69 6e 63 6c 75 64 65 20 74 65 78 74 75 61 6c 6c 79 2c 0a ~ " ~ output memory start, current output point)" 20 20 7e 20 20 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ Invoke the provided header callback." 20 20 7e 20 49 6e 76 6f 6b 65 20 74 68 65 20 70 72 6f 76 69 64 65 64 20 68 65 61 64 65 72 20 63 61 6c 6c 62 61 63 6b 2e 0a ~ " 7 roll execute" 20 20 37 20 72 6f 6c 6c 20 65 78 65 63 75 74 65 0a ~ " ~ (compile-footer execution token, source to precompile," 20 20 7e 20 28 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 0a ~ " ~ source to copy to log, source to include textually," ~ " output memory start," 20 20 7e 20 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 2c 20 73 6f 75 72 63 65 20 74 6f 20 69 6e 63 6c 75 64 65 20 74 65 78 74 75 61 6c 6c 79 2c 20 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 0a ~ " ~ current output point)" 20 20 7e 20 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " elf-file-header" 20 20 65 6c 66 2d 66 69 6c 65 2d 68 65 61 64 65 72 0a ~ " elf-program-header" 20 20 65 6c 66 2d 70 72 6f 67 72 61 6d 2d 68 65 61 64 65 72 0a ~ "" 0a ~ " output-cold-start" 20 20 6f 75 74 70 75 74 2d 63 6f 6c 64 2d 73 74 61 72 74 0a ~ "" 0a ~ " ~ Warm start and the log-loaded source." 20 20 7e 20 57 61 72 6d 20 73 74 61 72 74 20 61 6e 64 20 74 68 65 20 6c 6f 67 2d 6c 6f 61 64 65 64 20 73 6f 75 72 63 65 2e 0a ~ " output-warm-start-header" 20 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 68 65 61 64 65 72 0a ~ " 4 roll log-load-transform" 20 20 34 20 72 6f 6c 6c 20 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 0a ~ " ~ (compile-footer execution token, source to precompile," 20 20 7e 20 28 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 0a ~ " ~ source to include textually, output memory start," ~ " current output point)" 20 20 7e 20 20 73 6f 75 72 63 65 20 74 6f 20 69 6e 63 6c 75 64 65 20 74 65 78 74 75 61 6c 6c 79 2c 20 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " output-warm-start-post-log-load-transform" 20 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 70 6f 73 74 2d 6c 6f 67 2d 6c 6f 61 64 2d 74 72 61 6e 73 66 6f 72 6d 0a ~ " output-warm-start-attach-boot-source" 20 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 61 74 74 61 63 68 2d 62 6f 6f 74 2d 73 6f 75 72 63 65 0a ~ " output-warm-start-footer" 20 20 6f 75 74 70 75 74 2d 77 61 72 6d 2d 73 74 61 72 74 2d 66 6f 6f 74 65 72 0a ~ "" 0a ~ " ~ The label-transformed source." 20 20 7e 20 54 68 65 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 73 6f 75 72 63 65 2e 0a ~ " 4 roll label-transform" 20 20 34 20 72 6f 6c 6c 20 6c 61 62 65 6c 2d 74 72 61 6e 73 66 6f 72 6d 0a ~ " ~ (compile-footer execution token, source to include" ~ " textually," 20 20 7e 20 28 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 73 6f 75 72 63 65 20 74 6f 20 69 6e 63 6c 75 64 65 20 74 65 78 74 75 61 6c 6c 79 2c 0a ~ " ~ output memory start, current output point, final entry" ~ " pointer)" 20 20 7e 20 20 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 2c 20 66 69 6e 61 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " ~ The boot source." 20 20 7e 20 54 68 65 20 62 6f 6f 74 20 73 6f 75 72 63 65 2e 0a ~ " 4 roll output-boot-source" 20 20 34 20 72 6f 6c 6c 20 6f 75 74 70 75 74 2d 62 6f 6f 74 2d 73 6f 75 72 63 65 0a ~ " ~ (compile-footer execution token, output memory start," 20 20 7e 20 28 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 2c 20 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 0a ~ " ~ current output point)" 20 20 7e 20 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ Invoke the provided footer callback." 20 20 7e 20 49 6e 76 6f 6b 65 20 74 68 65 20 70 72 6f 76 69 64 65 64 20 66 6f 6f 74 65 72 20 63 61 6c 6c 62 61 63 6b 2e 0a ~ " 3roll execute" 20 20 33 72 6f 6c 6c 20 65 78 65 63 75 74 65 0a ~ " ~ (output memory start, current output point)" 20 20 7e 20 28 6f 75 74 70 75 74 20 6d 65 6d 6f 72 79 20 73 74 61 72 74 2c 20 63 75 72 72 65 6e 74 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " ;" 20 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Given a description of an executable, compile and" ~ " output that executable" 7e 20 20 20 47 69 76 65 6e 20 61 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 2c 20 63 6f 6d 70 69 6c 65 20 61 6e 64 20 6f 75 74 70 75 74 20 74 68 61 74 20 65 78 65 63 75 74 61 62 6c 65 0a ~ "~ as runnable binary, to standard output." 7e 20 61 73 20 72 75 6e 6e 61 62 6c 65 20 62 69 6e 61 72 79 2c 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 0a ~ "~" 7e 0a ~ "~ (static source filename list, dynamic source filename" ~ " list," 7e 20 28 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ "~ boot source filename list, compile-header word name," 7e 20 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 63 6f 6d 70 69 6c 65 2d 68 65 61 64 65 72 20 77 6f 72 64 20 6e 61 6d 65 2c 0a ~ "~ compile-footer word name --)" 7e 20 20 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 77 6f 72 64 20 6e 61 6d 65 20 2d 2d 29 0a ~ ": enchant-from-description" 3a 20 65 6e 63 68 61 6e 74 2d 66 72 6f 6d 2d 64 65 73 63 72 69 70 74 69 6f 6e 0a ~ " 5 roll 5 roll 5 roll read-inputs" 20 20 35 20 72 6f 6c 6c 20 35 20 72 6f 6c 6c 20 35 20 72 6f 6c 6c 20 72 65 61 64 2d 69 6e 70 75 74 73 0a ~ " ~ (compile-header word name, compile-footer word name," ~ " source to precompile," 20 20 7e 20 28 63 6f 6d 70 69 6c 65 2d 68 65 61 64 65 72 20 77 6f 72 64 20 6e 61 6d 65 2c 20 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 77 6f 72 64 20 6e 61 6d 65 2c 20 73 6f 75 72 63 65 20 74 6f 20 70 72 65 63 6f 6d 70 69 6c 65 2c 0a ~ " ~ source to copy to log, source to copy textually)" 20 20 7e 20 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 6f 20 6c 6f 67 2c 20 73 6f 75 72 63 65 20 74 6f 20 63 6f 70 79 20 74 65 78 74 75 61 6c 6c 79 29 0a ~ "" 0a ~ " ~ We need an execution token to pass to label-loop." ~ " There's no reason to" 20 20 7e 20 20 20 57 65 20 6e 65 65 64 20 61 6e 20 65 78 65 63 75 74 69 6f 6e 20 74 6f 6b 65 6e 20 74 6f 20 70 61 73 73 20 74 6f 20 6c 61 62 65 6c 2d 6c 6f 6f 70 2e 20 54 68 65 72 65 27 73 20 6e 6f 20 72 65 61 73 6f 6e 20 74 6f 0a ~ " ~ create a dictionary entry for it; we just allocate" ~ " space for the" 20 20 7e 20 63 72 65 61 74 65 20 61 20 64 69 63 74 69 6f 6e 61 72 79 20 65 6e 74 72 79 20 66 6f 72 20 69 74 3b 20 77 65 20 6a 75 73 74 20 61 6c 6c 6f 63 61 74 65 20 73 70 61 63 65 20 66 6f 72 20 74 68 65 0a ~ " ~ executable word body directly." 20 20 7e 20 65 78 65 63 75 74 61 62 6c 65 20 77 6f 72 64 20 62 6f 64 79 20 64 69 72 65 63 74 6c 79 2e 0a ~ " here @" 20 20 68 65 72 65 20 40 0a ~ " docol ," 20 20 64 6f 63 6f 6c 20 2c 0a ~ " 6 roll find entry-to-execution-token literal" 20 20 36 20 72 6f 6c 6c 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 6c 69 74 65 72 61 6c 0a ~ " 5 roll find entry-to-execution-token literal" 20 20 35 20 72 6f 6c 6c 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 6c 69 74 65 72 61 6c 0a ~ " 4 roll literal" 20 20 34 20 72 6f 6c 6c 20 6c 69 74 65 72 61 6c 0a ~ " 3 roll literal" 20 20 33 20 72 6f 6c 6c 20 6c 69 74 65 72 61 6c 0a ~ " swap literal" 20 20 73 77 61 70 20 6c 69 74 65 72 61 6c 0a ~ " ' output-contents entry-to-execution-token ," 20 20 27 20 6f 75 74 70 75 74 2d 63 6f 6e 74 65 6e 74 73 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ " ' exit entry-to-execution-token ," 20 20 27 20 65 78 69 74 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 2c 0a ~ "" 0a ~ " label-loop" 20 20 6c 61 62 65 6c 2d 6c 6f 6f 70 0a ~ " 1 3unroll sys-write" 20 20 31 20 33 75 6e 72 6f 6c 6c 20 73 79 73 2d 77 72 69 74 65 0a ~ " bye ;" 20 20 62 79 65 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Given a filename containing the top-level source of an" ~ " executable, compile" 7e 20 20 20 47 69 76 65 6e 20 61 20 66 69 6c 65 6e 61 6d 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 73 6f 75 72 63 65 20 6f 66 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 2c 20 63 6f 6d 70 69 6c 65 0a ~ "~ and output that executable as runnable binary, to" ~ " standard output." 7e 20 61 6e 64 20 6f 75 74 70 75 74 20 74 68 61 74 20 65 78 65 63 75 74 61 62 6c 65 20 61 73 20 72 75 6e 6e 61 62 6c 65 20 62 69 6e 61 72 79 2c 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 0a ~ "~" 7e 0a ~ "~ (top-level source filename --)" 7e 20 28 74 6f 70 2d 6c 65 76 65 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 2d 2d 29 0a ~ ": enchant" 3a 20 65 6e 63 68 61 6e 74 0a ~ " include drop" 20 20 69 6e 63 6c 75 64 65 20 64 72 6f 70 0a ~ " s" latest-executable-data" find entry-to-execution-token" ~ " execute" 20 20 73 22 20 6c 61 74 65 73 74 2d 65 78 65 63 75 74 61 62 6c 65 2d 64 61 74 61 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " enchant-from-description ;" 20 20 65 6e 63 68 61 6e 74 2d 66 72 6f 6d 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 3b 0a ~ "" 0a ~ "" 0a ~ "~ Given a filename containing the top-level source of an" ~ " executable, compile" 7e 20 20 20 47 69 76 65 6e 20 61 20 66 69 6c 65 6e 61 6d 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 73 6f 75 72 63 65 20 6f 66 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 2c 20 63 6f 6d 70 69 6c 65 0a ~ "~ and output that executable as a commented hex dump, to" ~ " standard output." 7e 20 61 6e 64 20 6f 75 74 70 75 74 20 74 68 61 74 20 65 78 65 63 75 74 61 62 6c 65 20 61 73 20 61 20 63 6f 6d 6d 65 6e 74 65 64 20 68 65 78 20 64 75 6d 70 2c 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 0a ~ "~ Processing the hex dump through "hex" will give an" ~ " identical binary to what" 7e 20 50 72 6f 63 65 73 73 69 6e 67 20 74 68 65 20 68 65 78 20 64 75 6d 70 20 74 68 72 6f 75 67 68 20 22 68 65 78 22 20 77 69 6c 6c 20 67 69 76 65 20 61 6e 20 69 64 65 6e 74 69 63 61 6c 20 62 69 6e 61 72 79 20 74 6f 20 77 68 61 74 0a ~ "~ "enchant" would have produced, with the same inputs." 7e 20 22 65 6e 63 68 61 6e 74 22 20 77 6f 75 6c 64 20 68 61 76 65 20 70 72 6f 64 75 63 65 64 2c 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 73 2e 0a ~ "~" 7e 0a ~ "~ Please notice that if the thing we're compiling is" ~ " "evoke" and its list" 7e 20 20 20 50 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 68 61 74 20 69 66 20 74 68 65 20 74 68 69 6e 67 20 77 65 27 72 65 20 63 6f 6d 70 69 6c 69 6e 67 20 69 73 20 22 65 76 6f 6b 65 22 20 61 6e 64 20 69 74 73 20 6c 69 73 74 0a ~ "~ of source files has changed, we'll be working with the" ~ " new list, not" 7e 20 6f 66 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20 68 61 73 20 63 68 61 6e 67 65 64 2c 20 77 65 27 6c 6c 20 62 65 20 77 6f 72 6b 69 6e 67 20 77 69 74 68 20 74 68 65 20 6e 65 77 20 6c 69 73 74 2c 20 6e 6f 74 0a ~ "~ the old list. This is the same as what "enchant" does," ~ " and it's strictly" 7e 20 74 68 65 20 6f 6c 64 20 6c 69 73 74 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 77 68 61 74 20 22 65 6e 63 68 61 6e 74 22 20 64 6f 65 73 2c 20 61 6e 64 20 69 74 27 73 20 73 74 72 69 63 74 6c 79 0a ~ "~ preferable behavior. We match the behavior of enchant as" ~ " closely as" 7e 20 70 72 65 66 65 72 61 62 6c 65 20 62 65 68 61 76 69 6f 72 2e 20 57 65 20 6d 61 74 63 68 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 65 6e 63 68 61 6e 74 20 61 73 20 63 6c 6f 73 65 6c 79 20 61 73 0a ~ "~ possible in terms of what's taken from the host compiler" ~ " vs. the compiler" 7e 20 70 6f 73 73 69 62 6c 65 20 69 6e 20 74 65 72 6d 73 20 6f 66 20 77 68 61 74 27 73 20 74 61 6b 65 6e 20 66 72 6f 6d 20 74 68 65 20 68 6f 73 74 20 63 6f 6d 70 69 6c 65 72 20 76 73 2e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a ~ "~ being compiled; see the description of "enchant", above," ~ " for more details" 7e 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 64 3b 20 73 65 65 20 74 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 22 65 6e 63 68 61 6e 74 22 2c 20 61 62 6f 76 65 2c 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 0a ~ "~ and discussion of the implications." 7e 20 61 6e 64 20 64 69 73 63 75 73 73 69 6f 6e 20 6f 66 20 74 68 65 20 69 6d 70 6c 69 63 61 74 69 6f 6e 73 2e 0a ~ "~" 7e 0a ~ "~ (top-level source filename --)" 7e 20 28 74 6f 70 2d 6c 65 76 65 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 2d 2d 29 0a ~ ": inscribe" 3a 20 69 6e 73 63 72 69 62 65 0a ~ " dup here @ = { allocate-string } if" 20 20 64 75 70 20 68 65 72 65 20 40 20 3d 20 7b 20 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 20 7d 20 69 66 0a ~ " dup include drop" 20 20 64 75 70 20 69 6e 63 6c 75 64 65 20 64 72 6f 70 0a ~ " s" latest-executable-data" find entry-to-execution-token" ~ " execute" 20 20 73 22 20 6c 61 74 65 73 74 2d 65 78 65 63 75 74 61 62 6c 65 2d 64 61 74 61 22 20 66 69 6e 64 20 65 6e 74 72 79 2d 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2d 74 6f 6b 65 6e 20 65 78 65 63 75 74 65 0a ~ " ~ (top-level source filename, static source filename" ~ " list," 20 20 7e 20 28 74 6f 70 2d 6c 65 76 65 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 2c 20 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ dynamic source filename list, boot source filename" ~ " list," 20 20 7e 20 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ compile-header word name, compile-footer word name" ~ " --)" 20 20 7e 20 20 63 6f 6d 70 69 6c 65 2d 68 65 61 64 65 72 20 77 6f 72 64 20 6e 61 6d 65 2c 20 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 77 6f 72 64 20 6e 61 6d 65 20 2d 2d 29 0a ~ "" 0a ~ " ~ We begin by constructing the full text of all the" ~ " source that will be" 20 20 7e 20 20 20 57 65 20 62 65 67 69 6e 20 62 79 20 63 6f 6e 73 74 72 75 63 74 69 6e 67 20 74 68 65 20 66 75 6c 6c 20 74 65 78 74 20 6f 66 20 61 6c 6c 20 74 68 65 20 73 6f 75 72 63 65 20 74 68 61 74 20 77 69 6c 6c 20 62 65 0a ~ " ~ run inside the scope of the hex transform. That" ~ " necessarily includes not" 20 20 7e 20 72 75 6e 20 69 6e 73 69 64 65 20 74 68 65 20 73 63 6f 70 65 20 6f 66 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 54 68 61 74 20 6e 65 63 65 73 73 61 72 69 6c 79 20 69 6e 63 6c 75 64 65 73 20 6e 6f 74 0a ~ " ~ only the compilation machinery, but the transformation" ~ " system. Notably" 20 20 7e 20 6f 6e 6c 79 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6d 61 63 68 69 6e 65 72 79 2c 20 62 75 74 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 73 79 73 74 65 6d 2e 20 4e 6f 74 61 62 6c 79 0a ~ " ~ it does not need to include "inscribe", but does need" ~ " to include" 20 20 7e 20 69 74 20 64 6f 65 73 20 6e 6f 74 20 6e 65 65 64 20 74 6f 20 69 6e 63 6c 75 64 65 20 22 69 6e 73 63 72 69 62 65 22 2c 20 62 75 74 20 64 6f 65 73 20 6e 65 65 64 20 74 6f 20 69 6e 63 6c 75 64 65 0a ~ " ~ "enchant", and having a stray unused copy of inscribe" ~ " is harmless, so we" 20 20 7e 20 22 65 6e 63 68 61 6e 74 22 2c 20 61 6e 64 20 68 61 76 69 6e 67 20 61 20 73 74 72 61 79 20 75 6e 75 73 65 64 20 63 6f 70 79 20 6f 66 20 69 6e 73 63 72 69 62 65 20 69 73 20 68 61 72 6d 6c 65 73 73 2c 20 73 6f 20 77 65 0a ~ " ~ don't try to exclude it." 20 20 7e 20 64 6f 6e 27 74 20 74 72 79 20 74 6f 20 65 78 63 6c 75 64 65 20 69 74 2e 0a ~ " here @ dup" 20 20 68 65 72 65 20 40 20 64 75 70 0a ~ " ~ (top-level source filename, static source filename" ~ " list," 20 20 7e 20 28 74 6f 70 2d 6c 65 76 65 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 2c 20 73 74 61 74 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ dynamic source filename list, boot source filename" ~ " list," 20 20 7e 20 20 64 79 6e 61 6d 69 63 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 20 62 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 2c 0a ~ " ~ compile-header word name, compile-footer word name," 20 20 7e 20 20 63 6f 6d 70 69 6c 65 2d 68 65 61 64 65 72 20 77 6f 72 64 20 6e 61 6d 65 2c 20 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 77 6f 72 64 20 6e 61 6d 65 2c 0a ~ " ~ hex-transformed source pointer, output point)" 20 20 7e 20 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 73 6f 75 72 63 65 20 70 6f 69 6e 74 65 72 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " 6 pick read-inputs-from-filename-list" 20 20 36 20 70 69 63 6b 20 72 65 61 64 2d 69 6e 70 75 74 73 2d 66 72 6f 6d 2d 66 69 6c 65 6e 61 6d 65 2d 6c 69 73 74 0a ~ " 5 pick read-inputs-from-filename-list" 20 20 35 20 70 69 63 6b 20 72 65 61 64 2d 69 6e 70 75 74 73 2d 66 72 6f 6d 2d 66 69 6c 65 6e 61 6d 65 2d 6c 69 73 74 0a ~ " 4 pick read-inputs-from-filename-list" 20 20 34 20 70 69 63 6b 20 72 65 61 64 2d 69 6e 70 75 74 73 2d 66 72 6f 6d 2d 66 69 6c 65 6e 61 6d 65 2d 6c 69 73 74 0a ~ " 8 roll pack-file-contents" 20 20 38 20 72 6f 6c 6c 20 70 61 63 6b 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 0a ~ "" 0a ~ " ~ We need to create a call to "enchant" in the code" ~ " under transformation." 20 20 7e 20 20 20 57 65 20 6e 65 65 64 20 74 6f 20 63 72 65 61 74 65 20 61 20 63 61 6c 6c 20 74 6f 20 22 65 6e 63 68 61 6e 74 22 20 69 6e 20 74 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 0a ~ " ~ That call doesn't need to be arrived at in exactly the" ~ " same way as an" 20 20 7e 20 54 68 61 74 20 63 61 6c 6c 20 64 6f 65 73 6e 27 74 20 6e 65 65 64 20 74 6f 20 62 65 20 61 72 72 69 76 65 64 20 61 74 20 69 6e 20 65 78 61 63 74 6c 79 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 61 73 20 61 6e 0a ~ " ~ independent call would be, since it doesn't become part" ~ " of the output, it" 20 20 7e 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 63 61 6c 6c 20 77 6f 75 6c 64 20 62 65 2c 20 73 69 6e 63 65 20 69 74 20 64 6f 65 73 6e 27 74 20 62 65 63 6f 6d 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 2c 20 69 74 0a ~ " ~ only needs to have the same effect." 20 20 7e 20 6f 6e 6c 79 20 6e 65 65 64 73 20 74 6f 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 65 66 66 65 63 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ So, we can take the filename list pointers that will" ~ " become parameters" 20 20 7e 20 20 20 53 6f 2c 20 77 65 20 63 61 6e 20 74 61 6b 65 20 74 68 65 20 66 69 6c 65 6e 61 6d 65 20 6c 69 73 74 20 70 6f 69 6e 74 65 72 73 20 74 68 61 74 20 77 69 6c 6c 20 62 65 63 6f 6d 65 20 70 61 72 61 6d 65 74 65 72 73 0a ~ " ~ to "enchant" and pass them in directly, heedless of the" ~ " fact they" 20 20 7e 20 74 6f 20 22 65 6e 63 68 61 6e 74 22 20 61 6e 64 20 70 61 73 73 20 74 68 65 6d 20 69 6e 20 64 69 72 65 63 74 6c 79 2c 20 68 65 65 64 6c 65 73 73 20 6f 66 20 74 68 65 20 66 61 63 74 20 74 68 65 79 0a ~ " ~ reference locations in the outer log." 20 20 7e 20 72 65 66 65 72 65 6e 63 65 20 6c 6f 63 61 74 69 6f 6e 73 20 69 6e 20 74 68 65 20 6f 75 74 65 72 20 6c 6f 67 2e 0a ~ " s" 0x" pack-raw-string 7 roll pack-hex64" 20 20 73 22 20 20 30 78 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 20 37 20 72 6f 6c 6c 20 70 61 63 6b 2d 68 65 78 36 34 0a ~ " s" 0x" pack-raw-string 6 roll pack-hex64" 20 20 73 22 20 20 30 78 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 20 36 20 72 6f 6c 6c 20 70 61 63 6b 2d 68 65 78 36 34 0a ~ " s" 0x" pack-raw-string 5 roll pack-hex64" 20 20 73 22 20 20 30 78 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 20 35 20 72 6f 6c 6c 20 70 61 63 6b 2d 68 65 78 36 34 0a ~ " ~ (compile-header word name, compile-footer word name," 20 20 7e 20 28 63 6f 6d 70 69 6c 65 2d 68 65 61 64 65 72 20 77 6f 72 64 20 6e 61 6d 65 2c 20 63 6f 6d 70 69 6c 65 2d 66 6f 6f 74 65 72 20 77 6f 72 64 20 6e 61 6d 65 2c 0a ~ " ~ hex-transformed source pointer, output point)" 20 20 7e 20 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 73 6f 75 72 63 65 20 70 6f 69 6e 74 65 72 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " ~ We do not have that luxury with the two compile" ~ " hooks; we need copies of" 20 20 7e 20 20 20 57 65 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 74 68 61 74 20 6c 75 78 75 72 79 20 77 69 74 68 20 74 68 65 20 74 77 6f 20 63 6f 6d 70 69 6c 65 20 68 6f 6f 6b 73 3b 20 77 65 20 6e 65 65 64 20 63 6f 70 69 65 73 20 6f 66 0a ~ " ~ them that are under the hex transform. We produce code" ~ " that looks them up" 20 20 7e 20 74 68 65 6d 20 74 68 61 74 20 61 72 65 20 75 6e 64 65 72 20 74 68 65 20 68 65 78 20 74 72 61 6e 73 66 6f 72 6d 2e 20 57 65 20 70 72 6f 64 75 63 65 20 63 6f 64 65 20 74 68 61 74 20 6c 6f 6f 6b 73 20 74 68 65 6d 20 75 70 0a ~ " ~ by name. Notice that this is possible because we" ~ " included the top-level" 20 20 7e 20 62 79 20 6e 61 6d 65 2e 20 4e 6f 74 69 63 65 20 74 68 61 74 20 74 68 69 73 20 69 73 20 70 6f 73 73 69 62 6c 65 20 62 65 63 61 75 73 65 20 77 65 20 69 6e 63 6c 75 64 65 64 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 0a ~ " ~ source in our full source text." 20 20 7e 20 73 6f 75 72 63 65 20 69 6e 20 6f 75 72 20 66 75 6c 6c 20 73 6f 75 72 63 65 20 74 65 78 74 2e 0a ~ " ~" 20 20 7e 0a ~ " ~ Outputting quotation marks is, as always, a pain." 20 20 7e 20 20 20 4f 75 74 70 75 74 74 69 6e 67 20 71 75 6f 74 61 74 69 6f 6e 20 6d 61 72 6b 73 20 69 73 2c 20 61 73 20 61 6c 77 61 79 73 2c 20 61 20 70 61 69 6e 2e 0a ~ " s" s" pack-raw-string 0x22 pack8 s" " pack-raw-string" 20 20 73 22 20 20 73 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 20 30 78 32 32 20 70 61 63 6b 38 20 73 22 20 20 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 0a ~ " 4 roll pack-raw-string" 20 20 34 20 72 6f 6c 6c 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 0a ~ " 0x22 pack8" 20 20 30 78 32 32 20 70 61 63 6b 38 0a ~ " s" allocate-string" pack-raw-string" 20 20 73 22 20 20 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 0a ~ "" 0a ~ " s" s" pack-raw-string 0x22 pack8 s" " pack-raw-string" 20 20 73 22 20 20 73 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 20 30 78 32 32 20 70 61 63 6b 38 20 73 22 20 20 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 0a ~ " 3roll pack-raw-string" 20 20 33 72 6f 6c 6c 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 0a ~ " 0x22 pack8" 20 20 30 78 32 32 20 70 61 63 6b 38 0a ~ " s" allocate-string" pack-raw-string" 20 20 73 22 20 20 61 6c 6c 6f 63 61 74 65 2d 73 74 72 69 6e 67 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 0a ~ " ~ (hex-transformed source pointer, output point)" 20 20 7e 20 28 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 73 6f 75 72 63 65 20 70 6f 69 6e 74 65 72 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ "" 0a ~ " s" enchant-from-description" pack-raw-string" 20 20 73 22 20 20 65 6e 63 68 61 6e 74 2d 66 72 6f 6d 2d 64 65 73 63 72 69 70 74 69 6f 6e 22 20 70 61 63 6b 2d 72 61 77 2d 73 74 72 69 6e 67 0a ~ " ~ (hex-transformed source pointer, output point)" 20 20 7e 20 28 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 73 6f 75 72 63 65 20 70 6f 69 6e 74 65 72 2c 20 6f 75 74 70 75 74 20 70 6f 69 6e 74 29 0a ~ " 0 pack8 8 packalign here !" 20 20 30 20 70 61 63 6b 38 20 38 20 70 61 63 6b 61 6c 69 67 6e 20 68 65 72 65 20 21 0a ~ "" 0a ~ " ~ (hex-transformed source pointer)" 20 20 7e 20 28 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 73 6f 75 72 63 65 20 70 6f 69 6e 74 65 72 29 0a ~ " 1024 1024 4 * * allocate" 20 20 31 30 32 34 20 31 30 32 34 20 34 20 2a 20 2a 20 61 6c 6c 6f 63 61 74 65 0a ~ " 1024 1024 8 * * allocate" 20 20 31 30 32 34 20 31 30 32 34 20 38 20 2a 20 2a 20 61 6c 6c 6f 63 61 74 65 0a ~ " ~ (hex-transformed source pointer, binary buffer" ~ " pointer," 20 20 7e 20 28 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 65 64 20 73 6f 75 72 63 65 20 70 6f 69 6e 74 65 72 2c 20 62 69 6e 61 72 79 20 62 75 66 66 65 72 20 70 6f 69 6e 74 65 72 2c 0a ~ " ~ metadata buffer pointer)" 20 20 7e 20 20 6d 65 74 61 64 61 74 61 20 62 75 66 66 65 72 20 70 6f 69 6e 74 65 72 29 0a ~ "" 0a ~ " swap dup 4 roll hex-transform bye ;" 20 20 73 77 61 70 20 64 75 70 20 34 20 72 6f 6c 6c 20 68 65 78 2d 74 72 61 6e 73 66 6f 72 6d 20 62 79 65 20 3b 0a ~ "" 0a ~ "~ This file should be included in executables that use" ~ " boot-source, as the" 7e 20 20 20 54 68 69 73 20 66 69 6c 65 20 73 68 6f 75 6c 64 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 65 78 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 20 75 73 65 20 62 6f 6f 74 2d 73 6f 75 72 63 65 2c 20 61 73 20 74 68 65 0a ~ "~ last thing in the boot-source. It has the responsibility" ~ " of switching from" 7e 20 6c 61 73 74 20 74 68 69 6e 67 20 69 6e 20 74 68 65 20 62 6f 6f 74 2d 73 6f 75 72 63 65 2e 20 49 74 20 68 61 73 20 74 68 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 6f 66 20 73 77 69 74 63 68 69 6e 67 20 66 72 6f 6d 0a ~ "~ processing boot-source into the regular interaction" ~ " mode." 7e 20 70 72 6f 63 65 73 73 69 6e 67 20 62 6f 6f 74 2d 73 6f 75 72 63 65 20 69 6e 74 6f 20 74 68 65 20 72 65 67 75 6c 61 72 20 69 6e 74 65 72 61 63 74 69 6f 6e 20 6d 6f 64 65 2e 0a ~ "" 0a ~ "relink-main-input-buffer-to-stdin" 72 65 6c 69 6e 6b 2d 6d 61 69 6e 2d 69 6e 70 75 74 2d 62 75 66 66 65 72 2d 74 6f 2d 73 74 64 69 6e 0a ~ "" 0a ~ "" 00 ~ This is the end of the long string literal. We now return you to the ~ normal hex-dump stuff. ~ (alignment padding) ~ label total-size at offset 0x00000000000ac278 is here. ~ This is the end of the hex dump. Thanks for reading!