From 0fe5fa71bb913b2f42a68f0369378abd3eeafe93 Mon Sep 17 00:00:00 2001 From: Sergei Barannikov Date: Sat, 14 Dec 2024 14:58:52 +0300 Subject: [PATCH] [SystemZ] Use the same PatFrag for all "insert imm" fragments (NFC) --- llvm/lib/Target/SystemZ/SystemZOperators.td | 29 +++++++++------------ 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/llvm/lib/Target/SystemZ/SystemZOperators.td b/llvm/lib/Target/SystemZ/SystemZOperators.td index 6439c82d26ff5..15b334b042d2d 100644 --- a/llvm/lib/Target/SystemZ/SystemZOperators.td +++ b/llvm/lib/Target/SystemZ/SystemZOperators.td @@ -757,23 +757,18 @@ defm block_or : block_op; defm block_xor : block_op; // Insertions. -def inserti8 : PatFrag<(ops node:$src1, node:$src2), - (or (and node:$src1, -256), node:$src2)>; - -class inserti16 : PatFrag<(ops node:$src1, node:$src2), - (or (and node:$src1, mask), node:$src2)>; - -def insertll : inserti16<0xffff0000>; -def insertlh : inserti16<0x0000ffff>; -def insertll64 : inserti16<0xffffffffffff0000>; -def insertlh64 : inserti16<0xffffffff0000ffff>; -def inserthl64 : inserti16<0xffff0000ffffffff>; -def inserthh64 : inserti16<0x0000ffffffffffff>; - -def insertlf : PatFrag<(ops node:$src1, node:$src2), - (or (and node:$src1, 0xffffffff00000000), node:$src2)>; -def inserthf : PatFrag<(ops node:$src1, node:$src2), - (or (and node:$src1, 0x00000000ffffffff), node:$src2)>; +class insert_imm : PatFrag<(ops node:$src1, node:$src2), + (or (and node:$src1, mask), node:$src2)>; + +def inserti8 : insert_imm<-256>; +def insertll : insert_imm<0xffff0000>; +def insertlh : insert_imm<0x0000ffff>; +def insertll64 : insert_imm<0xffffffffffff0000>; +def insertlh64 : insert_imm<0xffffffff0000ffff>; +def inserthl64 : insert_imm<0xffff0000ffffffff>; +def inserthh64 : insert_imm<0x0000ffffffffffff>; +def insertlf : insert_imm<0xffffffff00000000>; +def inserthf : insert_imm<0x00000000ffffffff>; // ORs that can be treated as insertions. def or_as_inserti8 : PatFrag<(ops node:$src1, node:$src2),