http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50022
--- Comment #4 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> 2011-08-10 12:15:43 UTC --- Created attachment 24968 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24968 WIP Patch. A patch I'm testing but I don't very much like this given it makes this rather complex. The simple solution is to split the pattern into 2 for ARM and Thumb state and mark the Thumb state one non-predicable. I don't want to split the pattern into 2 if I can avoid it and would rather get it working correctly if I can but anyway here goes. Can you check and see if this helps in your case and if any other problems show up ? cheers Ramana