diff options
Diffstat (limited to 'html/093array-equal.subx.html')
-rw-r--r-- | html/093array-equal.subx.html | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/html/093array-equal.subx.html b/html/093array-equal.subx.html index 4da63790..dabe8ef2 100644 --- a/html/093array-equal.subx.html +++ b/html/093array-equal.subx.html @@ -66,7 +66,7 @@ if ('onhashchange' in window) { <span id="L5" class="LineNr"> 5 </span><span class="subxS1Comment"># . op subop mod rm32 base index scale r32</span> <span id="L6" class="LineNr"> 6 </span><span class="subxS1Comment"># . 1-3 bytes 3 bits 2 bits 3 bits 3 bits 3 bits 2 bits 2 bits 0/1/2/4 bytes 0/1/2/4 bytes</span> <span id="L7" class="LineNr"> 7 </span> -<span id="L8" class="LineNr"> 8 </span><span class="subxFunction">array-equal?</span>: <span class="subxComment"># a : (address array int), b : (address array int) -> eax : boolean</span> +<span id="L8" class="LineNr"> 8 </span><span class="subxFunction">array-equal?</span>: <span class="subxComment"># a : (addr array int), b : (addr array int) -> eax : boolean</span> <span id="L9" class="LineNr"> 9 </span> <span class="subxComment"># pseudocode:</span> <span id="L10" class="LineNr"> 10 </span> <span class="subxComment"># lena = a->length</span> <span id="L11" class="LineNr"> 11 </span> <span class="subxComment"># if (lena != b->length) return false</span> @@ -107,9 +107,9 @@ if ('onhashchange' in window) { <span id="L46" class="LineNr"> 46 </span> <span class="subxComment"># if (lena != b->length) return false</span> <span id="L47" class="LineNr"> 47 </span> 39/compare 0/mod/indirect 7/rm32/edi <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 *edi and edx</span> <span id="L48" class="LineNr"> 48 </span> 75/jump-if-not-equal $array-equal?:false/disp8 -<span id="L49" class="LineNr"> 49 </span> <span class="subxComment"># var curra/esi : (address byte) = a->data</span> +<span id="L49" class="LineNr"> 49 </span> <span class="subxComment"># var curra/esi : (addr byte) = a->data</span> <span id="L50" class="LineNr"> 50 </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="L51" class="LineNr"> 51 </span> <span class="subxComment"># var currb/edi : (address byte) = b->data</span> +<span id="L51" class="LineNr"> 51 </span> <span class="subxComment"># var currb/edi : (addr byte) = b->data</span> <span id="L52" class="LineNr"> 52 </span> 81 0/subop/add 3/mod/direct 7/rm32/edi <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 edi</span> <span id="L53" class="LineNr"> 53 </span> <span class="subxComment"># var i/ecx : int = 0</span> <span id="L54" class="LineNr"> 54 </span> 31/xor 3/mod/direct 1/rm32/ecx <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"># clear ecx</span> @@ -291,7 +291,7 @@ if ('onhashchange' in window) { <span id="L230" class="LineNr">230 </span> 5d/pop-to-ebp <span id="L231" class="LineNr">231 </span> c3/return <span id="L232" class="LineNr">232 </span> -<span id="L233" class="LineNr">233 </span><span class="subxFunction">parse-array-of-ints</span>: <span class="subxComment"># ad : (address allocation-descriptor), s : (address string) -> result/eax : (handle array int)</span> +<span id="L233" class="LineNr">233 </span><span class="subxFunction">parse-array-of-ints</span>: <span class="subxComment"># ad : (addr allocation-descriptor), s : (addr string) -> result/eax : (handle array int)</span> <span id="L234" class="LineNr">234 </span> <span class="subxComment"># pseudocode</span> <span id="L235" class="LineNr">235 </span> <span class="subxComment"># end = &s->data[s->length]</span> <span id="L236" class="LineNr">236 </span> <span class="subxComment"># curr = s->data</span> @@ -327,9 +327,9 @@ if ('onhashchange' in window) { <span id="L266" class="LineNr">266 </span> 57/push-edi <span id="L267" class="LineNr">267 </span> <span class="subxComment"># esi = s</span> <span id="L268" class="LineNr">268 </span> 8b/copy 1/mod/*+disp8 5/rm32/ebp <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 6/r32/esi 0xc/disp8 <span class="Normal"> . </span> <span class="subxComment"># copy *(ebp+12) to esi</span> -<span id="L269" class="LineNr">269 </span> <span class="subxComment"># var curr/ecx : (address byte) = s->data</span> +<span id="L269" class="LineNr">269 </span> <span class="subxComment"># var curr/ecx : (addr byte) = s->data</span> <span id="L270" class="LineNr">270 </span> 8d/copy-address 1/mod/*+disp8 6/rm32/esi <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 1/r32/ecx 4/disp8 <span class="Normal"> . </span> <span class="subxComment"># copy esi+4 to ecx</span> -<span id="L271" class="LineNr">271 </span> <span class="subxComment"># var end/edx : (address byte) = &s->data[s->length]</span> +<span id="L271" class="LineNr">271 </span> <span class="subxComment"># var end/edx : (addr byte) = &s->data[s->length]</span> <span id="L272" class="LineNr">272 </span> <span class="subxS1Comment"># . edx = s->length</span> <span id="L273" class="LineNr">273 </span> 8b/copy 0/mod/indirect 6/rm32/esi <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"># copy *esi to edx</span> <span id="L274" class="LineNr">274 </span> <span class="subxS1Comment"># . edx += curr</span> @@ -395,7 +395,7 @@ if ('onhashchange' in window) { <span id="L334" class="LineNr">334 </span> 51/push-ecx <span id="L335" class="LineNr">335 </span> <span class="subxS1Comment"># . bookmark</span> <span id="L336" class="LineNr">336 </span> 89/copy 3/mod/direct 1/rm32/ecx <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 4/r32/esp <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="subxComment"># copy esp to ecx</span> -<span id="L337" class="LineNr">337 </span> <span class="subxComment"># var out/ebx : (address byte) = result->data</span> +<span id="L337" class="LineNr">337 </span> <span class="subxComment"># var out/ebx : (addr byte) = result->data</span> <span id="L338" class="LineNr">338 </span> 8d/copy-address 1/mod/*+disp8 0/rm32/eax <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 3/r32/ebx 4/disp8 <span class="Normal"> . </span> <span class="subxComment"># copy eax+4 to ebx</span> <span id="L339" class="LineNr">339 </span><span class="Constant">$parse-array-of-ints:loop2</span>: <span id="L340" class="LineNr">340 </span> <span class="subxComment"># if (slice->start >= end) break</span> @@ -597,7 +597,7 @@ if ('onhashchange' in window) { <span id="L536" class="LineNr">536 </span> <span id="L537" class="LineNr">537 </span><span class="subxComment"># helper for later tests</span> <span id="L538" class="LineNr">538 </span><span class="subxComment"># compare an array with a string representation of an array literal</span> -<span id="L539" class="LineNr">539 </span><span class="subxFunction">check-array-equal</span>: <span class="subxComment"># a : (address array int), expected : (address string), msg : (address string)</span> +<span id="L539" class="LineNr">539 </span><span class="subxFunction">check-array-equal</span>: <span class="subxComment"># a : (addr array int), expected : (addr string), msg : (addr string)</span> <span id="L540" class="LineNr">540 </span> <span class="subxS1Comment"># . prologue</span> <span id="L541" class="LineNr">541 </span> 55/push-ebp <span id="L542" class="LineNr">542 </span> 89/copy 3/mod/direct 5/rm32/ebp <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="Normal"> . </span> 4/r32/esp <span class="Normal"> . </span> <span class="Normal"> . </span> <span class="subxComment"># copy esp to ebp</span> |