New testacse for information exposed by the 'tail' call marker.
authorChris Lattner <sabre@nondot.org>
Sun, 8 May 2005 23:57:34 +0000 (23:57 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 8 May 2005 23:57:34 +0000 (23:57 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21795 91177308-0d34-0410-b5e6-96231b3b80d8

test/Analysis/BasicAA/tailcall-modref.ll [new file with mode: 0644]

diff --git a/test/Analysis/BasicAA/tailcall-modref.ll b/test/Analysis/BasicAA/tailcall-modref.ll
new file mode 100644 (file)
index 0000000..c58ad7f
--- /dev/null
@@ -0,0 +1,16 @@
+; RUN: llvm-as < %s | opt -basicaa -load-vn -gcse -instcombine | llvm-dis | grep 'ret int 0'
+declare void %foo(int*)
+declare void %bar()
+
+int %test() {
+       %A = alloca int
+       call void %foo(int* %A)
+
+       %X = load int* %A
+       tail call void %bar()   ;; Cannot modify *%A because it's on the stack.
+       %Y = load int* %A
+       %Z = sub int %X, %Y
+       ret int %Z
+}
+
+