This is an archive of the discontinued LLVM Phabricator instance.

MC: Simplify handling of temporary symbols in COFF writer.
ClosedPublic

Authored by pcc on Nov 24 2015, 6:58 PM.

Details

Summary

The COFF object writer was previously adding unnecessary symbols to its
temporary data structures and cleaning them up later. This made the code
harder to understand and caused a bug (aliases classed as temporary symbols
would cause an assertion failure). A much simpler way of handling such
symbols is to ask the layout for their section-relative position when needed.

Tested with a bootstrap on Windows and by building Chrome.

Diff Detail

Event Timeline

pcc updated this revision to Diff 41104.Nov 24 2015, 6:58 PM
pcc retitled this revision from to MC: Simplify handling of temporary symbols in COFF writer..
pcc updated this object.
pcc added reviewers: rnk, majnemer, rafael.
pcc added a subscriber: llvm-commits.
rafael accepted this revision.Nov 26 2015, 8:59 AM
rafael edited edge metadata.

LGTM. Thanks!

This revision is now accepted and ready to land.Nov 26 2015, 8:59 AM
This revision was automatically updated to reflect the committed changes.