aboutsummaryrefslogtreecommitdiffstats
path: root/test/Analysis/BasicAA/2003-12-11-ConstExprGEP.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/Analysis/BasicAA/2003-12-11-ConstExprGEP.ll')
-rw-r--r--test/Analysis/BasicAA/2003-12-11-ConstExprGEP.ll18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/Analysis/BasicAA/2003-12-11-ConstExprGEP.ll b/test/Analysis/BasicAA/2003-12-11-ConstExprGEP.ll
new file mode 100644
index 0000000..5f602b8
--- /dev/null
+++ b/test/Analysis/BasicAA/2003-12-11-ConstExprGEP.ll
@@ -0,0 +1,18 @@
+; This testcase consists of alias relations which should be completely
+; resolvable by basicaa, but require analysis of getelementptr constant exprs.
+
+; RUN: llvm-upgrade < %s | llvm-as | \
+; RUN: opt -aa-eval -print-may-aliases -disable-output |& not grep May:
+
+%T = type { uint, [10 x ubyte] }
+
+%G = external global %T
+
+void %test() {
+ %D = getelementptr %T* %G, long 0, uint 0
+ %E = getelementptr %T* %G, long 0, uint 1, long 5
+ %F = getelementptr uint* getelementptr (%T* %G, long 0, uint 0), long 0
+ %X = getelementptr [10 x ubyte]* getelementptr (%T* %G, long 0, uint 1), long 0, long 5
+
+ ret void
+}