Hi!

On Wed, Jun 30, 2021 at 04:56:04PM -0500, Peter Bergner wrote:
> LLVM added the __builtin_vsx_lxvp and __builtin_vsx_stxvp built-ins.
> The following patch adds support for them to GCC so that we stay in sync
> with LLVM.

This should be documented somewhere.

> +  else if (fncode == VSX_BUILTIN_LXVP)
> +    {
> +      push_gimplify_context (true);
> +      tree offset = gimple_call_arg (stmt, 0);
> +      tree ptr = gimple_call_arg (stmt, 1);
> +      tree lhs = gimple_call_lhs (stmt);
> +      tree mem = build_simple_mem_ref (build2 (POINTER_PLUS_EXPR, TREE_TYPE 
> (ptr), ptr, offset));

Line (much) too long.

> +  else if (fncode == VSX_BUILTIN_STXVP)
> +    {
> +      push_gimplify_context (true);
> +      tree src = gimple_call_arg (stmt, 0);
> +      tree offset = gimple_call_arg (stmt, 1);
> +      tree ptr = gimple_call_arg (stmt, 2);
> +      tree mem = build_simple_mem_ref (build2 (POINTER_PLUS_EXPR, TREE_TYPE 
> (ptr), ptr, offset));

Same.

Can BU_MMA_LD be used only for lxvp?  Name it BU_MMA_PAIR_LD then?  Same
for _ST ofc.

The patch is okay for trunk.  For the backports it is okay if Bill has
looked at this patch as well.  Thanks!


Segher

Reply via email to