diff options
author | Dmitriy Ivanov <dimitry@google.com> | 2015-10-23 11:36:50 -0700 |
---|---|---|
committer | Dmitriy Ivanov <dimitry@google.com> | 2015-10-23 11:36:50 -0700 |
commit | 667e84bb0b221c9cedf149e4fde14fcd576a37c2 (patch) | |
tree | 1519a54afeeaa1eaf6efd655231073adec804bc5 | |
parent | 27f0d9859e0d6bdf62795c98aa9b63cbeb233595 (diff) | |
download | valgrind-667e84bb0b221c9cedf149e4fde14fcd576a37c2.tar.gz |
Fix for unhandled sub.w rD, sp, rM, lsl N
Bug: http://b/24669806
Bug: https://bugs.kde.org/show_bug.cgi?id=354274
Change-Id: I3d6f4dd429dd6eb45f576b37e388c2bc9283f96d
-rw-r--r-- | VEX/priv/guest_arm_toIR.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/VEX/priv/guest_arm_toIR.c b/VEX/priv/guest_arm_toIR.c index d2bcf1676..54ccd072c 100644 --- a/VEX/priv/guest_arm_toIR.c +++ b/VEX/priv/guest_arm_toIR.c @@ -19671,10 +19671,10 @@ DisResult disInstr_THUMB_WRK ( && rD != 15 && rN == 13 && imm5 <= 3 && how == 0) { valid = True; } - /* also allow "sub.w reg, sp, reg w/ no shift + /* also allow "sub.w reg, sp, reg lsl #N for N=0,1,2 or 3 (T1) "SUB (SP minus register) */ if (!valid && INSN0(8,5) == BITS4(1,1,0,1) // sub - && rD != 15 && rN == 13 && imm5 == 0 && how == 0) { + && rD != 15 && rN == 13 && imm5 <= 3 && how == 0) { valid = True; } if (valid) { |