about summary refs log tree commit diff stats
path: root/apps/pack.subx
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2019-10-25 05:54:06 -0700
committerKartik Agaram <vc@akkartik.com>2019-10-25 06:10:36 -0700
commitf0b7e327c5e612ea2f72f2e41c046a2105076654 (patch)
treeb598dfdfb31a748634302b6f336aebd356fe372d /apps/pack.subx
parent76599bb813970f09ddd27d476f5b62be9bf97d4d (diff)
downloadmu-f0b7e327c5e612ea2f72f2e41c046a2105076654.tar.gz
5714
Replace calculations of constants with labels.
Diffstat (limited to 'apps/pack.subx')
-rw-r--r--apps/pack.subx324
1 files changed, 108 insertions, 216 deletions
diff --git a/apps/pack.subx b/apps/pack.subx
index 51ad879e..5917f735 100644
--- a/apps/pack.subx
+++ b/apps/pack.subx
@@ -216,11 +216,9 @@ $subx-pack:check2:
 #?     e8/call  write/disp32
 #?     # . . discard args
 #?     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               8/imm32           # add to esp
-#?     # . clear-stream(Stderr+4)
+#?     # . clear-stream(Stderr->buffer)
 #?     # . . push args
-#?     b8/copy-to-eax  Stderr/imm32
-#?     05/add-to-eax  4/imm32
-#?     50/push-eax
+#?     68/push  Stderr->buffer/imm32
 #?     # . . call
 #?     e8/call  clear-stream/disp32
 #?     # . . discard args
@@ -278,11 +276,9 @@ $subx-pack:check2:
 #?     e8/call  write/disp32
 #?     # . . discard args
 #?     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               8/imm32           # add to esp
-#?     # . clear-stream(Stderr+4)
+#?     # . clear-stream(Stderr->buffer)
 #?     # . . push args
-#?     b8/copy-to-eax  Stderr/imm32
-#?     05/add-to-eax  4/imm32
-#?     50/push-eax
+#?     68/push  Stderr->buffer/imm32
 #?     # . . call
 #?     e8/call  clear-stream/disp32
 #?     # . . discard args
@@ -402,11 +398,9 @@ test-subx-pack-passes-empty-lines-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-input-buffered-file+4)
+    # . clear-stream(_test-input-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-input-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-input-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -418,11 +412,9 @@ test-subx-pack-passes-empty-lines-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -471,11 +463,9 @@ test-subx-pack-passes-lines-with-just-whitespace-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-input-buffered-file+4)
+    # . clear-stream(_test-input-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-input-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-input-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -487,11 +477,9 @@ test-subx-pack-passes-lines-with-just-whitespace-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -548,11 +536,9 @@ test-subx-pack-passes-segment-headers-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-input-buffered-file+4)
+    # . clear-stream(_test-input-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-input-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-input-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -564,11 +550,9 @@ test-subx-pack-passes-segment-headers-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -625,11 +609,9 @@ test-subx-pack-in-data-segment:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-input-buffered-file+4)
+    # . clear-stream(_test-input-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-input-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-input-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -641,11 +623,9 @@ test-subx-pack-in-data-segment:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -765,11 +745,9 @@ test-subx-pack-code-and-data-segments:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-input-buffered-file+4)
+    # . clear-stream(_test-input-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-input-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-input-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -781,11 +759,9 @@ test-subx-pack-code-and-data-segments:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1008,11 +984,9 @@ $convert-data:loop:
 #?     e8/call  write/disp32
 #?     # . . discard args
 #?     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               8/imm32           # add to esp
-#?     # . clear-stream(Stderr+4)
+#?     # . clear-stream(Stderr->buffer)
 #?     # . . push args
-#?     b8/copy-to-eax  Stderr/imm32
-#?     05/add-to-eax  4/imm32
-#?     50/push-eax
+#?     68/push  Stderr->buffer/imm32
 #?     # . . call
 #?     e8/call  clear-stream/disp32
 #?     # . . discard args
@@ -1171,11 +1145,9 @@ test-convert-data-passes-comments-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1265,11 +1237,9 @@ test-convert-data-passes-labels-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1334,11 +1304,9 @@ test-convert-data-passes-names-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1402,11 +1370,9 @@ test-convert-data-handles-imm32:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1471,11 +1437,9 @@ test-convert-data-handles-single-byte:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1539,11 +1503,9 @@ test-convert-data-multiple-bytes:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1607,11 +1569,9 @@ test-convert-data-byte-then-name:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1675,11 +1635,9 @@ test-convert-data-multiple-words:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -1769,11 +1727,9 @@ test-convert-data-trailing-comment:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -2399,11 +2355,9 @@ $emit-modrm:loop:
 #?     e8/call  write/disp32
 #?     # . . discard args
 #?     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               8/imm32           # add to esp
-#?     # . clear-stream(Stderr+4)
+#?     # . clear-stream(Stderr->buffer)
 #?     # . . push args
