This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Static sem_item_optimizer instance in ipa-icf pass


On 08/16/2018 02:54 PM, Florian Rommel wrote:
> Hi Martin,
> 
> 
>> That can definitely done better, if I see correctly only reference from sem_item, sem_function and sem_variable
>> is in sem_item::add_type. That can be removed.
> 
> Yes, only sem_item::add_type uses this variable.  Do you think the whole static optimizer variable should be removed?
> 
> 
>> Sure, that's strange. But I can't find the reference in current trunk.
>>
>> Can you please update to trunk and check the remaining problematic references?
> 
> Okay, I got the current trunk and I believe that this is still existent.
> The problem is that the function `sem_item_optimizer::parse_funcs_and_vars` calls `sem_function::parse` which calls `sem_function::init` which calls `sem_function::hash_stmt` which calls `sem_item::add_type` (a static member function) which finally uses the static `optimizer` variable.
> In short: `sem_item_optimizer::parse_funcs_and_vars` finally calls `sem_item::add_type`
> I retraced this in the source code and with gdb – this is not the simplest code so I hope I got everything right.
> However, this is not a separate issue from the one above.

Hello.

Good, got it, thanks for clarification. I'm going to prepare a patch this week.

Martin

> 
> 
> Regards
> 
> Flo
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]