[llvm-commits] [llvm] r141914 - /llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
Eli Friedman
eli.friedman at gmail.com
Thu Oct 13 16:36:06 PDT 2011
Author: efriedma
Date: Thu Oct 13 18:36:06 2011
New Revision: 141914
URL: http://llvm.org/viewvc/llvm-project?rev=141914&view=rev
Log:
Fix undefined shift. Patch by Ahmed Charles.
Modified:
llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
Modified: llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp?rev=141914&r1=141913&r2=141914&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp (original)
+++ llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp Thu Oct 13 18:36:06 2011
@@ -1011,7 +1011,7 @@
uint64_t Address, const void *Decoder) {
uint32_t imm = Val & 0xFF;
uint32_t rot = (Val & 0xF00) >> 7;
- uint32_t rot_imm = (imm >> rot) | (imm << (32-rot));
+ uint32_t rot_imm = (imm >> rot) | (imm << ((32-rot) & 0x1F));
Inst.addOperand(MCOperand::CreateImm(rot_imm));
return MCDisassembler::Success;
}
More information about the llvm-commits
mailing list