This is an archive of the discontinued LLVM Phabricator instance.

Enable StackMap Serialization for COFF
ClosedPublic

Authored by swaroop.sridhar on Jun 23 2015, 7:10 PM.

Details

Summary

This change turns on the emission of __LLVM_Stackmaps section when generating a COFF binary.

Diff Detail

Event Timeline

swaroop.sridhar updated this revision to Diff 28318.
swaroop.sridhar retitled this revision from to Enable StackMap Serialization for COFF.
swaroop.sridhar updated this object.
swaroop.sridhar edited the test plan for this revision. (Show Details)
swaroop.sridhar changed the visibility from "Public (No Login Required)" to "swaroop.sridhar (Swaroop Sridhar)".
swaroop.sridhar changed the visibility from "swaroop.sridhar (Swaroop Sridhar)" to "Public (No Login Required)".
swaroop.sridhar added a subscriber: Unknown Object (MLST).
sanjoy accepted this revision.Jun 24 2015, 11:32 AM
sanjoy edited edge metadata.

LGTM -- I'll trust you got the flags for the COFF section right.

lib/MC/MCObjectFileInfo.cpp
737

The formatting looks a little bit off here -- can you please run this change through clang-format?

This revision is now accepted and ready to land.Jun 24 2015, 11:32 AM
pgavlin accepted this revision.Jun 24 2015, 3:06 PM
pgavlin edited edge metadata.

LGTM as well.

Checked in as revision 240613

AndyAyers edited edge metadata.Jun 24 2015, 5:37 PM

I'm not sure about the COFF flags. Not something that needs to be fixed right away though.

lib/MC/MCObjectFileInfo.cpp
740

I wonder if the stackmap data really needs to be in a loadable section (in other words, memory resident when the code it refers to is executing), or if this should be some kind of client determined thing.

Certainly for LLILC's purposes it doesn't need to be loadable, since we'll translate it to another format.