[llvm-dev] 16-bit bytes for AsmPrinter/DWARF

Eric Christopher via llvm-dev llvm-dev at lists.llvm.org
Mon Jan 23 14:43:13 PST 2017

LLVM itself is pretty unfriendly to non 8-bit bytes - how are you solving
this everywhere else?


On Fri, Jan 20, 2017 at 9:26 AM Jesper Antonsson via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Hi,
> I’m with a team using 16-bit bytes for an out-of-tree target. The
> AsmPrinter framework’s implementation of the DWARF debugging format is not
> very good at distinguishing between target-sized bytes (which is the more
> common use) and 8-bit-bytes. The DWARF standard itself seems not very good
> in this regard, actually. So we have had to hack our way around this. I.e.,
> at some call-sites of EmitSymbolValue(), EmitLabelDifference(),
> EmitIntValue() and EmitLabelReference(), an 8-bit-byte-sized argument has
> had to be converted to target-byte-size (which is extra hacky for odd
> numbers of eight-bit-bytes).
> We’ve been thinking about what a good upstream fix would look like, and
> believe that perhaps converting all Size arguments in these call chains to
> BitSize would be the most practical way. The “cost” would be the
> multiplications necessary at call-sites. Would this be a good suggestion,
> and would anybody like to view and accept our patches for this?
> Thanks,
> Jesper
> _______________________________________________
> 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/20170123/7889cfaa/attachment.html>

More information about the llvm-dev mailing list