This is an archive of the discontinued LLVM Phabricator instance.

COFF: tie the execute and the PDB together
ClosedPublic

Authored by compnerd on Dec 30 2016, 12:12 PM.

Details

Reviewers
ruiu
Summary

The PDB GUID, Age, and version are tied together by the RSDS record in
the binary. Pass along the BuildId information into the createPDB to
allow us to tie the binary and the PDB together.

Diff Detail

Repository
rL LLVM

Event Timeline

compnerd updated this revision to Diff 82740.Dec 30 2016, 12:12 PM
compnerd retitled this revision from to COFF: tie the execute and the PDB together.
compnerd updated this object.
compnerd added a reviewer: ruiu.
compnerd set the repository for this revision to rL LLVM.
compnerd added a project: lld.
compnerd added a subscriber: llvm-commits.
ruiu accepted this revision.Jan 3 2017, 3:35 PM
ruiu edited edge metadata.

LGTM

COFF/PDB.cpp
151–152

You already have the same assert in the writer, so please remove this from here.

This revision is now accepted and ready to land.Jan 3 2017, 3:35 PM
compnerd closed this revision.Jan 4 2017, 10:07 AM
compnerd marked an inline comment as done.

SVN r290975

inglorion added inline comments.
COFF/Writer.cpp
307

This is causing the linker to crash for me, because BuildId is nullptr. @compnerd, does that suggest a problem and a fix, or shall I do some more digging and cook up a patch?