about summary refs log tree commit diff stats
path: root/100array-equal.subx
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2020-01-16 18:31:12 -0800
committerKartik Agaram <vc@akkartik.com>2020-01-16 18:31:12 -0800
commit6070c23e5e1c60d3bb169e43bddfa59b1d322427 (patch)
tree9a70e378c33c15e4779cf94abda8f37c35a5d1da /100array-equal.subx
parent5a6601aba973ba1d1ef30b7b64438c25623b89c5 (diff)
downloadmu-6070c23e5e1c60d3bb169e43bddfa59b1d322427.tar.gz
5897 - rename comparison instructions
Signed and unsigned don't quite capture the essence of what the different
combinations of x86 flags are doing for SubX. The crucial distinction is
that one set of comparison operators is for integers and the second is
for addresses.
Diffstat (limited to '100array-equal.subx')
-rw-r--r--100array-equal.subx14
1 files changed, 7 insertions, 7 deletions
diff --git a/100array-equal.subx b/100array-equal.subx
index e86f7c6b..374a6cdc 100644
--- a/100array-equal.subx
+++ b/100array-equal.subx
@@ -42,7 +42,7 @@ array-equal?:  # a : (addr array int), b : (addr array int) -> eax : boolean
 $array-equal?:lengths:
     # if (lena != b->length) return false
     39/compare *edi 2/r32/edx
-    75/jump-if-not-equal $array-equal?:false/disp8
+    75/jump-if-!= $array-equal?:false/disp8
     # var curra/esi : (addr byte) = a->data
     81 0/subop/add %esi 4/imm32
     # var currb/edi : (addr byte) = b->data
@@ -54,14 +54,14 @@ $array-equal?:lengths:
 $array-equal?:loop:
     # if (i >= lena) return true
     39/compare %ecx 2/r32/edx
-    7d/jump-if-greater-or-equal $array-equal?:true/disp8
+    7d/jump-if->= $array-equal?:true/disp8
     # var vala/eax : int = *curra
     8b/-> *esi 0/r32/eax
     # var valb/ebx : int = *currb
     8b/-> *edi 3/r32/ebx
     # if (vala != valb) return false
     39/compare %eax 3/r32/ebx
-    75/jump-if-not-equal $array-equal?:false/disp8
+    75/jump-if-!= $array-equal?:false/disp8
     # i += 4
     81 0/subop/add %ecx 4/imm32
     # currs += 4
@@ -275,7 +275,7 @@ parse-array-of-ints:  # ad : (addr allocation-descriptor), s : (addr string) ->
 $parse-array-of-ints:loop1:
     # if (curr >= end) break
     39/compare %ecx 2/r32/edx
-    73/jump-if-greater-or-equal-unsigned $parse-array-of-ints:break1/disp8
+    73/jump-if-addr>= $parse-array-of-ints:break1/disp8
     # curr = skip-chars-matching-in-slice(curr, end, ' ')
     # . eax = skip-chars-matching-in-slice(curr, end, ' ')
     # . . push args
@@ -290,7 +290,7 @@ $parse-array-of-ints:loop1:
     89/<- %ecx 0/r32/eax
     # if (curr >= end) break
     39/compare %ecx 2/r32/edx
-    73/jump-if-greater-or-equal-unsigned $parse-array-of-ints:break1/disp8
+    73/jump-if-addr>= $parse-array-of-ints:break1/disp8
     # curr = skip-chars-not-matching-in-slice(curr, end, ' ')
     # . eax = skip-chars-not-matching-in-slice(curr, end, ' ')
     # . . push args
@@ -333,7 +333,7 @@ $parse-array-of-ints:pass2:
 $parse-array-of-ints:loop2:
     # if (slice->start >= end) break
     39/compare *ecx 2/r32/edx
-    73/jump-if-greater-or-equal-unsigned $parse-array-of-ints:end/disp8
+    73/jump-if-addr>= $parse-array-of-ints:end/disp8
     # slice->start = skip-chars-matching-in-slice(slice->start, end, ' ')
     # . eax = skip-chars-matching-in-slice(slice->start, end, ' ')
     # . . push args
@@ -348,7 +348,7 @@ $parse-array-of-ints:loop2:
     89/<- *ecx 0/r32/eax
     # if (slice->start >= end) break
     39/compare *ecx 2/r32/edx
-    73/jump-if-greater-or-equal-unsigned $parse-array-of-ints:end/disp8
+    73/jump-if-addr>= $parse-array-of-ints:end/disp8
     # slice->end = skip-chars-not-matching-in-slice(slice->start, end, ' ')
     # . eax = skip-chars-not-matching-in-slice(curr, end, ' ')
     # . . push args