This is an archive of the discontinued LLVM Phabricator instance.

[BOLT][DWARF] Handle range with same low_pc/high_pc
AbandonedPublic

Authored by ayermolo on Jun 15 2022, 12:31 PM.

Details

Summary

When we have DW_AT_high_pc with value 0 we convert it to DW_AT_ranges where
start and end are the same. This presents an issue in lldb, and is against DWARF
spec. Changed so that we ponit to end of list in ranges section.
The corresponding LLDB change: https://reviews.llvm.org/D127889

Diff Detail

Event Timeline

ayermolo created this revision.Jun 15 2022, 12:31 PM
Herald added a reviewer: Amir. · View Herald Transcript
Herald added a reviewer: maksfb. · View Herald Transcript
Herald added a project: Restricted Project. · View Herald Transcript
Herald added subscribers: hoy, modimo, wenlei. · View Herald Transcript
ayermolo requested review of this revision.Jun 15 2022, 12:31 PM
Herald added a project: Restricted Project. · View Herald Transcript
ayermolo updated this revision to Diff 437348.Jun 15 2022, 2:41 PM

removed old code

ayermolo updated this revision to Diff 437349.Jun 15 2022, 2:44 PM

oops clobbered the diff

ayermolo updated this revision to Diff 437375.Jun 15 2022, 3:38 PM

fixed test

ayermolo updated this revision to Diff 437383.Jun 15 2022, 3:53 PM

updated test

maksfb accepted this revision.Jun 21 2022, 6:56 PM

LGTM. For the context, could you add DWARF spec quote to the summary similar to D126835? Thanks for the fix.

This revision is now accepted and ready to land.Jun 21 2022, 6:56 PM
ayermolo abandoned this revision.Aug 23 2022, 10:49 AM
bolt/lib/Rewrite/RewriteInstance.cpp