diff options
Diffstat (limited to 'lib/CodeGen/AsmPrinter/DwarfDebug.h')
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfDebug.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.h b/lib/CodeGen/AsmPrinter/DwarfDebug.h index 2863ea3806..e59ab5bd82 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.h +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.h @@ -200,8 +200,6 @@ class DwarfDebug { typedef SmallVector<DbgScope *, 2> ScopeVector; - SmallPtrSet<const MachineInstr *, 8> InsnsEndScopeSet; - /// InlineInfo - Keep track of inlined functions and their location. This /// information is used to populate debug_inlined section. typedef std::pair<const MCSymbol *, DIE *> InlineInfoLabels; @@ -224,6 +222,16 @@ class DwarfDebug { /// a debuggging information entity. SmallPtrSet<const MachineInstr *, 8> InsnNeedsLabel; + /// InsnsNeedsLabelAfter - Collection of instructions that need a label after + /// the instruction because they end a scope of clobber a register. + SmallPtrSet<const MachineInstr *, 8> InsnsNeedsLabelAfter; + + /// RegClobberInsn - For each DBG_VALUE instruction referring to a register + /// that is clobbered before the variable gets a new DBG_VALUE, map the + /// instruction that clobbered the register. This instruction will also be in + /// InsnsNeedsLabelAfter. + DenseMap<const MachineInstr *, const MachineInstr *> RegClobberInsn; + SmallVector<const MCSymbol *, 8> DebugRangeSymbols; /// Previous instruction's location information. This is used to determine |