From: Christophe Lyon Date: Mon, 8 Jul 2024 12:56:16 +0000 (+0200) Subject: arm: [MVE intrinsics] fix vdup iterator X-Git-Tag: basepoints/gcc-16~5159 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=79dae32843854dacfff22f059a71b5a657d7c96f;p=thirdparty%2Fgcc.git arm: [MVE intrinsics] fix vdup iterator This patch fixes a bug where the mode iterator for mve_vdup should be MVE_VLD_ST instead of MVE_vecs: V2DI and V2DF (thus vdup.64) are not supported by MVE. 2024-07-02 Jolen Li Christophe Lyon gcc/ * config/arm/mve.md (mve_vdup): Fix mode iterator. --- diff --git a/gcc/config/arm/mve.md b/gcc/config/arm/mve.md index 706a45c7d66..3f01bc1f4fc 100644 --- a/gcc/config/arm/mve.md +++ b/gcc/config/arm/mve.md @@ -95,8 +95,8 @@ (set_attr "neg_pool_range" "*,*,*,*,996,*,*,*")]) (define_insn "mve_vdup" - [(set (match_operand:MVE_vecs 0 "s_register_operand" "=w") - (vec_duplicate:MVE_vecs + [(set (match_operand:MVE_VLD_ST 0 "s_register_operand" "=w") + (vec_duplicate:MVE_VLD_ST (match_operand: 1 "s_register_operand" "r")))] "TARGET_HAVE_MVE || TARGET_HAVE_MVE_FLOAT" "vdup.\t%q0, %1"