Add an accessor method to DwarfWriter to tell of debugging info should be emitted.

llvm-svn: 65092
This commit is contained in:
Bill Wendling 2009-02-20 00:44:43 +00:00
parent 9a2bbc9d15
commit 75751a4769
3 changed files with 16 additions and 6 deletions

View File

@ -101,6 +101,9 @@ public:
///
void RecordVariable(GlobalVariable *GV, unsigned FrameIndex);
/// ShouldEmitDwarfDebug - Returns true if Dwarf debugging declarations should
/// be emitted.
bool ShouldEmitDwarfDebug() const;
};

View File

@ -1331,9 +1331,10 @@ class DwarfDebug : public Dwarf {
public:
/// ShouldEmitDwarf - Returns true if Dwarf declarations should be made.
/// ShouldEmitDwarfDebug - Returns true if Dwarf debugging declarations should
/// be emitted.
///
bool ShouldEmitDwarf() const { return shouldEmit; }
bool ShouldEmitDwarfDebug() const { return shouldEmit; }
/// AssignAbbrevNumber - Define a unique number for the abbreviation.
///
@ -2963,7 +2964,7 @@ public:
/// EndModule - Emit all Dwarf sections that should come after the content.
///
void EndModule() {
if (!ShouldEmitDwarf()) return;
if (!ShouldEmitDwarfDebug()) return;
// Standard sections final addresses.
Asm->SwitchToSection(TAI->getTextSection());
@ -3021,7 +3022,7 @@ public:
void BeginFunction(MachineFunction *MF) {
this->MF = MF;
if (!ShouldEmitDwarf()) return;
if (!ShouldEmitDwarfDebug()) return;
// Begin accumulating function debug information.
MMI->BeginFunction(MF);
@ -3040,7 +3041,7 @@ public:
/// EndFunction - Gather and emit post-function debug information.
///
void EndFunction(MachineFunction *MF) {
if (!ShouldEmitDwarf()) return;
if (!ShouldEmitDwarfDebug()) return;
// Define end label for subprogram.
EmitLabel("func_end", SubprogramCount);
@ -4329,3 +4330,8 @@ void DwarfWriter::RecordVariable(GlobalVariable *GV, unsigned FrameIndex) {
DD->RecordVariable(GV, FrameIndex);
}
/// ShouldEmitDwarfDebug - Returns true if Dwarf debugging declarations should
/// be emitted.
bool DwarfWriter::ShouldEmitDwarfDebug() const {
return DD->ShouldEmitDwarfDebug();
}

View File

@ -640,7 +640,8 @@ void AsmWriterEmitter::run(std::ostream &O) {
}
O << "\";\n\n";
O << " if (TAI->doesSupportDebugInformation()) {\n"
O << " if (TAI->doesSupportDebugInformation() &&\n"
<< " DW->ShouldEmitDwarfDebug()) {\n"
<< " const MachineFunction *MF = MI->getParent()->getParent();\n"
<< " DebugLoc CurDL = MI->getDebugLoc();\n\n"
<< " if (!CurDL.isUnknown()) {\n"