about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2020-05-20 22:57:42 -0700
committerKartik Agaram <vc@akkartik.com>2020-05-20 22:57:42 -0700
commit667d16c21a977601eb505212e5c52ad4cf2eefc5 (patch)
treef7bc6dc4da138df51e4d11b7b7a305ce51f33ee7
parent21dfd96ac492ae33175031349220050d37de88ed (diff)
downloadmu-667d16c21a977601eb505212e5c52ad4cf2eefc5.tar.gz
mu.subx: 21 failing tests remaining
-rw-r--r--081table.subx2
-rw-r--r--apps/mu.subx10
2 files changed, 6 insertions, 6 deletions
diff --git a/081table.subx b/081table.subx
index 64f25dd2..620784b7 100644
--- a/081table.subx
+++ b/081table.subx
@@ -108,7 +108,7 @@ $get:abort:
     81          0/subop/add         3/mod/direct    4/rm32/esp    .           .             .           .           .               8/imm32           # add to esp
     # . _write(2/stderr, key)
     # . . push args
-    56/push-esi
+    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp    .           .             .           .           0xc/disp8       .                 # push *(ebp+12)
     68/push  2/imm32/stderr
     # . . call
     e8/call  _write/disp32
diff --git a/apps/mu.subx b/apps/mu.subx
index 5963bda9..3a99b710 100644
--- a/apps/mu.subx
+++ b/apps/mu.subx
@@ -1794,7 +1794,7 @@ test-convert-function-with-branches-and-local-vars:
     5d/pop-to-ebp
     c3/return
 
-_failing-test-convert-function-with-conditional-loops-and-local-vars:
+test-convert-function-with-conditional-loops-and-local-vars:
     # A conditional 'loop' after a 'var' in a block is converted into a nested
     # block that performs all necessary cleanup before jumping. This results
     # in some ugly code duplication.
@@ -1853,7 +1853,7 @@ _failing-test-convert-function-with-conditional-loops-and-local-vars:
     5d/pop-to-ebp
     c3/return
 
-_failing-test-convert-function-with-unconditional-loops-and-local-vars:
+test-convert-function-with-unconditional-loops-and-local-vars:
     # An unconditional 'loop' after a 'var' in a block is emitted _after_ the
     # regular block cleanup. Any instructions after 'loop' are dead and
     # therefore skipped.
@@ -1908,7 +1908,7 @@ _failing-test-convert-function-with-unconditional-loops-and-local-vars:
     5d/pop-to-ebp
     c3/return
 
-_failing-test-convert-function-with-branches-and-loops-and-local-vars:
+test-convert-function-with-branches-and-loops-and-local-vars:
     # . prologue
     55/push-ebp
     89/<- %ebp 4/r32/esp
@@ -7775,9 +7775,9 @@ $emit-reverse-break:end:
 # Table from Mu branch instructions to the reverse SubX opcodes for them.
 Reverse-branch:  # (table (handle array byte) (handle array byte))
   # a table is a stream
-  0xb0/imm32/write
+  0x140/imm32/write
   0/imm32/read
-  0xb0/imm32/size
+  0x140/imm32/size
   # data
   0x11/imm32/alloc-id   _string-break-if-=/imm32        . . .   0x11/imm32/alloc-id   _string_0f_85_jump_label/imm32
   0x11/imm32/alloc-id   _string-loop-if-=/imm32         . . .   0x11/imm32/alloc-id   _string_0f_85_jump_label/imm32