summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2018-07-06 08:04:47 +0000
committerTim Northover <tnorthover@apple.com>2018-07-06 08:04:47 +0000
commit7ee46ed992690294cfe984366370cb4787fcf0f3 (patch)
tree37b0e44b38f68e4da6712151011a0168e6b1c506 /llvm/test/Transforms
parent2a57b357a3a0de2202a3fb0272d2648a205bcdfa (diff)
downloadbcm5719-llvm-7ee46ed992690294cfe984366370cb4787fcf0f3.tar.gz
bcm5719-llvm-7ee46ed992690294cfe984366370cb4787fcf0f3.zip
CallGraphSCCPass: iterate over all functions.
Previously we only iterated over functions reachable from the set of external functions in the module. But since some of the passes under this (notably the always-inliner and coroutine lowerer) are required for correctness, they need to run over everything. This just adds an extra layer of iteration over the CallGraph to keep track of which functions we've already visited and get the next batch of SCCs. Should fix PR38029. llvm-svn: 336419
Diffstat (limited to 'llvm/test/Transforms')
-rw-r--r--llvm/test/Transforms/Inline/always-inline.ll7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/test/Transforms/Inline/always-inline.ll b/llvm/test/Transforms/Inline/always-inline.ll
index 791eb94779b..fe61992eac0 100644
--- a/llvm/test/Transforms/Inline/always-inline.ll
+++ b/llvm/test/Transforms/Inline/always-inline.ll
@@ -316,3 +316,10 @@ define void @outer14() {
call void @inner14()
ret void
}
+
+define internal i32 @outer15() {
+; CHECK-LABEL: @outer15
+; CHECK: ret i32 1
+ %res = call i32 @inner1()
+ ret i32 %res
+}
OpenPOWER on IntegriCloud