On Fri, Jul 9, 2021 at 9:52 AM Erick Ochoa via Gcc <gcc@gcc.gnu.org> wrote: > > Hi, I noticed this is also happening also for local variables. Again, > storing tree declarations on a summary during LGEN and then at WPA > time reading from those summaries. I can print the declaration, but > when I try to look for its node in the symtab I get NULL as the return > value. > > Any help is appreciated. Thanks!
I'm not too familiar with it but I think you're supposed to stream encoded symtab references during LGEN/WPA, the decls are subject to symtab merging and I'm not quite sure that happens when you read your summaries. Note locals do not have carpool nodes. Richard. > On Wed, 7 Jul 2021 at 11:27, Erick Ochoa <eoc...@gcc.gnu.org> wrote: > > > > Hi, > > > > I am saving some tree declarations during LGEN that I will be later > > analyzing at WPA time. I am able to read the decl from my summaries > > and print it at WPA time. It corresponds to a global variable. > > However, whenever I use symtab_node::get (decl) during WPA time I keep > > getting NULL. > > > > Does anyone know why that might be the case? Is it possible that other > > optimizations are rewriting global variables during LGEN (or prior > > WPA)? The variable I am looking at is a static const char typeinfo > > name for a class in the program I am analyzing. I don't think this is > > an issue since other type info names have an associated symtab_node. > > > > Thanks!