From 79dae32843854dacfff22f059a71b5a657d7c96f Mon Sep 17 00:00:00 2001 From: Christophe Lyon Date: Mon, 8 Jul 2024 14:56:16 +0200 Subject: [PATCH] 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. --- gcc/config/arm/mve.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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" -- 2.47.2