On Thu, 2021-06-17 at 10:19 -0500, Bill Schmidt via Gcc-patches wrote:
> 2021-03-05  Bill Schmidt  <wschm...@linux.ibm.com>
> 



Hi,

Could use a longer description. 


> gcc/
>       * config/rs6000/rs6000.c (rs6000_builtin_reciprocal): Use
>       rs6000_builtin_decls_x when appropriate.
>       (add_condition_to_bb): Likewise.
>       (rs6000_atomic_assign_expand_fenv): Likewise.
> ---
>  gcc/config/rs6000/rs6000.c | 19 ++++++++++++++++---
>  1 file changed, 16 insertions(+), 3 deletions(-)
> 
> diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
> index 70a2be90787..7f6c1f8036e 100644
> --- a/gcc/config/rs6000/rs6000.c
> +++ b/gcc/config/rs6000/rs6000.c
> @@ -22767,12 +22767,16 @@ rs6000_builtin_reciprocal (tree fndecl)
>        if (!RS6000_RECIP_AUTO_RSQRTE_P (V2DFmode))
>       return NULL_TREE;
> 
> +      if (new_builtins_are_live)
> +     return rs6000_builtin_decls_x[RS6000_BIF_RSQRT_2DF];
>        return rs6000_builtin_decls[VSX_BUILTIN_RSQRT_2DF];
> 
>      case VSX_BUILTIN_XVSQRTSP:
>        if (!RS6000_RECIP_AUTO_RSQRTE_P (V4SFmode))
>       return NULL_TREE;
> 
> +      if (new_builtins_are_live)
> +     return rs6000_builtin_decls_x[RS6000_BIF_RSQRT_4SF];
>        return rs6000_builtin_decls[VSX_BUILTIN_RSQRT_4SF];
> 

ok


>      default:
> @@ -25361,7 +25365,10 @@ add_condition_to_bb (tree function_decl,
> tree version_decl,
> 
>    tree bool_zero = build_int_cst (bool_int_type_node, 0);
>    tree cond_var = create_tmp_var (bool_int_type_node);
> -  tree predicate_decl = rs6000_builtin_decls [(int)
> RS6000_BUILTIN_CPU_SUPPORTS];
> +  tree predicate_decl
> +    = (new_builtins_are_live
> +       ? rs6000_builtin_decls_x[(int) RS6000_BIF_CPU_SUPPORTS]
> +       : rs6000_builtin_decls [(int) RS6000_BUILTIN_CPU_SUPPORTS]);
>    const char *arg_str = rs6000_clone_map[clone_isa].name;
>    tree predicate_arg = build_string_literal (strlen (arg_str) + 1,
> arg_str);
>    gimple *call_cond_stmt = gimple_build_call (predicate_decl, 1,
> predicate_arg);
> @@ -27586,8 +27593,14 @@ rs6000_atomic_assign_expand_fenv (tree
> *hold, tree *clear, tree *update)
>        return;
>      }
> 
> -  tree mffs = rs6000_builtin_decls[RS6000_BUILTIN_MFFS];
> -  tree mtfsf = rs6000_builtin_decls[RS6000_BUILTIN_MTFSF];
> +  tree mffs
> +    = (new_builtins_are_live
> +       ? rs6000_builtin_decls_x[RS6000_BIF_MFFS]
> +       : rs6000_builtin_decls[RS6000_BUILTIN_MFFS]);
> +  tree mtfsf
> +    = (new_builtins_are_live
> +       ? rs6000_builtin_decls_x[RS6000_BIF_MTFSF]
> +       : rs6000_builtin_decls[RS6000_BUILTIN_MTFSF]);
>    tree call_mffs = build_call_expr (mffs, 0);

ok,

lgtm,
thanks
-Will

> 
>    /* Generates the equivalent of feholdexcept (&fenv_var)

Reply via email to