summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2011-07-26 21:28:43 +0000
committerJim Grosbach <grosbach@apple.com>2011-07-26 21:28:43 +0000
commitd2659138da55d08e0e480dd9bce6a6b933bae294 (patch)
tree819e74466806db639a9fc2a83725f16d8cc05f84 /llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
parent182543aba2ab09cd3e3c1cf8c6a9ca25245b93c0 (diff)
downloadbcm5719-llvm-d2659138da55d08e0e480dd9bce6a6b933bae294.tar.gz
bcm5719-llvm-d2659138da55d08e0e480dd9bce6a6b933bae294.zip
ARM cleanup of rot_imm encoding.
Start of cleaning this up a bit. First step is to remove the encoder hook by storing the operand as the bits it'll actually encode to so it can just be directly used. Map it to the assembly source values 8/16/24 when we print it. llvm-svn: 136152
Diffstat (limited to 'llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp')
-rw-r--r--llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp b/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
index 07d9f8ebc77..f16870054e1 100644
--- a/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
+++ b/llvm/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
@@ -1785,8 +1785,7 @@ static bool DisassembleExtFrm(MCInst &MI, unsigned Opcode, uint32_t insn,
&& !OpInfo[OpIdx].isPredicate() && !OpInfo[OpIdx].isOptionalDef()) {
// Extract the 2-bit rotate field Inst{11-10}.
unsigned rot = (insn >> ARMII::ExtRotImmShift) & 3;
- // Rotation by 8, 16, or 24 bits.
- MI.addOperand(MCOperand::CreateImm(rot << 3));
+ MI.addOperand(MCOperand::CreateImm(rot));
++OpIdx;
}
OpenPOWER on IntegriCloud