diff --git a/include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h b/include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h index 002a46e60ff..c71f35c7b60 100644 --- a/include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h +++ b/include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h @@ -19,7 +19,7 @@ class DIARawSymbol : public IPDBRawSymbol { public: DIARawSymbol(const DIASession &PDBSession, CComPtr DiaSymbol); - void dump(raw_ostream &OS, int Indent, PDB_DumpLevel Level) const override; + void dump(raw_ostream &OS, int Indent) const override; CComPtr getDiaSymbol() const { return Symbol; } diff --git a/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h b/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h index b557fd1b696..139bff56fd5 100644 --- a/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h +++ b/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h @@ -28,7 +28,7 @@ class IPDBRawSymbol { public: virtual ~IPDBRawSymbol(); - virtual void dump(raw_ostream &OS, int Indent, PDB_DumpLevel Level) const = 0; + virtual void dump(raw_ostream &OS, int Indent) const = 0; virtual std::unique_ptr findChildren(PDB_SymType Type) const = 0; diff --git a/include/llvm/DebugInfo/PDB/IPDBSourceFile.h b/include/llvm/DebugInfo/PDB/IPDBSourceFile.h index e55966c50c1..55000eff02f 100644 --- a/include/llvm/DebugInfo/PDB/IPDBSourceFile.h +++ b/include/llvm/DebugInfo/PDB/IPDBSourceFile.h @@ -24,7 +24,7 @@ class IPDBSourceFile { public: virtual ~IPDBSourceFile(); - void dump(raw_ostream &OS, int Indent, PDB_DumpLevel Level) const; + void dump(raw_ostream &OS, int Indent) const; virtual std::string getFileName() const = 0; virtual uint32_t getUniqueId() const = 0; diff --git a/include/llvm/DebugInfo/PDB/PDBSymbol.h b/include/llvm/DebugInfo/PDB/PDBSymbol.h index 29062d68f48..36005eb6660 100644 --- a/include/llvm/DebugInfo/PDB/PDBSymbol.h +++ b/include/llvm/DebugInfo/PDB/PDBSymbol.h @@ -55,7 +55,7 @@ public: /// override the behavior to only dump known fields. virtual void dump(raw_ostream &OS, int Indent, PDBSymDumper &Dumper) const = 0; - void defaultDump(raw_ostream &OS, int Indent, PDB_DumpLevel Level) const; + void defaultDump(raw_ostream &OS, int Indent) const; PDB_SymType getSymTag() const; diff --git a/include/llvm/DebugInfo/PDB/PDBTypes.h b/include/llvm/DebugInfo/PDB/PDBTypes.h index c797ccaf34f..75b64750129 100644 --- a/include/llvm/DebugInfo/PDB/PDBTypes.h +++ b/include/llvm/DebugInfo/PDB/PDBTypes.h @@ -67,50 +67,6 @@ enum class PDB_ReaderType { DIA = 0, }; -enum class PDB_DumpLevel { - Compact, - Normal, - Detailed, -}; - -enum PDB_DumpFlags { - PDB_DF_None = 0x0, - PDB_DF_Functions = 0x1, // Dump functions - PDB_DF_Data = 0x2, // Dump variables and constants - PDB_DF_Labels = 0x4, // Dump labels - PDB_DF_PublicSyms = 0x8, // Dump public symbols - PDB_DF_Classes = 0x10, // Dump class types - PDB_DF_Enums = 0x20, // Dump enums - PDB_DF_Funcsigs = 0x40, // Dump function signatures - PDB_DF_VTables = 0x80, // Dump virtual function tables - PDB_DF_Thunks = 0x100, // Dump thunks - PDB_DF_ObjFiles = 0x200, // Dump object files (compilands) - PDB_DF_Typedefs = 0x400, // Dump typedefs - PDB_DF_Children = 0x800, // Dump children of the current symbol - PDB_DF_Hidden = 0x1000, // Dump everything. This is not simply a bitwise - // or of the previous flags. It will find symbols - // that would otherwise be missed, but can lead to - // much slower dumps for large input files. - PDB_DF_All = 0x7FF -}; -inline PDB_DumpFlags operator|(PDB_DumpFlags LHS, PDB_DumpFlags RHS) { - return static_cast((int)LHS | (int)RHS); -} - -inline PDB_DumpFlags operator&(PDB_DumpFlags LHS, PDB_DumpFlags RHS) { - return static_cast((int)LHS & (int)RHS); -} - -inline PDB_DumpFlags operator~(PDB_DumpFlags LHS) { - return static_cast(~(int)LHS); -} -inline PDB_DumpFlags &operator|=(PDB_DumpFlags &LHS, PDB_DumpFlags RHS) { - return (LHS = (LHS | RHS)); -} -inline PDB_DumpFlags &operator&=(PDB_DumpFlags &LHS, PDB_DumpFlags RHS) { - return (LHS = (LHS & RHS)); -} - /// Defines a 128-bit unique identifier. This maps to a GUID on Windows, but /// is abstracted here for the purposes of non-Windows platforms that don't have /// the GUID structure defined. diff --git a/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp b/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp index 0ce3df528e1..abe0ab55e56 100644 --- a/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp +++ b/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp @@ -179,8 +179,7 @@ DIARawSymbol::DIARawSymbol(const DIASession &PDBSession, #define RAW_METHOD_DUMP(Stream, Method) \ DumpDIAValue(Stream, Indent, StringRef(#Method), Symbol, &IDiaSymbol::Method); -void DIARawSymbol::dump(raw_ostream &OS, int Indent, - PDB_DumpLevel Level) const { +void DIARawSymbol::dump(raw_ostream &OS, int Indent) const { RAW_METHOD_DUMP(OS, get_access) RAW_METHOD_DUMP(OS, get_addressOffset) RAW_METHOD_DUMP(OS, get_addressSection) diff --git a/lib/DebugInfo/PDB/IPDBSourceFile.cpp b/lib/DebugInfo/PDB/IPDBSourceFile.cpp index f98bf9b18fc..3abe59dba62 100644 --- a/lib/DebugInfo/PDB/IPDBSourceFile.cpp +++ b/lib/DebugInfo/PDB/IPDBSourceFile.cpp @@ -17,19 +17,16 @@ using namespace llvm; IPDBSourceFile::~IPDBSourceFile() {} -void IPDBSourceFile::dump(raw_ostream &OS, int Indent, - PDB_DumpLevel Level) const { - if (Level == PDB_DumpLevel::Compact) { - OS.indent(Indent); - PDB_Checksum ChecksumType = getChecksumType(); - OS << "["; - if (ChecksumType != PDB_Checksum::None) { - OS << ChecksumType << ": "; - std::string Checksum = getChecksum(); - for (uint8_t c : Checksum) - OS << format_hex_no_prefix(c, 2, true); - } else - OS << "No checksum"; - OS << "] " << getFileName() << "\n"; - } +void IPDBSourceFile::dump(raw_ostream &OS, int Indent) const { + OS.indent(Indent); + PDB_Checksum ChecksumType = getChecksumType(); + OS << "["; + if (ChecksumType != PDB_Checksum::None) { + OS << ChecksumType << ": "; + std::string Checksum = getChecksum(); + for (uint8_t c : Checksum) + OS << format_hex_no_prefix(c, 2, true); + } else + OS << "No checksum"; + OS << "] " << getFileName() << "\n"; } diff --git a/lib/DebugInfo/PDB/PDBSymbol.cpp b/lib/DebugInfo/PDB/PDBSymbol.cpp index f24e318a941..f9aaf3ae934 100644 --- a/lib/DebugInfo/PDB/PDBSymbol.cpp +++ b/lib/DebugInfo/PDB/PDBSymbol.cpp @@ -107,9 +107,8 @@ PDBSymbol::create(const IPDBSession &PDBSession, #define ELSE_TRY_DUMP_TYPE(Type, Dumper) else TRY_DUMP_TYPE(Type, Dumper) -void PDBSymbol::defaultDump(raw_ostream &OS, int Indent, - PDB_DumpLevel Level) const { - RawSymbol->dump(OS, Indent, Level); +void PDBSymbol::defaultDump(raw_ostream &OS, int Indent) const { + RawSymbol->dump(OS, Indent); } PDB_SymType PDBSymbol::getSymTag() const { return RawSymbol->getSymTag(); } diff --git a/tools/llvm-pdbdump/ClassDefinitionDumper.cpp b/tools/llvm-pdbdump/ClassDefinitionDumper.cpp index f6bb6958d8b..7e9407df3d9 100644 --- a/tools/llvm-pdbdump/ClassDefinitionDumper.cpp +++ b/tools/llvm-pdbdump/ClassDefinitionDumper.cpp @@ -85,7 +85,6 @@ void ClassDefinitionDumper::start(const PDBSymbolTypeUDT &Class, if (Count > 0) OS << newline(Indent); OS << "}"; - OS.flush(); } int ClassDefinitionDumper::dumpAccessGroup(PDB_MemberAccess Access, @@ -147,7 +146,6 @@ void ClassDefinitionDumper::dump(const PDBSymbolTypeTypedef &Symbol, OS << newline(Indent); TypedefDumper Dumper; Dumper.start(Symbol, OS, Indent); - OS.flush(); } void ClassDefinitionDumper::dump(const PDBSymbolTypeUDT &Symbol, diff --git a/tools/llvm-pdbdump/FunctionDumper.cpp b/tools/llvm-pdbdump/FunctionDumper.cpp index 1bd201b8f69..e65983034a6 100644 --- a/tools/llvm-pdbdump/FunctionDumper.cpp +++ b/tools/llvm-pdbdump/FunctionDumper.cpp @@ -163,7 +163,6 @@ void FunctionDumper::start(const PDBSymbolFunc &Symbol, PointerType Pointer, OS << ", "; } } - OS.flush(); OS << ")"; if (Symbol.isConstType()) OS << " const"; @@ -202,8 +201,7 @@ void FunctionDumper::dump(const PDBSymbolTypeFunctionArg &Symbol, raw_ostream &OS, int Indent) { // PDBSymbolTypeFunctionArg is just a shim over the real argument. Just drill // through to the real thing and dump it. - Symbol.defaultDump(OS, Indent, PDB_DumpLevel::Detailed); - OS.flush(); + Symbol.defaultDump(OS, Indent); uint32_t TypeId = Symbol.getTypeId(); auto Type = Symbol.getSession().getSymbolById(TypeId); if (!Type) diff --git a/tools/llvm-pdbdump/TypeDumper.cpp b/tools/llvm-pdbdump/TypeDumper.cpp index c4e2eabda90..3131e9f00cc 100644 --- a/tools/llvm-pdbdump/TypeDumper.cpp +++ b/tools/llvm-pdbdump/TypeDumper.cpp @@ -78,7 +78,6 @@ void TypeDumper::dump(const PDBSymbolTypeTypedef &Symbol, raw_ostream &OS, TypedefDumper Dumper; Dumper.start(Symbol, OS, Indent); - OS.flush(); } void TypeDumper::dump(const PDBSymbolTypeUDT &Symbol, raw_ostream &OS, diff --git a/tools/llvm-pdbdump/TypedefDumper.cpp b/tools/llvm-pdbdump/TypedefDumper.cpp index e3ac76a63b3..6eea6b69d95 100644 --- a/tools/llvm-pdbdump/TypedefDumper.cpp +++ b/tools/llvm-pdbdump/TypedefDumper.cpp @@ -66,7 +66,6 @@ void TypedefDumper::dump(const PDBSymbolTypePointer &Symbol, raw_ostream &OS, Pointer = FunctionDumper::PointerType::Reference; FunctionDumper NestedDumper; NestedDumper.start(*FuncSig, Pointer, OS); - OS.flush(); } else { PointeeType->dump(OS, Indent, *this); OS << ((Symbol.isReference()) ? "&" : "*"); diff --git a/tools/llvm-pdbdump/VariableDumper.cpp b/tools/llvm-pdbdump/VariableDumper.cpp index cb9c66a94b9..31348ef1e17 100644 --- a/tools/llvm-pdbdump/VariableDumper.cpp +++ b/tools/llvm-pdbdump/VariableDumper.cpp @@ -48,7 +48,6 @@ void VariableDumper::start(const PDBSymbolData &Var, raw_ostream &OS, case PDB_LocType::ThisRel: { int Offset = Var.getOffset(); OS << "+" << format_hex(Var.getOffset(), 4) << " "; - OS.flush(); dumpSymbolTypeAndName(*VarType, Var.getName(), OS); break; } diff --git a/unittests/DebugInfo/PDB/PDBApiTest.cpp b/unittests/DebugInfo/PDB/PDBApiTest.cpp index 7cee8b9ad90..629c5f8bc0e 100644 --- a/unittests/DebugInfo/PDB/PDBApiTest.cpp +++ b/unittests/DebugInfo/PDB/PDBApiTest.cpp @@ -90,7 +90,7 @@ public: MockRawSymbol(PDB_SymType SymType) : Type(SymType) {} - void dump(raw_ostream &OS, int Indent, PDB_DumpLevel Level) const override {} + void dump(raw_ostream &OS, int Indent) const override {} std::unique_ptr findChildren(PDB_SymType Type) const override {