Searched refs:DIE (Results 1 - 25 of 33) sorted by relevance

12

/freebsd-11.0-release/contrib/llvm/lib/CodeGen/AsmPrinter/
H A DDwarfCompileUnit.h25 class DIE;
32 /// The attribute index of DW_AT_stmt_list in the compile unit DIE, avoiding
34 DIE::value_iterator StmtListValue;
49 StringMap<const DIE *> GlobalNames;
52 StringMap<const DIE *> GlobalTypes;
65 /// \brief Construct a DIE for the given DbgVariable without initializing the
66 /// DbgVariable's DIE reference.
67 DIE *constructVariableDIEImpl(const DbgVariable &DV, bool Abstract);
83 /// Apply the DW_AT_stmt_list from this compile unit to the specified DIE.
84 void applyStmtList(DIE
[all...]
H A DDwarfUnit.h22 #include "llvm/CodeGen/DIE.h"
80 DIE &UnitDie;
93 DIE *IndexTyDie;
97 DenseMap<const MDNode *, DIE *> MDNodeToDieMap;
106 /// DW_AT_containing_type attribute. This attribute points to a DIE that
107 /// corresponds to the MDNode mapped with the subprogram DIE.
108 DenseMap<DIE *, const DINode *> ContainingTypeMap;
116 bool applySubprogramDefinitionAttributes(const DISubprogram *SP, DIE &SPDie);
133 DIE &getUnitDie() { return UnitDie; }
151 virtual void addGlobalName(StringRef Name, DIE
[all...]
H A DDIEHash.h18 #include "llvm/CodeGen/DIE.h"
27 /// attributes onto a DIE.
29 // Collection of all attributes used in hashing a particular DIE.
88 uint64_t computeCUSignature(const DIE &Die);
91 uint64_t computeTypeSignature(const DIE &Die);
93 // Helper routines to process parts of a DIE.
96 void addParentContext(const DIE &Die);
99 void addAttributes(const DIE &Die);
101 /// \brief Computes the full DWARF4 7.27 hash of the DIE.
102 void computeHash(const DIE
[all...]
H A DDwarfFile.h30 class DIE;
57 DenseMap<const MDNode *, DIE *> AbstractSPDies;
62 DenseMap<const MDNode *, DIE *> DITypeNodeToDieMap;
71 /// \brief Compute the size and offset of a DIE given an incoming Offset.
72 unsigned computeSizeAndOffset(DIE &Die, unsigned Offset);
81 DIEAbbrev &assignAbbrevNumber(DIE &Die);
106 DenseMap<const MDNode *, DIE *> &getAbstractSPDies() {
110 void insertDIE(const MDNode *TypeMD, DIE *Die) {
113 DIE *getDIE(const MDNode *TypeMD) {
H A DDwarfCompileUnit.cpp30 void DwarfCompileUnit::addLabelAddress(DIE &Die, dwarf::Attribute Attribute,
49 void DwarfCompileUnit::addLocalLabelAddress(DIE &Die,
102 /// getOrCreateGlobalVariableDIE - get or create global variable DIE.
103 DIE *DwarfCompileUnit::getOrCreateGlobalVariableDIE(
106 if (DIE *Die = getDIE(GV))
114 // Construct the context before querying for the existence of the DIE in
115 // case such construction creates the DIE.
116 DIE *ContextDIE = getOrCreateContextDIE(GVContext);
119 DIE *VariableDIE = &createAndAddDIE(GV->getTag(), *ContextDIE, GV);
125 // We need the declaration DIE tha
[all...]
H A DDwarfUnit.cpp48 DIELoc &DIE)
51 AP(AP), DU(DU), DIE(DIE) {}
54 DU.addUInt(DIE, dwarf::DW_FORM_data1, Op);
57 DU.addSInt(DIE, dwarf::DW_FORM_sdata, Value);
60 DU.addUInt(DIE, dwarf::DW_FORM_udata, Value);
70 UnitDie(*DIE::get(DIEValueAllocator, UnitTag)), DebugInfoOffset(0),
158 /// Check whether the DIE for this MDNode can be shared across CUs.
160 // When the MDNode can be part of the type system, the DIE can be shared
162 // Combining type units and cross-CU DIE sharin
47 DIEDwarfExpression(const AsmPrinter &AP, DwarfUnit &DU, DIELoc &DIE) argument
[all...]
H A DDIEHash.cpp20 #include "llvm/CodeGen/DIE.h"
33 static StringRef getDIEStringAttr(const DIE &Die, uint16_t Attr) {
81 void DIEHash::addParentContext(const DIE &Parent) {
87 SmallVector<const DIE *, 1> Parents;
88 const DIE *Cur = &Parent;
98 for (SmallVectorImpl<const DIE *>::reverse_iterator I = Parents.rbegin(),
101 const DIE &Die = **I;
117 // Collect all of the attributes for a particular DIE in single structure.
118 void DIEHash::collectAttributes(const DIE &Die, DIEAttrs &Attrs) {
185 const DIE
[all...]
H A DDwarfDebug.h28 #include "llvm/CodeGen/DIE.h"
68 DIE *TheDIE = nullptr; /// Variable DIE.
114 void setDIE(DIE &D) { TheDIE = &D; }
115 DIE *getDIE() const { return TheDIE; }
207 /// Maps a CU DIE with its corresponding DwarfCompileUnit.
208 DenseMap<const DIE *, DwarfCompileUnit *> CUDieMap;
347 /// Construct a DIE for this abstract scope.
398 const StringMap<const DIE *> &(DwarfCompileUnit::*Accessor)() const);
426 void initSkeletonUnit(const DwarfUnit &U, DIE
[all...]
H A DDwarfExpression.h29 /// independently of whether they are emitted into a DIE or into a .debug_loc
125 DIELoc &DIE; member in class:llvm::DIEDwarfExpression
128 DIEDwarfExpression(const AsmPrinter &AP, DwarfUnit &DU, DIELoc &DIE);
H A DDwarfAccelTable.h19 #include "llvm/CodeGen/DIE.h"
168 const DIE *Die; // Offsets
171 HashDataContents(const DIE *D, char Flags) : Die(D), Flags(Flags) {}
247 void AddName(DwarfStringPoolEntryRef Name, const DIE *Die, char Flags = 0);
H A DDwarfFile.cpp30 DIEAbbrev &DwarfFile::assignAbbrevNumber(DIE &Die) {
61 DIE &Die = TheU->getUnitDie();
71 // Compute the size and offset for each DIE.
77 // DIE within each compile unit. All offsets are CU relative.
86 // all of the CU DIE.
91 // Compute the size and offset of a DIE. The offset is relative to start of the
92 // CU. It returns the offset after laying out the DIE.
93 unsigned DwarfFile::computeSizeAndOffset(DIE &Die, unsigned Offset) {
97 // Set DIE offset
103 // Size the DIE attribut
[all...]
H A DDIE.cpp1 //===--- lib/CodeGen/DIE.cpp - DWARF Info Entries -------------------------===//
14 #include "llvm/CodeGen/DIE.h"
144 DIEAbbrev DIE::generateAbbrev() const {
151 /// Climb up the parent chain to get the unit DIE to which this DIE
153 const DIE *DIE::getUnit() const {
154 const DIE *Cu = getUnitOrNull();
159 /// Climb up the parent chain to get the unit DIE this DIE belong
[all...]
H A DDwarfDebug.cpp25 #include "llvm/CodeGen/DIE.h"
311 void DwarfDebug::addSubprogramNames(const DISubprogram *SP, DIE &Die) {
334 /// Check whether we should create a DIE for the given Scope, return true
335 /// if we don't create a DIE (the corresponding DIE is null).
340 // We don't create a DIE if there is no Range.
348 // We don't create a DIE if we have a single Range and the end label
376 void DwarfDebug::addGnuPubAttributes(DwarfUnit &U, DIE &D) const {
393 DIE &Die = NewCU.getUnitDie();
455 if (DIE *
[all...]
H A DAsmPrinterDwarf.cpp19 #include "llvm/CodeGen/DIE.h"
249 void AsmPrinter::emitDwarfDIE(const DIE &Die) const {
258 // Emit the DIE attribute values.
261 assert(V.getForm() && "Too many attributes for DIE (check abbreviation)");
274 // Emit the DIE children if any.
H A DDwarfAccelTable.cpp20 #include "llvm/CodeGen/DIE.h"
33 void DwarfAccelTable::AddName(DwarfStringPoolEntryRef Name, const DIE *die,
223 // Emit the DIE offset
225 assert(CU && "Accelerated DIE should belong to a CU.");
/freebsd-11.0-release/contrib/llvm/lib/DebugInfo/DWARF/
H A DDWARFUnit.cpp164 for (auto &DIE : DieArray) {
166 SiblingChain->setSibling(&DIE);
169 DIE.getAbbreviationDeclarationPtr()) {
170 // Normal DIE.
172 ParentChain.push_back(&DIE);
175 SiblingChain = &DIE;
193 // Set the offset to that of the first DIE and calculate the start of the
197 DWARFDebugInfoEntryMinimal DIE; local
201 while (DIEOffset < NextCUOffset && DIE.extractFast(this, &DIEOffset)) {
204 Dies.push_back(DIE);
[all...]
H A DDWARFDebugInfoEntry.cpp25 // Small helper to extract a DIE pointed by a reference
26 // attribute. It looks up the Unit containing the DIE and calls
27 // DIE.extractFast with the right unit. Returns new unit on success,
29 static const DWARFUnit *findUnitAndExtractFast(DWARFDebugInfoEntryMinimal &DIE, argument
33 return (Unit && DIE.extractFast(Unit, Offset)) ? Unit : nullptr;
58 // Dump all data in the DIE for the attributes.
168 DWARFDebugInfoEntryMinimal DIE;
169 if (const DWARFUnit *RefU = findUnitAndExtractFast(DIE, u, &RefOffset))
170 if (const char *Name = DIE.getName(RefU, DINameKind::LinkageName))
400 // Try to get name from specification DIE
[all...]
/freebsd-11.0-release/contrib/llvm/include/llvm/CodeGen/
H A DDIE.h1 //===--- lib/CodeGen/DIE.h - DWARF Info Entries -----------------*- C++ -*-===//
38 // methods in the DIE classes below.
150 /// DIEInteger - An integer value DIE.
190 /// DIEExpr - An expression DIE.
209 /// DIELabel - A label DIE.
228 /// DIEDelta - A simple label difference DIE.
265 class DIE;
267 DIE *Entry;
272 explicit DIEEntry(DIE &E) : Entry(&E) {}
274 DIE
652 class DIE : IntrusiveBackListNode, public DIEValueList { class in namespace:llvm
675 explicit DIE(dwarf::Tag Tag) : Offset(0), Size(0), Tag(Tag) {} function in class:llvm::DIE
[all...]
H A DAsmPrinter.h34 class DIE;
467 /// \brief Recursively emit Dwarf DIE tree.
468 void emitDwarfDIE(const DIE &Die) const;
/freebsd-11.0-release/lib/clang/libllvmasmprinter/
H A DMakefile13 DIE.cpp \
/freebsd-11.0-release/contrib/llvm/include/llvm/DebugInfo/DWARF/
H A DDWARFUnit.h231 /// \brief Return the index of a DIE inside the unit's DIE vector.
233 /// It is illegal to call this method with a DIE that hasn't be
235 /// method on a DIE that isn't accessible by following
237 uint32_t getDIEIndex(const DWARFDebugInfoEntryMinimal *DIE) { argument
238 assert(!DieArray.empty() && DIE >= &DieArray[0] &&
239 DIE < &DieArray[0] + DieArray.size());
240 return DIE - &DieArray[0];
243 /// \brief Return the DIE object at the given index.
249 /// \brief Return the DIE objec
[all...]
/freebsd-11.0-release/contrib/llvm/tools/clang/lib/Sema/
H A DSemaInit.cpp295 InitListExpr *IList, DesignatedInitExpr *DIE,
509 ExprResult DIE = SemaRef.BuildCXXDefaultInitExpr(Loc, Field); local
510 if (DIE.isInvalid()) {
515 ILE->setInit(Init, DIE.get());
517 ILE->updateInit(SemaRef.Context, Init, DIE.get());
1562 if (DesignatedInitExpr *DIE = dyn_cast<DesignatedInitExpr>(Init)) {
1571 if (CheckDesignatedInitializer(Entity, IList, DIE, 0,
1740 if (DesignatedInitExpr *DIE = dyn_cast<DesignatedInitExpr>(Init)) {
1749 if (CheckDesignatedInitializer(Entity, IList, DIE, 0,
1865 DesignatedInitExpr *DIE,
1864 ExpandAnonymousFieldDesignator(Sema &SemaRef, DesignatedInitExpr *DIE, unsigned DesigIdx, IndirectFieldDecl *IndirectField) argument
1892 CloneDesignatedInitExpr(Sema &SemaRef, DesignatedInitExpr *DIE) argument
1960 CheckDesignatedInitializer(const InitializedEntity &Entity, InitListExpr *IList, DesignatedInitExpr *DIE, unsigned DesigIdx, QualType &CurrentObjectType, RecordDecl::field_iterator *NextField, llvm::APSInt *NextElementIndex, unsigned &Index, InitListExpr *StructuredList, unsigned &StructuredIndex, bool FinishSubobjectInit, bool TopLevelObject) argument
2752 DesignatedInitExpr *DIE local
[all...]
/freebsd-11.0-release/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/
H A DDWARFCompileUnit.h82 DIE () function in class:DWARFCompileUnit
90 // The average bytes per DIE entry has been seen to be
95 // the main compile unit DIE. The compile unit DIE is always
97 // the first compile unit child DIE and should reserve
H A DDWARFDebugInfo.cpp259 // Get the DIE (Debug Information Entry) with the specified offset.
297 // Call the callback function with no DIE pointer for the compile unit
309 // Call the callback function with DIE pointer that falls within the compile unit
372 // whether a single DIE is to be dumped (or all of the data).
399 // We are dumping a specific DIE entry by offset
402 // We found the DIE we were looking for, dump it!
421 // Note that we found the DIE we were looking for
424 // Since we are dumping a single DIE, if there are no children we are done!
434 // We have already found our DIE and are printing it's children. Obey
497 // We are dumping only a single DIE possibl
[all...]
/freebsd-11.0-release/contrib/llvm/tools/clang/lib/CodeGen/
H A DCGExprComplex.cpp197 ComplexPairTy VisitCXXDefaultInitExpr(CXXDefaultInitExpr *DIE) { argument
199 return Visit(DIE->getExpr());

Completed in 278 milliseconds

12