https://gcc.gnu.org/g:387911c08004aab826812e5b9d058a82f9c2733c
commit 387911c08004aab826812e5b9d058a82f9c2733c Author: Peter Bergner <[email protected]> Date: Fri Apr 25 13:34:46 2025 -0500 MMA+: Remove unneeded vsx_assemble_pair define_expand Diff: --- gcc/config/rs6000/mma.md | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/gcc/config/rs6000/mma.md b/gcc/config/rs6000/mma.md index 8c47132e4901..d2177264c2c1 100644 --- a/gcc/config/rs6000/mma.md +++ b/gcc/config/rs6000/mma.md @@ -394,23 +394,10 @@ (set_attr "length" "*,*,16,*,*,*") (set_attr "max_prefixed_insns" "2,2,*,*,*,*")]) -(define_expand "vsx_assemble_pair" - [(match_operand:OO 0 "vsx_register_operand") - (match_operand:V16QI 1 "mma_assemble_input_operand") - (match_operand:V16QI 2 "mma_assemble_input_operand")] - "TARGET_MMA" -{ - rtx src = gen_rtx_UNSPEC (OOmode, - gen_rtvec (2, operands[1], operands[2]), - UNSPEC_VSX_ASSEMBLE); - emit_move_insn (operands[0], src); - DONE; -}) - ;; We cannot update the two output registers atomically, so mark the output ;; as an early clobber so we don't accidentally clobber the input operands. */ -(define_insn_and_split "*vsx_assemble_pair" +(define_insn_and_split "vsx_assemble_pair" [(set (match_operand:OO 0 "vsx_register_operand" "=&wa") (unspec:OO [(match_operand:V16QI 1 "mma_assemble_input_operand" "mwa") (match_operand:V16QI 2 "mma_assemble_input_operand" "mwa")]
