diff options
| author | Zachary Turner <zturner@google.com> | 2017-05-19 19:26:58 +0000 |
|---|---|---|
| committer | Zachary Turner <zturner@google.com> | 2017-05-19 19:26:58 +0000 |
| commit | 526f4f2aa8d810d9cffafda56d4a16d0fc5a8dda (patch) | |
| tree | a40646ce244afe4ffbad44fff1a34580f2b6c9c5 /lld | |
| parent | d837b0f9b9399aa6ab2f86babb22774d4fb1f8d2 (diff) | |
| download | bcm5719-llvm-526f4f2aa8d810d9cffafda56d4a16d0fc5a8dda.tar.gz bcm5719-llvm-526f4f2aa8d810d9cffafda56d4a16d0fc5a8dda.zip | |
Resubmit "[CodeView] Provide a common interface for type collections."
This was originally reverted because it was a breaking a bunch
of bots and the breakage was not surfacing on Windows. After much
head-scratching this was ultimately traced back to a bug in the
lit test runner related to its pipe handling. Now that the bug
in lit is fixed, Windows correctly reports these test failures,
and as such I have finally (hopefully) fixed all of them in this
patch.
llvm-svn: 303446
Diffstat (limited to 'lld')
| -rw-r--r-- | lld/COFF/PDB.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/lld/COFF/PDB.cpp b/lld/COFF/PDB.cpp index 631fee12b88..0266148cc6c 100644 --- a/lld/COFF/PDB.cpp +++ b/lld/COFF/PDB.cpp @@ -14,7 +14,8 @@ #include "SymbolTable.h" #include "Symbols.h" #include "llvm/DebugInfo/CodeView/CVDebugRecord.h" -#include "llvm/DebugInfo/CodeView/CVTypeDumper.h" +#include "llvm/DebugInfo/CodeView/CVTypeVisitor.h" +#include "llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h" #include "llvm/DebugInfo/CodeView/SymbolDumper.h" #include "llvm/DebugInfo/CodeView/TypeDatabase.h" #include "llvm/DebugInfo/CodeView/TypeDumpVisitor.h" @@ -134,12 +135,11 @@ static void dumpDebugT(ScopedPrinter &W, ObjectFile *File) { if (Data.empty()) return; - TypeDatabase TDB(0); - TypeDumpVisitor TDV(TDB, &W, false); + LazyRandomTypeCollection Types(Data, 100); + TypeDumpVisitor TDV(Types, &W, false); // Use a default implementation that does not follow type servers and instead // just dumps the contents of the TypeServer2 record. - CVTypeDumper TypeDumper(TDB); - if (auto EC = TypeDumper.dump(Data, TDV)) + if (auto EC = codeview::visitTypeStream(Types, TDV)) fatal(EC, "CVTypeDumper::dump failed"); } |

