[Lldb-commits] [PATCH] D83450: Delegate UpdateChildrenPointerType to the Root ValueObject

Jim Ingham via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Fri Jul 10 10:23:35 PDT 2020


jingham added a comment.

In D83450#2143631 <https://reviews.llvm.org/D83450#2143631>, @labath wrote:

> Right. It does bug me a little that this has no test, but I don't think it's the worst that could happen. And you're the one who's going to have to debug this all over again if the next value object change breaks swift again.


Thanks!

> 
> 
> In D83450#2142114 <https://reviews.llvm.org/D83450#2142114>, @jingham wrote:
> 
>> I'm planning on continuing to dig into this stuff, and hopefully come up with something more coherent.  But your fix is needed for ValueObjectVariables to avoid crashes when debugging optimized code, and so I need a short-term way to get it to work but not cause problems for Synthetic values.  This fix is mostly correct.  TTTT, I think if you were being more rigorous about this direction of fix, you would have UpdateChildrenAddressType walk back up the parent hierarchy asking at each level whether the parent knows where its pointer children should be found.  But that's adding complexity that doesn't solve any actual problem, and we'd probably end up ripping it out again in a better solution.
> 
> 
> Yes, I've been wondering if something like that wasn't needed, but I wasn't sure how all the parent-child relationships work...

The reason for not doing it that way immediately is that I see no reason why the entity creating a subordinate ValueObject can't know where the ValueObject it is creating will find its data and the data for anything that reaches outside the immediate Value, when it creates it.  So adding more complexity to UpdateChildrenAddressType just makes the whole system more Ptolemaic, and it's got way too many epicycles as it stands.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D83450





More information about the lldb-commits mailing list