[llvm-dev] [RFC] Generate Debug Information for Labels in Function

Hsiangkai Wang via llvm-dev llvm-dev at lists.llvm.org
Mon May 28 22:37:00 PDT 2018


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


More information about the llvm-dev mailing list