This is an archive of the discontinued LLVM Phabricator instance.

[MC] Generate .debug_frame in the 64-bit DWARF format [7/7]
ClosedPublic

Authored by ikudrin on Jun 4 2020, 5:19 AM.

Details

Summary

Note that .eh_frame sections are generated in the 32-bit format even when debug sections are 64-bit, for compatibility reasons. They use relative references between entries, so they hardly benefit from the 64-bit format.

Diff Detail

Event Timeline

ikudrin created this revision.Jun 4 2020, 5:19 AM
MaskRay added inline comments.Jun 4 2020, 11:37 AM
llvm/lib/MC/MCDwarf.cpp
1623

Your other patches don't seem to mention DWARF64 mark. You may drop a comment

jhenderson added inline comments.Jun 5 2020, 12:43 AM
llvm/lib/MC/MCDwarf.cpp
1762–1768

There are three cases here that have been modified, but I don't see three test cases?

ikudrin updated this revision to Diff 268817.Jun 5 2020, 8:31 AM
ikudrin marked 3 inline comments as done.
  • Updated the test for Mach-O to cover the remaining changed code paths.
llvm/lib/MC/MCDwarf.cpp
1623

Hmm, I checked and found similar comments before each line where I added emitting DW_LENGTH_DWARF64. Do you think it is better to remove all such comments or keep all of them?

1762–1768

The case in the middle was for the Mach-O target, so I've updated the corresponding test to cover it. The other two paths are already covered by ELF/gen-dwarf64.s.

jhenderson accepted this revision.Jun 8 2020, 12:30 AM

LGTM, thanks.

This revision is now accepted and ready to land.Jun 8 2020, 12:30 AM
ikudrin updated this revision to Diff 269157.Jun 8 2020, 3:36 AM
  • Updated to reflect changes in parent revisions.
This revision was automatically updated to reflect the committed changes.