diff --git a/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h b/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h --- a/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h +++ b/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h @@ -470,6 +470,10 @@ return std::make_reverse_iterator(begin()); } +void dumpTypeQualifiedName(const DWARFDie &DIE, raw_ostream &OS); +void dumpTypeUnqualifiedName(const DWARFDie &DIE, raw_ostream &OS, + std::string *OriginalFullName = nullptr); + } // end namespace llvm #endif // LLVM_DEBUGINFO_DWARF_DWARFDIE_H diff --git a/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp b/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp --- a/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp @@ -772,7 +772,7 @@ DWARFDie D = resolveReferencedType(Die, FormValue); if (D && !D.isNULL()) { OS << Space << "\""; - DWARFTypePrinter(OS).appendQualifiedName(D); + dumpTypeQualifiedName(D, OS); OS << '"'; } } else if (Attr == DW_AT_APPLE_property_attribute) { @@ -808,7 +808,7 @@ return; if (getTag() == DW_TAG_GNU_template_parameter_pack) return; - DWARFTypePrinter(OS).appendUnqualifiedName(*this, OriginalFullName); + dumpTypeUnqualifiedName(*this, OS, OriginalFullName); } bool DWARFDie::isSubprogramDIE() const { return getTag() == DW_TAG_subprogram; } @@ -1270,3 +1270,16 @@ return false; } } + +namespace llvm { + +void dumpTypeQualifiedName(const DWARFDie &DIE, raw_ostream &OS) { + DWARFTypePrinter(OS).appendQualifiedName(DIE); +} + +void dumpTypeUnqualifiedName(const DWARFDie &DIE, raw_ostream &OS, + std::string *OriginalFullName) { + DWARFTypePrinter(OS).appendUnqualifiedName(DIE, OriginalFullName); +} + +} // namespace llvm