diff options
author | Matthias Braun <matze@braunis.de> | 2016-08-24 00:42:05 +0000 |
---|---|---|
committer | Matthias Braun <matze@braunis.de> | 2016-08-24 00:42:05 +0000 |
commit | c3b2e80b9d7615190bb5d50f17d6524c2fd8d66d (patch) | |
tree | 464f32d68c01481e6c6ec8ec9d6954ebd7a4f5be /llvm/lib/CodeGen/LLVMTargetMachine.cpp | |
parent | 7fe0681e28379ed875367b7fdd4032b761c0bc1c (diff) | |
download | llvm-c3b2e80b9d7615190bb5d50f17d6524c2fd8d66d.zip llvm-c3b2e80b9d7615190bb5d50f17d6524c2fd8d66d.tar.gz llvm-c3b2e80b9d7615190bb5d50f17d6524c2fd8d66d.tar.bz2 |
MachineModuleInfo: Avoid dummy constructor, use INITIALIZE_TM_PASS
Change this pass constructor to just accept a const TargetMachine * and
use INITIALIZE_TM_PASS, that way we can get rid of the dummy
constructor. The pass will still fail when calling the default
constructor leading to TM == nullptr, this is no different than before
but is more in line what other codegen passes are doing and avoids the
dummy constructor.
llvm-svn: 279598
Diffstat (limited to 'llvm/lib/CodeGen/LLVMTargetMachine.cpp')
-rw-r--r-- | llvm/lib/CodeGen/LLVMTargetMachine.cpp | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/llvm/lib/CodeGen/LLVMTargetMachine.cpp b/llvm/lib/CodeGen/LLVMTargetMachine.cpp index 9ed61c6..448bfaa 100644 --- a/llvm/lib/CodeGen/LLVMTargetMachine.cpp +++ b/llvm/lib/CodeGen/LLVMTargetMachine.cpp @@ -102,15 +102,6 @@ TargetIRAnalysis LLVMTargetMachine::getTargetIRAnalysis() { }); } -MachineModuleInfo & -LLVMTargetMachine::addMachineModuleInfo(PassManagerBase &PM) const { - MachineModuleInfo *MMI = new MachineModuleInfo(*getMCAsmInfo(), - *getMCRegisterInfo(), - getObjFileLowering()); - PM.add(MMI); - return *MMI; -} - void LLVMTargetMachine::addMachineFunctionAnalysis(PassManagerBase &PM, MachineFunctionInitializer *MFInitializer) const { PM.add(new MachineFunctionAnalysis(*this, MFInitializer)); @@ -150,7 +141,8 @@ addPassesToGenerateCode(LLVMTargetMachine *TM, PassManagerBase &PM, PassConfig->addISelPrepare(); - MachineModuleInfo &MMI = TM->addMachineModuleInfo(PM); + MachineModuleInfo *MMI = new MachineModuleInfo(TM); + PM.add(MMI); TM->addMachineFunctionAnalysis(PM, MFInitializer); // Enable FastISel with -fast, but allow that to be overridden. @@ -189,7 +181,7 @@ addPassesToGenerateCode(LLVMTargetMachine *TM, PassManagerBase &PM, PassConfig->setInitialized(); - return &MMI.getContext(); + return &MMI->getContext(); } bool LLVMTargetMachine::addPassesToEmitFile( |