[InstCombine] Regenerate + add icmp with undef tests
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 19 Mar 2019 11:44:22 +0000 (11:44 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 19 Mar 2019 11:44:22 +0000 (11:44 +0000)
Better test coverage for PR41125 and D59363

llvm-svn: 356448

llvm/test/Transforms/InstCombine/icmp.ll

index 7f8c6a3..b2244c5 100644 (file)
@@ -67,13 +67,34 @@ define i32 @test4(i32 %X) {
 }
 
 ; PR4837
-define <2 x i1> @test5(<2 x i64> %x) {
-; CHECK-LABEL: @test5(
+define <2 x i1> @test5_eq(<2 x i64> %x) {
+; CHECK-LABEL: @test5_eq(
 ; CHECK-NEXT:    ret <2 x i1> <i1 true, i1 true>
 ;
   %V = icmp eq <2 x i64> %x, undef
   ret <2 x i1> %V
 }
+define <2 x i1> @test5_ne(<2 x i64> %x) {
+; CHECK-LABEL: @test5_ne(
+; CHECK-NEXT:    ret <2 x i1> zeroinitializer
+;
+  %V = icmp ne <2 x i64> %x, undef
+  ret <2 x i1> %V
+}
+define <2 x i1> @test5_ugt(<2 x i64> %x) {
+; CHECK-LABEL: @test5_ugt(
+; CHECK-NEXT:    ret <2 x i1> zeroinitializer
+;
+  %V = icmp ugt <2 x i64> %x, undef
+  ret <2 x i1> %V
+}
+define <2 x i1> @test5_zero() {
+; CHECK-LABEL: @test5_zero(
+; CHECK-NEXT:    ret <2 x i1> undef
+;
+  %V = icmp eq <2 x i64> zeroinitializer, undef
+  ret <2 x i1> %V
+}
 
 define i32 @test6(i32 %a, i32 %b) {
 ; CHECK-LABEL: @test6(