-#?     b8/copy-to-eax  Stderr/imm32
-#?     05/add-to-eax  4/imm32
-#?     50/push-eax
+#?     68/push  Stderr->buffer/imm32
 #?     # . . call
 #?     e8/call  clear-stream/disp32
 #?     # . . discard args
@@ -2710,11 +2664,9 @@ $emit-sib:loop:
 #?     e8/call  write/disp32
 #?     # . . discard args
 #?     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               8/imm32           # add to esp
-#?     # . clear-stream(Stderr+4)
+#?     # . clear-stream(Stderr->buffer)
 #?     # . . push args
-#?     b8/copy-to-eax  Stderr/imm32
-#?     05/add-to-eax  4/imm32
-#?     50/push-eax
+#?     68/push  Stderr->buffer/imm32
 #?     # . . call
 #?     e8/call  clear-stream/disp32
 #?     # . . discard args
@@ -2975,11 +2927,9 @@ $emit-disp:loop:
 #?     e8/call  write/disp32
 #?     # . . discard args
 #?     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               8/imm32           # add to esp
-#?     # . clear-stream(Stderr+4)
+#?     # . clear-stream(Stderr->buffer)
 #?     # . . push args
-#?     b8/copy-to-eax  Stderr/imm32
-#?     05/add-to-eax  4/imm32
-#?     50/push-eax
+#?     68/push  Stderr->buffer/imm32
 #?     # . . call
 #?     e8/call  clear-stream/disp32
 #?     # . . discard args
@@ -3196,11 +3146,9 @@ $emit-imm:loop:
 #?     e8/call  write/disp32
 #?     # . . discard args
 #?     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               8/imm32           # add to esp
-#?     # . clear-stream(Stderr+4)
+#?     # . clear-stream(Stderr->buffer)
 #?     # . . push args
-#?     b8/copy-to-eax  Stderr/imm32
-#?     05/add-to-eax  4/imm32
-#?     50/push-eax
+#?     68/push  Stderr->buffer/imm32
 #?     # . . call
 #?     e8/call  clear-stream/disp32
 #?     # . . discard args
@@ -3383,11 +3331,9 @@ test-convert-instruction-passes-comments-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -3451,11 +3397,9 @@ test-convert-instruction-passes-labels-through:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -3519,11 +3463,9 @@ test-convert-instruction-handles-single-opcode:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -3613,11 +3555,9 @@ test-convert-instruction-handles-0f-opcode:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -3707,11 +3647,9 @@ test-convert-instruction-handles-f2-opcode:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -3801,11 +3739,9 @@ test-convert-instruction-handles-f3-opcode:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -3895,11 +3831,9 @@ test-convert-instruction-handles-f2-0f-opcode:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -3989,11 +3923,9 @@ test-convert-instruction-handles-f3-0f-opcode:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4083,11 +4015,9 @@ test-convert-instruction-handles-unused-opcodes:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4177,11 +4107,9 @@ test-convert-instruction-handles-unused-second-opcodes:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4271,11 +4199,9 @@ test-convert-instruction-handles-unused-second-opcodes-2:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4365,11 +4291,9 @@ test-convert-instruction-emits-modrm-byte:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4458,11 +4382,9 @@ test-convert-instruction-emits-modrm-byte-with-non-zero-mod:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4552,11 +4474,9 @@ test-convert-instruction-emits-modrm-byte-from-subop:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4646,11 +4566,9 @@ test-convert-instruction-emits-modrm-byte-with-missing-mod:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4740,11 +4658,9 @@ test-convert-instruction-emits-modrm-byte-with-missing-rm32:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4834,11 +4750,9 @@ test-convert-instruction-emits-modrm-byte-with-missing-r32:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -4928,11 +4842,9 @@ test-convert-instruction-emits-sib-byte:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5022,11 +4934,9 @@ test-convert-instruction-emits-sib-byte-with-missing-base:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5116,11 +5026,9 @@ test-convert-instruction-emits-sib-byte-with-missing-index:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5210,11 +5118,9 @@ test-convert-instruction-emits-sib-byte-with-missing-scale:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5304,11 +5210,9 @@ test-convert-instruction-handles-disp32-operand:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5398,11 +5302,9 @@ test-convert-instruction-handles-disp16-operand:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5492,11 +5394,9 @@ test-convert-instruction-handles-disp8-operand:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5586,11 +5486,9 @@ test-convert-instruction-handles-disp8-name:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5680,11 +5578,9 @@ test-convert-instruction-handles-imm32-operand:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5775,11 +5671,9 @@ test-convert-instruction-handles-imm16-operand:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args
@@ -5870,11 +5764,9 @@ test-convert-instruction-handles-imm8-operand:
     e8/call  clear-stream/disp32
     # . . discard args
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-    # . clear-stream(_test-output-buffered-file+4)
+    # . clear-stream(_test-output-buffered-file->buffer)
     # . . push args
-    b8/copy-to-eax  _test-output-buffered-file/imm32
-    05/add-to-eax  4/imm32
-    50/push-eax
+    68/push  _test-output-buffered-file->buffer/imm32
     # . . call
     e8/call  clear-stream/disp32
     # . . discard args