[PATCH] D146595: [clang] Add "debug_trampoline" attribute
Aaron Ballman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 24 12:29:57 PDT 2023
aaron.ballman added a comment.
In D146595#4284340 <https://reviews.llvm.org/D146595#4284340>, @dblaikie wrote:
> In D146595#4284268 <https://reviews.llvm.org/D146595#4284268>, @aaron.ballman wrote:
>
>> In D146595#4284220 <https://reviews.llvm.org/D146595#4284220>, @dblaikie wrote:
>>
>>> In D146595#4281710 <https://reviews.llvm.org/D146595#4281710>, @aprantl wrote:
>>>
>>>> Now if we are going to say this explicitly DWARF only feature, that could be an argument to stick with the `trampoline` name. But I'd rather say this is a general feature that — at this point in time — is only implement on DWARF targets.
>>>
>>> Yeah, I'd be inclined to think of this as not a DWARF-specific feature, but one only implemented in DWARF at the moment. If CV adds some way to inject names into the database of uninteresting symbols, they could use this too.
>>
>> To clarify, my concerns with non-DWARF aren't of the "this needs to work with every debug format before we should accept it" variety. It's more of the "if other debug formats support this concept or conceivably would support this concept in the near future, would we need to materially change the attribute from what's proposed here?" kind. Basically, I want to try to avoid a situation where we have to introduce a second attribute for this same feature, or this attribute needs to be a decl attribute for DWARF and a type attribute for others, needs arguments for some reason, that sort of thing. I want to avoid having a set of attributes for DWARF and a different set of attribute code CodeView, basically.
>
> Fair - we DWARF folks don't probably have enough context to answer that authoritatively. I'm not sure if the CV folks do either (in the sense of knowing all the corners of a less public format is harder - so the usual challenges of proving non-existence come up more), but @akhuang - do you happen to know anything about CV's ability to encode places not to stop when stepping through code?
If we can't find this information out in the next few days, then I'd say it's reasonable to move forward without worrying about the behavior of other debug formats. If we run into a problem in the future, we can deprecate the attribute and replace it with something sufficiently general then.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D146595/new/
https://reviews.llvm.org/D146595
More information about the cfe-commits
mailing list