[LLVMdev] [RFC] First-class debug info IR: MDLocation (redux)

Robinson, Paul Paul_Robinson at playstation.sony.com
Tue Jan 13 11:13:15 PST 2015


> I suspect it would actually be *better* if I got all this in before
> the branch, since it'll make cherry-picking testcases easier.

Excellent point, go for it.
--paulr

> 
> However, these patches themselves (and I suspect a few more prep
> commits) don't actually move `MDLocation` into place -- it's not
> until then that all the testcase updates have to happen.  I'm not
> convinced that (monster) commit will land by tomorrow :(.
> 
> > On 2015-Jan-13, at 10:34, Robinson, Paul
> <Paul_Robinson at playstation.sony.com> wrote:
> >
> > Okay, we can deal with it, just seemed like a bit much right around
> release time.
> > --paulr
> >
> > From: Eric Christopher [mailto:echristo at gmail.com]
> > Sent: Tuesday, January 13, 2015 10:15 AM
> > To: Robinson, Paul; Duncan P. N. Exon Smith; LLVM Developers Mailing
> List
> > Subject: Re: [LLVMdev] [RFC] First-class debug info IR: MDLocation
> (redux)
> >
> > Hi Paul,
> >
> > I'm not sure I see any reason to wait until after 3.6. More changes are
> incoming and it's better to get them over with sooner rather than spread
> out the pain.
> >
> > Thanks!
> >
> > -eric
> >
> > On Mon Jan 12 2015 at 9:52:48 PM Robinson, Paul
> <Paul_Robinson at playstation.sony.com> wrote:
> > Would you mind terribly waiting a week, until after 3.6 is forked?
> > We're barely caught up with the last big metadata syntax change.
> > Thanks,
> > --paulr
> >
> > From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu]
> On Behalf Of Duncan P. N. Exon Smith
> > Sent: Monday, January 12, 2015 8:30 PM
> > To: LLVM Developers Mailing List
> > Subject: [LLVMdev] [RFC] First-class debug info IR: MDLocation (redux)
> >
> > After splitting `Metadata` apart from `Value`, I'm finally back to the
> > first step [1] of representing debug info more directly in IR [2]:
> > `MDLocation`.
> >
> > [1]: http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-October/078173.html
> >         "First-class debug info IR: MDLocation"
> > [2]: http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-October/077715.html
> >         "Less memory and greater maintainability for debug info IR"
> >
> > I've attached two patches which are both essentially commit-ready (just
> > missing LangRef update, AFAIK), although they just add the class and
> > assembly/bitcode support.  Once it's in tree, I'll move it into place
> > underneath `DebugLoc` and `DILocation` and update the world of
> > testcases, publish a script, and so forth.
> >
> > Assembly syntax
> > ===============
> >
> > I've changed the assembly syntax a little since my previous proposal
> > [1], but I kept the fundamentals the same:
> >
> >   - Fields use key/value pairs and can be specified in any order.
> >   - No types (unless you're referencing a `Value`).
> >   - Some fields are required (in this case, 'scope:').
> >   - Unspecified fields get sane default values.
> >
> > Old syntax:
> >
> >     !6 = metadata MDLocation(line: 43, column: 7, scope: !4)
> >
> > Now it's:
> >
> >     !6 = !MDLocation(line: 43, column: 7, scope: !4)
> >
> > Here's why:
> >
> >   - Dropped 'metadata' since `Metadata` is now typeless \O/.
> >
> >   - Added a '!' since it makes the parser simpler (no changes to the
> >     lexer, since we can unambiguously reuse the `MetadataVar` token),
> >     and follows the rule that "All metadata are identified in syntax by
> >     a[n] exclamation point" [3].  (If people are opposed to the extra
> >     '!' I can update this sentence instead, but it seems like a handy
> >     mnemonic to maintain.)
> >
> > [3]: http://llvm.org/docs/LangRef.html#metadata
> >
> > Where this is heading
> > =====================
> >
> > See my previous post [1] ;).
> >
> > _______________________________________________
> > 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





More information about the llvm-dev mailing list