[llvm-dev] [DebugInfo] DIBuilder missing interface to generate DWARF info for packed_decimal basic type.
Chirag Patel via llvm-dev
llvm-dev at lists.llvm.org
Wed Aug 29 19:38:49 PDT 2018
Hello Mattias,
Thanks for the info.
I am only looking for related dwarf generation part in llvm using the general DWARF spec. Currently just measuring the work needed to get there.
Regards,
Chirag Patel.
Chirag Patel| Software Engineer
RAINCODE Mainframe to .NET
Tel : +91 080 41159811 | Mob : +91 90493 36744
www.raincodelabs.com
-----Original Message-----
From: Mattias Eriksson V <mattias.v.eriksson at ericsson.com>
Sent: 28 August 2018 20:54
To: Chirag Patel <Chirag at raincode.com>; paul.robinson at sony.com
Cc: llvm-dev at lists.llvm.org; raincode-plidevel at lzlabs.com
Subject: Re: [llvm-dev] [DebugInfo] DIBuilder missing interface to generate DWARF info for packed_decimal basic type.
On 08/23/2018 06:59 AM, Chirag Patel via llvm-dev wrote:
> Hello Paul,
>
> Thanks for the reply.
>
> Yes, I am only looking for dwarf support at the moment and planning to
> support both PLI/COBOL decimal types. Also thanks for the suggestion,
> you are right as it is going to be rare cases, so it will be better to
> implement a separate subclass to avoid memory overhead for others.
>
>>> (Somebody is actively working on scaled binary operations, although
>>>they have not yet gotten to the point of wanting to support debug
>>>info.)
>
> If possible, can you kindly get me in touch with them so I would not
> spend time on which is already been done?
Hi!
In our out-of-tree compiler we have added custom types for the fixed-point types that we support. (We also use an out-of-tree gdb).
So unfortunately this means that we have not done any work on getting any of the general Dwarf to work for these types.
--
Mattias
>
> Regards,
>
> *Chirag Patel*| Software Engineer*
> RAINCODE* Mainframe to .NET
>
> *Tel* : +91 080 41159811| *Mob* : +91 90493 36744 www.raincodelabs.com
> <http://www.raincodelabs.com/>__
>
> *From:*paul.robinson at sony.com <paul.robinson at sony.com>
> *Sent:* 22 August 2018 23:03
> *To:* Chirag Patel <Chirag at raincode.com>
> *Cc:* llvm-dev at lists.llvm.org
> *Subject:* RE: [llvm-dev] [DebugInfo] DIBuilder missing interface to
> generate DWARF info for packed_decimal basic type.
>
> Hi Chirag,
>
> The DW_ATE_packed_decimal (etc) constants exist because they are
> merely additional values in an enumeration, and we just added all the
> values defined in DWARF to the enumeration . LLVM does not actually
> support any of the decimal types, or scaled binary types. (Somebody
> is actively working on scaled binary operations, although they have
> not yet gotten to the point of wanting to support debug info.)
>
> Without spending much time thinking about it, my inclination would be
> to add a new method to DIBuilder for the decimal and scaled binary
> types, because the additional parameters are meaningless in any other context.
> You might also consider whether to add a separate subclass of
> DIBasicType to handling scaling and decimal attributes. The decimal
> and scaled types are quite unusual, and we would not want to impose
> additional memory cost on all basic types to support these relatively
> rare cases.
>
> Are you planning to support all the decimal types? I know the OpenVMS
> people will also want them, for COBOL and other languages, so there's
> benefit in having proper support in LLVM. But even if you are
> interested only in packed decimal, the infrastructure ought to be
> designed to handle all cases.
>
> Thanks,
>
> --paulr
>
> (who helped design the DWARF support for COBOL types a long time ago)
>
> *From:*llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] *On Behalf Of
> *Chirag Patel via llvm-dev
> *Sent:* Wednesday, August 22, 2018 2:10 AM
> *To:* llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
> *Subject:* [llvm-dev] [DebugInfo] DIBuilder missing interface to
> generate DWARF info for packed_decimal basic type.
>
> Adding tags on subject line
>
> *From:*Chirag Patel
> *Sent:* 22 August 2018 11:20
> *To:* llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
> *Subject:* DIBuilder missing interface to generate DWARF info for
> packed_decimal basic type.
>
> Hello,
>
> I am working on a llvm based compiler frontend in which, I am using
> the packed_decimal type encoding.
>
> During using the llvm DIBuilder, I found out that the interface to
> create BasicType with packed_decimal encoding(DW_ATE_packed_decimal),
> is missing all the related encoding stuff,
>
> Like
>
> (Missing)
>
> DW_AT_picture_string - should be MDString Node - not
> decided yet.
>
> DW_AT_decimal_sign - May be in DIflags with mask (5
> distinct inputs), like FlagDSOverPunch, etc
>
> DW_AT_digit_count - unsigned integer, like unsigned
> DigitCount
>
> DW_AT_decimal_scale - integer, like int DecimalScale
>
> I am looking to add this info in DIBasicType class
> (DebugInfoMetadata.h) and would appreciate advice on above location.
>
> Regrads,
>
> **
>
> *Chirag Patel*| Software Engineer*
> RAINCODE* Mainframe to .NET
>
> *Tel* : +91 080 41159811| *Mob* : +91 90493 36744 www.raincodelabs.com
> <http://www.raincodelabs.com/>__
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
More information about the llvm-dev
mailing list