[Lldb-commits] [PATCH] D65932: [lldb] Fix dynamic_cast by not treating type info pointers as variables.

Raphael Isemann via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Fri Aug 9 03:38:53 PDT 2019


teemperor marked 2 inline comments as done.
teemperor added a comment.

In D65932#1621309 <https://reviews.llvm.org/D65932#1621309>, @friss wrote:

> I only have distant notions of what this code does, so this question might be completely off: Is this the code that decides whether we need to rewrite the accesses to a variable to go through the __lldb_args structure? If yes, I was surprised to learn recently that we rewrite accesses to global variables at all. I understand why we do it for locals, but why not access globals through standard codegen? If the issue your addressing is the result of this transformation, do you have any idea why we do the transformation in the first place?


That seems to be the case, but I am not aware why (as I never really touched the __lldb_args struct logic).



================
Comment at: lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp:1388-1391
       if (!global_variable->hasExternalLinkage())
         return true;
       else
         return true;
----------------
friss wrote:
> Unrelated to your patch, but this `if` block is pretty interesting. 
Yeah, just removed that :)


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

https://reviews.llvm.org/D65932





More information about the lldb-commits mailing list