Hi! On Tue, Aug 08, 2017 at 04:14:56PM -0500, Will Schmidt wrote: > * config/rs6000/rs6000.c: rs6000_option_override_internal() Add blurb > to indicate when early gimple folding has been disabled.
* config/rs6000/rs6000.c (rs6000_option_override_internal): ... > rs6000_gimple_fold_builtin(): Add debug content. (rs6000_gimple_fold_builtin): ... > @@ -16157,10 +16161,26 @@ rs6000_gimple_fold_builtin (gimple_stmt_iterator > *gsi) > gcc_checking_assert (fndecl && DECL_BUILT_IN_CLASS (fndecl) == > BUILT_IN_MD); > enum rs6000_builtins fn_code > = (enum rs6000_builtins) DECL_FUNCTION_CODE (fndecl); > tree arg0, arg1, lhs; > > + size_t uns_fncode = (size_t)fn_code; Space after cast. More of this in the rest of the patch. > + if (TARGET_DEBUG_BUILTIN) > + { > + fprintf (stderr, "rs6000_gimple_fold_builtin %d %s %s \n", > + fn_code,fn_name1,fn_name2); No space before \n, space after commas. > + if (rs6000_gimple_folding_disable) > + return false; One space indented too many there. > diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt > index e94aa07..4372b00 100644 > --- a/gcc/config/rs6000/rs6000.opt > +++ b/gcc/config/rs6000/rs6000.opt > @@ -146,10 +146,14 @@ Generate AltiVec instructions using little-endian > element order. > > maltivec=be > Target Report RejectNegative Var(rs6000_altivec_element_order, 2) > Generate AltiVec instructions using big-endian element order. > > +mgimple-folding=off > +Target Report RejectNegative Var(rs6000_gimple_folding_disable, 1) > +Disable early gimple folding of builtins. Please use -mgimple-folding instead, or better, -mfold-gimple, along with its no- variant? So no RejectNegative. It's probably easier to read if the internal var is the positive version, too? Segher