X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FCodeGen%2FMachineFunctionAnalysis.cpp;h=46cd60ac613e60a9848109478223f534745da48a;hb=e817bdd304e89b1e0d6fcadba1c66466625e704a;hp=3b2eb6d388b498aa39b14b7d79f00d2df9014537;hpb=421ccd9892178e741e24c96cef4304262475255d;p=oota-llvm.git diff --git a/lib/CodeGen/MachineFunctionAnalysis.cpp b/lib/CodeGen/MachineFunctionAnalysis.cpp index 3b2eb6d388b..46cd60ac613 100644 --- a/lib/CodeGen/MachineFunctionAnalysis.cpp +++ b/lib/CodeGen/MachineFunctionAnalysis.cpp @@ -12,22 +12,16 @@ //===----------------------------------------------------------------------===// #include "llvm/CodeGen/MachineFunctionAnalysis.h" +#include "llvm/CodeGen/GCMetadata.h" #include "llvm/CodeGen/MachineFunction.h" #include "llvm/CodeGen/MachineModuleInfo.h" using namespace llvm; -// Register this pass with PassInfo directly to avoid having to define -// a default constructor. -static PassInfo -X("Machine Function Analysis", "machine-function-analysis", - intptr_t(&MachineFunctionAnalysis::ID), 0, - /*CFGOnly=*/false, /*is_analysis=*/true); - char MachineFunctionAnalysis::ID = 0; -MachineFunctionAnalysis::MachineFunctionAnalysis(const TargetMachine &tm, - CodeGenOpt::Level OL) : - FunctionPass(&ID), TM(tm), OptLevel(OL), MF(0) { +MachineFunctionAnalysis::MachineFunctionAnalysis(const TargetMachine &tm) : + FunctionPass(ID), TM(tm), MF(nullptr) { + initializeMachineModuleInfoPass(*PassRegistry::getPassRegistry()); } MachineFunctionAnalysis::~MachineFunctionAnalysis() { @@ -44,18 +38,20 @@ bool MachineFunctionAnalysis::doInitialization(Module &M) { MachineModuleInfo *MMI = getAnalysisIfAvailable(); assert(MMI && "MMI not around yet??"); MMI->setModule(&M); - NextFnNum = 1; return false; + NextFnNum = 0; + return false; } bool MachineFunctionAnalysis::runOnFunction(Function &F) { assert(!MF && "MachineFunctionAnalysis already initialized!"); MF = new MachineFunction(&F, TM, NextFnNum++, - getAnalysis()); + getAnalysis(), + getAnalysisIfAvailable()); return false; } void MachineFunctionAnalysis::releaseMemory() { delete MF; - MF = 0; + MF = nullptr; }