The vmvnq_n* intrinsics and have [u]int[16|32]_t arguments, so use
<V_elem> iterator instead of HI in mve_vmvnq_n_<supf><mode>.

2021-09-03  Christophe Lyon  <christophe.l...@foss.st.com>

        gcc/
        * config/arm/mve.md (mve_vmvnq_n_<supf><mode>): Use V_elem mode
        for operand 1.

diff --git a/gcc/config/arm/mve.md b/gcc/config/arm/mve.md
index e393518ea88..14d17060290 100644
--- a/gcc/config/arm/mve.md
+++ b/gcc/config/arm/mve.md
@@ -617,7 +617,7 @@ (define_insn "mve_vcvtaq_<supf><mode>"
 (define_insn "mve_vmvnq_n_<supf><mode>"
   [
    (set (match_operand:MVE_5 0 "s_register_operand" "=w")
-       (unspec:MVE_5 [(match_operand:HI 1 "immediate_operand" "i")]
+       (unspec:MVE_5 [(match_operand:<V_elem> 1 "immediate_operand" "i")]
         VMVNQ_N))
   ]
   "TARGET_HAVE_MVE"
-- 
2.25.1

Reply via email to