[llvm-commits] [PATCH] unpredictable instructions with pc register operand on ARM

Jim Grosbach grosbach at apple.com
Fri Mar 16 11:39:09 PDT 2012


Hi Silviu,

I agree this is something we should handle better. Thank you for working on it! A small comment on the patch:

It looks like you're removing the standalone error generating test cases and moving the encoding checks into the associated "unpredictable" test files. That's general goodness. I realize this isn't original with you, but since you're in there, please update the tests to use FileCheck instead of grep. That will enable the tests to both give more reliable diagnostic feedback when they fail.

Regards,
 Jim

On Mar 14, 2012, at 7:01 AM, Silviu Baranga <silbar01 at arm.com> wrote:

> Hi,
>  
> A lot of ARM instructions are unpredictable if they have the pc
> register as an operand. So far this will cause a fail in the
> disassemble, rather than a soft fail.
>  
> This patch fixes this problem by making the decoder function for
> GPRnopc operands return SoftFail when it tries to  decode a pc
> register operand. It also modifies the register-shifted register
> conditional AND instruction by changing the Rd and Rs operand
> types from GPR to GPRnopc, in order to make the behaviour
> of the AND instruction undefined when Rd and Rn are pc register
> operands.
>  
> Please review.
>  
> Thanks,
> Silviu
> <unpredictable-ANDcond.diff>_______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120316/bf7ccf6e/attachment.html>


More information about the llvm-commits mailing list