https://gcc.gnu.org/g:79dae32843854dacfff22f059a71b5a657d7c96f

commit r15-4394-g79dae32843854dacfff22f059a71b5a657d7c96f
Author: Christophe Lyon <christophe.l...@arm.com>
Date:   Mon Jul 8 14:56:16 2024 +0200

    arm: [MVE intrinsics] fix vdup iterator
    
    This patch fixes a bug where the mode iterator for mve_vdup<mode>
    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  <jolen...@arm.com>
                Christophe Lyon  <christophe.l...@arm.com>
    
            gcc/
            * config/arm/mve.md (mve_vdup<mode>): Fix mode iterator.

Diff:
---
 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 706a45c7d665..3f01bc1f4fc7 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<mode>"
-  [(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:<V_elem> 1 "s_register_operand" "r")))]
   "TARGET_HAVE_MVE || TARGET_HAVE_MVE_FLOAT"
   "vdup.<V_sz_elem>\t%q0, %1"

Reply via email to