///
DIType getBlockByrefType(DIType Ty, std::string Name);
-public:
- //===--------------------------------------------------------------------===//
- // Main entry points.
- //
- DwarfDebug(AsmPrinter *A, Module *M);
- virtual ~DwarfDebug();
-
- /// beginModule - Emit all Dwarf sections that should come prior to the
- /// content.
- void beginModule(Module *M);
-
- /// endModule - Emit all Dwarf sections that should come after the content.
- ///
- void endModule();
-
- /// beginFunction - Gather pre-function debug information. Assumes being
- /// emitted immediately after the function entry point.
- void beginFunction(const MachineFunction *MF);
-
- /// endFunction - Gather and emit post-function debug information.
- ///
- void endFunction(const MachineFunction *MF);
-
/// recordSourceLine - Register a source line with debug info. Returns the
/// unique label that was emitted and which provides correspondence to
/// the source line list.
MCSymbol *recordSourceLine(unsigned Line, unsigned Col, MDNode *Scope);
-
+
/// getSourceLineCount - Return the number of source lines in the debug
/// info.
unsigned getSourceLineCount() const {
return Lines.size();
}
-
+
/// getOrCreateSourceID - Public version of GetOrCreateSourceID. This can be
/// timed. Look up the source id with the given directory and source file
/// names. If none currently exists, create a new id and insert it in the
/// well.
unsigned getOrCreateSourceID(const std::string &DirName,
const std::string &FileName);
-
+
/// extractScopeInformation - Scan machine instructions in this function
/// and collect DbgScopes. Return true, if atleast one scope was found.
bool extractScopeInformation();
-
+
/// collectVariableInfo - Populate DbgScope entries with variables' info.
void collectVariableInfo();
+
+public:
+ //===--------------------------------------------------------------------===//
+ // Main entry points.
+ //
+ DwarfDebug(AsmPrinter *A, Module *M);
+ ~DwarfDebug();
+
+ /// beginModule - Emit all Dwarf sections that should come prior to the
+ /// content.
+ void beginModule(Module *M);
+
+ /// endModule - Emit all Dwarf sections that should come after the content.
+ ///
+ void endModule();
+
+ /// beginFunction - Gather pre-function debug information. Assumes being
+ /// emitted immediately after the function entry point.
+ void beginFunction(const MachineFunction *MF);
+
+ /// endFunction - Gather and emit post-function debug information.
+ ///
+ void endFunction(const MachineFunction *MF);
/// beginScope - Process beginning of a scope.
void beginScope(const MachineInstr *MI);