about summary refs log tree commit diff stats
path: root/html/linux/braces.subx.html
diff options
context:
space:
mode:
Diffstat (limited to 'html/linux/braces.subx.html')
-rw-r--r--html/linux/braces.subx.html84
1 files changed, 42 insertions, 42 deletions
diff --git a/html/linux/braces.subx.html b/html/linux/braces.subx.html
index 77774273..982a1604 100644
--- a/html/linux/braces.subx.html
+++ b/html/linux/braces.subx.html
@@ -70,10 +70,10 @@ if ('onhashchange' in window) {
 <span id="L11" class="LineNr"> 11 </span><span class="subxComment">#     74/jump-if-= loop/disp8</span>
 <span id="L12" class="LineNr"> 12 </span><span class="subxComment">#   }</span>
 <span id="L13" class="LineNr"> 13 </span><span class="subxComment">#   $ cat x.subx |braces</span>
-<span id="L14" class="LineNr"> 14 </span><span class="subxComment">#   _loop1:</span>
-<span id="L15" class="LineNr"> 15 </span><span class="subxComment">#     7c/jump-if-&lt; _break1/disp8</span>
-<span id="L16" class="LineNr"> 16 </span><span class="subxComment">#     74/jump-if-= _loop1/disp8</span>
-<span id="L17" class="LineNr"> 17 </span><span class="subxComment">#   _break1:</span>
+<span id="L14" class="LineNr"> 14 </span><span class="subxComment">#   @loop1:</span>
+<span id="L15" class="LineNr"> 15 </span><span class="subxComment">#     7c/jump-if-&lt; @break1/disp8</span>
+<span id="L16" class="LineNr"> 16 </span><span class="subxComment">#     74/jump-if-= @loop1/disp8</span>
+<span id="L17" class="LineNr"> 17 </span><span class="subxComment">#   @break1:</span>
 <span id="L18" class="LineNr"> 18 </span><span class="subxComment">#</span>
 <span id="L19" class="LineNr"> 19 </span><span class="subxComment"># Example 2:</span>
 <span id="L20" class="LineNr"> 20 </span><span class="subxComment">#   $ cat x.subx</span>
@@ -84,12 +84,12 @@ if ('onhashchange' in window) {
 <span id="L25" class="LineNr"> 25 </span><span class="subxComment">#     74/jump-if-= loop/disp8</span>
 <span id="L26" class="LineNr"> 26 </span><span class="subxComment">#   }</span>
 <span id="L27" class="LineNr"> 27 </span><span class="subxComment">#   $ cat x.subx |braces</span>
-<span id="L28" class="LineNr"> 28 </span><span class="subxComment">#   _loop1:</span>
-<span id="L29" class="LineNr"> 29 </span><span class="subxComment">#     7c/jump-if-&lt; _break1/disp8</span>
-<span id="L30" class="LineNr"> 30 </span><span class="subxComment">#   _break1:</span>
-<span id="L31" class="LineNr"> 31 </span><span class="subxComment">#   _loop2:</span>
-<span id="L32" class="LineNr"> 32 </span><span class="subxComment">#     74/jump-if-= _loop2/disp8</span>
-<span id="L33" class="LineNr"> 33 </span><span class="subxComment">#   _break2:</span>
+<span id="L28" class="LineNr"> 28 </span><span class="subxComment">#   @loop1:</span>
+<span id="L29" class="LineNr"> 29 </span><span class="subxComment">#     7c/jump-if-&lt; @break1/disp8</span>
+<span id="L30" class="LineNr"> 30 </span><span class="subxComment">#   @break1:</span>
+<span id="L31" class="LineNr"> 31 </span><span class="subxComment">#   @loop2:</span>
+<span id="L32" class="LineNr"> 32 </span><span class="subxComment">#     74/jump-if-= @loop2/disp8</span>
+<span id="L33" class="LineNr"> 33 </span><span class="subxComment">#   @break2:</span>
 <span id="L34" class="LineNr"> 34 </span><span class="subxComment">#</span>
 <span id="L35" class="LineNr"> 35 </span><span class="subxComment"># Example 3:</span>
 <span id="L36" class="LineNr"> 36 </span><span class="subxComment">#   $ cat x.subx</span>
@@ -100,12 +100,12 @@ if ('onhashchange' in window) {
 <span id="L41" class="LineNr"> 41 </span><span class="subxComment">#     7c/jump-if-&lt; loop/disp8</span>
 <span id="L42" class="LineNr"> 42 </span><span class="subxComment">#   }</span>
 <span id="L43" class="LineNr"> 43 </span><span class="subxComment">#   $ cat x.subx |braces</span>
-<span id="L44" class="LineNr"> 44 </span><span class="subxComment">#   _loop1:</span>
-<span id="L45" class="LineNr"> 45 </span><span class="subxComment">#     _loop2:</span>
-<span id="L46" class="LineNr"> 46 </span><span class="subxComment">#       74/jump-if-= _loop2/disp8</span>
-<span id="L47" class="LineNr"> 47 </span><span class="subxComment">#     _break2:</span>
-<span id="L48" class="LineNr"> 48 </span><span class="subxComment">#     7c/jump-if-&lt; _loop1/disp8</span>
-<span id="L49" class="LineNr"> 49 </span><span class="subxComment">#   _break1:</span>
+<span id="L44" class="LineNr"> 44 </span><span class="subxComment">#   @loop1:</span>
+<span id="L45" class="LineNr"> 45 </span><span class="subxComment">#     @loop2:</span>
+<span id="L46" class="LineNr"> 46 </span><span class="subxComment">#       74/jump-if-= @loop2/disp8</span>
+<span id="L47" class="LineNr"> 47 </span><span class="subxComment">#     @break2:</span>
+<span id="L48" class="LineNr"> 48 </span><span class="subxComment">#     7c/jump-if-&lt; @loop1/disp8</span>
+<span id="L49" class="LineNr"> 49 </span><span class="subxComment">#   @break1:</span>
 <span id="L50" class="LineNr"> 50 </span>
 <span id="L51" class="LineNr"> 51 </span>== code
 <span id="L52" class="LineNr"> 52 </span>
@@ -144,13 +144,13 @@ if ('onhashchange' in window) {
 <span id="L85" class="LineNr"> 85 </span>    <span class="subxComment">#     if (line-&gt;write == 0) break                           # end of file</span>
 <span id="L86" class="LineNr"> 86 </span>    <span class="subxComment">#     skip-chars-matching-whitespace(line)</span>
 <span id="L87" class="LineNr"> 87 </span>    <span class="subxComment">#     if line-&gt;data[line-&gt;read] == '{'</span>
-<span id="L88" class="LineNr"> 88 </span>    <span class="subxComment">#       print(out, &quot;_loop&quot; next-label-id &quot;:\n&quot;)</span>
+<span id="L88" class="LineNr"> 88 </span>    <span class="subxComment">#       print(out, &quot;@loop&quot; next-label-id &quot;:\n&quot;)</span>
 <span id="L89" class="LineNr"> 89 </span>    <span class="subxComment">#       push(label-stack, next-label-id)</span>
 <span id="L90" class="LineNr"> 90 </span>    <span class="subxComment">#       ++next-label-id</span>
 <span id="L91" class="LineNr"> 91 </span>    <span class="subxComment">#       continue</span>
 <span id="L92" class="LineNr"> 92 </span>    <span class="subxComment">#     if line-&gt;data[line-&gt;read] == '}'</span>
 <span id="L93" class="LineNr"> 93 </span>    <span class="subxComment">#       var top = pop(label-stack)</span>
-<span id="L94" class="LineNr"> 94 </span>    <span class="subxComment">#       print(out, &quot;_break&quot; top &quot;:\n&quot;)</span>
+<span id="L94" class="LineNr"> 94 </span>    <span class="subxComment">#       print(out, &quot;@break&quot; top &quot;:\n&quot;)</span>
 <span id="L95" class="LineNr"> 95 </span>    <span class="subxComment">#       continue</span>
 <span id="L96" class="LineNr"> 96 </span>    <span class="subxComment">#     while true</span>
 <span id="L97" class="LineNr"> 97 </span>    <span class="subxComment">#       var word-slice: (addr slice) = next-word-or-string(line)</span>
@@ -160,11 +160,11 @@ if ('onhashchange' in window) {
 <span id="L101" class="LineNr">101 </span>    <span class="subxComment">#         continue</span>
 <span id="L102" class="LineNr">102 </span>    <span class="subxComment">#       if slice-starts-with?(word-slice, &quot;break/&quot;)</span>
 <span id="L103" class="LineNr">103 </span>    <span class="subxComment">#         var top = top(label-stack)</span>
-<span id="L104" class="LineNr">104 </span>    <span class="subxComment">#         print(out, &quot;_break&quot; top)</span>
+<span id="L104" class="LineNr">104 </span>    <span class="subxComment">#         print(out, &quot;@break&quot; top)</span>
 <span id="L105" class="LineNr">105 </span>    <span class="subxComment">#         word-slice-&gt;start += len(&quot;break&quot;)</span>
 <span id="L106" class="LineNr">106 </span>    <span class="subxComment">#       else if slice-starts-with?(word-slice, &quot;loop/&quot;)</span>
 <span id="L107" class="LineNr">107 </span>    <span class="subxComment">#         var top = top(label-stack)</span>
-<span id="L108" class="LineNr">108 </span>    <span class="subxComment">#         print(out, &quot;_loop&quot; top)</span>
+<span id="L108" class="LineNr">108 </span>    <span class="subxComment">#         print(out, &quot;@loop&quot; top)</span>
 <span id="L109" class="LineNr">109 </span>    <span class="subxComment">#         word-slice-&gt;start += len(&quot;loop&quot;)</span>
 <span id="L110" class="LineNr">110 </span>    <span class="subxComment">#       print(out, word-slice &quot; &quot;)</span>
 <span id="L111" class="LineNr">111 </span>    <span class="subxComment">#     print(out, &quot;\n&quot;)</span>
@@ -211,13 +211,13 @@ if ('onhashchange' in window) {
 <span id="L152" class="LineNr">152 </span>    <span class="subxS1Comment"># . eax = line-&gt;data[line-&gt;read]</span>
 <span id="L153" class="LineNr">153 </span>    8b/-&gt; *(ecx+4) 0/r32/eax
 <span id="L154" class="LineNr">154 </span>    8a/copy-byte *(ecx+eax+0xc) 0/r32/AL
-<span id="L155" class="LineNr">155 </span>    81 4/subop/and %eax 0xff/imm32
+<span id="L155" class="LineNr">155 </span>    25/and-eax-with 0xff/imm32
 <span id="L156" class="LineNr">156 </span>    <span class="subxS1Comment"># . if (eax != '{') continue</span>
 <span id="L157" class="LineNr">157 </span>    3d/compare-eax-and 0x7b/imm32/open-curly
 <span id="L158" class="LineNr">158 </span>    0f 85/jump-if-!= $subx-braces:check-for-curly-closed/disp32
 <span id="L159" class="LineNr">159 </span><span class="Constant">$subx-braces:emit-curly-open</span>:
-<span id="L160" class="LineNr">160 </span>    <span class="subxComment"># print(out, &quot;_loop&quot; next-label-id &quot;:&quot;)</span>
-<span id="L161" class="LineNr">161 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;_loop&quot;</span>)
+<span id="L160" class="LineNr">160 </span>    <span class="subxComment"># print(out, &quot;@loop&quot; next-label-id &quot;:&quot;)</span>
+<span id="L161" class="LineNr">161 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;@loop&quot;</span>)
 <span id="L162" class="LineNr">162 </span>    (<a href='117write-int-hex.subx.html#L288'>write-int32-hex-buffered</a> *(ebp+0xc) %ebx)
 <span id="L163" class="LineNr">163 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;:&quot;</span>)
 <span id="L164" class="LineNr">164 </span>    <span class="subxComment"># push(label-stack, next-label-id)</span>
@@ -233,8 +233,8 @@ if ('onhashchange' in window) {
 <span id="L174" class="LineNr">174 </span><span class="Constant">$subx-braces:emit-curly-closed</span>:
 <span id="L175" class="LineNr">175 </span>    <span class="subxComment"># eax = pop(label-stack)</span>
 <span id="L176" class="LineNr">176 </span>    (<a href='203stack.subx.html#L234'>pop</a> %edx)
-<span id="L177" class="LineNr">177 </span>    <span class="subxComment"># print(out, &quot;_break&quot; eax &quot;:&quot;)</span>
-<span id="L178" class="LineNr">178 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;_break&quot;</span>)
+<span id="L177" class="LineNr">177 </span>    <span class="subxComment"># print(out, &quot;@break&quot; eax &quot;:&quot;)</span>
+<span id="L178" class="LineNr">178 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;@break&quot;</span>)
 <span id="L179" class="LineNr">179 </span>    (<a href='117write-int-hex.subx.html#L288'>write-int32-hex-buffered</a> *(ebp+0xc) %eax)
 <span id="L180" class="LineNr">180 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;:&quot;</span>)
 <span id="L181" class="LineNr">181 </span>    <span class="subxComment"># continue</span>
@@ -251,7 +251,7 @@ if ('onhashchange' in window) {
 <span id="L192" class="LineNr">192 </span>    <span class="subxS1Comment"># . eax = *word-slice-&gt;start</span>
 <span id="L193" class="LineNr">193 </span>    8b/-&gt; *edi 0/r32/eax
 <span id="L194" class="LineNr">194 </span>    8a/copy-byte *eax 0/r32/AL
-<span id="L195" class="LineNr">195 </span>    81 4/subop/and %eax 0xff/imm32
+<span id="L195" class="LineNr">195 </span>    25/and-eax-with 0xff/imm32
 <span id="L196" class="LineNr">196 </span>    <span class="subxS1Comment"># . if (eax == '#') continue</span>
 <span id="L197" class="LineNr">197 </span>    3d/compare-eax-and 0x23/imm32/hash
 <span id="L198" class="LineNr">198 </span>    74/jump-if-= $subx-braces:word-loop/disp8
@@ -264,8 +264,8 @@ if ('onhashchange' in window) {
 <span id="L205" class="LineNr">205 </span>    74/jump-if-= $subx-braces:check-for-loop/disp8
 <span id="L206" class="LineNr">206 </span><span class="Constant">$subx-braces:emit-break</span>:
 <span id="L207" class="LineNr">207 </span>    (<a href='203stack.subx.html#L338'>top</a> %edx)
-<span id="L208" class="LineNr">208 </span>    <span class="subxComment"># print(out, &quot;_break&quot; eax)</span>
-<span id="L209" class="LineNr">209 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;_break&quot;</span>)
+<span id="L208" class="LineNr">208 </span>    <span class="subxComment"># print(out, &quot;@break&quot; eax)</span>
+<span id="L209" class="LineNr">209 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;@break&quot;</span>)
 <span id="L210" class="LineNr">210 </span>    (<a href='117write-int-hex.subx.html#L288'>write-int32-hex-buffered</a> *(ebp+0xc) %eax)
 <span id="L211" class="LineNr">211 </span>    <span class="subxComment"># word-slice-&gt;start += len(&quot;break&quot;)</span>
 <span id="L212" class="LineNr">212 </span>    81 0/subop/add *edi 5/imm32/strlen
@@ -280,8 +280,8 @@ if ('onhashchange' in window) {
 <span id="L221" class="LineNr">221 </span>    74/jump-if-= $subx-braces:emit-word-slice/disp8
 <span id="L222" class="LineNr">222 </span><span class="Constant">$subx-braces:emit-loop</span>:
 <span id="L223" class="LineNr">223 </span>    (<a href='203stack.subx.html#L338'>top</a> %edx)
-<span id="L224" class="LineNr">224 </span>    <span class="subxComment"># print(out, &quot;_loop&quot; eax)</span>
-<span id="L225" class="LineNr">225 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;_loop&quot;</span>)
+<span id="L224" class="LineNr">224 </span>    <span class="subxComment"># print(out, &quot;@loop&quot; eax)</span>
+<span id="L225" class="LineNr">225 </span>    (<a href='116write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="Constant">&quot;@loop&quot;</span>)
 <span id="L226" class="LineNr">226 </span>    (<a href='117write-int-hex.subx.html#L288'>write-int32-hex-buffered</a> *(ebp+0xc) %eax)
 <span id="L227" class="LineNr">227 </span>    <span class="subxComment"># word-slice-&gt;start += len(&quot;loop&quot;)</span>
 <span id="L228" class="LineNr">228 </span>    81 0/subop/add *edi 4/imm32/strlen
@@ -343,10 +343,10 @@ if ('onhashchange' in window) {
 <span id="L288" class="LineNr">288 </span>    <span class="subxComment">#   }</span>
 <span id="L289" class="LineNr">289 </span>    <span class="subxComment">#</span>
 <span id="L290" class="LineNr">290 </span>    <span class="subxComment"># output:</span>
-<span id="L291" class="LineNr">291 </span>    <span class="subxComment">#   _loop1:</span>
-<span id="L292" class="LineNr">292 </span>    <span class="subxComment">#   ab _break1/imm32</span>
-<span id="L293" class="LineNr">293 </span>    <span class="subxComment">#   cd _loop1/imm32</span>
-<span id="L294" class="LineNr">294 </span>    <span class="subxComment">#   _break1:</span>
+<span id="L291" class="LineNr">291 </span>    <span class="subxComment">#   @loop1:</span>
+<span id="L292" class="LineNr">292 </span>    <span class="subxComment">#   ab @break1/imm32</span>
+<span id="L293" class="LineNr">293 </span>    <span class="subxComment">#   cd @loop1/imm32</span>
+<span id="L294" class="LineNr">294 </span>    <span class="subxComment">#   @break1:</span>
 <span id="L295" class="LineNr">295 </span>    <span class="subxComment">#</span>
 <span id="L296" class="LineNr">296 </span>    <span class="subxS1Comment"># . prologue</span>
 <span id="L297" class="LineNr">297 </span>    55/push-ebp
@@ -362,7 +362,7 @@ if ('onhashchange' in window) {
 <span id="L307" class="LineNr">307 </span>    <span class="subxComment"># check that the line just passed through</span>
 <span id="L308" class="LineNr">308 </span>    (<a href='115write-byte.subx.html#L81'>flush</a> <a href='115write-byte.subx.html#L425'>_test-output-buffered-file</a>)
 <span id="L309" class="Folded">309 </span><span class="Folded">+--  5 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
-<span id="L314" class="LineNr">314 </span>    (<a href='109stream-equal.subx.html#L194'>check-stream-equal</a> <a href='115write-byte.subx.html#L287'>_test-output-stream</a> <span class="Constant">&quot;_loop0x00000001:\nab _break0x00000001/imm32 \ncd _loop0x00000001/imm32 \n_break0x00000001:\n&quot;</span> <span class="Constant">&quot;F - test-subx-braces-1&quot;</span>)
+<span id="L314" class="LineNr">314 </span>    (<a href='109stream-equal.subx.html#L194'>check-stream-equal</a> <a href='115write-byte.subx.html#L287'>_test-output-stream</a> <span class="Constant">&quot;@loop0x00000001:\nab @break0x00000001/imm32 \ncd @loop0x00000001/imm32 \n@break0x00000001:\n&quot;</span> <span class="Constant">&quot;F - test-subx-braces-1&quot;</span>)
 <span id="L315" class="LineNr">315 </span>    <span class="subxS1Comment"># . epilogue</span>
 <span id="L316" class="LineNr">316 </span>    89/&lt;- %esp 5/r32/ebp
 <span id="L317" class="LineNr">317 </span>    5d/pop-to-ebp
@@ -378,12 +378,12 @@ if ('onhashchange' in window) {
 <span id="L327" class="LineNr">327 </span>    <span class="subxComment">#   }</span>
 <span id="L328" class="LineNr">328 </span>    <span class="subxComment">#</span>
 <span id="L329" class="LineNr">329 </span>    <span class="subxComment"># output:</span>
-<span id="L330" class="LineNr">330 </span>    <span class="subxComment">#   _loop1:</span>
-<span id="L331" class="LineNr">331 </span>    <span class="subxComment">#   _loop2:</span>
-<span id="L332" class="LineNr">332 </span>    <span class="subxComment">#   ab _break2/imm32</span>
-<span id="L333" class="LineNr">333 </span>    <span class="subxComment">#   _break2:</span>
-<span id="L334" class="LineNr">334 </span>    <span class="subxComment">#   cd _loop1/imm32</span>
-<span id="L335" class="LineNr">335 </span>    <span class="subxComment">#   _break1:</span>
+<span id="L330" class="LineNr">330 </span>    <span class="subxComment">#   @loop1:</span>
+<span id="L331" class="LineNr">331 </span>    <span class="subxComment">#   @loop2:</span>
+<span id="L332" class="LineNr">332 </span>    <span class="subxComment">#   ab @break2/imm32</span>
+<span id="L333" class="LineNr">333 </span>    <span class="subxComment">#   @break2:</span>
+<span id="L334" class="LineNr">334 </span>    <span class="subxComment">#   cd @loop1/imm32</span>
+<span id="L335" class="LineNr">335 </span>    <span class="subxComment">#   @break1:</span>
 <span id="L336" class="LineNr">336 </span>    <span class="subxComment">#</span>
 <span id="L337" class="LineNr">337 </span>    <span class="subxS1Comment"># . prologue</span>
 <span id="L338" class="LineNr">338 </span>    55/push-ebp
@@ -399,7 +399,7 @@ if ('onhashchange' in window) {
 <span id="L348" class="LineNr">348 </span>    <span class="subxComment"># check that the line just passed through</span>
 <span id="L349" class="LineNr">349 </span>    (<a href='115write-byte.subx.html#L81'>flush</a> <a href='115write-byte.subx.html#L425'>_test-output-buffered-file</a>)
 <span id="L350" class="Folded">350 </span><span class="Folded">+--  5 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
-<span id="L355" class="LineNr">355 </span>    (<a href='109stream-equal.subx.html#L194'>check-stream-equal</a> <a href='115write-byte.subx.html#L287'>_test-output-stream</a> <span class="Constant">&quot;_loop0x00000001:\n_loop0x00000002:\nab _break0x00000002/imm32 \n_break0x00000002:\ncd _loop0x00000001/imm32 \n_break0x00000001:\n&quot;</span> <span class="Constant">&quot;F - test-subx-braces-2&quot;</span>)
+<span id="L355" class="LineNr">355 </span>    (<a href='109stream-equal.subx.html#L194'>check-stream-equal</a> <a href='115write-byte.subx.html#L287'>_test-output-stream</a> <span class="Constant">&quot;@loop0x00000001:\n@loop0x00000002:\nab @break0x00000002/imm32 \n@break0x00000002:\ncd @loop0x00000001/imm32 \n@break0x00000001:\n&quot;</span> <span class="Constant">&quot;F - test-subx-braces-2&quot;</span>)
 <span id="L356" class="LineNr">356 </span>    <span class="subxS1Comment"># . epilogue</span>
 <span id="L357" class="LineNr">357 </span>    89/&lt;- %esp 5/r32/ebp
 <span id="L358" class="LineNr">358 </span>    5d/pop-to-ebp