[PM] Remove support for omitting the AnalysisManager argument to new

pass manager passes' `run` methods.

This removes a bunch of SFINAE goop from the pass manager and just
requires pass authors to accept `AnalysisManager<IRUnitT> &` as a dead
argument. This is a small price to pay for the simplicity of the system
as a whole, despite the noise that changing it causes at this stage.

This will also helpfull allow us to make the signature of the run
methods much more flexible for different kinds af passes to support
things like intelligently updating the pass's progression over IR units.

While this touches many, many, files, the changes are really boring.
Mostly made with the help of my trusty perl one liners.

Thanks to Sean and Hal for bouncing ideas for this with me in IRC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272978 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chandler Carruth
2016-06-17 00:11:01 +00:00
parent 5e71c1e0a7
commit 04d0fe9c10
49 changed files with 122 additions and 180 deletions
+1 -1
View File
@@ -19,7 +19,7 @@
#include "llvm/Pass.h"
using namespace llvm;
PreservedAnalyses BitcodeWriterPass::run(Module &M) {
PreservedAnalyses BitcodeWriterPass::run(Module &M, ModuleAnalysisManager &) {
std::unique_ptr<ModuleSummaryIndex> Index;
if (EmitSummaryIndex)
Index = ModuleSummaryIndexBuilder(&M).takeIndex();