Add a basic-aa test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5516 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Analysis/BasicAA/featuretest.ll b/test/Analysis/BasicAA/featuretest.ll
index d2be1ce..6884df2 100644
--- a/test/Analysis/BasicAA/featuretest.ll
+++ b/test/Analysis/BasicAA/featuretest.ll
@@ -40,3 +40,14 @@
ret int %Val
}
+; Test that if two pointers are spaced out by a constant getelementptr, that
+; they cannot alias.
+int %gep_distance_test(int* %A) {
+ %REMOVEu = load int* %A
+ %B = getelementptr int* %A, long 2 ; Cannot alias A
+ store int 7, int* %B
+ %REMOVEv = load int* %A
+ %r = sub int %REMOVEu, %REMOVEv
+ ret int %r
+}
+
diff --git a/test/Transforms/BasicAA/featuretest.ll b/test/Transforms/BasicAA/featuretest.ll
index d2be1ce..6884df2 100644
--- a/test/Transforms/BasicAA/featuretest.ll
+++ b/test/Transforms/BasicAA/featuretest.ll
@@ -40,3 +40,14 @@
ret int %Val
}
+; Test that if two pointers are spaced out by a constant getelementptr, that
+; they cannot alias.
+int %gep_distance_test(int* %A) {
+ %REMOVEu = load int* %A
+ %B = getelementptr int* %A, long 2 ; Cannot alias A
+ store int 7, int* %B
+ %REMOVEv = load int* %A
+ %r = sub int %REMOVEu, %REMOVEv
+ ret int %r
+}
+