This patch verifies the .debug_line:
- verify all addresses in a line table sequence have ascending addresses
- verify that all line table file indexes are valid
Unit tests added for both cases.
Differential D32754
Add line table verification to lldb-dwarfdump --verify. clayborg on May 2 2017, 9:54 AM. Authored by
Details
Diff Detail Event Timeline
Comment Actions Updates:
Comment Actions Marked things as done and commented where things weren't changed.
Comment Actions Can you verify that each CU (that has DW_AT_stmt_list) points to a different place in .debug_line?
Comment Actions That is a good idea. Maybe we emit a warning? I say that because it seems like a good way to save space for type unique style DWARF to share line tables since they only use the line tables for DW_AT_decl_file and DW_AT_call_file. Is it against the DWARF spec to share a line table? Let me know if you think this should be a warning or error.
Comment Actions Lines have changed too much and a previous patch for llvm-dwarfdump --verify changed where verification happens. I will fix all requested items and make a new diff |
FIXME to handle this as a verification failure too? (if stmt_list isn't usable as a section offset)