This is an archive of the discontinued LLVM Phabricator instance.

[PDB] Output first section contribution for each module
ClosedPublic

Authored by zturner on Apr 19 2018, 11:57 AM.

Details

Summary

One piece of the DBI stream is a list of module descriptors that include information about object file name, Stream index of the module's symbols, etc.

One piece of this descriptor that we have been leaving blank is the section contribution structure. Although I'm not entirely sure what part of the debugger uses this (if any) it's important that we try to emit something correct to minimize the risk of strange hard-to-diagnose failures.

Comments in the refernece source indicate that this is supposed be the *first* section contribution for the module. So, we simply emit a copy of the same structure that we emit for the section contribution list, but only for the first chunk for a given module.

Comparing LLD and link PDBs side by side, the results are now very similar.

Diff Detail

Repository
rLLD LLVM Linker

Event Timeline

zturner created this revision.Apr 19 2018, 11:57 AM

Typo in the summary: refernece -> reference

rnk accepted this revision.Apr 19 2018, 12:48 PM

lgtm

This revision is now accepted and ready to land.Apr 19 2018, 12:48 PM
This revision was automatically updated to reflect the committed changes.