Vedant Kumar via llvm-dev
2019-Sep-10 19:16 UTC
[llvm-dev] Dwarf - 5 features in clang and llvm
> On Sep 10, 2019, at 6:15 AM, Djordje Todorovic via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > Hi Sourabh, > > Support for call-site related DWARF 5 tag/attributes is implemented very late, in the LLVM middle-end. > Please note that there is also the IR-level flag (DIFlagAllCallsDescribed) that lowers to > the DW_AT_call_all_calls. > > There is also support for call-site-parameter (DW_TAG_call_site_parameter) and the debug entry values > (DW_OP_entry_value) related DWARF 5 symbols, but it is restricted by the CC1 option ‘-femit-debug-entry-values’, > since the LLDB is still missing support for that.Not for too long ;) See https://reviews.llvm.org/D67410 <https://reviews.llvm.org/D67410> & https://reviews.llvm.org/D67376 <https://reviews.llvm.org/D67376> best, vedant> > Best regards, > Djordje > > On 10.9.19. 13:58, Sourabh Singh Tomar via llvm-dev wrote: >> Hello All, >> >> I was working on some dwarf-5 features and debugging optimized code support in clang and llvm. >> >> Noticed that, DW_TAG_call_site is supported in llvm middle-end. but clang is not emitting these. >> >> I was hoping, if someone could provide current status of these features and current status of dwarf-5 features in clang and llvm. >> That will be immensely helpful. >> >> Thanks! >> Sourabh. >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://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/20190910/f7cd6979/attachment.html>
Djordje Todorovic via llvm-dev
2019-Sep-11 06:32 UTC
[llvm-dev] Dwarf - 5 features in clang and llvm
Great to see this! :) Best, Djordje On 10.9.19. 21:16, Vedant Kumar wrote:> > >> On Sep 10, 2019, at 6:15 AM, Djordje Todorovic via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote: >> >> Hi Sourabh, >> >> Support for call-site related DWARF 5 tag/attributes is implemented very late, in the LLVM middle-end. >> Please note that there is also the IR-level flag (DIFlagAllCallsDescribed) that lowers to >> the DW_AT_call_all_calls. >> >> There is also support for call-site-parameter (DW_TAG_call_site_parameter) and the debug entry values >> (DW_OP_entry_value) related DWARF 5 symbols, but it is restricted by the CC1 option ‘-femit-debug-entry-values’, >> since the LLDB is still missing support for that. > > Not for too long ;) > > See https://reviews.llvm.org/D67410 & https://reviews.llvm.org/D67376 > > best, > vedant > >> >> Best regards, >> Djordje >> >> On 10.9.19. 13:58, Sourabh Singh Tomar via llvm-dev wrote: >>> Hello All, >>> >>> I was working on some dwarf-5 features and debugging optimized code support in clang and llvm. >>> >>> Noticed that, DW_TAG_call_site is supported in llvm middle-end. but clang is not emitting these. >>> >>> I was hoping, if someone could provide current status of these features and current status of dwarf-5 features in clang and llvm. >>> That will be immensely helpful. >>> >>> Thanks! >>> Sourabh. >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org> >>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org> >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >
Sourabh Singh Tomar via llvm-dev
2019-Sep-11 11:07 UTC
[llvm-dev] Dwarf - 5 features in clang and llvm
Hello Djordje, Vedant,
Thanks a lot for sharing information.
I have a doubt, please consider the following simple test case-
#include <iostream>
int func(int* ptr){
std::cout << *ptr;
return *ptr + 5;
}
int main(int argc, char** argv){
int a = 4;
int* ptr_a = &a;
int b = func(ptr_a);
return 0;
}
commandline used --
bash$ clang++ -Xclang -femit-debug-entry-values -O2 -ggdb test.cpp
For this case-- these Tags are not emitted
DW_TAG_call_site, DW_TAG_call_site_paramter ..
only DW_AT_GNU_all_call_sites attribute is present.
+ @Djorde DW_TAG_call_site are supported using late MIR approach, are the
new Call Site related development will be supported via MIR. or their will
be a frontend level debug metadata support will be added.
Thanks!
Sourabh.
On Wed, Sep 11, 2019 at 12:02 PM Djordje Todorovic <
djordje.todorovic at rt-rk.com> wrote:
> Great to see this! :)
>
> Best,
> Djordje
>
> On 10.9.19. 21:16, Vedant Kumar wrote:
> >
> >
> >> On Sep 10, 2019, at 6:15 AM, Djordje Todorovic via llvm-dev <
> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>>
wrote:
> >>
> >> Hi Sourabh,
> >>
> >> Support for call-site related DWARF 5 tag/attributes is
implemented
> very late, in the LLVM middle-end.
> >> Please note that there is also the IR-level flag
> (DIFlagAllCallsDescribed) that lowers to
> >> the DW_AT_call_all_calls.
> >>
> >> There is also support for call-site-parameter
> (DW_TAG_call_site_parameter) and the debug entry values
> >> (DW_OP_entry_value) related DWARF 5 symbols, but it is restricted
by
> the CC1 option ‘-femit-debug-entry-values’,
> >> since the LLDB is still missing support for that.
> >
> > Not for too long ;)
> >
> > See https://reviews.llvm.org/D67410 &
https://reviews.llvm.org/D67376
> >
> > best,
> > vedant
> >
> >>
> >> Best regards,
> >> Djordje
> >>
> >> On 10.9.19. 13:58, Sourabh Singh Tomar via llvm-dev wrote:
> >>> Hello All,
> >>>
> >>> I was working on some dwarf-5 features and debugging optimized
code
> support in clang and llvm.
> >>>
> >>> Noticed that, DW_TAG_call_site is supported in llvm
middle-end. but
> clang is not emitting these.
> >>>
> >>> I was hoping, if someone could provide current status of these
> features and current status of dwarf-5 features in clang and llvm.
> >>> That will be immensely helpful.
> >>>
> >>> Thanks!
> >>> Sourabh.
> >>>
> >>> _______________________________________________
> >>> LLVM Developers mailing list
> >>> llvm-dev at lists.llvm.org <mailto:llvm-dev at
lists.llvm.org>
> >>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> >>>
> >> _______________________________________________
> >> LLVM Developers mailing list
> >> llvm-dev at lists.llvm.org <mailto:llvm-dev at
lists.llvm.org>
> >> https://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/20190911/1ea4eeeb/attachment.html>
Seemingly Similar Threads
- Dwarf - 5 features in clang and llvm
- Dwarf - 5 features in clang and llvm
- [RFC] [DebugInfo] Using DW_OP_entry_value within LLVM IR
- [RFC] [DebugInfo] Using DW_OP_entry_value within LLVM IR
- [LLVM][DISubprogram][LL format updation query] Question regarding moving DISubprogram DIFlags to DISPFlag.