+2009-12-09 Nick Clifton <nickc@redhat.com>
+
+ PR 10924
+ * arm-dis.c (print_insn_arm): Mark insns that use the PC in
+ post-indexed addressing as unpredictable.
+
2009-12-03 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (FXSAVE_Fixup): New.
NEGATIVE_BIT_SET ? "-" : "",
arm_regnames[given & 0xf]);
- /* Writeback is automatically implied by post- addressing.
- Setting the W bit is unnecessary and ARM specify it as
- being unpredictable. */
- if (WRITEBACK_BIT_SET && ! allow_unpredictable)
- func (stream, UNPREDICTABLE_INSTRUCTION);
+ if (! allow_unpredictable)
+ {
+ /* Writeback is automatically implied by post- addressing.
+ Setting the W bit is unnecessary and ARM specify it as
+ being unpredictable. */
+ if (WRITEBACK_BIT_SET
+ /* Specifying the PC register as the post-indexed
+ registers is also unpredictable. */
+ || ((given & 0xf) == 0xf))
+ func (stream, UNPREDICTABLE_INSTRUCTION);
+ }
}
}
break;