Skip to content

Commit f68dbbb

Browse files
committed
[VectorCombine] Add test coverage for #121110
1 parent 52bbe20 commit f68dbbb

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

llvm/test/Transforms/VectorCombine/X86/shuffle-of-cmps.ll

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,3 +275,26 @@ define <4 x i32> @shuf_icmp_ugt_v4i32_use(<4 x i32> %x, <4 x i32> %y, <4 x i32>
275275
%r = sext <4 x i1> %s to <4 x i32>
276276
ret <4 x i32> %r
277277
}
278+
279+
; TODO: PR121110 - don't merge equivalent (but not matching) predicates
280+
define <2 x i1> @PR121110() {
281+
; CHECK-LABEL: define <2 x i1> @PR121110(
282+
; CHECK-SAME: ) #[[ATTR0]] {
283+
; CHECK-NEXT: ret <2 x i1> zeroinitializer
284+
;
285+
%ugt = icmp samesign ugt <2 x i32> < i32 0, i32 0 >, < i32 0, i32 0 >
286+
%sgt = icmp sgt <2 x i32> < i32 0, i32 0 >, < i32 6, i32 4294967292 >
287+
%res = shufflevector <2 x i1> %ugt, <2 x i1> %sgt, <2 x i32> <i32 0, i32 3>
288+
ret <2 x i1> %res
289+
}
290+
291+
define <2 x i1> @PR121110_commute() {
292+
; CHECK-LABEL: define <2 x i1> @PR121110_commute(
293+
; CHECK-SAME: ) #[[ATTR0]] {
294+
; CHECK-NEXT: ret <2 x i1> zeroinitializer
295+
;
296+
%sgt = icmp sgt <2 x i32> < i32 0, i32 0 >, < i32 6, i32 4294967292 >
297+
%ugt = icmp samesign ugt <2 x i32> < i32 0, i32 0 >, < i32 0, i32 0 >
298+
%res = shufflevector <2 x i1> %sgt, <2 x i1> %ugt, <2 x i32> <i32 0, i32 3>
299+
ret <2 x i1> %res
300+
}

0 commit comments

Comments
 (0)