[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