This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Remove constant handling from fold_builtin_{,f}abs
- From: Richard Biener <richard dot guenther at gmail dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>, richard dot sandiford at arm dot com
- Date: Mon, 26 Oct 2015 11:41:57 +0100
- Subject: Re: Remove constant handling from fold_builtin_{,f}abs
- Authentication-results: sourceware.org; auth=none
- References: <8737wyvtq8 dot fsf at e105548-lin dot cambridge dot arm dot com>
On Mon, Oct 26, 2015 at 10:56 AM, Richard Sandiford
<richard.sandiford@arm.com> wrote:
> fold_builtin_fabs and fold_builtin_abs had code to handle constant
> arguments, but this simply duplicated what the following fold_build1_loc
> would do for ABS_EXPR.
>
> Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
> OK to install?
Ok.
Thanks,
Richard.
> Thanks,
> Richard
>
>
> gcc/
> * builtins.c (fold_builtin_fabs): Remove constant handling.
> (fold_builtin_abs): Likewise.
>
> diff --git a/gcc/builtins.c b/gcc/builtins.c
> index ed0030d..a03dffc 100644
> --- a/gcc/builtins.c
> +++ b/gcc/builtins.c
> @@ -7847,8 +7847,6 @@ fold_builtin_fabs (location_t loc, tree arg, tree type)
> return NULL_TREE;
>
> arg = fold_convert_loc (loc, type, arg);
> - if (TREE_CODE (arg) == REAL_CST)
> - return fold_abs_const (arg, type);
> return fold_build1_loc (loc, ABS_EXPR, type, arg);
> }
>
> @@ -7861,8 +7859,6 @@ fold_builtin_abs (location_t loc, tree arg, tree type)
> return NULL_TREE;
>
> arg = fold_convert_loc (loc, type, arg);
> - if (TREE_CODE (arg) == INTEGER_CST)
> - return fold_abs_const (arg, type);
> return fold_build1_loc (loc, ABS_EXPR, type, arg);
> }
>
>