ARM: operands should be explicit when disassembled

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184943 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Amaury de la Vieuville 2013-06-26 13:39:07 +00:00
parent eb4a55c949
commit 6e0857e0b6
2 changed files with 7 additions and 8 deletions

View File

@ -1176,19 +1176,14 @@ void ARMInstPrinter::printT2AddrModeImm8s4OffsetOperand(const MCInst *MI,
assert(((OffImm & 0x3) == 0) && "Not a valid immediate!");
// Don't print +0.
if (OffImm != 0)
O << ", ";
if (OffImm != 0 && UseMarkup)
O << "<imm:";
O << ", " << markup("<imm:");
if (OffImm == INT32_MIN)
O << "#-0";
else if (OffImm < 0)
O << "#-" << -OffImm;
else if (OffImm > 0)
else
O << "#" << OffImm;
if (OffImm != 0 && UseMarkup)
O << ">";
O << markup(">");
}
void ARMInstPrinter::printT2AddrModeSoRegOperand(const MCInst *MI,

View File

@ -683,6 +683,7 @@
# CHECK: ldrd r0, r1, [r2, #-0]!
# CHECK: ldrd r0, r1, [r2, #0]!
# CHECK: ldrd r0, r1, [r2, #-0]
# CHECK: ldrd r1, r1, [r0], #0
0xd6 0xe9 0x06 0x35
0xf6 0xe9 0x06 0x35
@ -694,6 +695,7 @@
0x72 0xe9 0x00 0x01
0xf2 0xe9 0x00 0x01
0x52 0xe9 0x00 0x01
0xf0 0xe8 0x00 0x11
#------------------------------------------------------------------------------
@ -1926,6 +1928,7 @@
#------------------------------------------------------------------------------
# STRD (immediate)
#------------------------------------------------------------------------------
# CHECK: strd r1, r1, [r0], #0
# CHECK: strd r6, r3, [r5], #-8
# CHECK: strd r8, r5, [r5], #-0
# CHECK: strd r7, r4, [r5], #-4
@ -1933,6 +1936,7 @@
# CHECK: strd r0, r1, [r2, #0]!
# CHECK: strd r0, r1, [r2, #-0]
0xe0 0xe8 0x00 0x11
0x65 0xe8 0x02 0x63
0x65 0xe8 0x00 0x85
0x65 0xe8 0x01 0x74