Skip to content

Commit c084921

Browse files
authored
[SystemZ] Use the same PatFrag for all "insert imm" fragments (NFC) (llvm#119962)
1 parent c35108e commit c084921

File tree

1 file changed

+12
-17
lines changed

1 file changed

+12
-17
lines changed

llvm/lib/Target/SystemZ/SystemZOperators.td

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -757,23 +757,18 @@ defm block_or : block_op<or>;
757757
defm block_xor : block_op<xor>;
758758

759759
// Insertions.
760-
def inserti8 : PatFrag<(ops node:$src1, node:$src2),
761-
(or (and node:$src1, -256), node:$src2)>;
762-
763-
class inserti16<int mask> : PatFrag<(ops node:$src1, node:$src2),
764-
(or (and node:$src1, mask), node:$src2)>;
765-
766-
def insertll : inserti16<0xffff0000>;
767-
def insertlh : inserti16<0x0000ffff>;
768-
def insertll64 : inserti16<0xffffffffffff0000>;
769-
def insertlh64 : inserti16<0xffffffff0000ffff>;
770-
def inserthl64 : inserti16<0xffff0000ffffffff>;
771-
def inserthh64 : inserti16<0x0000ffffffffffff>;
772-
773-
def insertlf : PatFrag<(ops node:$src1, node:$src2),
774-
(or (and node:$src1, 0xffffffff00000000), node:$src2)>;
775-
def inserthf : PatFrag<(ops node:$src1, node:$src2),
776-
(or (and node:$src1, 0x00000000ffffffff), node:$src2)>;
760+
class insert_imm<int mask> : PatFrag<(ops node:$src1, node:$src2),
761+
(or (and node:$src1, mask), node:$src2)>;
762+
763+
def inserti8 : insert_imm<-256>;
764+
def insertll : insert_imm<0xffff0000>;
765+
def insertlh : insert_imm<0x0000ffff>;
766+
def insertll64 : insert_imm<0xffffffffffff0000>;
767+
def insertlh64 : insert_imm<0xffffffff0000ffff>;
768+
def inserthl64 : insert_imm<0xffff0000ffffffff>;
769+
def inserthh64 : insert_imm<0x0000ffffffffffff>;
770+
def insertlf : insert_imm<0xffffffff00000000>;
771+
def inserthf : insert_imm<0x00000000ffffffff>;
777772

778773
// ORs that can be treated as insertions.
779774
def or_as_inserti8 : PatFrag<(ops node:$src1, node:$src2),

0 commit comments

Comments
 (0)