diff options
author | Dan Gohman <gohman@apple.com> | 2010-04-23 01:18:53 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-04-23 01:18:53 +0000 |
commit | e9135cb3fb927f130b4f27e34e9b35cc95d76b19 (patch) | |
tree | 184f3c94979cd033815a23545d00b9df1370fa5e /llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h | |
parent | 95b0ff445cc4c6bbdafbc0409fb6b151911c0902 (diff) | |
download | bcm5719-llvm-e9135cb3fb927f130b4f27e34e9b35cc95d76b19.tar.gz bcm5719-llvm-e9135cb3fb927f130b4f27e34e9b35cc95d76b19.zip |
Revert 102135, 102129, 102127, 102106, 102104, 102102, 102012, 102004,
because 102004 causes codegen to emit invalid assembly on at least
x86_64-unknown-gnu-linux.
llvm-svn: 102155
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h index 16d41370535..bfd6f48d2e3 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h @@ -188,22 +188,16 @@ class DwarfDebug { DenseMap<MDNode*, SmallVector<InlineInfoLabels, 4> > InlineInfo; SmallVector<MDNode *, 4> InlinedSPNodes; - /// LabelsBeforeInsn - Maps instruction with label emitted before + /// InsnBeforeLabelMap - Maps instruction with label emitted before /// instruction. - DenseMap<const MachineInstr *, MCSymbol *> LabelsBeforeInsn; + DenseMap<const MachineInstr *, MCSymbol *> InsnBeforeLabelMap; - /// LabelsAfterInsn - Maps instruction with label emitted after + /// InsnAfterLabelMap - Maps instruction with label emitted after /// instruction. - DenseMap<const MachineInstr *, MCSymbol *> LabelsAfterInsn; + DenseMap<const MachineInstr *, MCSymbol *> InsnAfterLabelMap; SmallVector<const MCSymbol *, 8> DebugRangeSymbols; - /// weakDebugRangeSymbols - In cases where function bodies is not emitted - /// into .text section, use function begin marker as anchor for debug range - /// offsets. This map keeps track of such symbols and corresponding - /// function begin marker symbols. - DenseMap<const MCSymbol *, const MCSymbol *> WeakDebugRangeSymbols; - /// Previous instruction's location information. This is used to determine /// label location to indicate scope boundries in dwarf debug info. DebugLoc PrevInstLoc; @@ -224,8 +218,7 @@ class DwarfDebug { // section offsets and are created by EmitSectionLabels. MCSymbol *DwarfFrameSectionSym, *DwarfInfoSectionSym, *DwarfAbbrevSectionSym; MCSymbol *DwarfStrSectionSym, *TextSectionSym, *DwarfDebugRangeSectionSym; - - MCSymbol *FunctionBeginSym; + private: /// getSourceDirectoryAndFileIds - Return the directory and file ids that @@ -375,8 +368,13 @@ private: /// createSubprogramDIE - Create new DIE using SP. DIE *createSubprogramDIE(const DISubprogram &SP, bool MakeDecl = false); - /// getOrCreateDbgScope - Create DbgScope for the scope. - DbgScope *getOrCreateDbgScope(MDNode *Scope, MDNode *InlinedAt); + /// getUpdatedDbgScope - Find or create DbgScope assicated with + /// the instruction. Initialize scope and update scope hierarchy. + DbgScope *getUpdatedDbgScope(MDNode *N, const MachineInstr *MI, + MDNode *InlinedAt); + + /// createDbgScope - Create DbgScope for the scope. + void createDbgScope(MDNode *Scope, MDNode *InlinedAt); DbgScope *getOrCreateAbstractScope(MDNode *N); |