On Sun, Dec 11, 2016 at 03:31:35PM -0600, Bill Schmidt wrote: > On 12/11/16 2:00 PM, Segher Boessenkool wrote: > > Maybe this should use DF_REF_IS_ARTIFICIAL? Or if that doesn't work, > > DF_REF_INSN_INFO? > > > OK, currently regstrapping the following, which also fixes the problem with > a non-bootstrap compiler. Is this ok for trunk if it succeeds?
> --- gcc/config/rs6000/rs6000.c (revision 243506) > +++ gcc/config/rs6000/rs6000.c (working copy) > @@ -41433,6 +41433,12 @@ find_alignment_op (rtx_insn *insn, rtx base_reg) > if (!base_def_link || base_def_link->next) > break; > > + /* With stack-protector code enabled, and possibly in other > + circumstances, there may not be an associated insn for > + the def. */ > + if (DF_REF_CLASS (base_def_link->ref) == DF_REF_ARTIFICIAL) > + break; if (DF_REF_IS_ARTIFICIAL (base_def_link->ref)) Okay with that (no need to retest, just see if it compiles ;-) ) Thanks, Segher