]> granicus.if.org Git - llvm/commit
[PassManager] Run global optimizations after the inliner.
authorDavide Italiano <davide@freebsd.org>
Thu, 5 Oct 2017 18:06:37 +0000 (18:06 +0000)
committerDavide Italiano <davide@freebsd.org>
Thu, 5 Oct 2017 18:06:37 +0000 (18:06 +0000)
commit300b37a6ada03c0eae8f1a9ce95cd916ae8b0429
tree165b2c89dec69f61808adb3d33e19fd69234745c
parentf139ed831d41164419ae5b3e6a1d9f7e4d93f00b
[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
lib/Transforms/IPO/PassManagerBuilder.cpp
test/CodeGen/AMDGPU/early-inline.ll
test/Other/pass-pipelines.ll