Adrian Prantl via llvm-dev
2018-Apr-02 15:37 UTC
[llvm-dev] [RFC] Generate Debug Information for Labels in Function
> On Apr 1, 2018, at 9:12 AM, Hsiangkai Wang <hsiangkai at gmail.com> wrote: > > Hi all, > > I am sorry that I didn’t carefully think about how to handle labels in > inlined function.There is no need to apologize! Thank you very much for engaging in the discussion and for contributing you patches.> > Today, I did some simple experiments and found that some basic block > may be removed in CFGSimplifyPass and the attached metadata will be > eliminated. So, if the optimization is turned on, label metadata will > disappear. However, intrinsic will keep existing in the function if we > handle it correctly. So, if we take care about optimization and > inlining, to keep label metadata through intrinsic could be right for > free. > > I learned a lot from discussions. Thanks for your comments and > suggestions. If there is no other concern, I will keep my original > implementation and send patches to Phabricator again.That sounds like a good plan. -- adrian
Son Tuan VU via llvm-dev
2018-May-28 09:28 UTC
[llvm-dev] [RFC] Generate Debug Information for Labels in Function
Hello all, I am interested in this work, and have tested it a bit so far. In the latest revision, it seems to me that we do not have support in Clang (so it doesn't generate llvm.dbg.label intrinsic) and in Dwarf debug emission (so the backend doesn't generate the DW_TAG_label DIE from the DBG_LABEL Machine Instruction) yet. I attempted to implement these features, do you want me to submit the patches? Son Tuan Vu On Mon, Apr 2, 2018 at 5:37 PM, Adrian Prantl via llvm-dev < llvm-dev at lists.llvm.org> wrote:> > > > On Apr 1, 2018, at 9:12 AM, Hsiangkai Wang <hsiangkai at gmail.com> wrote: > > > > Hi all, > > > > I am sorry that I didn’t carefully think about how to handle labels in > > inlined function. > > There is no need to apologize! Thank you very much for engaging in the > discussion and for contributing you patches. > > > > Today, I did some simple experiments and found that some basic block > > may be removed in CFGSimplifyPass and the attached metadata will be > > eliminated. So, if the optimization is turned on, label metadata will > > disappear. However, intrinsic will keep existing in the function if we > > handle it correctly. So, if we take care about optimization and > > inlining, to keep label metadata through intrinsic could be right for > > free. > > > > I learned a lot from discussions. Thanks for your comments and > > suggestions. If there is no other concern, I will keep my original > > implementation and send patches to Phabricator again. > > That sounds like a good plan. > > -- adrian > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180528/e22b8649/attachment.html>
Hsiangkai Wang via llvm-dev
2018-May-29 05:37 UTC
[llvm-dev] [RFC] Generate Debug Information for Labels in Function
On Mon, May 28, 2018 at 5:28 PM, Son Tuan VU <sontuan.vu119 at gmail.com> wrote:> Hello all, > > I am interested in this work, and have tested it a bit so far. In the latest > revision, it seems to me that we do not have support in Clang (so it doesn't > generate llvm.dbg.label intrinsic) and in Dwarf debug emission (so the > backend doesn't generate the DW_TAG_label DIE from the DBG_LABEL Machine > Instruction) yet. I attempted to implement these features, do you want me to > submit the patches? > > > > Son Tuan Vu > > On Mon, Apr 2, 2018 at 5:37 PM, Adrian Prantl via llvm-dev > <llvm-dev at lists.llvm.org> wrote: >> >> >> >> > On Apr 1, 2018, at 9:12 AM, Hsiangkai Wang <hsiangkai at gmail.com> wrote: >> > >> > Hi all, >> > >> > I am sorry that I didn’t carefully think about how to handle labels in >> > inlined function. >> >> There is no need to apologize! Thank you very much for engaging in the >> discussion and for contributing you patches. >> > >> > Today, I did some simple experiments and found that some basic block >> > may be removed in CFGSimplifyPass and the attached metadata will be >> > eliminated. So, if the optimization is turned on, label metadata will >> > disappear. However, intrinsic will keep existing in the function if we >> > handle it correctly. So, if we take care about optimization and >> > inlining, to keep label metadata through intrinsic could be right for >> > free. >> > >> > I learned a lot from discussions. Thanks for your comments and >> > suggestions. If there is no other concern, I will keep my original >> > implementation and send patches to Phabricator again. >> >> That sounds like a good plan. >> >> -- adrian >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > >Hi Son Tuan, About Clang part, I have submitted in https://reviews.llvm.org/D45045. However, it has been reverted due to broken Chromium build. I have submitted a patch to fix the problem in https://reviews.llvm.org/D46738. About DWARF debug emission, I have submitted in https://reviews.llvm.org/D45556 and the patch is under reviewing. Welcome to give suggestions in these patches. Thanks. Kai
Apparently Analagous Threads
- [RFC] Generate Debug Information for Labels in Function
- [RFC] Generate Debug Information for Labels in Function
- [RFC] Generate Debug Information for Labels in Function
- [RFC] Generate Debug Information for Labels in Function
- [RFC] Generate Debug Information for Labels in Function