Revision: 19652
Author:   [email protected]
Date:     Tue Mar  4 13:07:00 2014 UTC
Log:      Print properly signed displacement in IA32 disassembler.

[email protected]
BUG=

Review URL: https://codereview.chromium.org/176993004
http://code.google.com/p/v8/source/detail?r=19652

Modified:
 /branches/bleeding_edge/src/ia32/disasm-ia32.cc

=======================================
--- /branches/bleeding_edge/src/ia32/disasm-ia32.cc Wed Feb 19 13:51:49 2014 UTC +++ /branches/bleeding_edge/src/ia32/disasm-ia32.cc Tue Mar 4 13:07:00 2014 UTC
@@ -449,8 +449,12 @@
       } else {
         // No sib.
         int disp =
- mod == 2 ? *reinterpret_cast<int32_t*>(modrmp + 1) : *(modrmp + 1);
-        AppendToBuffer("[%s+0x%x]", (this->*register_name)(rm), disp);
+            mod == 2 ? *reinterpret_cast<int32_t*>(modrmp + 1) :
+                       *reinterpret_cast<int8_t*>(modrmp + 1);
+        AppendToBuffer("[%s%s0x%x]",
+                       (this->*register_name)(rm),
+                       disp < 0 ? "-" : "+",
+                       disp < 0 ? -disp : disp);
         return mod == 2 ? 5 : 2;
       }
       break;

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to