labath added reviewers: clayborg, shafik.
labath added a comment.

In D110571#3027283 <https://reviews.llvm.org/D110571#3027283>, @jarin wrote:

> In D110571#3027173 <https://reviews.llvm.org/D110571#3027173>, @labath wrote:
>
>> Judging by your description, I take it you parse these variables only once, 
>> regardless of how many functions they are inlined in. Could we fix that my 
>> creating a fresh variable object for each inlined instance? Then it could 
>> maybe be correctly made to point to the actual block and function it is 
>> inlined into(?)
>
> Yes, they are parsed only once. This is because there is a DIE->Variable map 
> (see SymbolFileDWARF::GetDIEToVariable) that makes sure no DIE gets parsed 
> twice. Are you suggesting to index the map with a pair 
> <concrete-function-die, variable-die>? That would indeed create healthier 
> structure (even though I could not spot any problems even with my current 
> somewhat flawed approach).

I am not really suggesting anything (at least not yet). I'm just trying to map 
out the problem space. Having separate variables could be nice, but it could 
also be a needless complication. I've added some people to see what they make 
of this.

>> After that, we could think about adding a c++ test case. Although tests with 
>> optimized code are tricky, it is often possible (with judicious use of 
>> noinline, always_inline and optnone attributes) to constrain the optimizer 
>> in a way that it has no choice but to do exactly what we want.
>
> I have actually use the attributes when experimenting with the patch - if you 
> think this is useful, I can certainly provide those tests.

If you have something ready, feel free to include it and we can see what to do 
then. If you don't have them, maybe wait and see how the other approach pans 
out first...


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D110571/new/

https://reviews.llvm.org/D110571

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to