Replace 4 separate routines with a single routine taking a vece parameter. This avoids several targets needing to create this interface internally.
I noticed this in particular reviewing the riscv code; I'm not sure why it took three targets to notice. ;-) r~ Richard Henderson (7): tcg: Add tcg_gen_gvec_dup_imm target/s390x: Use tcg_gen_gvec_dup_imm target/ppc: Use tcg_gen_gvec_dup_imm target/arm: Use tcg_gen_gvec_dup_imm tcg: Use tcg_gen_gvec_dup_imm in logical simplifications tcg: Remove tcg_gen_gvec_dup{8,16,32,64}i tcg: Add tcg_gen_gvec_dup_tl include/tcg/tcg-op-gvec.h | 11 +++++--- target/arm/translate-a64.c | 10 +++---- target/arm/translate-sve.c | 12 ++++----- target/arm/translate.c | 9 ++++--- target/ppc/translate/vmx-impl.inc.c | 32 ++++++++++++---------- target/ppc/translate/vsx-impl.inc.c | 2 +- target/s390x/translate_vx.inc.c | 41 ++++++----------------------- tcg/tcg-op-gvec.c | 35 +++++------------------- 8 files changed, 57 insertions(+), 95 deletions(-) -- 2.20.1