summaryrefslogtreecommitdiff
path: root/test/Analysis
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2012-09-26 17:16:01 +0000
committerDuncan Sands <baldrick@free.fr>2012-09-26 17:16:01 +0000
commit44401b7c80f334b4bbe5537fd28ed9da471e2c27 (patch)
treea551d75d22fd9d5fe2abb2802e66008e74295b8a /test/Analysis
parent696e06e4535e4e5125020b6cb5a14935ea06e6a2 (diff)
downloadllvm-44401b7c80f334b4bbe5537fd28ed9da471e2c27.tar.gz
llvm-44401b7c80f334b4bbe5537fd28ed9da471e2c27.tar.bz2
llvm-44401b7c80f334b4bbe5537fd28ed9da471e2c27.tar.xz
Now that invoke of an intrinsic is possible (for the llvm.do.nothing intrinsic)
teach the callgraph logic to not create callgraph edges to intrinsics for invoke instructions; it already skips this for call instructions. Fixes PR13903. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164707 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Analysis')
-rw-r--r--test/Analysis/CallGraph/do-nothing-intrinsic.ll13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/Analysis/CallGraph/do-nothing-intrinsic.ll b/test/Analysis/CallGraph/do-nothing-intrinsic.ll
new file mode 100644
index 0000000000..f28ad10f57
--- /dev/null
+++ b/test/Analysis/CallGraph/do-nothing-intrinsic.ll
@@ -0,0 +1,13 @@
+; RUN: opt < %s -basiccg
+; PR13903
+
+define void @main() {
+ invoke void @llvm.donothing()
+ to label %ret unwind label %unw
+unw:
+ %tmp = landingpad i8 personality i8 0 cleanup
+ br label %ret
+ret:
+ ret void
+}
+declare void @llvm.donothing() nounwind readnone