Found the problem. It's nothing to do with _FORTIFY_SOURCE, and those intructions indexing off r2 are to do with -fstack-check so no problem there either.
Fixed as follows. Incidentally this bug was triggered by fixing the obvious bug in no_global_regs_above
Found the problem. It's nothing to do with _FORTIFY_SOURCE, and those intructions indexing off r2 are to do with -fstack-check so no problem there either.
Fixed as follows. Incidentally this bug was triggered by fixing the obvious bug in no_global_ regs_above
Index: gcc/config/ rs6000/ rs6000. c ======= ======= ======= ======= ======= ======= ======= ======= ==== rs6000/ rs6000. c (revision 152105) rs6000/ rs6000. c (working copy) emit_prologue (void) multiple; chain_p = (cfun-> static_ chain_decl != NULL_TREE
&& df_regs_ever_live_p (STATIC_ CHAIN_REGNUM) regs[STATIC_ CHAIN_REGNUM] ); regs[STATIC_ CHAIN_REGNUM] );
=======
--- gcc/config/
+++ gcc/config/
@@ -16148,7 +16148,7 @@ rs6000_
int using_store_
int using_static_
- && !call_used_
+ && call_used_
HOST_WIDE_INT sp_offset = 0;
if (TARGET_ FIX_AND_ CONTINUE)