[llvm] r336912 - [InstCombine] icmp-logical.ll: restore the original intention of the test.

Roman Lebedev via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 12 07:56:17 PDT 2018


Author: lebedevri
Date: Thu Jul 12 07:56:17 2018
New Revision: 336912

URL: http://llvm.org/viewvc/llvm-project?rev=336912&view=rev
Log:
[InstCombine] icmp-logical.ll: restore the original intention of the test.

While that fold is clearly not happening [anymore],
we do now have separate test cases for these cases,
so we should be ok to slightly adjust these tests
to not potentially loose test coverage.

As suggested by Hiroshi Yamauchi in
https://reviews.llvm.org/D49179#1159345

Modified:
    llvm/trunk/test/Transforms/InstCombine/icmp-logical.ll

Modified: llvm/trunk/test/Transforms/InstCombine/icmp-logical.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/icmp-logical.ll?rev=336912&r1=336911&r2=336912&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/InstCombine/icmp-logical.ll (original)
+++ llvm/trunk/test/Transforms/InstCombine/icmp-logical.ll Thu Jul 12 07:56:17 2018
@@ -59,15 +59,13 @@ define i1 @masked_or_allones(i32 %A) {
 
 define i1 @masked_and_notA(i32 %A) {
 ; CHECK-LABEL: @masked_and_notA(
-; CHECK-NEXT:    [[TMP1:%.*]] = icmp ugt i32 [[A:%.*]], 7
-; CHECK-NEXT:    [[MASK2:%.*]] = and i32 [[A]], 39
+; CHECK-NEXT:    [[MASK2:%.*]] = and i32 [[A:%.*]], 78
 ; CHECK-NEXT:    [[TST2:%.*]] = icmp ne i32 [[MASK2]], [[A]]
-; CHECK-NEXT:    [[RES:%.*]] = and i1 [[TMP1]], [[TST2]]
-; CHECK-NEXT:    ret i1 [[RES]]
+; CHECK-NEXT:    ret i1 [[TST2]]
 ;
-  %mask1 = and i32 %A, 7
+  %mask1 = and i32 %A, 14
   %tst1 = icmp ne i32 %mask1, %A
-  %mask2 = and i32 %A, 39
+  %mask2 = and i32 %A, 78
   %tst2 = icmp ne i32 %mask2, %A
   %res = and i1 %tst1, %tst2
   ret i1 %res
@@ -90,15 +88,13 @@ define i1 @masked_and_notA_slightly_opti
 
 define i1 @masked_or_A(i32 %A) {
 ; CHECK-LABEL: @masked_or_A(
-; CHECK-NEXT:    [[TMP1:%.*]] = icmp ult i32 [[A:%.*]], 8
-; CHECK-NEXT:    [[MASK2:%.*]] = and i32 [[A]], 39
+; CHECK-NEXT:    [[MASK2:%.*]] = and i32 [[A:%.*]], 78
 ; CHECK-NEXT:    [[TST2:%.*]] = icmp eq i32 [[MASK2]], [[A]]
-; CHECK-NEXT:    [[RES:%.*]] = or i1 [[TMP1]], [[TST2]]
-; CHECK-NEXT:    ret i1 [[RES]]
+; CHECK-NEXT:    ret i1 [[TST2]]
 ;
-  %mask1 = and i32 %A, 7
+  %mask1 = and i32 %A, 14
   %tst1 = icmp eq i32 %mask1, %A
-  %mask2 = and i32 %A, 39
+  %mask2 = and i32 %A, 78
   %tst2 = icmp eq i32 %mask2, %A
   %res = or i1 %tst1, %tst2
   ret i1 %res




More information about the llvm-commits mailing list