folly::symbolizer: add support for DWARF5
Summary: folly::symbolizer now supports both DWARF4 and DWARF5 debug info - http://www.dwarfstd.org/doc/DWARF4.pdf - http://www.dwarfstd.org/doc/DWARF5.pdf Split DWARF (Debug Fission) - with `-fsplit-dwarf-inlining`: folly::symbolizer will use the debug info from the skeleton CU. - without `-fsplit-dwarf-inlining`: folly::symbolizer won't read .dwo sections and can't symbolize it (yet). Major things that changed between the standards that affect folly::symbolizer: - new forms DW_FORM_addrx*, DW_FORM_loclistx, DW_FORM_rnglistx, DW_FORM_strx*, whose values are interpreted against new CU attributes DW_AT_addr_base, DW_AT_loclists_base, DW_AT_rnglists_base, DW_AT_str_offsets_base - The .debug_line line header format is completely re-written and the constraint that the file register must be >= 1 was lifted. - DWARF5 `.debug_loclists` replaces DWARF4 `.debug_ranges` Differential Revision: D25521092 fbshipit-source-id: 5b48e8abed495f379d8b119177913f55ae11bd2b
Showing
Please register or sign in to comment