https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104117
Iain Sandoe <iains at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Host|powerpc-apple-darwin9 | Target Milestone|--- |10.4 Keywords| |wrong-code Build|powerpc-apple-darwin9 | Last reconfirmed| |2022-01-19 --- Comment #1 from Iain Sandoe <iains at gcc dot gnu.org> --- most likely present on earlier branches. The problem is that we have double var = (double) 1; LRA decides that loading a constant integer 1 into a FPR and then using int->double is good. However, it (a) decides to do this in the prologue (before we have got a picbase set up) and (b) does not seem to be checking that the target agrees that the addressing mode is legitimate (it is not). ---- NOTE: incidental changes on 11.x and master have hidden this (but the changes were not a fix for this bug, so it has most likely simply become latent).