From 608a7fa8d0faf9a3e3d182d9eabe969804443aab Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Fri, 7 Sep 2018 15:08:54 -0700 Subject: 4536 --- html/subx/032check_operand_bounds.cc.html | 32 +++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'html/subx/032check_operand_bounds.cc.html') diff --git a/html/subx/032check_operand_bounds.cc.html b/html/subx/032check_operand_bounds.cc.html index cc7ea319..52765a46 100644 --- a/html/subx/032check_operand_bounds.cc.html +++ b/html/subx/032check_operand_bounds.cc.html @@ -3,7 +3,7 @@ Mu - subx/032check_operand_bounds.cc - + @@ -15,18 +15,18 @@ body { font-size: 12pt; font-family: monospace; color: #aaaaaa; background-color a { color:#eeeeee; text-decoration: none; } a:hover { text-decoration: underline; } * { font-size: 12pt; font-size: 1em; } +.Comment { color: #9090ff; } +.Comment a { color:#0000ee; text-decoration:underline; } +.traceContains { color: #008000; } +.LineNr { color: #444444; } .Constant { color: #00a0a0; } -.Special { color: #c00000; } .cSpecial { color: #008000; } -.SalientComment { color: #00ffff; } .Delimiter { color: #800080; } -.LineNr { color: #444444; } +.Special { color: #c00000; } .Identifier { color: #c0a020; } -.Comment { color: #9090ff; } -.Comment a { color:#0000ee; text-decoration:underline; } -.PreProc { color: #800080; } -.traceContains { color: #008000; } .Normal { color: #aaaaaa; background-color: #080808; padding-bottom: 1px; } +.PreProc { color: #800080; } +.SalientComment { color: #00ffff; } --> @@ -86,15 +86,15 @@ if ('onhashchange' in window) { 23 // no bound needed for imm32 24 25 :(before "Pack Operands(segment code)") -26 check_operand_bounds(code); +26 check_operand_bounds(code); 27 if (trace_contains_errors()) return; 28 :(code) -29 void check_operand_bounds(const segment& code) { +29 void check_operand_bounds(const segment& code) { 30 trace(99, "transform") << "-- check operand bounds" << end(); -31 for (int i = 0; i < SIZE(code.lines); ++i) { -32 const line& inst = code.lines.at(i); -33 for (int j = first_operand(inst); j < SIZE(inst.words); ++j) -34 check_operand_bounds(inst.words.at(j)); +31 for (int i = 0; i < SIZE(code.lines); ++i) { +32 const line& inst = code.lines.at(i); +33 for (int j = first_operand(inst); j < SIZE(inst.words); ++j) +34 check_operand_bounds(inst.words.at(j)); 35 if (trace_contains_errors()) return; // stop at the first mal-formed instruction 36 } 37 } @@ -102,8 +102,8 @@ if ('onhashchange' in window) { 39 void check_operand_bounds(const word& w) { 40 for (map<string, uint32_t>::iterator p = Operand_bound.begin(); p != Operand_bound.end(); ++p) { 41 if (!has_metadata(w, p->first)) continue; -42 if (!is_hex_int(w.data)) continue; // later transforms are on their own to do their own bounds checking -43 int32_t x = parse_int(w.data); +42 if (!is_hex_int(w.data)) continue; // later transforms are on their own to do their own bounds checking +43 int32_t x = parse_int(w.data); 44 if (x >= 0) { 45 if (static_cast<uint32_t>(x) >= p->second) 46 raise << "'" << w.original << "' too large to fit in bitfield " << p->first << '\n' << end(); -- cgit 1.4.1-2-gfad0