[LLVMdev] LLVM DebugInfoBuilder
Devang Patel
dpatel at apple.com
Wed Jan 7 15:48:51 PST 2009
DebugInfo.h is very light weight interface that allows one to
manipulate llvm values that holds debugging information directly.
On Jan 7, 2009, at 3:22 PM, Talin wrote:
> Looking at DebugInfo.h, there are a couple of minor features that
> DebugInfoBuilder that I would miss:
>
> 1) The ability to pass in an LLVM type and have it figure out the
> size, alignment, etc. without having to explicitly pass those values
> in as parameters to the builder call.
This can be added. But note, LLVM type lose lots info that can be
expressed in a debugging information format like DWARF.
>
> 2) The ability for the size & alignment to be specified as Constants
> rather than as int64 so that the "gep trick" can be used to generate
> target-agnostic debug info. (I don't know if there are other aspects
> of the debug info which would prevent it from being target-agnostic.)
-
Devang
>
> -- Talin
>
> On Wed, Jan 7, 2009 at 1:53 PM, Chris Lattner <clattner at apple.com>
> wrote:
>
> On Jan 7, 2009, at 1:48 PM, Talin wrote:
>
>> Fine by me :)
>
> Is it ok to remove DebugInfoBuilder now? I don't think that
> anything in the tree is using it, what do you think Talin?
>
> -Chris
>
>>
>>
>> On Wed, Jan 7, 2009 at 1:35 PM, Chris Lattner <clattner at apple.com>
>> wrote:
>>
>> On Jan 7, 2009, at 3:22 AM, Patrick Boettcher wrote:
>>
>> > Hi list,
>> > hi Talin,
>> >
>> > I'm working on a frontend to generate IR using the IRBuilder from
>> > LLVM.
>> >
>> > Now I want to add source-level-debuginfo and for that I would like
>> > to use the
>> > DebugInfoBuilder as it is taking some of the burderns.
>> Unfortunately
>> > it does
>> > not take all of them, yet.
>>
>> Instead of DebugInfoBuilder, I'd strongly recommend taking a look at
>> include/llvm/Analysis/DebugInfo.h. This is the interface that llvm-
>> gcc and clang both use to produce debug info. If it's ok with Talin,
>> I'd like to eventually remove DebugInfoBuilder. Analysis/DebugInfo.h
>> provides a nice and efficient API for both creating and reading debug
>> info, and abstracts the clients from the actual form (e.g. serialized
>> into GlobalVariables) that the debug info takes.
>>
>> -Chris
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>>
>>
>> --
>> -- Talin
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
>
>
> --
> -- Talin
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-
Devang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090107/72bbec42/attachment.html>
More information about the llvm-dev
mailing list