https://sourceware.org/bugzilla/show_bug.cgi?id=23310
Bug ID: 23310 Summary: Support DWARF-5 line table features in assembler Product: binutils Version: unspecified Status: UNCONFIRMED Severity: normal Priority: P2 Component: gas Assignee: unassigned at sourceware dot org Reporter: paul_robinson at playstation dot sony.com Target Milestone: --- DWARF-5 has two line-table features that are probably best handled by extensions to the .file directive in the assembler. (a) provide an MD5 checksum of the source file, as a more reliable way to verify whether the source file has changed since compilation. (b) explicitly provide the root source file as "file #0" in the file table, making the line table fully independent of the .debug_info section. The existing .file directive syntax is: .file filenumber [ "directory" ] "path" To support MD5 checksums computed by the compiler, I propose making the syntax be .file filenumber [ "directory" ] "path" [ md5 checksum ] where 'md5' is a keyword and checksum is the 128-bit integer checksum, which can be expressed in the same ways that the .octa directive allows. If all .file directives provide an MD5 checksum, then the line-table header will include the provided values using DW_LNCT_MD5. If not all .file directives provide the MD5 clause, then DW_LNCT_MD5 should be omitted (as DWARF does not provide a way to give MD5 values for some files but not others in the same compilation unit). To support the root file, I propose that the filenumber is allowed to have the value 0 (currently must be >= 1). If no ".file 0" appears, then replicate the file #1 entry as file #0. This permits the same assembler source to be used to generate either DWARF-4 or DWARF-5 without complaint. I have implemented these features in the LLVM assembler. In response to a question on the binutils list, no I am not offering to implement the features in the GNU assembler. But it seems like a good idea for both assemblers to support the same syntax. -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils