diff options
author | Kartik Agaram <vc@akkartik.com> | 2018-10-28 13:41:53 -0700 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2018-10-28 13:41:53 -0700 |
commit | 4c37b3e91b3e9c891c22379f029c42abc38e408c (patch) | |
tree | 4ec99b816d7a0d1c93107e16ea1d79e4231e6962 /html/subx/057stop.subx.html | |
parent | 172e52c47bd5bd1b189c5160ffda30eb75c39239 (diff) | |
download | mu-4c37b3e91b3e9c891c22379f029c42abc38e408c.tar.gz |
4734
Diffstat (limited to 'html/subx/057stop.subx.html')
-rw-r--r-- | html/subx/057stop.subx.html | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/html/subx/057stop.subx.html b/html/subx/057stop.subx.html index 9e0d3fbb..a985e710 100644 --- a/html/subx/057stop.subx.html +++ b/html/subx/057stop.subx.html @@ -153,8 +153,8 @@ if ('onhashchange' in window) { <span id="L96" class="LineNr"> 96 </span> <span class="Comment"># exit(value) if ed->target == 0</span> <span id="L97" class="LineNr"> 97 </span> 81 7/subop/compare 0/mod/indirect 0/rm32/EAX <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> 0/imm32 <span class="Comment"># compare *EAX</span> <span id="L98" class="LineNr"> 98 </span> 75/jump-if-not-equal $stop:fake/disp8 -<span id="L99" class="LineNr"> 99 </span> <span class="Comment"># syscall(exit, ed->value)</span> -<span id="L100" class="LineNr">100 </span> 8b/copy 1/mod/*+disp8 0/rm32/EAX <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> 3/r32/EBX 4/disp8 <span class="Delimiter"> . </span> <span class="Comment"># copy *(EAX+4) to EBX</span> +<span id="L99" class="LineNr"> 99 </span> <span class="Comment"># syscall(exit, value)</span> +<span id="L100" class="LineNr">100 </span> 8b/copy 1/mod/*+disp8 4/rm32/sib 4/base/ESP 4/index/none <span class="Delimiter"> . </span> 3/r32/EBX 8/disp8 <span class="Delimiter"> . </span> <span class="Comment"># copy *(ESP+8) to EBX</span> <span id="L101" class="LineNr">101 </span> b8/copy-to-EAX 1/imm32 <span id="L102" class="LineNr">102 </span> cd/syscall 0x80/imm8 <span id="L103" class="LineNr">103 </span>$stop:fake: @@ -191,12 +191,12 @@ if ('onhashchange' in window) { <span id="L134" class="LineNr">134 </span> <span class="Comment"># discard args</span> <span id="L135" class="LineNr">135 </span> 81 0/subop/add 3/mod/direct 4/rm32/ESP <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> 8/imm32 <span class="Comment"># add to ESP</span> <span id="L136" class="LineNr">136 </span> <span class="Comment"># call _test-stop-1(ed)</span> -<span id="L137" class="LineNr">137 </span> <span class="Comment"># push arg</span> +<span id="L137" class="LineNr">137 </span> <span class="Comment"># push args</span> <span id="L138" class="LineNr">138 </span> 50/push-EAX <span id="L139" class="LineNr">139 </span> <span class="Comment"># call</span> <span id="L140" class="LineNr">140 </span> e8/call _test-stop-1/disp32 <span id="L141" class="LineNr">141 </span> <span class="SalientComment">## registers except ESP may be clobbered at this point</span> -<span id="L142" class="LineNr">142 </span> <span class="Comment"># restore arg</span> +<span id="L142" class="LineNr">142 </span> <span class="Comment"># restore args</span> <span id="L143" class="LineNr">143 </span> 58/pop-to-EAX <span id="L144" class="LineNr">144 </span> <span class="Comment"># check that _test-stop-1 tried to call exit(1)</span> <span id="L145" class="LineNr">145 </span> <span class="Comment"># check-ints-equal(ed->value, 2, msg) # i.e. stop was called with value 1</span> @@ -220,12 +220,12 @@ if ('onhashchange' in window) { <span id="L163" class="LineNr">163 </span> 55/push-EBP <span id="L164" class="LineNr">164 </span> 89/copy 3/mod/direct 5/rm32/EBP <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> 4/r32/ESP <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Comment"># copy ESP to EBP</span> <span id="L165" class="LineNr">165 </span> <span class="Comment"># _test-stop-2(ed)</span> -<span id="L166" class="LineNr">166 </span> <span class="Comment"># push arg</span> +<span id="L166" class="LineNr">166 </span> <span class="Comment"># push args</span> <span id="L167" class="LineNr">167 </span> ff 6/subop/push 1/mod/*+disp8 4/rm32/sib 5/base/EBP 4/index/none <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> 8/disp8 <span class="Delimiter"> . </span> <span class="Comment"># push *(EBP+8)</span> <span id="L168" class="LineNr">168 </span> <span class="Comment"># call</span> <span id="L169" class="LineNr">169 </span> e8/call _test-stop-2/disp32 <span id="L170" class="LineNr">170 </span> <span class="SalientComment">## should never get past this point</span> -<span id="L171" class="LineNr">171 </span> <span class="Comment"># discard arg</span> +<span id="L171" class="LineNr">171 </span> <span class="Comment"># discard args</span> <span id="L172" class="LineNr">172 </span> 81 0/subop/add 3/mod/direct 4/rm32/ESP <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> <span class="Delimiter"> . </span> 4/imm32 <span class="Comment"># add to ESP</span> <span id="L173" class="LineNr">173 </span> <span class="Comment"># signal test failed: check-ints-equal(1, 0, msg)</span> <span id="L174" class="LineNr">174 </span> <span class="Comment"># push args</span> |