Lines Matching refs:DIE

25 class DIE;
32 /// The attribute index of DW_AT_stmt_list in the compile unit DIE, avoiding
43 StringMap<const DIE *> GlobalNames;
46 StringMap<const DIE *> GlobalTypes;
59 /// \brief Construct a DIE for the given DbgVariable without initializing the
60 /// DbgVariable's DIE reference.
61 std::unique_ptr<DIE> constructVariableDIEImpl(const DbgVariable &DV,
78 /// Apply the DW_AT_stmt_list from this compile unit to the specified DIE.
79 void applyStmtList(DIE &D);
81 /// getOrCreateGlobalVariableDIE - get or create global variable DIE.
82 DIE *getOrCreateGlobalVariableDIE(DIGlobalVariable GV);
86 void addLabelAddress(DIE &Die, dwarf::Attribute Attribute,
91 void addLocalLabelAddress(DIE &Die, dwarf::Attribute Attribute,
95 void addSectionDelta(DIE &Die, dwarf::Attribute Attribute, const MCSymbol *Hi,
105 void attachLowHighPC(DIE &D, const MCSymbol *Begin, const MCSymbol *End);
109 void addSectionLabel(DIE &Die, dwarf::Attribute Attribute,
112 /// \brief Find DIE for the given subprogram and attach appropriate
116 DIE &updateSubprogramScopeDIE(DISubprogram SP);
119 SmallVectorImpl<std::unique_ptr<DIE>> &FinalChildren);
123 void addScopeRangeList(DIE &ScopeDIE, SmallVector<RangeSpan, 2> Range);
125 void attachRangesOrLowHighPC(DIE &D, SmallVector<RangeSpan, 2> Ranges);
127 void attachRangesOrLowHighPC(DIE &D,
130 /// DIE to represent this concrete inlined copy of the function.
131 std::unique_ptr<DIE> constructInlinedScopeDIE(LexicalScope *Scope);
135 std::unique_ptr<DIE> constructLexicalScopeDIE(LexicalScope *Scope);
137 /// constructVariableDIE - Construct a DIE for the given DbgVariable.
138 std::unique_ptr<DIE> constructVariableDIE(DbgVariable &DV,
141 std::unique_ptr<DIE> constructVariableDIE(DbgVariable &DV,
143 DIE *&ObjectPointer);
145 /// A helper function to create children of a Scope DIE.
146 DIE *createScopeChildrenDIE(LexicalScope *Scope,
147 SmallVectorImpl<std::unique_ptr<DIE>> &Children,
150 /// \brief Construct a DIE for this subprogram scope.
153 DIE *createAndAddScopeChildren(LexicalScope *Scope, DIE &ScopeDIE);
157 /// \brief Construct import_module DIE.
158 std::unique_ptr<DIE>
186 void addGlobalName(StringRef Name, DIE &Die, DIScope Context) override;
189 void addGlobalType(DIType Ty, const DIE &Die, DIScope Context) override;
191 const StringMap<const DIE *> &getGlobalNames() const { return GlobalNames; }
192 const StringMap<const DIE *> &getGlobalTypes() const { return GlobalTypes; }
196 void addVariableAddress(const DbgVariable &DV, DIE &Die,
199 void addAddress(DIE &Die, dwarf::Attribute Attribute,
206 void addComplexAddress(const DbgVariable &DV, DIE &Die,
211 void addLocationList(DIE &Die, dwarf::Attribute Attribute, unsigned Index);
212 void applyVariableAttributes(const DbgVariable &Var, DIE &VariableDie);
217 void applySubprogramAttributesToDefinition(DISubprogram SP, DIE &SPDie);