Skip to content

Commit 94abd42

Browse files
committed
update tests
1 parent a53ff1c commit 94abd42

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

llvm/test/Transforms/InstCombine/select-of-symmetric-selects.ll

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@
33

44
define i32 @select_of_symmetric_selects(i32 %a, i32 %b, i1 %c1, i1 %c2) {
55
; CHECK-LABEL: @select_of_symmetric_selects(
6-
; CHECK-NEXT: [[SEL1:%.*]] = select i1 [[C1:%.*]], i32 [[A:%.*]], i32 [[B:%.*]]
7-
; CHECK-NEXT: [[SEL2:%.*]] = select i1 [[C1]], i32 [[B]], i32 [[A]]
8-
; CHECK-NEXT: [[RET:%.*]] = select i1 [[C2:%.*]], i32 [[SEL1]], i32 [[SEL2]]
6+
; CHECK-NEXT: [[TMP1:%.*]] = xor i1 [[C1:%.*]], [[C2:%.*]]
7+
; CHECK-NEXT: [[RET:%.*]] = select i1 [[TMP1]], i32 [[B:%.*]], i32 [[A:%.*]]
98
; CHECK-NEXT: ret i32 [[RET]]
109
;
1110
%sel1 = select i1 %c1, i32 %a, i32 %b
@@ -75,9 +74,8 @@ define i32 @select_of_symmetric_selects_multi_use2(i32 %a, i32 %b, i1 %c1, i1 %c
7574

7675
define i32 @select_of_symmetric_selects_commuted(i32 %a, i32 %b, i1 %c1, i1 %c2) {
7776
; CHECK-LABEL: @select_of_symmetric_selects_commuted(
78-
; CHECK-NEXT: [[SEL1:%.*]] = select i1 [[C1:%.*]], i32 [[A:%.*]], i32 [[B:%.*]]
79-
; CHECK-NEXT: [[SEL2:%.*]] = select i1 [[C1]], i32 [[B]], i32 [[A]]
80-
; CHECK-NEXT: [[RET:%.*]] = select i1 [[C2:%.*]], i32 [[SEL2]], i32 [[SEL1]]
77+
; CHECK-NEXT: [[TMP1:%.*]] = xor i1 [[C1:%.*]], [[C2:%.*]]
78+
; CHECK-NEXT: [[RET:%.*]] = select i1 [[TMP1]], i32 [[A:%.*]], i32 [[B:%.*]]
8179
; CHECK-NEXT: ret i32 [[RET]]
8280
;
8381
%sel1 = select i1 %c1, i32 %a, i32 %b
@@ -88,9 +86,8 @@ define i32 @select_of_symmetric_selects_commuted(i32 %a, i32 %b, i1 %c1, i1 %c2)
8886

8987
define <4 x i32> @select_of_symmetric_selects_vector1(<4 x i32> %a, <4 x i32> %b, i1 %c1, i1 %c2) {
9088
; CHECK-LABEL: @select_of_symmetric_selects_vector1(
91-
; CHECK-NEXT: [[SEL1:%.*]] = select i1 [[C1:%.*]], <4 x i32> [[A:%.*]], <4 x i32> [[B:%.*]]
92-
; CHECK-NEXT: [[SEL2:%.*]] = select i1 [[C1]], <4 x i32> [[B]], <4 x i32> [[A]]
93-
; CHECK-NEXT: [[RET:%.*]] = select i1 [[C2:%.*]], <4 x i32> [[SEL2]], <4 x i32> [[SEL1]]
89+
; CHECK-NEXT: [[TMP1:%.*]] = xor i1 [[C1:%.*]], [[C2:%.*]]
90+
; CHECK-NEXT: [[RET:%.*]] = select i1 [[TMP1]], <4 x i32> [[A:%.*]], <4 x i32> [[B:%.*]]
9491
; CHECK-NEXT: ret <4 x i32> [[RET]]
9592
;
9693
%sel1 = select i1 %c1, <4 x i32> %a, <4 x i32> %b
@@ -101,9 +98,8 @@ define <4 x i32> @select_of_symmetric_selects_vector1(<4 x i32> %a, <4 x i32> %b
10198

10299
define <4 x i32> @select_of_symmetric_selects_vector2(<4 x i32> %a, <4 x i32> %b, <4 x i1> %c1, <4 x i1> %c2) {
103100
; CHECK-LABEL: @select_of_symmetric_selects_vector2(
104-
; CHECK-NEXT: [[SEL1:%.*]] = select <4 x i1> [[C1:%.*]], <4 x i32> [[A:%.*]], <4 x i32> [[B:%.*]]
105-
; CHECK-NEXT: [[SEL2:%.*]] = select <4 x i1> [[C1]], <4 x i32> [[B]], <4 x i32> [[A]]
106-
; CHECK-NEXT: [[RET:%.*]] = select <4 x i1> [[C2:%.*]], <4 x i32> [[SEL2]], <4 x i32> [[SEL1]]
101+
; CHECK-NEXT: [[TMP1:%.*]] = xor <4 x i1> [[C1:%.*]], [[C2:%.*]]
102+
; CHECK-NEXT: [[RET:%.*]] = select <4 x i1> [[TMP1]], <4 x i32> [[A:%.*]], <4 x i32> [[B:%.*]]
107103
; CHECK-NEXT: ret <4 x i32> [[RET]]
108104
;
109105
%sel1 = select <4 x i1> %c1, <4 x i32> %a, <4 x i32> %b

0 commit comments

Comments
 (0)