[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