From: Rui Ueyama Date: Fri, 27 May 2016 00:32:07 +0000 (+0000) Subject: pdbdump: print out the name of the stream 0. X-Git-Tag: android-x86-7.1-r4~32732 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=4c87e7cf1a2cdf71488f91e994dc6f46e31c7b84;p=android-x86%2Fexternal-llvm.git pdbdump: print out the name of the stream 0. Differential Revision: http://reviews.llvm.org/D20712 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@270943 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/DebugInfo/PDB/Raw/RawConstants.h b/include/llvm/DebugInfo/PDB/Raw/RawConstants.h index 5c512f156f4..6263bf9d1bd 100644 --- a/include/llvm/DebugInfo/PDB/Raw/RawConstants.h +++ b/include/llvm/DebugInfo/PDB/Raw/RawConstants.h @@ -45,6 +45,11 @@ enum PdbRaw_TpiVer : uint32_t { }; enum SpecialStream : uint32_t { + // Stream 0 contains the copy of previous version of the MSF directory. + // We are not currently using it, but technically if we find the main + // MSF is corrupted, we could fallback to it. + OldMSFDirectory = 0, + StreamPDB = 1, StreamTPI = 2, StreamDBI = 3, diff --git a/test/DebugInfo/PDB/pdbdump-headers.test b/test/DebugInfo/PDB/pdbdump-headers.test index 2e233888be4..a5904fab739 100644 --- a/test/DebugInfo/PDB/pdbdump-headers.test +++ b/test/DebugInfo/PDB/pdbdump-headers.test @@ -21,7 +21,7 @@ ; EMPTY-NEXT: NumStreams: 17 ; EMPTY-NEXT: } ; EMPTY-NEXT: Streams [ -; EMPTY-NEXT: Stream 0: [???] (40 bytes) +; EMPTY-NEXT: Stream 0: [Old MSF Directory] (40 bytes) ; EMPTY-NEXT: Stream 1: [PDB Stream] (118 bytes) ; EMPTY-NEXT: Stream 2: [TPI Stream] (5392 bytes) ; EMPTY-NEXT: Stream 3: [DBI Stream] (739 bytes) @@ -609,7 +609,7 @@ ; ALL: NumStreams: 17 ; ALL: } ; ALL: Streams [ -; ALL: Stream 0: [???] (40 bytes) +; ALL: Stream 0: [Old MSF Directory] (40 bytes) ; ALL: Stream 1: [PDB Stream] (118 bytes) ; ALL: Stream 2: [TPI Stream] (5392 bytes) ; ALL: Stream 3: [DBI Stream] (739 bytes) diff --git a/tools/llvm-pdbdump/llvm-pdbdump.cpp b/tools/llvm-pdbdump/llvm-pdbdump.cpp index 7ba991a8f74..b3f73cc323c 100644 --- a/tools/llvm-pdbdump/llvm-pdbdump.cpp +++ b/tools/llvm-pdbdump/llvm-pdbdump.cpp @@ -254,7 +254,9 @@ static Error dumpStreamSummary(ScopedPrinter &P, PDBFile &File) { std::string Label("Stream "); Label += to_string(StreamIdx); std::string Value; - if (StreamIdx == StreamPDB) + if (StreamIdx == OldMSFDirectory) + Value = "Old MSF Directory"; + else if (StreamIdx == StreamPDB) Value = "PDB Stream"; else if (StreamIdx == StreamDBI) Value = "DBI Stream";