diff options
author | Chris Lattner <sabre@nondot.org> | 2010-04-06 00:51:52 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-04-06 00:51:52 +0000 |
commit | f22674832492833a87c1c319d7aab7de2c15199e (patch) | |
tree | ca484bb77d9877ecab7287f610718e7f8b04139d /llvm/lib/CodeGen | |
parent | 60955d42bd2b32946151183f29b3b8611a482ae7 (diff) | |
download | bcm5719-llvm-f22674832492833a87c1c319d7aab7de2c15199e.tar.gz bcm5719-llvm-f22674832492833a87c1c319d7aab7de2c15199e.zip |
Give MachineModuleInfo an actual Module*.
llvm-svn: 100508
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/MachineFunctionAnalysis.cpp | 18 | ||||
-rw-r--r-- | llvm/lib/CodeGen/MachineModuleInfo.cpp | 1 |
2 files changed, 14 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/MachineFunctionAnalysis.cpp b/llvm/lib/CodeGen/MachineFunctionAnalysis.cpp index faddcb29201..3b2eb6d388b 100644 --- a/llvm/lib/CodeGen/MachineFunctionAnalysis.cpp +++ b/llvm/lib/CodeGen/MachineFunctionAnalysis.cpp @@ -35,6 +35,19 @@ MachineFunctionAnalysis::~MachineFunctionAnalysis() { assert(!MF && "MachineFunctionAnalysis left initialized!"); } +void MachineFunctionAnalysis::getAnalysisUsage(AnalysisUsage &AU) const { + AU.setPreservesAll(); + AU.addRequired<MachineModuleInfo>(); +} + +bool MachineFunctionAnalysis::doInitialization(Module &M) { + MachineModuleInfo *MMI = getAnalysisIfAvailable<MachineModuleInfo>(); + assert(MMI && "MMI not around yet??"); + MMI->setModule(&M); + NextFnNum = 1; return false; +} + + bool MachineFunctionAnalysis::runOnFunction(Function &F) { assert(!MF && "MachineFunctionAnalysis already initialized!"); MF = new MachineFunction(&F, TM, NextFnNum++, @@ -46,8 +59,3 @@ void MachineFunctionAnalysis::releaseMemory() { delete MF; MF = 0; } - -void MachineFunctionAnalysis::getAnalysisUsage(AnalysisUsage &AU) const { - AU.setPreservesAll(); - AU.addRequired<MachineModuleInfo>(); -} diff --git a/llvm/lib/CodeGen/MachineModuleInfo.cpp b/llvm/lib/CodeGen/MachineModuleInfo.cpp index ad4f01b7a9a..f813a553670 100644 --- a/llvm/lib/CodeGen/MachineModuleInfo.cpp +++ b/llvm/lib/CodeGen/MachineModuleInfo.cpp @@ -262,6 +262,7 @@ MachineModuleInfo::MachineModuleInfo(const MCAsmInfo &MAI) // Always emit some info, by default "no personality" info. Personalities.push_back(NULL); AddrLabelSymbols = 0; + TheModule = 0; } MachineModuleInfo::MachineModuleInfo() |