[LLVMdev] Internal API Changes
Duncan Sands
baldrick at free.fr
Mon Sep 5 02:23:21 PDT 2011
Hi Talin, I mentioned it because the error message you are getting is
identical (IIRC) to the error message being produced by llvm-gcc before
this patch went in.
Ciao, Duncan.
On 05/09/11 11:21, Talin wrote:
> On Sun, Sep 4, 2011 at 11:38 PM, Duncan Sands <baldrick at free.fr
> <mailto:baldrick at free.fr>> wrote:
>
> Hi Talin,
>
> > So, I just sync'd to LLVM tip and added the call to
> DIBuilder::finalize(). But
> > even with that change I am getting an error when I try to run llc:
> >
> > Assertion failed: (TheCU && "Unable to find compile unit!"), function
> > endFunction, file
> > /Users/talin/Projects/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp, line 1306.
> >
> > And looking at the .bc dissassembly, I see there are indeed compile unit
> > MDNodes, although at this level I can't tell if they are hooked up correctly.
>
> you might want to take a look at this llvm-gcc commit:
>
> r137753 | dpatel | 2011-08-16 23:03:26 +0200 (Tue, 16 Aug 2011) | 3 lines
>
> DIBuilder is moving forward to reduce in memory use by MDNodes. However,
> DIFactory does not emit debug info in updated form.
> Use LLVMDebugVersion10 directly here so that debug info nodes produced by
> DIFactory do not claim to adhere newer structure.
>
> I'm not sure I understand. I'm using DIBuilder, not DIFactory, since I thought
> DIFactory was deprecated.
>
> Ciao, Duncan.
>
> >
> > On Wed, Aug 31, 2011 at 9:07 AM, Devang Patel <dpatel at apple.com
> <mailto:dpatel at apple.com>
> > <mailto:dpatel at apple.com <mailto:dpatel at apple.com>>> wrote:
> >
> >
> > On Aug 22, 2011, at 6:48 AM, Irina Lipov wrote:
> >
> >> Hi,
> >> I saw your update regarding "/The |DIBuilder| interface used by
> front ends
> >> to encode debugging information in the LLVM IR now expects clients
> to use
> >> |DIBuilder::finalize()| at the end of translation unit to complete
> >> debugging information encoding"/
> >> Does it mean that in the new version you defer emission of some debug
> >> info until the translation is finished and this is a reason to use
> >> DIBuilder::finalize?
> >
> > Before this change, each type, subprogram and global variable information
> > used to refer compile unit directly. Now, the compile unit keeps track of
> > all these info directly. The compile unit MDNode is updated in the
> > ::finalize() with list of types, subprograms etc..
> > -
> > Devang
> >
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu <mailto:LLVMdev at cs.uiuc.edu>
> <mailto:LLVMdev at cs.uiuc.edu <mailto: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 <mailto: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 <mailto:LLVMdev at cs.uiuc.edu> http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
>
>
> --
> -- Talin
More information about the llvm-dev
mailing list