https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60925
--- Comment #5 from dave.anglin at bell dot net --- On 5/23/2014 2:00 PM, aaro.koskinen at iki dot fi wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60925 > > Aaro Koskinen <aaro.koskinen at iki dot fi> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > CC| |danglin at gcc dot gnu.org > > --- Comment #4 from Aaro Koskinen <aaro.koskinen at iki dot fi> --- > I bisected this on gcc-4_8_branch to: > > e990a321ced7f9b02c4065a2779bbf9eaa6c774f is the first bad commit > commit e990a321ced7f9b02c4065a2779bbf9eaa6c774f > Author: danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> > Date: Wed Jan 8 02:01:50 2014 +0000 > > PR target/59652 > * config/pa/pa.c (pa_legitimate_address_p): Return false before > reload > for 14-bit register offsets when INT14_OK_STRICT is false. > This is useful info but I don't believe that reverting this change is the fix. You are just swapping bugs. The change only indirectly affects register allocation for %r1 by changing the insn mix present prior to reload. It does not deal with asms. This bug is a duplicate of PR middle-end/35193: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=35193 There is a patch to work around this issue installed in the Debian hppa patch list which you should look at. The problem in some way is caused by the inlining of asms. If the asm is put in a noinline function, the error doesn't occur. Preprocessed source needs to be simplified. Dave