This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, rs6000] enable early debug and disable switch for gimple folding
- From: Segher Boessenkool <segher at kernel dot crashing dot org>
- To: Will Schmidt <will_schmidt at vnet dot ibm dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Richard Biener <richard dot guenther at gmail dot com>, Bill Schmidt <wschmidt at linux dot vnet dot ibm dot com>, David Edelsohn <dje dot gcc at gmail dot com>
- Date: Tue, 8 Aug 2017 17:31:44 -0500
- Subject: Re: [PATCH, rs6000] enable early debug and disable switch for gimple folding
- Authentication-results: sourceware.org; auth=none
- References: <1502226896.6577.12.camel@brimstone.rchland.ibm.com>
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