These instruction definitions were incorrectly missing their streaming
mode requirement.

Committed as obvious.

gcc/ChangeLog:

        * config/aarch64/aarch64-sme.md
        (aarch64_sme_write_zt): Add TARGET_STREAMING requirement.
        (aarch64_sme_lut_zt): Ditto.


diff --git a/gcc/config/aarch64/aarch64-sme.md 
b/gcc/config/aarch64/aarch64-sme.md
index 
6fb35462cbd8a904440e1aeba386f4f19f95cc91..ca3ed47165700dcc488cff55a6a788bdd98ddde6
 100644
--- a/gcc/config/aarch64/aarch64-sme.md
+++ b/gcc/config/aarch64/aarch64-sme.md
@@ -1055,7 +1055,7 @@
          [(match_operand:SVE_FULL 0 "register_operand" "w")
           (match_operand:DI       1 "const_int_operand")]
          UNSPEC_SME_WRITE))]
-  "TARGET_SME_LUTv2"
+  "TARGET_SME_LUTv2 && TARGET_STREAMING"
   "movt\tzt0 [%1, mul vl], %0"
 )
 
@@ -2774,6 +2774,6 @@
           (reg:DI SME_STATE_REGNUM)
           (match_operand:VNx32QI 1 "register_operand" "w")]
          UNSPEC_SME_LUTI_ZT))]
-  "TARGET_SME_LUTv2"
+  "TARGET_SME_LUTv2 && TARGET_STREAMING"
   "luti4\t%0, zt0, {%Z1 - %T1}"
 )

Reply via email to