about summary refs log tree commit diff stats
path: root/apps/sigils.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/sigils.subx
parent76599bb813970f09ddd27d476f5b62be9bf97d4d (diff)
downloadmu-f0b7e327c5e612ea2f72f2e41c046a2105076654.tar.gz
5714
Replace calculations of constants with labels.
Diffstat (limited to 'apps/sigils.subx')
-rw-r--r--apps/sigils.subx190
1 files changed, 62 insertions, 128 deletions
diff --git a/apps/sigils.subx b/apps/sigils.subx
index 296ad68d..62ce5b19 100644
--- a/apps/sigils.subx
+++ b/apps/sigils.subx
@@ -216,19 +216,13 @@ $subx-sigils:direct-mode:
 #?     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)
-#?     # . . save eax
-#?     50/push-eax
+#?     # . 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
 #?     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               4/imm32           # add to esp
-#?     # . . restore eax
-#?     58/pop-to-eax
 #?     # . write-slice-buffered(Stderr, word-slice)
 #?     # . . push args
 #?     52/push-edx
@@ -448,11 +442,9 @@ test-subx-sigils-passes-most-words-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
@@ -464,11 +456,9 @@ test-subx-sigils-passes-most-words-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
@@ -550,11 +540,9 @@ test-subx-sigils-direct-mode:
     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
@@ -566,11 +554,9 @@ test-subx-sigils-direct-mode:
     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
@@ -652,11 +638,9 @@ test-subx-sigils-direct-mode-with-metadata:
     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
@@ -668,11 +652,9 @@ test-subx-sigils-direct-mode-with-metadata:
     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
@@ -728,11 +710,9 @@ test-subx-sigils-register-indirect-mode:
     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
@@ -744,11 +724,9 @@ test-subx-sigils-register-indirect-mode:
     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
@@ -830,11 +808,9 @@ test-subx-sigils-register-indirect-mode-with-metadata:
     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
@@ -846,11 +822,9 @@ test-subx-sigils-register-indirect-mode-with-metadata:
     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
@@ -906,11 +880,9 @@ test-subx-sigils-register-indirect-mode-without-displacement:
     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
@@ -922,11 +894,9 @@ test-subx-sigils-register-indirect-mode-without-displacement:
     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 +978,9 @@ test-subx-sigils-register-indirect-mode-with-displacement:
     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
@@ -1024,11 +992,9 @@ test-subx-sigils-register-indirect-mode-with-displacement:
     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
@@ -1111,11 +1077,9 @@ test-subx-sigils-register-indirect-mode-with-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-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
@@ -1127,11 +1091,9 @@ test-subx-sigils-register-indirect-mode-with-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
@@ -1213,11 +1175,9 @@ test-subx-sigils-register-indirect-mode-with-sib-byte-negative-displacement:
     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
@@ -1229,11 +1189,9 @@ test-subx-sigils-register-indirect-mode-with-sib-byte-negative-displacement:
     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
@@ -1315,11 +1273,9 @@ test-subx-sigils-indirect-mode-without-register:
     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
@@ -1331,11 +1287,9 @@ test-subx-sigils-indirect-mode-without-register:
     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
@@ -1485,11 +1439,9 @@ test-emit-direct-mode:
     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
@@ -1570,11 +1522,9 @@ test-emit-direct-mode-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
@@ -3381,11 +3331,9 @@ test-emit-indirect-mode:
     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
@@ -3460,11 +3408,9 @@ test-emit-indirect-mode-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
@@ -3539,11 +3485,9 @@ test-emit-indirect-mode-with-disp:
     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
@@ -3618,11 +3562,9 @@ test-emit-indirect-mode-with-disp-negative:
     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
@@ -3697,11 +3639,9 @@ test-emit-indirect-mode-with-sib:
     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
@@ -3776,11 +3716,9 @@ test-emit-indirect-mode-ebp:
     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
@@ -3855,11 +3793,9 @@ test-emit-indirect-mode-esp:
     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
@@ -4164,13 +4100,11 @@ $next-hex-int:abort:
     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)
     # . . save eax
     50/push-eax
     # . . 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