diff options
author | Kartik Agaram <vc@akkartik.com> | 2020-01-16 18:31:12 -0800 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2020-01-16 18:31:12 -0800 |
commit | 6070c23e5e1c60d3bb169e43bddfa59b1d322427 (patch) | |
tree | 9a70e378c33c15e4779cf94abda8f37c35a5d1da /html/054string-equal.subx.html | |
parent | 5a6601aba973ba1d1ef30b7b64438c25623b89c5 (diff) | |
download | mu-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 'html/054string-equal.subx.html')
-rw-r--r-- | html/054string-equal.subx.html | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/html/054string-equal.subx.html b/html/054string-equal.subx.html index 027d9c6c..c41c7042 100644 --- a/html/054string-equal.subx.html +++ b/html/054string-equal.subx.html @@ -112,7 +112,7 @@ if ('onhashchange' in window) { <span id="L50" class="LineNr"> 50 </span><span class="Constant">$string-equal?:lengths</span>: <span id="L51" class="LineNr"> 51 </span> <span class="subxComment"># if (ecx != benchmark->length) return false</span> <span id="L52" class="LineNr"> 52 </span> 39/compare 0/mod/indirect 7/rm32/edi <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 1/r32/ecx <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="subxComment"># compare *edi and ecx</span> -<span id="L53" class="LineNr"> 53 </span> 75/jump-if-not-equal $string-equal?:false/disp8 +<span id="L53" class="LineNr"> 53 </span> 75/jump-if-!= $string-equal?:false/disp8 <span id="L54" class="LineNr"> 54 </span> <span class="subxComment"># var currs/esi : (addr byte) = s->data</span> <span id="L55" class="LineNr"> 55 </span> 81 0/subop/add 3/mod/direct 6/rm32/esi <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 4/imm32 <span class="subxComment"># add to esi</span> <span id="L56" class="LineNr"> 56 </span> <span class="subxComment"># var maxs/ecx : (addr byte) = &s->data[s->length]</span> @@ -126,14 +126,14 @@ if ('onhashchange' in window) { <span id="L64" class="LineNr"> 64 </span><span class="Constant">$string-equal?:loop</span>: <span id="L65" class="LineNr"> 65 </span> <span class="subxComment"># if (currs >= maxs) return true</span> <span id="L66" class="LineNr"> 66 </span> 39/compare 3/mod/direct 6/rm32/esi <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 1/r32/ecx <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="subxComment"># compare esi with ecx</span> -<span id="L67" class="LineNr"> 67 </span> 73/jump-if-greater-or-equal-unsigned $string-equal?:true/disp8 +<span id="L67" class="LineNr"> 67 </span> 73/jump-if-addr>= $string-equal?:true/disp8 <span id="L68" class="LineNr"> 68 </span> <span class="subxComment"># c1 = *currs</span> <span id="L69" class="LineNr"> 69 </span> 8a/copy-byte 0/mod/indirect 6/rm32/esi <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 0/r32/AL <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="subxComment"># copy byte at *esi to AL</span> <span id="L70" class="LineNr"> 70 </span> <span class="subxComment"># c2 = *currb</span> <span id="L71" class="LineNr"> 71 </span> 8a/copy-byte 0/mod/indirect 7/rm32/edi <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 2/r32/DL <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="subxComment"># copy byte at *edi to DL</span> <span id="L72" class="LineNr"> 72 </span> <span class="subxComment"># if (c1 != c2) return false</span> <span id="L73" class="LineNr"> 73 </span> 39/compare 3/mod/direct 0/rm32/eax <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 2/r32/edx <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="subxComment"># compare eax and edx</span> -<span id="L74" class="LineNr"> 74 </span> 75/jump-if-not-equal $string-equal?:false/disp8 +<span id="L74" class="LineNr"> 74 </span> 75/jump-if-!= $string-equal?:false/disp8 <span id="L75" class="LineNr"> 75 </span> <span class="subxComment"># ++currs</span> <span id="L76" class="LineNr"> 76 </span> 46/increment-esi <span id="L77" class="LineNr"> 77 </span> <span class="subxComment"># ++currb</span> |