[PATCH] D66431: [PDB] Fix bug when using multiple PCH header objects with the same name.

Zachary Turner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 9 14:25:32 PDT 2019


zturner updated this revision to Diff 224164.
zturner added a comment.
Herald added a subscriber: hiraditya.

Rebased this onto tip of trunk.  I'm *finally* going to submit this.

I had to make a few slight changes because it broke one existing test.  I don't remember it breaking this test before, but anyway...  The behavioral change is that now we don't distinguish between "mismatched signature" and "missing pch object".  We also don't use the relative path comparison logic that I first implemented, because that breaks absolute paths.  Instead, we use the previous fileNameOnly logic, but we couple that with a signature check.  In other words, we continue searching until we have a match on *both* the signature and the file name.  If nothing matches, we just return a generic "nothing matched" error.  This changes some error text, but otherwise it should be more robust and handle every possible case with relative and absolute paths.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D66431/new/

https://reviews.llvm.org/D66431

Files:
  lld/COFF/PDB.cpp
  lld/test/COFF/Inputs/precompa/precomp.obj
  lld/test/COFF/Inputs/precompa/useprecomp.obj
  lld/test/COFF/Inputs/precompb/precomp.obj
  lld/test/COFF/Inputs/precompb/useprecomp.obj
  lld/test/COFF/precomp-link-samename.test
  lld/test/COFF/precomp-link.test
  llvm/include/llvm/DebugInfo/PDB/GenericError.h
  llvm/lib/DebugInfo/PDB/GenericError.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66431.224164.patch
Type: text/x-patch
Size: 5510 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191009/23d03db2/attachment.bin>


More information about the llvm-commits mailing list