https://gcc.gnu.org/g:4c9dc6b25cdb1498635d0be9a279fda05da699da

commit 4c9dc6b25cdb1498635d0be9a279fda05da699da
Author: Peter Bergner <berg...@linux.ibm.com>
Date:   Fri Apr 25 16:47:45 2025 -0500

    MMA+: Remove unneeded mma_xxsetaccz define_expand

Diff:
---
 gcc/config/rs6000/mma.md | 19 ++++---------------
 1 file changed, 4 insertions(+), 15 deletions(-)

diff --git a/gcc/config/rs6000/mma.md b/gcc/config/rs6000/mma.md
index 4322d0f6ef73..6103dc3c5237 100644
--- a/gcc/config/rs6000/mma.md
+++ b/gcc/config/rs6000/mma.md
@@ -520,25 +520,14 @@
 ;; UNSPEC_VOLATILE.  If we have dense math registers, we can just use a normal
 ;; UNSPEC instead of UNSPEC_VOLATILE.
 
-(define_expand "mma_xxsetaccz"
-  [(set (match_operand:XO 0 "accumulator_operand")
+(define_insn "mma_xxsetaccz"
+  [(set (match_operand:XO 0 "accumulator_operand" "=wD")
        (unspec_volatile:XO [(const_int 0)]
                            UNSPECV_MMA_XXSETACCZ))]
   "TARGET_MMA"
 {
-  if (TARGET_DENSE_MATH)
-    {
-      emit_insn (gen_mma_dmsetdmrz (operands[0]));
-      DONE;
-    }
-})
-
-(define_insn "*mma_xxsetaccz"
-  [(set (match_operand:XO 0 "accumulator_operand" "=wD")
-       (unspec_volatile:XO [(const_int 0)]
-                           UNSPECV_MMA_XXSETACCZ))]
-  "TARGET_MMA && !TARGET_DENSE_MATH"
-  "xxsetaccz %A0"
+  return TARGET_DENSE_MATH ? "dmsetdmrz %A0" : "xxsetaccz %A0";
+}
   [(set_attr "type" "mma")])
 
 (define_insn "mma_dmsetdmrz"

Reply via email to