[llvm-dev] [DWARFv5] Assembler syntax for new line-table features

David Blaikie via llvm-dev llvm-dev at lists.llvm.org
Thu Mar 29 07:59:13 PDT 2018


+Eric Christopher <echristo at gmail.com>  +Adrian Prantl
<aprantl at apple.com> +Jonas
Devlieghere <jdevlieghere at apple.com> (seems Jonas is doing a bunch of debug
info work - guessing he's working with you, Adrian?)

I'm guessing Eric's the most likely to have contacts over in GCC land to
maybe bridge the gap when talking about assembly syntax across the two.
Eric - any ideas how best to negotiate this pseudo-standard? (there's
another feature or two I'd like to propose too - at least to standardize
what the syntax /should/ be, even if gas doesn't support it immediately)

Paul - perhaps a brief description of the proposed syntax would be helpful
to get the ball rolling (even if it's just discussing it amongst ourselves
before it ends up in a cross-project discussion).

- Dave

On Wed, Mar 28, 2018 at 11:16 AM via llvm-dev <llvm-dev at lists.llvm.org>
wrote:

> TL;DR: If I'm trying to define new assembler directive syntax to
> support DWARF v5, it seems like a good idea for all the various
> assemblers out there in the world to support the same syntax.
> How would I go about negotiating that syntax with other assembler
> providers?  Is GNU as the only really relevant one?
>
> Long version:
>
> DWARF v5 introduces a couple of new features in the .debug_line section
> that require assembler syntax, because the information relates to the
> files read by the compiler and there's no other way to inform the
> assembler.
>
> The two bits of information are:
> (1) the MD5 checksum of each source file; and
> (2) the primary source filename.
>
> The primary source filename is given in the .debug_info section. In
> DWARF v5 this is repeated in the .debug_line section; prior to DWARF v5
> it is not.  In both cases, file number 0 refers to this file.  Because
> the compiler emits the .debug_info section directly, the assembler is
> not aware of the name of the primary source file without some new syntax
> to provide that information.  And, it needs the MD5 checksum as well, so
> relying on the old-format '.file' directive is insufficient.
>
> I've added support in LLVM for both of these features, but somewhat
> arbitrarily defined assembler syntax to support them.  Obviously if
> implementers of other assemblers also want to support DWARF v5, the same
> information will have to be represented with assembler syntax somehow,
> and of course it would be best if all assemblers supporting DWARF v5
> used the same syntax.  But I don't know how to go about doing that.
>
> Any advice would be welcome.
> Thanks,
> --paulr
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180329/e1a2e43d/attachment.html>


More information about the llvm-dev mailing list