summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohnny Chen <johnny.chen@apple.com>2011-02-17 23:27:44 +0000
committerJohnny Chen <johnny.chen@apple.com>2011-02-17 23:27:44 +0000
commit2a7e05a3d747feb7208160ca8297eccce3d3e6ec (patch)
tree9e83db508816cae0971121dc5a1394a56f8adfd4
parent07cbde967fa8960248862daa459013977b58080a (diff)
downloadbcm5719-llvm-2a7e05a3d747feb7208160ca8297eccce3d3e6ec.tar.gz
bcm5719-llvm-2a7e05a3d747feb7208160ca8297eccce3d3e6ec.zip
Fix a bug in EmulateTB() (TBB, TBH) where the branch length should be "twice"
the value of the byte/halfword returned from the table. llvm-svn: 125793
-rw-r--r--lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp b/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
index a71da9eaa86..0222a374206 100644
--- a/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
+++ b/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
@@ -1893,7 +1893,7 @@ EmulateInstructionARM::EmulateTB (ARMEncoding encoding)
// PC-relative offset to branch forward
EmulateInstruction::Context context;
context.type = EmulateInstruction::eContextTableBranchReadMemory;
- uint32_t offset = MemURead(context, addr, is_tbh ? 2 : 1, 0, &success);
+ uint32_t offset = MemURead(context, addr, is_tbh ? 2 : 1, 0, &success) * 2;
if (!success)
return false;
OpenPOWER on IntegriCloud