Tighten up decoding of isel instruction.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1871 8f6e269a-dfd6-0310-a8e1-e2731360e62c
diff --git a/priv/guest-ppc/toIR.c b/priv/guest-ppc/toIR.c
index 3b4e541..dcd04af 100644
--- a/priv/guest-ppc/toIR.c
+++ b/priv/guest-ppc/toIR.c
@@ -9479,7 +9479,9 @@
/* Deal with some other cases that we would otherwise have
punted on. */
/* --- ISEL (PowerISA_V2.05.pdf, p74) --- */
- if (IFIELD(theInstr, 1, 5) == 15) {
+ /* only decode this insn when reserved bit 0 (31 in IBM's
+ notation) is zero */
+ if (IFIELD(theInstr, 0, 6) == (15<<1)) {
UInt rT = ifieldRegDS( theInstr );
UInt rA = ifieldRegA( theInstr );
UInt rB = ifieldRegB( theInstr );