diff options
author | Kartik Agaram <vc@akkartik.com> | 2021-04-21 08:28:00 -0700 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2021-04-21 08:28:00 -0700 |
commit | a8fb537a88fdbe77cdcbaa05ee28d1cad94550da (patch) | |
tree | d0fad5f8da140435dcf05b631a4b3f315e0c1f86 /html/linux/bootstrap/034check_operand_bounds.cc.html | |
parent | d27994a9d73f970a7b54ec71f4ae457da3734daa (diff) | |
download | mu-a8fb537a88fdbe77cdcbaa05ee28d1cad94550da.tar.gz |
.
Diffstat (limited to 'html/linux/bootstrap/034check_operand_bounds.cc.html')
-rw-r--r-- | html/linux/bootstrap/034check_operand_bounds.cc.html | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/html/linux/bootstrap/034check_operand_bounds.cc.html b/html/linux/bootstrap/034check_operand_bounds.cc.html index 11670f19..1dbbd872 100644 --- a/html/linux/bootstrap/034check_operand_bounds.cc.html +++ b/html/linux/bootstrap/034check_operand_bounds.cc.html @@ -7,11 +7,11 @@ <meta name="plugin-version" content="vim8.1_v1"> <meta name="syntax" content="cpp"> <meta name="settings" content="number_lines,use_css,pre_wrap,no_foldcolumn,expand_tabs,line_ids,prevent_copy="> -<meta name="colorscheme" content="minimal-light"> +<meta name="colorscheme" content="minimal-dark"> <style type="text/css"> <!-- -pre { white-space: pre-wrap; font-family: monospace; color: #000000; background-color: #c6c6c6; } -body { font-size:12pt; font-family: monospace; color: #000000; background-color: #c6c6c6; } +pre { white-space: pre-wrap; font-family: monospace; color: #000000; background-color: #a8a8a8; } +body { font-size:12pt; font-family: monospace; color: #000000; background-color: #a8a8a8; } a { color:inherit; } * { font-size:12pt; font-size: 1em; } .cSpecial { color: #008000; } @@ -19,7 +19,7 @@ a { color:inherit; } .Constant { color: #008787; } .Delimiter { color: #c000c0; } .Comment { color: #005faf; } -.Normal { color: #000000; background-color: #c6c6c6; padding-bottom: 1px; } +.Normal { color: #000000; background-color: #a8a8a8; padding-bottom: 1px; } .Identifier { color: #af5f00; } --> </style> @@ -93,7 +93,7 @@ if ('onhashchange' in window) { <span id="L35" class="LineNr"> 35 </span> <a href='003trace.cc.html#L96'>trace</a><span class="Delimiter">(</span><span class="Constant">3</span><span class="Delimiter">,</span> <span class="Constant">"transform"</span><span class="Delimiter">)</span> << <span class="Constant">"-- check argument bounds"</span> << end<span class="Delimiter">();</span> <span id="L36" class="LineNr"> 36 </span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> i = <span class="Constant">0</span><span class="Delimiter">;</span> i < <a href='001help.cc.html#L168'>SIZE</a><span class="Delimiter">(</span>code<span class="Delimiter">.</span><a href='011run.cc.html#L113'>lines</a><span class="Delimiter">);</span> ++i<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L37" class="LineNr"> 37 </span> <span class="Normal">const</span> line& inst = code<span class="Delimiter">.</span><a href='011run.cc.html#L113'>lines</a><span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">);</span> -<span id="L38" class="LineNr"> 38 </span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> j = <a href='033check_operands.cc.html#L315'>first_argument</a><span class="Delimiter">(</span>inst<span class="Delimiter">);</span> j < <a href='001help.cc.html#L168'>SIZE</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span><a href='011run.cc.html#L122'>words</a><span class="Delimiter">);</span> ++j<span class="Delimiter">)</span> +<span id="L38" class="LineNr"> 38 </span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> j = <a href='033check_operands.cc.html#L319'>first_argument</a><span class="Delimiter">(</span>inst<span class="Delimiter">);</span> j < <a href='001help.cc.html#L168'>SIZE</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span><a href='011run.cc.html#L122'>words</a><span class="Delimiter">);</span> ++j<span class="Delimiter">)</span> <span id="L39" class="LineNr"> 39 </span> check_argument_bounds<span class="Delimiter">(</span>inst<span class="Delimiter">.</span><a href='011run.cc.html#L122'>words</a><span class="Delimiter">.</span>at<span class="Delimiter">(</span>j<span class="Delimiter">));</span> <span id="L40" class="LineNr"> 40 </span> <span class="Normal">if</span> <span class="Delimiter">(</span><a href='003trace.cc.html#L262'>trace_contains_errors</a><span class="Delimiter">())</span> <span class="Identifier">return</span><span class="Delimiter">;</span> <span class="Comment">// stop at the first mal-formed instruction</span> <span id="L41" class="LineNr"> 41 </span> <span class="Delimiter">}</span> @@ -103,7 +103,7 @@ if ('onhashchange' in window) { <span id="L45" class="LineNr"> 45 </span> <span class="Normal">for</span> <span class="Delimiter">(</span>map<string<span class="Delimiter">,</span> <span class="Normal">uint32_t</span>>::iterator p = <a href='034check_operand_bounds.cc.html#L15'>Operand_bound</a><span class="Delimiter">.</span>begin<span class="Delimiter">();</span> p != <a href='034check_operand_bounds.cc.html#L15'>Operand_bound</a><span class="Delimiter">.</span>end<span class="Delimiter">();</span> ++p<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L46" class="LineNr"> 46 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!has_argument_metadata<span class="Delimiter">(</span>w<span class="Delimiter">,</span> p<span class="Delimiter">-></span>first<span class="Delimiter">))</span> <span class="Identifier">continue</span><span class="Delimiter">;</span> <span id="L47" class="LineNr"> 47 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!looks_like_hex_int<span class="Delimiter">(</span>w<span class="Delimiter">.</span>data<span class="Delimiter">))</span> <span class="Identifier">continue</span><span class="Delimiter">;</span> <span class="Comment">// later transforms are on their own to do their own bounds checking</span> -<span id="L48" class="LineNr"> 48 </span> <span class="Normal">int32_t</span> x = <a href='032operands.cc.html#L608'>parse_int</a><span class="Delimiter">(</span>w<span class="Delimiter">.</span>data<span class="Delimiter">);</span> +<span id="L48" class="LineNr"> 48 </span> <span class="Normal">int32_t</span> x = <a href='032operands.cc.html#L610'>parse_int</a><span class="Delimiter">(</span>w<span class="Delimiter">.</span>data<span class="Delimiter">);</span> <span id="L49" class="LineNr"> 49 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>x >= <span class="Constant">0</span><span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L50" class="LineNr"> 50 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>p<span class="Delimiter">-></span>first == <span class="Constant">"disp8"</span> || p<span class="Delimiter">-></span>first == <span class="Constant">"disp16"</span><span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L51" class="LineNr"> 51 </span> <span class="Normal">if</span> <span class="Delimiter">(</span><span class="Normal">static_cast</span><<span class="Normal">uint32_t</span>><span class="Delimiter">(</span>x<span class="Delimiter">)</span> >= p<span class="Delimiter">-></span>second/<span class="Constant">2</span><span class="Delimiter">)</span> |