mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-05 13:26:55 +00:00
[PM] Remove the old 'PassManager.h' header file at the top level of
LLVM's include tree and the use of using declarations to hide the 'legacy' namespace for the old pass manager. This undoes the primary modules-hostile change I made to keep out-of-tree targets building. I sent an email inquiring about whether this would be reasonable to do at this phase and people seemed fine with it, so making it a reality. This should allow us to start bootstrapping with modules to a certain extent along with making it easier to mix and match headers in general. The updates to any code for users of LLVM are very mechanical. Switch from including "llvm/PassManager.h" to "llvm/IR/LegacyPassManager.h". Qualify the types which now produce compile errors with "legacy::". The most common ones are "PassManager", "PassManagerBase", and "FunctionPassManager". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229094 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
#include "llvm-c/Initialization.h"
|
||||
#include "llvm-c/Transforms/IPO.h"
|
||||
#include "llvm/InitializePasses.h"
|
||||
#include "llvm/PassManager.h"
|
||||
#include "llvm/IR/LegacyPassManager.h"
|
||||
#include "llvm/Transforms/IPO.h"
|
||||
|
||||
using namespace llvm;
|
||||
|
@@ -19,7 +19,7 @@
|
||||
#include "llvm/Analysis/Passes.h"
|
||||
#include "llvm/IR/DataLayout.h"
|
||||
#include "llvm/IR/Verifier.h"
|
||||
#include "llvm/PassManager.h"
|
||||
#include "llvm/IR/LegacyPassManager.h"
|
||||
#include "llvm/Support/CommandLine.h"
|
||||
#include "llvm/Support/ManagedStatic.h"
|
||||
#include "llvm/Analysis/TargetLibraryInfo.h"
|
||||
@@ -117,7 +117,7 @@ void PassManagerBuilder::addExtension(ExtensionPointTy Ty, ExtensionFn Fn) {
|
||||
}
|
||||
|
||||
void PassManagerBuilder::addExtensionsToPM(ExtensionPointTy ETy,
|
||||
PassManagerBase &PM) const {
|
||||
legacy::PassManagerBase &PM) const {
|
||||
for (unsigned i = 0, e = GlobalExtensions->size(); i != e; ++i)
|
||||
if ((*GlobalExtensions)[i].first == ETy)
|
||||
(*GlobalExtensions)[i].second(*this, PM);
|
||||
@@ -126,8 +126,8 @@ void PassManagerBuilder::addExtensionsToPM(ExtensionPointTy ETy,
|
||||
Extensions[i].second(*this, PM);
|
||||
}
|
||||
|
||||
void
|
||||
PassManagerBuilder::addInitialAliasAnalysisPasses(PassManagerBase &PM) const {
|
||||
void PassManagerBuilder::addInitialAliasAnalysisPasses(
|
||||
legacy::PassManagerBase &PM) const {
|
||||
// Add TypeBasedAliasAnalysis before BasicAliasAnalysis so that
|
||||
// BasicAliasAnalysis wins if they disagree. This is intended to help
|
||||
// support "obvious" type-punning idioms.
|
||||
@@ -138,7 +138,8 @@ PassManagerBuilder::addInitialAliasAnalysisPasses(PassManagerBase &PM) const {
|
||||
PM.add(createBasicAliasAnalysisPass());
|
||||
}
|
||||
|
||||
void PassManagerBuilder::populateFunctionPassManager(FunctionPassManager &FPM) {
|
||||
void PassManagerBuilder::populateFunctionPassManager(
|
||||
legacy::FunctionPassManager &FPM) {
|
||||
addExtensionsToPM(EP_EarlyAsPossible, FPM);
|
||||
|
||||
// Add LibraryInfo if we have some.
|
||||
@@ -158,7 +159,8 @@ void PassManagerBuilder::populateFunctionPassManager(FunctionPassManager &FPM) {
|
||||
FPM.add(createLowerExpectIntrinsicPass());
|
||||
}
|
||||
|
||||
void PassManagerBuilder::populateModulePassManager(PassManagerBase &MPM) {
|
||||
void PassManagerBuilder::populateModulePassManager(
|
||||
legacy::PassManagerBase &MPM) {
|
||||
// If all optimizations are disabled, just run the always-inline pass and,
|
||||
// if enabled, the function merging pass.
|
||||
if (OptLevel == 0) {
|
||||
@@ -375,7 +377,7 @@ void PassManagerBuilder::populateModulePassManager(PassManagerBase &MPM) {
|
||||
addExtensionsToPM(EP_OptimizerLast, MPM);
|
||||
}
|
||||
|
||||
void PassManagerBuilder::addLTOOptimizationPasses(PassManagerBase &PM) {
|
||||
void PassManagerBuilder::addLTOOptimizationPasses(legacy::PassManagerBase &PM) {
|
||||
// Provide AliasAnalysis services for optimizations.
|
||||
addInitialAliasAnalysisPasses(PM);
|
||||
|
||||
@@ -478,7 +480,7 @@ void PassManagerBuilder::addLTOOptimizationPasses(PassManagerBase &PM) {
|
||||
PM.add(createMergeFunctionsPass());
|
||||
}
|
||||
|
||||
void PassManagerBuilder::populateLTOPassManager(PassManagerBase &PM) {
|
||||
void PassManagerBuilder::populateLTOPassManager(legacy::PassManagerBase &PM) {
|
||||
if (LibraryInfo)
|
||||
PM.add(new TargetLibraryInfoWrapperPass(*LibraryInfo));
|
||||
|
||||
@@ -563,7 +565,7 @@ void
|
||||
LLVMPassManagerBuilderPopulateFunctionPassManager(LLVMPassManagerBuilderRef PMB,
|
||||
LLVMPassManagerRef PM) {
|
||||
PassManagerBuilder *Builder = unwrap(PMB);
|
||||
FunctionPassManager *FPM = unwrap<FunctionPassManager>(PM);
|
||||
legacy::FunctionPassManager *FPM = unwrap<legacy::FunctionPassManager>(PM);
|
||||
Builder->populateFunctionPassManager(*FPM);
|
||||
}
|
||||
|
||||
@@ -571,7 +573,7 @@ void
|
||||
LLVMPassManagerBuilderPopulateModulePassManager(LLVMPassManagerBuilderRef PMB,
|
||||
LLVMPassManagerRef PM) {
|
||||
PassManagerBuilder *Builder = unwrap(PMB);
|
||||
PassManagerBase *MPM = unwrap(PM);
|
||||
legacy::PassManagerBase *MPM = unwrap(PM);
|
||||
Builder->populateModulePassManager(*MPM);
|
||||
}
|
||||
|
||||
@@ -580,7 +582,7 @@ void LLVMPassManagerBuilderPopulateLTOPassManager(LLVMPassManagerBuilderRef PMB,
|
||||
LLVMBool Internalize,
|
||||
LLVMBool RunInliner) {
|
||||
PassManagerBuilder *Builder = unwrap(PMB);
|
||||
PassManagerBase *LPM = unwrap(PM);
|
||||
legacy::PassManagerBase *LPM = unwrap(PM);
|
||||
|
||||
// A small backwards compatibility hack. populateLTOPassManager used to take
|
||||
// an RunInliner option.
|
||||
|
Reference in New Issue
Block a user