summaryrefslogtreecommitdiff
path: root/test/Transforms/DeadArgElim
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-03-01 00:33:47 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-03-01 00:33:47 +0000
commitf291ab2fbaa5ed1cfa20ca47e8dece1040a5065b (patch)
tree6596b38d6c2f6a98965eed89eb30ae77c596d5f7 /test/Transforms/DeadArgElim
parentd3e768ecabf76859e2224f4509a94325ec5ab7c7 (diff)
downloadllvm-f291ab2fbaa5ed1cfa20ca47e8dece1040a5065b.tar.gz
llvm-f291ab2fbaa5ed1cfa20ca47e8dece1040a5065b.tar.bz2
llvm-f291ab2fbaa5ed1cfa20ca47e8dece1040a5065b.tar.xz
Add an obvious missing safety check to DAE::RemoveDeadArgumentsFromCallers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126720 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/DeadArgElim')
-rw-r--r--test/Transforms/DeadArgElim/deadexternal.ll13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/Transforms/DeadArgElim/deadexternal.ll b/test/Transforms/DeadArgElim/deadexternal.ll
index 5a80aba6e2..8409261313 100644
--- a/test/Transforms/DeadArgElim/deadexternal.ll
+++ b/test/Transforms/DeadArgElim/deadexternal.ll
@@ -37,3 +37,16 @@ entry:
call void @f(i32 %tmp)
ret void
}
+
+; Check that callers are not transformed for weak definitions.
+define weak i32 @weak_f(i32 %x) nounwind {
+entry:
+ ret i32 0
+}
+define void @weak_f_caller() nounwind {
+entry:
+; CHECK: call i32 @weak_f(i32 10)
+ %call = tail call i32 @weak_f(i32 10)
+ ret void
+}
+