reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
41 class DIE;
include/llvm/CodeGen/DIE.h 39 class DIE;
lib/CodeGen/AsmPrinter/DwarfDebug.h 53 class DIE;
unittests/DebugInfo/DWARF/DwarfGenerator.h 29 class DIE;
39 static inline T* getEmptyKey() { 41 Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable; 45 static inline T* getTombstoneKey() { 47 Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable; 51 static unsigned getHashValue(const T *PtrVal) { 56 static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; } 56 static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }include/llvm/ADT/iterator.h
68 : public std::iterator<IteratorCategoryT, T, DifferenceTypeT, PointerT,
include/llvm/CodeGen/AccelTable.h201 void addName(DwarfStringPoolEntryRef Name, Types &&... Args); 254 DWARF5AccelTableData(const DIE &Die) : Die(Die) {} 260 const DIE &getDie() const { return Die; } 265 const DIE &Die; 323 AppleAccelTableOffsetData(const DIE &D) : Die(D) {} 336 const DIE &Die; 342 AppleAccelTableTypeData(const DIE &D) : AppleAccelTableOffsetData(D) {}include/llvm/CodeGen/AsmPrinter.h
589 void emitDwarfDIE(const DIE &Die) const;
include/llvm/CodeGen/DIE.h154 DIEAbbrev &uniqueAbbreviation(DIE &Die); 314 DIE *Entry; 318 explicit DIEEntry(DIE &E) : Entry(&E) {} 320 DIE &getEntry() const { return *Entry; } 542 void push_back(T &N) { IntrusiveBackListBase::push_back(N); } 543 void push_front(T &N) { IntrusiveBackListBase::push_front(N); } 544 T &back() { return *static_cast<T *>(Last); } 545 const T &back() const { return *static_cast<T *>(Last); } 546 T &front() { 549 const T &front() const { 553 void takeNodes(IntrusiveBackList<T> &Other) { 563 : public iterator_facade_base<iterator, std::forward_iterator_tag, T> { 570 explicit iterator(T *N) : N(N) {} 578 T &operator*() const { return *static_cast<T *>(N); } 586 const T> { 592 const_iterator(typename IntrusiveBackList<T>::iterator X) : N(X.N) {} 593 explicit const_iterator(const T *N) : N(N) {} 601 const T &operator*() const { return *static_cast<const T *>(N); } 616 static iterator toIterator(T &N) { return iterator(&N); } 617 static const_iterator toIterator(const T &N) { return const_iterator(&N); } 727 IntrusiveBackList<DIE> Children; 731 PointerUnion<DIE *, DIEUnit *> Owner; 737 DIE(const DIE &RHS) = delete; 738 DIE(DIE &&RHS) = delete; 739 DIE &operator=(const DIE &RHS) = delete; 739 DIE &operator=(const DIE &RHS) = delete; 740 DIE &operator=(const DIE &&RHS) = delete; 740 DIE &operator=(const DIE &&RHS) = delete; 742 static DIE *get(BumpPtrAllocator &Alloc, dwarf::Tag Tag) { 743 return new (Alloc) DIE(Tag); 755 using child_iterator = IntrusiveBackList<DIE>::iterator; 756 using const_child_iterator = IntrusiveBackList<DIE>::const_iterator; 767 DIE *getParent() const; 806 const DIE *getUnitDie() const; 819 DIE &addChild(DIE *Child) { 819 DIE &addChild(DIE *Child) { 826 DIE &addChildFront(DIE *Child) { 826 DIE &addChildFront(DIE *Child) { 851 DIE Die; 891 DIE &getUnitDie() { return Die; } 892 const DIE &getUnitDie() const { return Die; }include/llvm/Support/PointerLikeTypeTraits.h
56 static inline void *getAsVoidPointer(T *P) { return P; } 57 static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); } 59 enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value }; 91 typedef PointerLikeTypeTraits<T *> NonConst; 93 static inline const void *getAsVoidPointer(const T *P) { 96 static inline const T *getFromVoidPointer(const void *P) {lib/CodeGen/AsmPrinter/AccelTable.cpp
578 const DIE *CUDie = Entry.getDie().getUnitDie();
lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp 252 void AsmPrinter::emitDwarfDIE(const DIE &Die) const {
lib/CodeGen/AsmPrinter/DIE.cpp146 DIEAbbrev &DIEAbbrevSet::uniqueAbbreviation(DIE &Die) { 182 DIE *DIE::getParent() const { 183 return Owner.dyn_cast<DIE*>(); 203 const DIE *DIE::getUnitDie() const { 204 const DIE *p = this; 215 const DIE *UnitDie = getUnitDie(); 265 for (const auto &Child : children()) 299 for (auto &Child : children())lib/CodeGen/AsmPrinter/DIEHash.cpp
32 static StringRef getDIEStringAttr(const DIE &Die, uint16_t Attr) { 80 void DIEHash::addParentContext(const DIE &Parent) { 86 SmallVector<const DIE *, 1> Parents; 87 const DIE *Cur = &Parent; 97 for (SmallVectorImpl<const DIE *>::reverse_iterator I = Parents.rbegin(), 100 const DIE &Die = **I; 117 void DIEHash::collectAttributes(const DIE &Die, DIEAttrs &Attrs) { 136 const DIE &Entry, StringRef Name) { 144 if (const DIE *Parent = Entry.getParent()) 175 const DIE &Entry) { 217 void DIEHash::hashBlockData(const DIE::const_value_range &Values) { 331 void DIEHash::addAttributes(const DIE &Die) { 337 void DIEHash::hashNestedType(const DIE &Die, StringRef Name) { 352 void DIEHash::computeHash(const DIE &Die) { 383 uint64_t DIEHash::computeCUSignature(StringRef DWOName, const DIE &Die) { 406 uint64_t DIEHash::computeTypeSignature(const DIE &Die) { 410 if (const DIE *Parent = Die.getParent())lib/CodeGen/AsmPrinter/DIEHash.h
38 uint64_t computeCUSignature(StringRef DWOName, const DIE &Die); 41 uint64_t computeTypeSignature(const DIE &Die); 46 void addParentContext(const DIE &Parent); 49 void addAttributes(const DIE &Die); 52 void computeHash(const DIE &Die); 71 void collectAttributes(const DIE &Die, DIEAttrs &Attrs); 78 void hashBlockData(const DIE::const_value_range &Values); 88 const DIE &Entry); 93 void hashShallowTypeReference(dwarf::Attribute Attribute, const DIE &Entry, 100 void hashNestedType(const DIE &Die, StringRef Name); 105 DenseMap<const DIE *, unsigned> Numbering;lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
65 void DwarfCompileUnit::addLabelAddress(DIE &Die, dwarf::Attribute Attribute, 85 void DwarfCompileUnit::addLocalLabelAddress(DIE &Die, 113 DIE *DwarfCompileUnit::getOrCreateGlobalVariableDIE( 116 if (DIE *Die = getDIE(GV)) 127 DIE *ContextDIE = CB ? getOrCreateCommonBlock(CB, GlobalExprs) 131 DIE *VariableDIE = &createAndAddDIE(GV->getTag(), *ContextDIE, GV); 138 DIE *VariableSpecDIE = getOrCreateStaticMemberDIE(SDMDecl); 177 DIE *VariableDIE, const DIGlobalVariable *GV, ArrayRef<GlobalExpr> GlobalExprs) { 302 DIE *DwarfCompileUnit::getOrCreateCommonBlock( 306 DIE *ContextDIE = getOrCreateContextDIE(CB->getScope()); 308 if (DIE *NDie = getDIE(CB)) 310 DIE &NDie = createAndAddDIE(dwarf::DW_TAG_common_block, *ContextDIE, CB); 362 void DwarfCompileUnit::applyStmtList(DIE &D) { 366 void DwarfCompileUnit::attachLowHighPC(DIE &D, const MCSymbol *Begin, 383 DIE &DwarfCompileUnit::updateSubprogramScopeDIE(const DISubprogram *SP) { 384 DIE *SPDie = getOrCreateSubprogramDIE(SP, includeMinimalInlineScopes()); 415 LexicalScope *Scope, SmallVectorImpl<DIE *> &FinalChildren) { 426 SmallVector<DIE *, 8> Children; 431 DIE *ScopeDIE; 468 void DwarfCompileUnit::addScopeRangeList(DIE &ScopeDIE, 502 DIE &Die, SmallVector<RangeSpan, 2> Ranges) { 512 DIE &Die, const SmallVectorImpl<InsnRange> &Ranges) { 523 DIE *DwarfCompileUnit::constructInlinedScopeDIE(LexicalScope *Scope) { 529 DIE *OriginDIE = getAbstractSPDies()[InlinedSP]; 532 auto ScopeDIE = DIE::get(DIEValueAllocator, dwarf::DW_TAG_inlined_subroutine); 557 DIE *DwarfCompileUnit::constructLexicalScopeDIE(LexicalScope *Scope) { 561 auto ScopeDIE = DIE::get(DIEValueAllocator, dwarf::DW_TAG_lexical_block); 571 DIE *DwarfCompileUnit::constructVariableDIE(DbgVariable &DV, bool Abstract) { 577 DIE *DwarfCompileUnit::constructLabelDIE(DbgLabel &DL, 579 auto LabelDie = DIE::get(DIEValueAllocator, DL.getTag()); 589 DIE *DwarfCompileUnit::constructVariableDIEImpl(const DbgVariable &DV, 592 auto VariableDie = DIE::get(DIEValueAllocator, DV.getTag()); 690 DIE *DwarfCompileUnit::constructVariableDIE(DbgVariable &DV, 692 DIE *&ObjectPointer) { 774 DIE *DwarfCompileUnit::createScopeChildrenDIE(LexicalScope *Scope, 775 SmallVectorImpl<DIE *> &Children, 778 DIE *ObjectPointer = nullptr; 810 DIE &DwarfCompileUnit::constructSubprogramScopeDIE(const DISubprogram *Sub, 812 DIE &ScopeDIE = updateSubprogramScopeDIE(Sub); 820 if (DIE *ObjectPointer = createAndAddScopeChildren(Scope, ScopeDIE)) 833 DIE::get(DIEValueAllocator, dwarf::DW_TAG_unspecified_parameters)); 838 DIE *DwarfCompileUnit::createAndAddScopeChildren(LexicalScope *Scope, 839 DIE &ScopeDIE) { 841 SmallVector<DIE *, 8> Children; 842 DIE *ObjectPointer = createScopeChildrenDIE(Scope, Children); 853 DIE *&AbsDef = getAbstractSPDies()[Scope->getScopeNode()]; 859 DIE *ContextDIE; 886 if (DIE *ObjectPointer = ContextCU->createAndAddScopeChildren(Scope, *AbsDef)) 942 DIE &DwarfCompileUnit::constructCallSiteEntryDIE( 943 DIE &ScopeDIE, const DISubprogram *CalleeSP, bool IsTail, 946 DIE &CallSiteDIE = createAndAddDIE(getDwarf5OrGNUTag(dwarf::DW_TAG_call_site), 954 DIE *CalleeDIE = getOrCreateSubprogramDIE(CalleeSP); 978 DIE &CallSiteDIE, SmallVector<DbgCallSiteParam, 4> &Params) { 982 DIE::get(DIEValueAllocator, 1001 DIE *DwarfCompileUnit::constructImportedEntityDIE( 1003 DIE *IMDie = DIE::get(DIEValueAllocator, (dwarf::Tag)Module->getTag()); 1003 DIE *IMDie = DIE::get(DIEValueAllocator, (dwarf::Tag)Module->getTag()); 1005 DIE *EntityDie; 1030 DIE *D = getDIE(SP); 1031 if (DIE *AbsSPDIE = getAbstractSPDies().lookup(SP)) { 1046 auto *Die = Entity->getDIE(); 1123 void DwarfCompileUnit::addGlobalName(StringRef Name, const DIE &Die, 1144 void DwarfCompileUnit::addGlobalType(const DIType *Ty, const DIE &Die, 1164 void DwarfCompileUnit::addVariableAddress(const DbgVariable &DV, DIE &Die, 1173 void DwarfCompileUnit::addAddress(DIE &Die, dwarf::Attribute Attribute, 1194 void DwarfCompileUnit::addComplexAddress(const DbgVariable &DV, DIE &Die, 1221 void DwarfCompileUnit::addLocationList(DIE &Die, dwarf::Attribute Attribute, 1229 DIE &VariableDie) { 1246 DIE &LabelDie) { 1260 void DwarfCompileUnit::addAddressExpr(DIE &Die, dwarf::Attribute Attribute, 1267 const DISubprogram *SP, DIE &SPDie) { 1278 void DwarfCompileUnit::finishNonUnitTypeDIE(DIE& D, const DICompositeType *CTy) { 1307 DIE &Die = getUnitDie().addChildFront( 1308 DIE::get(DIEValueAllocator, dwarf::DW_TAG_base_type));lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
50 DIE::value_iterator StmtListValue; 67 StringMap<const DIE *> GlobalNames; 70 StringMap<const DIE *> GlobalTypes; 79 DenseMap<const MDNode *, DIE *> AbstractSPDies; 87 DIE *constructVariableDIEImpl(const DbgVariable &DV, bool Abstract); 91 DenseMap<const MDNode *, DIE *> &getAbstractSPDies() { 103 void finishNonUnitTypeDIE(DIE& D, const DICompositeType *CTy) override; 121 void applyStmtList(DIE &D); 134 DIE *Die = nullptr; 140 DIE * 144 DIE *getOrCreateCommonBlock(const DICommonBlock *CB, 147 void addLocationAttribute(DIE *ToDIE, const DIGlobalVariable *GV, 152 void addLabelAddress(DIE &Die, dwarf::Attribute Attribute, 157 void addLocalLabelAddress(DIE &Die, dwarf::Attribute Attribute, 178 void attachLowHighPC(DIE &D, const MCSymbol *Begin, const MCSymbol *End); 184 DIE &updateSubprogramScopeDIE(const DISubprogram *SP); 187 SmallVectorImpl<DIE *> &FinalChildren); 191 void addScopeRangeList(DIE &ScopeDIE, SmallVector<RangeSpan, 2> Range); 193 void attachRangesOrLowHighPC(DIE &D, SmallVector<RangeSpan, 2> Ranges); 195 void attachRangesOrLowHighPC(DIE &D, 200 DIE *constructInlinedScopeDIE(LexicalScope *Scope); 204 DIE *constructLexicalScopeDIE(LexicalScope *Scope); 207 DIE *constructVariableDIE(DbgVariable &DV, bool Abstract = false); 209 DIE *constructVariableDIE(DbgVariable &DV, const LexicalScope &Scope, 210 DIE *&ObjectPointer); 213 DIE *constructLabelDIE(DbgLabel &DL, const LexicalScope &Scope); 216 DIE *createScopeChildrenDIE(LexicalScope *Scope, 217 SmallVectorImpl<DIE *> &Children, 223 DIE &constructSubprogramScopeDIE(const DISubprogram *Sub, 226 DIE *createAndAddScopeChildren(LexicalScope *Scope, DIE &ScopeDIE); 226 DIE *createAndAddScopeChildren(LexicalScope *Scope, DIE &ScopeDIE); 250 DIE &constructCallSiteEntryDIE(DIE &ScopeDIE, const DISubprogram *CalleeSP, 250 DIE &constructCallSiteEntryDIE(DIE &ScopeDIE, const DISubprogram *CalleeSP, 257 void constructCallSiteParmEntryDIEs(DIE &CallSiteDIE, 261 DIE *constructImportedEntityDIE(const DIImportedEntity *Module); 301 void addGlobalName(StringRef Name, const DIE &Die, 308 void addGlobalType(const DIType *Ty, const DIE &Die, 314 const StringMap<const DIE *> &getGlobalNames() const { return GlobalNames; } 315 const StringMap<const DIE *> &getGlobalTypes() const { return GlobalTypes; } 319 void addVariableAddress(const DbgVariable &DV, DIE &Die, 322 void addAddress(DIE &Die, dwarf::Attribute Attribute, 329 void addComplexAddress(const DbgVariable &DV, DIE &Die, 334 void addLocationList(DIE &Die, dwarf::Attribute Attribute, unsigned Index); 335 void applyVariableAttributes(const DbgVariable &Var, DIE &VariableDie); 341 void addAddressExpr(DIE &Die, dwarf::Attribute Attribute, const MCExpr *Expr); 344 DIE &SPDie); 346 void applyLabelAttributes(const DbgLabel &Label, DIE &LabelDie);lib/CodeGen/AsmPrinter/DwarfDebug.cpp
452 const DISubprogram *SP, DIE &Die) { 690 DwarfCompileUnit &CU, DIE &ScopeDIE, 768 DIE &CallSiteDIE = 784 void DwarfDebug::addGnuPubAttributes(DwarfCompileUnit &U, DIE &D) const { 793 DIE &Die = NewCU.getUnitDie(); 895 if (DIE *D = TheCU.getOrCreateContextDIE(N->getScope())) 1032 DIE *Die = Entity->getDIE(); 1878 DIE &ScopeDIE = TheCU.constructSubprogramScopeDIE(SP, FnScope); 1989 const DIE *Die) { 2007 DIE &SpecDIE = SpecVal.getDIEEntry().getEntry(); 2074 const StringMap<const DIE *> &Globals) { 2098 const DIE *Entity = GI.second; 2781 void DwarfDebug::initSkeletonUnit(const DwarfUnit &U, DIE &Die, 2877 StringRef Identifier, DIE &RefDie, 2897 DIE &UnitDie = NewTU.getUnitDie(); 2985 const DIE &Die) { 3011 const DIE &Die) { 3016 const DIE &Die) { 3023 const DIE &Die) { 3028 const DIE &Die, char Flags) {lib/CodeGen/AsmPrinter/DwarfDebug.h
72 DIE *TheDIE = nullptr; 89 DIE *getDIE() const { return TheDIE; } 93 void setDIE(DIE &D) { TheDIE = &D; } 300 DenseMap<const DIE *, DwarfCompileUnit *> CUDieMap; 442 DIE &ScopeDIE, const MachineFunction &MF); 446 StringRef Name, const DIE &Die); 490 const StringMap<const DIE *> &Globals); 517 void initSkeletonUnit(const DwarfUnit &U, DIE &Die, 549 void addGnuPubAttributes(DwarfCompileUnit &U, DIE &D) const; 621 DIE &Die, const DICompositeType *CTy); 720 DIE &Die); 724 void addAccelName(const DICompileUnit &CU, StringRef Name, const DIE &Die); 726 void addAccelObjC(const DICompileUnit &CU, StringRef Name, const DIE &Die); 729 const DIE &Die); 731 void addAccelType(const DICompileUnit &CU, StringRef Name, const DIE &Die, 741 DwarfCompileUnit *lookupCU(const DIE *Die) { return CUDieMap.lookup(Die); } 742 const DwarfCompileUnit *lookupCU(const DIE *Die) const {lib/CodeGen/AsmPrinter/DwarfFile.cpp
92 unsigned DwarfFile::computeSizeAndOffset(DIE &Die, unsigned Offset) {
lib/CodeGen/AsmPrinter/DwarfFile.h98 DenseMap<const MDNode *, DIE *> AbstractSPDies; 104 DenseMap<const MDNode *, DIE *> DITypeNodeToDieMap; 122 unsigned computeSizeAndOffset(DIE &Die, unsigned Offset); 173 DenseMap<const MDNode *, DIE *> &getAbstractSPDies() { 181 void insertDIE(const MDNode *TypeMD, DIE *Die) { 185 DIE *getDIE(const MDNode *TypeMD) {lib/CodeGen/AsmPrinter/DwarfUnit.cpp
205 DIE *DwarfUnit::getDIE(const DINode *D) const { 211 void DwarfUnit::insertDIE(const DINode *Desc, DIE *D) { 219 void DwarfUnit::insertDIE(DIE *D) { 223 void DwarfUnit::addFlag(DIE &Die, dwarf::Attribute Attribute) { 258 void DwarfUnit::addString(DIE &Die, dwarf::Attribute Attribute, 303 void DwarfUnit::addSectionOffset(DIE &Die, dwarf::Attribute Attribute, 360 void DwarfUnit::addLabelDelta(DIE &Die, dwarf::Attribute Attribute, 366 void DwarfUnit::addDIEEntry(DIE &Die, dwarf::Attribute Attribute, DIE &Entry) { 366 void DwarfUnit::addDIEEntry(DIE &Die, dwarf::Attribute Attribute, DIE &Entry) { 370 void DwarfUnit::addDIETypeSignature(DIE &Die, uint64_t Signature) { 381 void DwarfUnit::addDIEEntry(DIE &Die, dwarf::Attribute Attribute, 395 DIE &DwarfUnit::createAndAddDIE(unsigned Tag, DIE &Parent, const DINode *N) { 395 DIE &DwarfUnit::createAndAddDIE(unsigned Tag, DIE &Parent, const DINode *N) { 396 DIE &Die = Parent.addChild(DIE::get(DIEValueAllocator, (dwarf::Tag)Tag)); 396 DIE &Die = Parent.addChild(DIE::get(DIEValueAllocator, (dwarf::Tag)Tag)); 402 void DwarfUnit::addBlock(DIE &Die, dwarf::Attribute Attribute, DIELoc *Loc) { 409 void DwarfUnit::addBlock(DIE &Die, dwarf::Attribute Attribute, 416 void DwarfUnit::addSourceLine(DIE &Die, unsigned Line, const DIFile *File) { 425 void DwarfUnit::addSourceLine(DIE &Die, const DILocalVariable *V) { 431 void DwarfUnit::addSourceLine(DIE &Die, const DIGlobalVariable *G) { 437 void DwarfUnit::addSourceLine(DIE &Die, const DISubprogram *SP) { 443 void DwarfUnit::addSourceLine(DIE &Die, const DILabel *L) { 449 void DwarfUnit::addSourceLine(DIE &Die, const DIType *Ty) { 455 void DwarfUnit::addSourceLine(DIE &Die, const DIObjCProperty *Ty) { 510 void DwarfUnit::addConstantFPValue(DIE &Die, const MachineOperand &MO) { 532 void DwarfUnit::addConstantFPValue(DIE &Die, const ConstantFP *CFP) { 537 void DwarfUnit::addConstantValue(DIE &Die, const ConstantInt *CI, 542 void DwarfUnit::addConstantValue(DIE &Die, const MachineOperand &MO, 549 void DwarfUnit::addConstantValue(DIE &Die, uint64_t Val, const DIType *Ty) { 553 void DwarfUnit::addConstantValue(DIE &Die, bool Unsigned, uint64_t Val) { 560 void DwarfUnit::addConstantValue(DIE &Die, const APInt &Val, const DIType *Ty) { 564 void DwarfUnit::addConstantValue(DIE &Die, const APInt &Val, bool Unsigned) { 593 void DwarfUnit::addLinkageName(DIE &Die, StringRef LinkageName) { 601 void DwarfUnit::addTemplateParams(DIE &Buffer, DINodeArray TParams) { 612 void DwarfUnit::addThrownTypes(DIE &Die, DINodeArray ThrownTypes) { 614 DIE &TT = createAndAddDIE(dwarf::DW_TAG_thrown_type, Die); 619 DIE *DwarfUnit::getOrCreateContextDIE(const DIScope *Context) { 633 DIE *DwarfUnit::createTypeDIE(const DICompositeType *Ty) { 635 DIE *ContextDIE = getOrCreateContextDIE(Context); 637 if (DIE *TyDIE = getDIE(Ty)) 641 DIE &TyDIE = createAndAddDIE(Ty->getTag(), *ContextDIE, Ty); 649 DIE *DwarfUnit::createTypeDIE(const DIScope *Context, DIE &ContextDIE, 649 DIE *DwarfUnit::createTypeDIE(const DIScope *Context, DIE &ContextDIE, 652 DIE &TyDIE = createAndAddDIE(Ty->getTag(), ContextDIE, Ty); 680 DIE *DwarfUnit::getOrCreateTypeDIE(const MDNode *TyNode) { 697 DIE *ContextDIE = getOrCreateContextDIE(Context); 700 if (DIE *TyDIE = getDIE(Ty)) 708 const DIType *Ty, const DIE &TyDIE) { 725 void DwarfUnit::addType(DIE &Entity, const DIType *Ty, 765 void DwarfUnit::constructTypeDIE(DIE &Buffer, const DIBasicType *BTy) { 788 void DwarfUnit::constructTypeDIE(DIE &Buffer, const DIDerivedType *DTy) { 825 void DwarfUnit::constructSubprogramArguments(DIE &Buffer, DITypeRefArray Args) { 832 DIE &Arg = createAndAddDIE(dwarf::DW_TAG_formal_parameter, Buffer); 840 void DwarfUnit::constructTypeDIE(DIE &Buffer, const DISubroutineType *CTy) { 873 void DwarfUnit::constructTypeDIE(DIE &Buffer, const DICompositeType *CTy) { 900 DIE &DiscMember = constructMemberDIE(Buffer, Discriminator); 914 DIE &ElemDie = createAndAddDIE(dwarf::DW_TAG_friend, Buffer); 921 DIE &Variant = createAndAddDIE(dwarf::DW_TAG_variant, Buffer); 934 DIE &ElemDie = createAndAddDIE(Property->getTag(), Buffer); 951 DIE &VariantPart = createAndAddDIE(Composite->getTag(), Buffer); 1032 DIE &Buffer, const DITemplateTypeParameter *TP) { 1033 DIE &ParamDIE = 1043 DIE &Buffer, const DITemplateValueParameter *VP) { 1044 DIE &ParamDIE = createAndAddDIE(VP->getTag(), Buffer); 1078 DIE *DwarfUnit::getOrCreateNameSpace(const DINamespace *NS) { 1081 DIE *ContextDIE = getOrCreateContextDIE(NS->getScope()); 1083 if (DIE *NDie = getDIE(NS)) 1085 DIE &NDie = createAndAddDIE(dwarf::DW_TAG_namespace, *ContextDIE, NS); 1099 DIE *DwarfUnit::getOrCreateModule(const DIModule *M) { 1102 DIE *ContextDIE = getOrCreateContextDIE(M->getScope()); 1104 if (DIE *MDie = getDIE(M)) 1106 DIE &MDie = createAndAddDIE(dwarf::DW_TAG_module, *ContextDIE, M); 1123 DIE *DwarfUnit::getOrCreateSubprogramDIE(const DISubprogram *SP, bool Minimal) { 1127 DIE *ContextDIE = 1130 if (DIE *SPDie = getDIE(SP)) 1143 DIE &SPDie = createAndAddDIE(dwarf::DW_TAG_subprogram, *ContextDIE, SP); 1156 DIE &SPDie) { 1157 DIE *DeclDie = nullptr; 1198 void DwarfUnit::applySubprogramAttributes(const DISubprogram *SP, DIE &SPDie, 1312 void DwarfUnit::constructSubrangeDIE(DIE &Buffer, const DISubrange *SR, 1313 DIE *IndexTy) { 1314 DIE &DW_Subrange = createAndAddDIE(dwarf::DW_TAG_subrange_type, Buffer); 1331 if (auto *CountVarDIE = getDIE(CV)) 1337 DIE *DwarfUnit::getIndexTyDie() { 1378 void DwarfUnit::constructArrayTypeDIE(DIE &Buffer, const DICompositeType *CTy) { 1392 DIE *IdxTy = getIndexTyDie(); 1404 void DwarfUnit::constructEnumTypeDIE(DIE &Buffer, const DICompositeType *CTy) { 1423 DIE &Enumerator = createAndAddDIE(dwarf::DW_TAG_enumerator, Buffer); 1437 DIE &SPDie = *CI->first; 1441 DIE *NDie = getDIE(D); 1448 DIE &DwarfUnit::constructMemberDIE(DIE &Buffer, const DIDerivedType *DT) { 1448 DIE &DwarfUnit::constructMemberDIE(DIE &Buffer, const DIDerivedType *DT) { 1449 DIE &MemberDie = createAndAddDIE(DT->getTag(), Buffer); 1547 if (DIE *PDie = getDIE(PNode)) 1557 DIE *DwarfUnit::getOrCreateStaticMemberDIE(const DIDerivedType *DT) { 1563 DIE *ContextDIE = getOrCreateContextDIE(DT->getScope()); 1567 if (DIE *StaticMemberDIE = getDIE(DT)) 1570 DIE &StaticMemberDIE = createAndAddDIE(DT->getTag(), *ContextDIE, DT); 1657 DIE::value_iterator 1658 DwarfUnit::addSectionDelta(DIE &Die, dwarf::Attribute Attribute, 1666 DIE::value_iterator 1667 DwarfUnit::addSectionLabel(DIE &Die, dwarf::Attribute Attribute, 1683 void DwarfTypeUnit::addGlobalName(StringRef Name, const DIE &Die, 1688 void DwarfTypeUnit::addGlobalType(const DIType *Ty, const DIE &Die, 1717 void DwarfTypeUnit::finishNonUnitTypeDIE(DIE& D, const DICompositeType *CTy) {lib/CodeGen/AsmPrinter/DwarfUnit.h
59 DIE *IndexTyDie; 63 DenseMap<const MDNode *, DIE *> MDNodeToDieMap; 74 DenseMap<DIE *, const DINode *> ContainingTypeMap; 79 bool applySubprogramDefinitionAttributes(const DISubprogram *SP, DIE &SPDie); 106 virtual void addGlobalName(StringRef Name, const DIE &Die, 110 virtual void addGlobalType(const DIType *Ty, const DIE &Die, 118 DIE *getDIE(const DINode *D) const; 128 void insertDIE(const DINode *Desc, DIE *D); 130 void insertDIE(DIE *D); 133 void addFlag(DIE &Die, dwarf::Attribute Attribute); 153 void addString(DIE &Die, dwarf::Attribute Attribute, StringRef Str); 164 void addSectionOffset(DIE &Die, dwarf::Attribute Attribute, uint64_t Integer); 171 void addLabelDelta(DIE &Die, dwarf::Attribute Attribute, const MCSymbol *Hi, 175 void addDIEEntry(DIE &Die, dwarf::Attribute Attribute, DIE &Entry); 175 void addDIEEntry(DIE &Die, dwarf::Attribute Attribute, DIE &Entry); 178 void addDIEEntry(DIE &Die, dwarf::Attribute Attribute, DIEEntry Entry); 181 void addDIETypeSignature(DIE &Die, uint64_t Signature); 184 void addBlock(DIE &Die, dwarf::Attribute Attribute, DIELoc *Loc); 187 void addBlock(DIE &Die, dwarf::Attribute Attribute, DIEBlock *Block); 190 void addSourceLine(DIE &Die, unsigned Line, const DIFile *File); 191 void addSourceLine(DIE &Die, const DILocalVariable *V); 192 void addSourceLine(DIE &Die, const DIGlobalVariable *G); 193 void addSourceLine(DIE &Die, const DISubprogram *SP); 194 void addSourceLine(DIE &Die, const DILabel *L); 195 void addSourceLine(DIE &Die, const DIType *Ty); 196 void addSourceLine(DIE &Die, const DIObjCProperty *Ty); 199 void addConstantValue(DIE &Die, const MachineOperand &MO, const DIType *Ty); 200 void addConstantValue(DIE &Die, const ConstantInt *CI, const DIType *Ty); 201 void addConstantValue(DIE &Die, const APInt &Val, const DIType *Ty); 202 void addConstantValue(DIE &Die, const APInt &Val, bool Unsigned); 203 void addConstantValue(DIE &Die, uint64_t Val, const DIType *Ty); 204 void addConstantValue(DIE &Die, bool Unsigned, uint64_t Val); 207 void addConstantFPValue(DIE &Die, const MachineOperand &MO); 208 void addConstantFPValue(DIE &Die, const ConstantFP *CFP); 211 void addLinkageName(DIE &Die, StringRef LinkageName); 214 void addTemplateParams(DIE &Buffer, DINodeArray TParams); 217 void addThrownTypes(DIE &Die, DINodeArray ThrownTypes); 223 void addType(DIE &Entity, const DIType *Ty, 226 DIE *getOrCreateNameSpace(const DINamespace *NS); 227 DIE *getOrCreateModule(const DIModule *M); 228 DIE *getOrCreateSubprogramDIE(const DISubprogram *SP, bool Minimal = false); 230 void applySubprogramAttributes(const DISubprogram *SP, DIE &SPDie, 234 DIE *createTypeDIE(const DIScope *Context, DIE &ContextDIE, const DIType *Ty); 234 DIE *createTypeDIE(const DIScope *Context, DIE &ContextDIE, const DIType *Ty); 237 DIE *getOrCreateTypeDIE(const MDNode *TyNode); 240 DIE *getOrCreateContextDIE(const DIScope *Context); 246 void constructSubprogramArguments(DIE &Buffer, DITypeRefArray Args); 250 DIE &createAndAddDIE(unsigned Tag, DIE &Parent, const DINode *N = nullptr); 250 DIE &createAndAddDIE(unsigned Tag, DIE &Parent, const DINode *N = nullptr); 277 void constructTypeDIE(DIE &Buffer, const DICompositeType *CTy); 280 DIE::value_iterator addSectionDelta(DIE &Die, dwarf::Attribute Attribute, 280 DIE::value_iterator addSectionDelta(DIE &Die, dwarf::Attribute Attribute, 284 DIE::value_iterator addSectionLabel(DIE &Die, dwarf::Attribute Attribute, 284 DIE::value_iterator addSectionLabel(DIE &Die, dwarf::Attribute Attribute, 293 DIE *createTypeDIE(const DICompositeType *Ty); 299 DIE *getOrCreateStaticMemberDIE(const DIDerivedType *DT); 309 void constructTypeDIE(DIE &Buffer, const DIBasicType *BTy); 310 void constructTypeDIE(DIE &Buffer, const DIDerivedType *DTy); 311 void constructTypeDIE(DIE &Buffer, const DISubroutineType *CTy); 312 void constructSubrangeDIE(DIE &Buffer, const DISubrange *SR, DIE *IndexTy); 312 void constructSubrangeDIE(DIE &Buffer, const DISubrange *SR, DIE *IndexTy); 313 void constructArrayTypeDIE(DIE &Buffer, const DICompositeType *CTy); 314 void constructEnumTypeDIE(DIE &Buffer, const DICompositeType *CTy); 315 DIE &constructMemberDIE(DIE &Buffer, const DIDerivedType *DT); 315 DIE &constructMemberDIE(DIE &Buffer, const DIDerivedType *DT); 316 void constructTemplateTypeParameterDIE(DIE &Buffer, 318 void constructTemplateValueParameterDIE(DIE &Buffer, 327 DIE *getIndexTyDie(); 330 void setIndexTyDie(DIE *D) { IndexTyDie = D; } 332 virtual void finishNonUnitTypeDIE(DIE& D, const DICompositeType *CTy) = 0; 337 const DIE &TyDIE); 345 const DIE *Ty; 351 void finishNonUnitTypeDIE(DIE& D, const DICompositeType *CTy) override; 359 void setType(const DIE *Ty) { this->Ty = Ty; } 367 void addGlobalName(StringRef Name, const DIE &Die, 369 void addGlobalType(const DIType *Ty, const DIE &Die,tools/dsymutil/CompileUnit.cpp
76 void CompileUnit::noteForwardReference(DIE *Die, const CompileUnit *RefUnit, 83 DIE *RefDie; 110 void CompileUnit::noteRangeAttribute(const DIE &Die, PatchLocation Attr) { 121 void CompileUnit::addNamespaceAccelerator(const DIE *Die, 126 void CompileUnit::addObjCAccelerator(const DIE *Die, 132 void CompileUnit::addNameAccelerator(const DIE *Die, 138 void CompileUnit::addTypeAccelerator(const DIE *Die,tools/dsymutil/CompileUnit.h
30 DIE::value_iterator I; 33 PatchLocation(DIE::value_iterator I) : I(I) {} 61 DIE *Clone; 109 DIE *getOutputUnitDIE() const { 164 void noteForwardReference(DIE *Die, const CompileUnit *RefUnit, 179 void noteRangeAttribute(const DIE &Die, PatchLocation Attr); 186 void addNamespaceAccelerator(const DIE *Die, DwarfStringPoolEntryRef Name); 189 void addNameAccelerator(const DIE *Die, DwarfStringPoolEntryRef Name, 195 void addObjCAccelerator(const DIE *Die, DwarfStringPoolEntryRef Name, 200 void addTypeAccelerator(const DIE *Die, DwarfStringPoolEntryRef Name, 209 const DIE *Die; 220 AccelInfo(DwarfStringPoolEntryRef Name, const DIE *Die, 224 AccelInfo(DwarfStringPoolEntryRef Name, const DIE *Die, 274 std::tuple<DIE *, const CompileUnit *, DeclContext *, PatchLocation>>tools/dsymutil/DwarfLinker.cpp
1015 DIE &Die, AttributeSpec AttrSpec, const DWARFFormValue &Val, 1035 DIE &Die, const DWARFDie &InputDIE, AttributeSpec AttrSpec, 1040 DIE *NewRefDie = nullptr; 1070 RefInfo.Clone = DIE::get(DIEAlloc, dwarf::Tag(RefDie.getTag())); 1141 if (DIE *Clone = Info.Clone) 1166 DIE &Die, const DebugMapObject &DMO, CompileUnit &Unit, 1224 DIE &Die, AttributeSpec AttrSpec, const DWARFFormValue &Val, 1272 DIE &Die, const DWARFDie &InputDIE, const DebugMapObject &DMO, 1340 DIE &Die, const DWARFDie &InputDIE, const DebugMapObject &DMO, 1436 const DIE *Die, 1501 DIE *DwarfLinker::DIECloner::cloneDIE( 1504 unsigned Flags, bool IsLittleEndian, DIE *Die) { 1519 Info.Clone = DIE::get(DIEAlloc, dwarf::Tag(InputDIE.getTag())); 1684 if (DIE *Clone = cloneDIE(Child, DMO, Unit, StringPool, PCOffset, OutOffset, 1795 static void patchStmtList(DIE &Die, DIEInteger Offset) { 1818 if (auto *OutputDIE = Unit.getOutputUnitDIE()) 2454 DIE *CUDie = DIE::get(DIEAlloc, dwarf::DW_TAG_compile_unit); 2454 DIE *CUDie = DIE::get(DIEAlloc, dwarf::DW_TAG_compile_unit); 2470 DIE &ConstDie = CUDie->addChild(DIE::get(DIEAlloc, dwarf::DW_TAG_constant)); 2470 DIE &ConstDie = CUDie->addChild(DIE::get(DIEAlloc, dwarf::DW_TAG_constant)); 2487 for (auto &Child : CUDie->children()) {tools/dsymutil/DwarfLinker.h
289 DIE *cloneDIE(const DWARFDie &InputDIE, const DebugMapObject &DMO, 292 bool IsLittleEndian, DIE *Die = nullptr); 337 unsigned cloneAttribute(DIE &Die, const DWARFDie &InputDIE, 347 unsigned cloneStringAttribute(DIE &Die, AttributeSpec AttrSpec, 355 unsigned cloneDieReferenceAttribute(DIE &Die, const DWARFDie &InputDIE, 370 unsigned cloneBlockAttribute(DIE &Die, const DebugMapObject &DMO, 378 unsigned cloneAddressAttribute(DIE &Die, AttributeSpec AttrSpec, 385 unsigned cloneScalarAttribute(DIE &Die, const DWARFDie &InputDIE, 406 void addObjCAccelerator(CompileUnit &Unit, const DIE *Die,tools/dsymutil/DwarfStreamer.cpp
188 void DwarfStreamer::emitDIE(DIE &Die) {
tools/dsymutil/DwarfStreamer.h 68 void emitDIE(DIE &Die);
unittests/CodeGen/DIEHashTest.cpp40 DIE &Die = *DIE::get(Alloc, dwarf::DW_TAG_base_type); 40 DIE &Die = *DIE::get(Alloc, dwarf::DW_TAG_base_type); 49 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 49 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 64 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 64 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 78 DIE &CU = *DIE::get(Alloc, dwarf::DW_TAG_compile_unit); 78 DIE &CU = *DIE::get(Alloc, dwarf::DW_TAG_compile_unit); 80 auto Space = DIE::get(Alloc, dwarf::DW_TAG_namespace); 89 auto Foo = DIE::get(Alloc, dwarf::DW_TAG_structure_type); 94 DIE &N = *Foo; 106 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 106 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 110 DIE &Int = *DIE::get(Alloc, dwarf::DW_TAG_base_type); 110 DIE &Int = *DIE::get(Alloc, dwarf::DW_TAG_base_type); 119 auto Member = DIE::get(Alloc, dwarf::DW_TAG_member); 136 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 136 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 141 DIE &Int = *DIE::get(Alloc, dwarf::DW_TAG_base_type); 141 DIE &Int = *DIE::get(Alloc, dwarf::DW_TAG_base_type); 150 auto Mem1 = DIE::get(Alloc, dwarf::DW_TAG_member); 160 auto Mem2 = DIE::get(Alloc, dwarf::DW_TAG_member); 176 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 176 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 182 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 198 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 198 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 204 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 211 DIE &FooPtr = *DIE::get(Alloc, dwarf::DW_TAG_pointer_type); 211 DIE &FooPtr = *DIE::get(Alloc, dwarf::DW_TAG_pointer_type); 228 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 228 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 234 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 241 DIE &FooRef = *DIE::get(Alloc, dwarf::DW_TAG_reference_type); 241 DIE &FooRef = *DIE::get(Alloc, dwarf::DW_TAG_reference_type); 246 DIE &FooRefConst = *DIE::get(Alloc, dwarf::DW_TAG_const_type); 246 DIE &FooRefConst = *DIE::get(Alloc, dwarf::DW_TAG_const_type); 263 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 263 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 269 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 276 DIE &FooRef = *DIE::get(Alloc, dwarf::DW_TAG_rvalue_reference_type); 276 DIE &FooRef = *DIE::get(Alloc, dwarf::DW_TAG_rvalue_reference_type); 281 DIE &FooRefConst = *DIE::get(Alloc, dwarf::DW_TAG_const_type); 281 DIE &FooRefConst = *DIE::get(Alloc, dwarf::DW_TAG_const_type); 298 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 298 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 304 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 311 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 311 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 341 DIE &Bar = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 341 DIE &Bar = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 346 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 346 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 350 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 355 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 355 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 373 DIE &Bar = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 373 DIE &Bar = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 377 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 377 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 381 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 386 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 386 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 419 DIE &Bar = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 419 DIE &Bar = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 424 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 424 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 428 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 433 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 433 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 450 DIE &Bar = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 450 DIE &Bar = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 454 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 454 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 458 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 463 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 463 DIE &PtrToFooMem = *DIE::get(Alloc, dwarf::DW_TAG_ptr_to_member_type); 495 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 495 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 498 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 498 DIE &Foo = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 502 auto Mem = DIE::get(Alloc, dwarf::DW_TAG_member); 507 DIE &UnnamedPtr = *DIE::get(Alloc, dwarf::DW_TAG_pointer_type); 507 DIE &UnnamedPtr = *DIE::get(Alloc, dwarf::DW_TAG_pointer_type); 526 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 526 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 530 auto Foo = DIE::get(Alloc, dwarf::DW_TAG_structure_type); 545 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 545 DIE &Unnamed = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 549 auto Func = DIE::get(Alloc, dwarf::DW_TAG_subprogram); 565 DIE &A = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 565 DIE &A = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 573 auto Func = DIE::get(Alloc, dwarf::DW_TAG_subprogram); 601 DIE &A = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 601 DIE &A = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 612 DIE &IntTyDIE = *DIE::get(Alloc, dwarf::DW_TAG_base_type); 612 DIE &IntTyDIE = *DIE::get(Alloc, dwarf::DW_TAG_base_type); 618 auto PITyDIE = DIE::get(Alloc, dwarf::DW_TAG_const_type); 622 auto PI = DIE::get(Alloc, dwarf::DW_TAG_member); 647 DIE &A = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 647 DIE &A = *DIE::get(Alloc, dwarf::DW_TAG_structure_type); 657 auto FloatTyDIE = DIE::get(Alloc, dwarf::DW_TAG_base_type); 664 auto PITyDIE = DIE::get(Alloc, dwarf::DW_TAG_const_type); 668 auto PI = DIE::get(Alloc, dwarf::DW_TAG_member);unittests/DebugInfo/DWARF/DwarfGenerator.cpp
144 &Die->addChild(llvm::DIE::get(DG.getAllocator(), Tag)));
unittests/DebugInfo/DWARF/DwarfGenerator.h59 llvm::DIE *Die; 65 DIE(CompileUnit *U = nullptr, llvm::DIE *D = nullptr) : CU(U), Die(D) {}usr/include/c++/7.4.0/bits/move.h
72 constexpr _Tp&& 83 constexpr _Tp&&usr/include/c++/7.4.0/bits/stl_iterator_base_types.h
123 typedef _Tp value_type;
usr/include/c++/7.4.0/type_traits 1983 { typedef _Up type; };