diff options
-rw-r--r-- | include/llvm/CodeGen/Passes.h | 3 | ||||
-rw-r--r-- | lib/CodeGen/LLVMTargetMachine.cpp | 7 |
2 files changed, 8 insertions, 2 deletions
diff --git a/include/llvm/CodeGen/Passes.h b/include/llvm/CodeGen/Passes.h index 082bada1c3..627568a4e4 100644 --- a/include/llvm/CodeGen/Passes.h +++ b/include/llvm/CodeGen/Passes.h @@ -42,8 +42,7 @@ protected: public: TargetPassConfig(TargetMachine *tm, PassManagerBase &pm, - bool DisableVerifyFlag) - : TM(tm), PM(pm), DisableVerify(DisableVerifyFlag) {} + bool DisableVerifyFlag); virtual ~TargetPassConfig() {} diff --git a/lib/CodeGen/LLVMTargetMachine.cpp b/lib/CodeGen/LLVMTargetMachine.cpp index 34bf77b790..3490e8f26f 100644 --- a/lib/CodeGen/LLVMTargetMachine.cpp +++ b/lib/CodeGen/LLVMTargetMachine.cpp @@ -125,6 +125,13 @@ LLVMTargetMachine::LLVMTargetMachine(const Target &T, StringRef Triple, "and that InitializeAllTargetMCs() is being invoked!"); } +TargetPassConfig::TargetPassConfig(TargetMachine *tm, PassManagerBase &pm, + bool DisableVerifyFlag) + : TM(tm), PM(pm), DisableVerify(DisableVerifyFlag) { + // Register all target independent codegen passes to activate their PassIDs. + initializeCodeGen(*PassRegistry::getPassRegistry()); +} + /// createPassConfig - Create a pass configuration object to be used by /// addPassToEmitX methods for generating a pipeline of CodeGen passes. TargetPassConfig *LLVMTargetMachine::createPassConfig(PassManagerBase &PM, |