summaryrefslogtreecommitdiff
path: root/lib/Target/X86/InstPrinter
diff options
context:
space:
mode:
authorKevin Enderby <enderby@apple.com>2011-09-02 20:01:23 +0000
committerKevin Enderby <enderby@apple.com>2011-09-02 20:01:23 +0000
commitd5705fe50d58dd2b686b26d1683315f785246ce0 (patch)
treeb8de40107aeca1aba5dc534d03c74c08fbc58b3f /lib/Target/X86/InstPrinter
parent8e0c7697fd9b9354856074efc06eea9f6d80015c (diff)
downloadllvm-d5705fe50d58dd2b686b26d1683315f785246ce0.tar.gz
llvm-d5705fe50d58dd2b686b26d1683315f785246ce0.tar.bz2
llvm-d5705fe50d58dd2b686b26d1683315f785246ce0.tar.xz
Change X86 disassembly to print immediates values as signed by default. Special
case those instructions that the immediate is not sign-extend. radr://8795217 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139028 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/InstPrinter')
-rw-r--r--lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp b/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp
index c37d8797b3..591b583831 100644
--- a/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp
+++ b/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp
@@ -90,7 +90,8 @@ void X86ATTInstPrinter::printOperand(const MCInst *MI, unsigned OpNo,
if (Op.isReg()) {
O << '%' << getRegisterName(Op.getReg());
} else if (Op.isImm()) {
- O << '$' << Op.getImm();
+ // Print X86 immediates as signed values.
+ O << '$' << (int64_t)Op.getImm();
if (CommentStream && (Op.getImm() > 255 || Op.getImm() < -256))
*CommentStream << format("imm = 0x%llX\n", (long long)Op.getImm());