diff options
author | Davide Italiano <davide@freebsd.org> | 2017-10-05 18:06:37 +0000 |
---|---|---|
committer | Davide Italiano <davide@freebsd.org> | 2017-10-05 18:06:37 +0000 |
commit | 300b37a6ada03c0eae8f1a9ce95cd916ae8b0429 (patch) | |
tree | 165b2c89dec69f61808adb3d33e19fd69234745c /test/Other | |
parent | f139ed831d41164419ae5b3e6a1d9f7e4d93f00b (diff) |
[PassManager] Run global optimizations after the inliner.
The inliner performs some kind of dead code elimination as it goes,
but there are cases that are not really caught by it. We might
at some point consider teaching the inliner about them, but it
is OK for now to run GlobalOpt + GlobalDCE in tandem as their
benefits generally outweight the cost, making the whole pipeline
faster.
This fixes PR34652.
Differential Revision: https://reviews.llvm.org/D38154
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@314997 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Other')
-rw-r--r-- | test/Other/pass-pipelines.ll | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/test/Other/pass-pipelines.ll b/test/Other/pass-pipelines.ll index d47c02ee7a4..9ecfc4f6201 100644 --- a/test/Other/pass-pipelines.ll +++ b/test/Other/pass-pipelines.ll @@ -56,6 +56,8 @@ ; a barrier pass. ; CHECK-O2: A No-Op Barrier Pass ; Reduce the size of the IR ASAP after the inliner. +; CHECK-O2-NEXT: Global Variable Optimizer +; CHECK-O2: Dead Global Elimination ; CHECK-O2-NEXT: Eliminate Available Externally ; Inferring function attribute should be right after the CGSCC pipeline, before ; any other optimizations/analyses. |