about summary refs log tree commit diff stats
path: root/subx/051test.subx
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2018-10-14 22:25:57 -0700
committerKartik Agaram <vc@akkartik.com>2018-10-14 22:25:57 -0700
commit6528a08992b3518c86628260c2318a792abaa6bd (patch)
treec3125f2f254059ee978b2759f82dd5b4cd191c32 /subx/051test.subx
parenta9a5718d086d9df52b84b96a6ab4ee751dc26a5e (diff)
downloadmu-6528a08992b3518c86628260c2318a792abaa6bd.tar.gz
4699
Diffstat (limited to 'subx/051test.subx')
-rw-r--r--subx/051test.subx22
1 files changed, 13 insertions, 9 deletions
diff --git a/subx/051test.subx b/subx/051test.subx
index bbae6eff..3d5a1de7 100644
--- a/subx/051test.subx
+++ b/subx/051test.subx
@@ -6,7 +6,8 @@
 
 # main:  (manual test if this is the last file loaded)
   # check-ints-equal(34, 34) == 1
-  68/push  34/imm32
+  68/push  "error in check-ints-equal"/imm32
+  68/push  35/imm32
   68/push  34/imm32
   e8/call  check-ints-equal/disp32
   81          0/subop/add         3/mod/direct    4/rm32/ESP    .           .             .           .           .               8/imm32           # add to ESP
@@ -29,33 +30,36 @@ check-ints-equal:  # (a : int, b : int, msg : (address array byte)) -> boolean
   # if EAX == b/EBX
   39/compare                      3/mod/direct    0/rm32/EAX    .           .             .           3/r32/EBX   .               .                 # compare EAX and EBX
   75/jump-if-unequal  $check-ints-equal:else/disp8
-    # print('.')
+    # _write(2/stderr, '.')
       # push args
   68/push  "."/imm32
+  68/push  2/imm32/stderr
       # call
-  e8/call  write-stderr/disp32
+  e8/call  _write/disp32
       # discard arg
-  81          0/subop/add         3/mod/direct    4/rm32/ESP    .           .             .           .           .               4/imm32           # add to ESP
+  81          0/subop/add         3/mod/direct    4/rm32/ESP    .           .             .           .           .               8/imm32           # add to ESP
     # return
   eb/jump  $check-ints-equal:end/disp8
   # else:
 $check-ints-equal:else:
   # copy third arg (msg) into ECX
   8b/copy                         1/mod/*+disp8   4/rm32/sib    5/base/EBP  4/index/none  .           1/r32/ECX   0x10/disp8       .                # copy *(EBP+16) to ECX
-    # print(ECX)
+    # _write(2/stderr, ECX)
       # push args
   51/push-ECX
+  68/push  2/imm32/stderr
       # call
-  e8/call  write-stderr/disp32
+  e8/call  _write/disp32
       # discard arg
-  81          0/subop/add         3/mod/direct    4/rm32/ESP    .           .             .           .           .               4/imm32           # add to ESP
+  81          0/subop/add         3/mod/direct    4/rm32/ESP    .           .             .           .           .               8/imm32           # add to ESP
     # print newline
       # push args
   68/push  Newline/imm32
+  68/push  2/imm32/stderr
       # call
-  e8/call  write-stderr/disp32
+  e8/call  _write/disp32
       # discard arg
-  81          0/subop/add         3/mod/direct    4/rm32/ESP    .           .             .           .           .               4/imm32           # add to ESP
+  81          0/subop/add         3/mod/direct    4/rm32/ESP    .           .             .           .           .               8/imm32           # add to ESP
     # increment Num-test-failures
   ff          0/subop/increment   0/mod/indirect  5/rm32/.disp32            .             .           .           Num-test-failures/disp32          # increment *Num-test-failures
 $check-ints-equal:end: