From ba79d72eab446e64d360e8263d77732b5e13d556 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 5 Apr 2010 02:23:33 +0000 Subject: [PATCH] selection dag doesn't need DwarfWriter, remove some tendrils. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100382 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/SelectionDAG.h | 5 +---- lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 6 ++---- lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 11 ++--------- lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | 3 +-- 4 files changed, 6 insertions(+), 19 deletions(-) diff --git a/include/llvm/CodeGen/SelectionDAG.h b/include/llvm/CodeGen/SelectionDAG.h index 8962bee02ee..a96fa7ef3c9 100644 --- a/include/llvm/CodeGen/SelectionDAG.h +++ b/include/llvm/CodeGen/SelectionDAG.h @@ -29,7 +29,6 @@ namespace llvm { class AliasAnalysis; -class DwarfWriter; class FunctionLoweringInfo; class MachineConstantPoolValue; class MachineFunction; @@ -123,7 +122,6 @@ class SelectionDAG { MachineFunction *MF; FunctionLoweringInfo &FLI; MachineModuleInfo *MMI; - DwarfWriter *DW; LLVMContext* Context; /// EntryNode - The starting token. @@ -182,7 +180,7 @@ public: /// init - Prepare this SelectionDAG to process code in the given /// MachineFunction. /// - void init(MachineFunction &mf, MachineModuleInfo *mmi, DwarfWriter *dw); + void init(MachineFunction &mf, MachineModuleInfo *mmi); /// clear - Clear state and free memory necessary to make this /// SelectionDAG ready to process a new block. @@ -194,7 +192,6 @@ public: TargetLowering &getTargetLoweringInfo() const { return TLI; } FunctionLoweringInfo &getFunctionLoweringInfo() const { return FLI; } MachineModuleInfo *getMachineModuleInfo() const { return MMI; } - DwarfWriter *getDwarfWriter() const { return DW; } LLVMContext *getContext() const {return Context; } /// viewGraph - Pop up a GraphViz/gv window with the DAG rendered using 'dot'. diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp index 7291c5acbb3..7dea29c8c7b 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp @@ -793,7 +793,7 @@ unsigned SelectionDAG::getEVTAlignment(EVT VT) const { // EntryNode could meaningfully have debug info if we can find it... SelectionDAG::SelectionDAG(TargetLowering &tli, FunctionLoweringInfo &fli) - : TLI(tli), FLI(fli), DW(0), + : TLI(tli), FLI(fli), EntryNode(ISD::EntryToken, DebugLoc(), getVTList(MVT::Other)), Root(getEntryNode()), Ordering(0) { AllNodes.push_back(&EntryNode); @@ -801,11 +801,9 @@ SelectionDAG::SelectionDAG(TargetLowering &tli, FunctionLoweringInfo &fli) DbgInfo = new SDDbgInfo(); } -void SelectionDAG::init(MachineFunction &mf, MachineModuleInfo *mmi, - DwarfWriter *dw) { +void SelectionDAG::init(MachineFunction &mf, MachineModuleInfo *mmi) { MF = &mf; MMI = mmi; - DW = dw; Context = &mf.getFunction()->getContext(); } diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index b06239f4182..049550bf212 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -40,7 +40,6 @@ #include "llvm/CodeGen/MachineRegisterInfo.h" #include "llvm/CodeGen/PseudoSourceValue.h" #include "llvm/CodeGen/SelectionDAG.h" -#include "llvm/CodeGen/DwarfWriter.h" #include "llvm/Analysis/DebugInfo.h" #include "llvm/Target/TargetRegisterInfo.h" #include "llvm/Target/TargetData.h" @@ -3798,9 +3797,6 @@ SelectionDAGBuilder::visitIntrinsicCall(CallInst &I, unsigned Intrinsic) { if (OptLevel != CodeGenOpt::None) // FIXME: Variable debug info is not supported here. return 0; - DwarfWriter *DW = DAG.getDwarfWriter(); - if (!DW) - return 0; DbgDeclareInst &DI = cast(I); if (!DIDescriptor::ValidDebugInfo(DI.getVariable(), CodeGenOpt::None)) return 0; @@ -3822,14 +3818,11 @@ SelectionDAGBuilder::visitIntrinsicCall(CallInst &I, unsigned Intrinsic) { int FI = SI->second; if (MachineModuleInfo *MMI = DAG.getMachineModuleInfo()) - if (!DI.getDebugLoc().isUnknown()) + if (!DI.getDebugLoc().isUnknown() && MMI->hasDebugInfo()) MMI->setVariableDbgInfo(Variable, FI, DI.getDebugLoc()); return 0; } case Intrinsic::dbg_value: { - DwarfWriter *DW = DAG.getDwarfWriter(); - if (!DW) - return 0; DbgValueInst &DI = cast(I); if (!DIDescriptor::ValidDebugInfo(DI.getVariable(), CodeGenOpt::None)) return 0; @@ -3875,7 +3868,7 @@ SelectionDAGBuilder::visitIntrinsicCall(CallInst &I, unsigned Intrinsic) { int FI = SI->second; if (MachineModuleInfo *MMI = DAG.getMachineModuleInfo()) - if (!DI.getDebugLoc().isUnknown()) + if (!DI.getDebugLoc().isUnknown() && MMI->hasDebugInfo()) MMI->setVariableDbgInfo(Variable, FI, DI.getDebugLoc()); return 0; } diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp index 69ff94b28c9..2ae234defbb 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp @@ -332,8 +332,7 @@ bool SelectionDAGISel::runOnMachineFunction(MachineFunction &mf) { DEBUG(dbgs() << "\n\n\n=== " << Fn.getName() << "\n"); MachineModuleInfo *MMI = getAnalysisIfAvailable(); - DwarfWriter *DW = getAnalysisIfAvailable(); - CurDAG->init(*MF, MMI, DW); + CurDAG->init(*MF, MMI); FuncInfo->set(Fn, *MF, EnableFastISel); SDB->init(GFI, *AA); -- 2.11.0