[llvm] 113887e - [BasicAA] Add test coverage from D76194.
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 29 03:25:47 PDT 2022
Author: Florian Hahn
Date: 2022-06-29T11:25:20+01:00
New Revision: 113887e79ffa10ddeb4ffd31b2095d626f919e5e
URL: https://github.com/llvm/llvm-project/commit/113887e79ffa10ddeb4ffd31b2095d626f919e5e
DIFF: https://github.com/llvm/llvm-project/commit/113887e79ffa10ddeb4ffd31b2095d626f919e5e.diff
LOG: [BasicAA] Add test coverage from D76194.
Added:
Modified:
llvm/test/Analysis/BasicAA/assume-index-positive.ll
Removed:
################################################################################
diff --git a/llvm/test/Analysis/BasicAA/assume-index-positive.ll b/llvm/test/Analysis/BasicAA/assume-index-positive.ll
index 7c827e782644..42014dfe0264 100644
--- a/llvm/test/Analysis/BasicAA/assume-index-positive.ll
+++ b/llvm/test/Analysis/BasicAA/assume-index-positive.ll
@@ -130,5 +130,53 @@ define void @shl_nsw_of_non_negative(ptr %ptr, i64 %a) {
ret void
}
+define void @test5(ptr %ptr, i32 %stride) {
+; CHECK-LABEL: Function: test5: 2 pointers, 1 call sites
+; CHECK-NEXT: MayAlias: <6 x double>* %col.ptr.2, <6 x double>* %ptr
+;
+ %gt = icmp sge i32 %stride, 5
+ call void @llvm.assume(i1 %gt)
+ %lv.1 = load <6 x double>, ptr %ptr, align 8
+ %col.ptr.2= getelementptr double, ptr %ptr, i32 %stride
+ %lv.2 = load <6 x double>, ptr %col.ptr.2, align 8
+ %res.1 = fadd <6 x double> %lv.1, %lv.1
+ %res.2 = fadd <6 x double> %lv.2, %lv.2
+ store <6 x double> %res.1, ptr %ptr, align 8
+ store <6 x double> %res.2, ptr %col.ptr.2, align 8
+ ret void
+}
+
+define void @test6(ptr %ptr, i32 %stride) {
+; CHECK-LABEL: Function: test6: 2 pointers, 1 call sites
+; CHECK-NEXT: NoAlias: <6 x double>* %col.ptr.2, <6 x double>* %ptr
+;
+ %gt = icmp sge i32 %stride, 6
+ call void @llvm.assume(i1 %gt)
+ %lv.1 = load <6 x double>, ptr %ptr, align 8
+ %col.ptr.2= getelementptr double, ptr %ptr, i32 %stride
+ %lv.2 = load <6 x double>, ptr %col.ptr.2, align 8
+ %res.1 = fadd <6 x double> %lv.1, %lv.1
+ %res.2 = fadd <6 x double> %lv.2, %lv.2
+ store <6 x double> %res.1, ptr %ptr, align 8
+ store <6 x double> %res.2, ptr %col.ptr.2, align 8
+ ret void
+}
+
+define void @test7(ptr %ptr, i32 %stride) {
+; CHECK-LABEL: Function: test7: 2 pointers, 1 call sites
+; CHECK-NEXT: MayAlias: <6 x double>* %col.ptr.2, <6 x double>* %ptr
+;
+ %gt = icmp sge i32 %stride, 0
+ call void @llvm.assume(i1 %gt)
+ %lv.1 = load <6 x double>, ptr %ptr, align 8
+ %col.ptr.2= getelementptr double, ptr %ptr, i32 %stride
+ %lv.2 = load <6 x double>, ptr %col.ptr.2, align 8
+ %res.1 = fadd <6 x double> %lv.1, %lv.1
+ %res.2 = fadd <6 x double> %lv.2, %lv.2
+ store <6 x double> %res.1, ptr %ptr, align 8
+ store <6 x double> %res.2, ptr %col.ptr.2, align 8
+ ret void
+}
+
declare void @llvm.assume(i1 %cond)
declare void @barrier()
More information about the llvm-commits
mailing list