----- Original Message -----> From: "David Blaikie" <dblaikie at gmail.com> > To: "sebastien deldon (PGI)" <sebastien.deldon at pgroup.com>, "Eric Christopher" <echristo at gmail.com> > Cc: "llvmdev" <llvmdev at cs.uiuc.edu> > Sent: Monday, January 27, 2014 10:12:27 AM > Subject: Re: [LLVMdev] Debug information for outlined routine > > > > > > > > > On Mon, Jan 27, 2014 at 4:24 AM, sebastien deldon (PGI) < > sebastien.deldon at pgroup.com > wrote: > > > > > > > Hi all, > > > > I would like to know how can I express debug information for an > outlined function using llvm debug metadata. > > I mean I have a function f() and part of its code is outlined in a > new function g() . I would like to generate llvm debug metadata so > that when stepping in g() the debugger step in original sources > lines from f() routine ? > > > Given that LLVM has no current support for outlining I don't think > we've addressed the issue of how to represent that in LLVM's IR > metadata (indeed I don't even know off-hand how DWARF handles this). > > >How do we do this for C++ lambdas and friends? -Hal> > > > > > > > Thanks for your help > > Seb > > > This email message is for the sole use of the intended recipient(s) > and may contain confidential information. Any unauthorized review, > use, disclosure or distribution is prohibited. If you are not the > intended recipient, please contact the sender by reply email and > destroy all copies of the original message. > > > _______________________________________________ > 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 >-- Hal Finkel Assistant Computational Scientist Leadership Computing Facility Argonne National Laboratory
> > > Given that LLVM has no current support for outlining I don't think > > we've addressed the issue of how to represent that in LLVM's IR > > metadata (indeed I don't even know off-hand how DWARF handles this). > > > > > > > > How do we do this for C++ lambdas and friends? >Given that lambdas are separate functions (standard "operator()" member functions of some unnameable type (but we have a name for the purposes of mangling and debugging ("<lambda:foo.cpp:32>" or something like that, if I recall correctly))) and the lines of that function just happen to be nested within the lines of some other function (but debug info doesn't really care that the outer function has a non-contiguous range of lines anymore than if you had a bunch of blank lines in your function) So we can't really draw analogy from there to help with outlining, I don't think. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140127/1fe7b52e/attachment.html>
sebastien deldon (PGI)
2014-Jan-27 16:56 UTC
[LLVMdev] Debug information for outlined routine
Yes I agree with David, I don't think we can draw analogy between lambda and outlined routines. Seb From: David Blaikie [mailto:dblaikie at gmail.com] Sent: Monday, January 27, 2014 5:51 PM To: Hal Finkel Cc: llvmdev; sebastien deldon (PGI); Eric Christopher Subject: Re: [LLVMdev] Debug information for outlined routine> Given that LLVM has no current support for outlining I don't think > we've addressed the issue of how to represent that in LLVM's IR > metadata (indeed I don't even know off-hand how DWARF handles this). > > >How do we do this for C++ lambdas and friends? Given that lambdas are separate functions (standard "operator()" member functions of some unnameable type (but we have a name for the purposes of mangling and debugging ("<lambda:foo.cpp:32>" or something like that, if I recall correctly))) and the lines of that function just happen to be nested within the lines of some other function (but debug info doesn't really care that the outer function has a non-contiguous range of lines anymore than if you had a bunch of blank lines in your function) So we can't really draw analogy from there to help with outlining, I don't think. ----------------------------------------------------------------------------------- This email message is for the sole use of the intended recipient(s) and may contain confidential information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. ----------------------------------------------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140127/1ad143e6/attachment.html>