@@ -23,18 +23,6 @@ define i1 @icmp_ne_common_op00(i1 %c, i6 %x, i6 %y, i6 %z) {
2323 ret i1 %r
2424}
2525
26- define i1 @icmp_ne_samesign_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
27- ; CHECK-LABEL: @icmp_ne_samesign_common(
28- ; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
29- ; CHECK-NEXT: [[R:%.*]] = icmp ne i6 [[X:%.*]], [[R_V]]
30- ; CHECK-NEXT: ret i1 [[R]]
31- ;
32- %cmp1 = icmp samesign ne i6 %x , %y
33- %cmp2 = icmp ne i6 %x , %z
34- %r = select i1 %c , i1 %cmp1 , i1 %cmp2
35- ret i1 %r
36- }
37-
3826define i1 @icmp_ne_common_op01 (i1 %c , i3 %x , i3 %y , i3 %z ) {
3927; CHECK-LABEL: @icmp_ne_common_op01(
4028; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i3 [[Y:%.*]], i3 [[Z:%.*]]
@@ -83,18 +71,6 @@ define i1 @icmp_eq_common_op00(i1 %c, i5 %x, i5 %y, i5 %z) {
8371 ret i1 %r
8472}
8573
86- define i1 @icmp_eq_samesign_common (i1 %c , i5 %x , i5 %y , i5 %z ) {
87- ; CHECK-LABEL: @icmp_eq_samesign_common(
88- ; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i5 [[Y:%.*]], i5 [[Z:%.*]]
89- ; CHECK-NEXT: [[R:%.*]] = icmp eq i5 [[X:%.*]], [[R_V]]
90- ; CHECK-NEXT: ret i1 [[R]]
91- ;
92- %cmp1 = icmp eq i5 %x , %y
93- %cmp2 = icmp samesign eq i5 %x , %z
94- %r = select i1 %c , i1 %cmp1 , i1 %cmp2
95- ret i1 %r
96- }
97-
9874define <5 x i1 > @icmp_eq_common_op01 (<5 x i1 > %c , <5 x i7 > %x , <5 x i7 > %y , <5 x i7 > %z ) {
9975; CHECK-LABEL: @icmp_eq_common_op01(
10076; CHECK-NEXT: [[R_V:%.*]] = select <5 x i1> [[C:%.*]], <5 x i7> [[Y:%.*]], <5 x i7> [[Z:%.*]]
@@ -158,18 +134,6 @@ define i1 @icmp_slt_common(i1 %c, i6 %x, i6 %y, i6 %z) {
158134 ret i1 %r
159135}
160136
161- define i1 @icmp_slt_samesign_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
162- ; CHECK-LABEL: @icmp_slt_samesign_common(
163- ; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
164- ; CHECK-NEXT: [[R:%.*]] = icmp ult i6 [[X:%.*]], [[R_V]]
165- ; CHECK-NEXT: ret i1 [[R]]
166- ;
167- %cmp1 = icmp samesign ult i6 %x , %y
168- %cmp2 = icmp slt i6 %x , %z
169- %r = select i1 %c , i1 %cmp1 , i1 %cmp2
170- ret i1 %r
171- }
172-
173137define i1 @icmp_sgt_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
174138; CHECK-LABEL: @icmp_sgt_common(
175139; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
@@ -182,18 +146,6 @@ define i1 @icmp_sgt_common(i1 %c, i6 %x, i6 %y, i6 %z) {
182146 ret i1 %r
183147}
184148
185- define i1 @icmp_sgt_samesign_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
186- ; CHECK-LABEL: @icmp_sgt_samesign_common(
187- ; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
188- ; CHECK-NEXT: [[R:%.*]] = icmp ugt i6 [[X:%.*]], [[R_V]]
189- ; CHECK-NEXT: ret i1 [[R]]
190- ;
191- %cmp1 = icmp samesign ugt i6 %x , %y
192- %cmp2 = icmp sgt i6 %x , %z
193- %r = select i1 %c , i1 %cmp1 , i1 %cmp2
194- ret i1 %r
195- }
196-
197149define i1 @icmp_sle_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
198150; CHECK-LABEL: @icmp_sle_common(
199151; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
@@ -206,18 +158,6 @@ define i1 @icmp_sle_common(i1 %c, i6 %x, i6 %y, i6 %z) {
206158 ret i1 %r
207159}
208160
209- define i1 @icmp_sle_samesign_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
210- ; CHECK-LABEL: @icmp_sle_samesign_common(
211- ; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
212- ; CHECK-NEXT: [[R:%.*]] = icmp sge i6 [[X:%.*]], [[R_V]]
213- ; CHECK-NEXT: ret i1 [[R]]
214- ;
215- %cmp1 = icmp sle i6 %y , %x
216- %cmp2 = icmp samesign ule i6 %z , %x
217- %r = select i1 %c , i1 %cmp1 , i1 %cmp2
218- ret i1 %r
219- }
220-
221161define i1 @icmp_sge_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
222162; CHECK-LABEL: @icmp_sge_common(
223163; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
@@ -230,18 +170,6 @@ define i1 @icmp_sge_common(i1 %c, i6 %x, i6 %y, i6 %z) {
230170 ret i1 %r
231171}
232172
233- define i1 @icmp_sge_samesign_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
234- ; CHECK-LABEL: @icmp_sge_samesign_common(
235- ; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
236- ; CHECK-NEXT: [[R:%.*]] = icmp sle i6 [[X:%.*]], [[R_V]]
237- ; CHECK-NEXT: ret i1 [[R]]
238- ;
239- %cmp1 = icmp sge i6 %y , %x
240- %cmp2 = icmp samesign uge i6 %z , %x
241- %r = select i1 %c , i1 %cmp1 , i1 %cmp2
242- ret i1 %r
243- }
244-
245173define i1 @icmp_slt_sgt_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
246174; CHECK-LABEL: @icmp_slt_sgt_common(
247175; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
@@ -254,18 +182,6 @@ define i1 @icmp_slt_sgt_common(i1 %c, i6 %x, i6 %y, i6 %z) {
254182 ret i1 %r
255183}
256184
257- define i1 @icmp_slt_sgt_samesign_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
258- ; CHECK-LABEL: @icmp_slt_sgt_samesign_common(
259- ; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
260- ; CHECK-NEXT: [[R:%.*]] = icmp ult i6 [[X:%.*]], [[R_V]]
261- ; CHECK-NEXT: ret i1 [[R]]
262- ;
263- %cmp1 = icmp samesign ult i6 %x , %y
264- %cmp2 = icmp sgt i6 %z , %x
265- %r = select i1 %c , i1 %cmp1 , i1 %cmp2
266- ret i1 %r
267- }
268-
269185define i1 @icmp_sle_sge_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
270186; CHECK-LABEL: @icmp_sle_sge_common(
271187; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
@@ -278,18 +194,6 @@ define i1 @icmp_sle_sge_common(i1 %c, i6 %x, i6 %y, i6 %z) {
278194 ret i1 %r
279195}
280196
281- define i1 @icmp_sle_sge_samesign_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
282- ; CHECK-LABEL: @icmp_sle_sge_samesign_common(
283- ; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
284- ; CHECK-NEXT: [[R:%.*]] = icmp sge i6 [[X:%.*]], [[R_V]]
285- ; CHECK-NEXT: ret i1 [[R]]
286- ;
287- %cmp1 = icmp sle i6 %y , %x
288- %cmp2 = icmp samesign uge i6 %x , %z
289- %r = select i1 %c , i1 %cmp1 , i1 %cmp2
290- ret i1 %r
291- }
292-
293197define i1 @icmp_ult_common (i1 %c , i6 %x , i6 %y , i6 %z ) {
294198; CHECK-LABEL: @icmp_ult_common(
295199; CHECK-NEXT: [[R_V:%.*]] = select i1 [[C:%.*]], i6 [[Y:%.*]], i6 [[Z:%.*]]
0 commit comments