Hi!
On Mon, Jun 01, 2020 at 09:14:40AM -0700, Carl Love wrote:
> * config/rs6000/altivec.h: Add define vec_insertl, vec_inserth.
* config/rs6000/altivec.h (vec_insertl, vec_inserth): New defines.
> * config/rs6000/rs6000-builtin.def (BU_FUTURE_V_3): Add definition for
> VINSERTGPRBL, VINSERTGPRHL, VINSERTGPRWL, VINSERTGPRDL, VINSERTVPRBL,
> VINSERTVPRHL, VINSERTVPRWL, VINSERTGPRBR, VINSERTGPRHR, VINSERTGPRWR,
> VINSERTGPRDR, VINSERTVPRBR, VINSERTVPRHR, VINSERTVPRWR.
* config/rs6000/rs6000-builtin.def (VINSERTGPRBL, VINSERTGPRHL,
VINSERTGPRWL, VINSERTGPRDL, VINSERTVPRBL, VINSERTVPRHL, VINSERTVPRWL,
VINSERTGPRBR, VINSERTGPRHR, VINSERTGPRWR, VINSERTGPRDR, VINSERTVPRBR,
VINSERTVPRHR, VINSERTVPRWR): New builtins.
> (BU_FUTURE_OVERLOAD_3): Add definition for INSERTL, INSERTH.
(INSERTL, INSERTH): New builtins.
> * config/rs6000/rs6000-call.c (FUTURE_BUILTIN_VEC_INSERTL): Add
> overloaded
> argument declarations.
> (FUTURE_BUILTIN_VEC_INSERTH): Add overloaded argument declarations.
Maybe just "New overloads." for both? (That latter one has whitespace
problems).
> (builtin_function_type): Add case entries for
> FUTURE_BUILTIN_VINSERTGPRBL,
> FUTURE_BUILTIN_VINSERTGPRHL, FUTURE_BUILTIN_VINSERTGPRWL,
> FUTURE_BUILTIN_VINSERTGPRDL, FUTURE_BUILTIN_VINSERTVPRBL,
> FUTURE_BUILTIN_VINSERTVPRHL, FUTURE_BUILTIN_VINSERTVPRWL.
builtin_function_type is not the name of what you changed (FUTURE* is).
> +(define_expand "vinsertvr_<mode>"
> + [(set (match_operand:VI2 0 "altivec_register_operand")
> + (unspec:VI2 [(match_operand:VI2 1 "altivec_register_operand")
> + (match_operand:VI2 2 "altivec_register_operand")
> + (match_operand:SI 3 "register_operand" "r")]
> + UNSPEC_INSERTR))]
> + "TARGET_FUTURE"
> +{
> + if (BYTES_BIG_ENDIAN)
> + emit_insn (gen_vinsertvr_internal_<mode> (operands[0], operands[3],
> + operands[1], operands[2]));
> + else
> + emit_insn (gen_vinsertvr_internal_<mode> (operands[0], operands[3],
> + operands[1], operands[2]));
> + DONE;
> +})
The two cases (BE and LE) are now exactly identical? Same for all
similar cases.
Okay for trunk with those nits taken care of. Thanks!
Segher