Fine by me :) 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090107/ea4cd9bd/attachment.html>
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-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090107/d0fcca77/attachment.html>
Sure. My own compiler doesn't even use it at the moment (I had to rewrite the code generator, and the new version doesn't yet support debug info.) 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090107/79efab57/attachment.html>
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. 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.) -- 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090107/f072d0ec/attachment.html>