[llvm] fa7915b - [CVP] Add additional select tests (NFC)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 10 08:17:29 PDT 2023


Author: Nikita Popov
Date: 2023-07-10T17:17:09+02:00
New Revision: fa7915bb73a1174e3dc1b38fe83b77325da9097c

URL: https://github.com/llvm/llvm-project/commit/fa7915bb73a1174e3dc1b38fe83b77325da9097c
DIFF: https://github.com/llvm/llvm-project/commit/fa7915bb73a1174e3dc1b38fe83b77325da9097c.diff

LOG: [CVP] Add additional select tests (NFC)

Add uses of the select outside the branch.

Added: 
    

Modified: 
    llvm/test/Transforms/CorrelatedValuePropagation/select.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/Transforms/CorrelatedValuePropagation/select.ll b/llvm/test/Transforms/CorrelatedValuePropagation/select.ll
index f10ebd6e4af8c4..85d3a022f19ced 100644
--- a/llvm/test/Transforms/CorrelatedValuePropagation/select.ll
+++ b/llvm/test/Transforms/CorrelatedValuePropagation/select.ll
@@ -92,11 +92,35 @@ out:
   ret void
 }
 
+define i8 @simple_non_phi(i1 %c, i8 %a, i8 %b) {
+; CHECK-LABEL: define i8 @simple_non_phi
+; CHECK-SAME: (i1 [[C:%.*]], i8 [[A:%.*]], i8 [[B:%.*]]) {
+; CHECK-NEXT:  entry:
+; CHECK-NEXT:    [[S:%.*]] = select i1 [[C]], i8 [[A]], i8 [[B]]
+; CHECK-NEXT:    br i1 [[C]], label [[THEN:%.*]], label [[ELSE:%.*]]
+; CHECK:       then:
+; CHECK-NEXT:    ret i8 [[S]]
+; CHECK:       else:
+; CHECK-NEXT:    ret i8 [[S]]
+;
+entry:
+  %s = select i1 %c, i8 %a, i8 %b
+  br i1 %c, label %then, label %else
+
+then:
+  ret i8 %s
+
+else:
+  ret i8 %s
+}
+
+
 define void @simple_multiple_uses(i1 %c, i8 %a, i8 %b) {
 ; CHECK-LABEL: define void @simple_multiple_uses
 ; CHECK-SAME: (i1 [[C:%.*]], i8 [[A:%.*]], i8 [[B:%.*]]) {
 ; CHECK-NEXT:  entry:
 ; CHECK-NEXT:    [[S:%.*]] = select i1 [[C]], i8 [[A]], i8 [[B]]
+; CHECK-NEXT:    call void @use(i8 [[S]], i8 [[S]])
 ; CHECK-NEXT:    br i1 [[C]], label [[THEN:%.*]], label [[ELSE:%.*]]
 ; CHECK:       then:
 ; CHECK-NEXT:    call void @use(i8 [[S]], i8 [[S]])
@@ -107,6 +131,7 @@ define void @simple_multiple_uses(i1 %c, i8 %a, i8 %b) {
 ;
 entry:
   %s = select i1 %c, i8 %a, i8 %b
+  call void @use(i8 %s, i8 %s)
   br i1 %c, label %then, label %else
 
 then:


        


More information about the llvm-commits mailing list