This is the mail archive of the gcc-patches@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: [PATCH] Fix part of pr25505


Daniel Berlin wrote:
>>
>> if (VAR_DECL)
>>   check decl and subdecls for call-clobber
>> else
>>   { existing logic here }
>>
>> How is that going to give strictly worse results?
> 
> No, I mean that the the SSA_NAME logic that lives in "existing logic
> here" will give strictly worse results than it needs to,

Ahh - got it.  So you're suggesting that I fix the previous logic, too.
 I was a bit hesitant because I wasn't clear on what the LHS could be
that wasn't a "simple decl", and so I didn't feel confident rewriting
this portion.

So, IIUC you're recommending changing the "existing logic" to:

  FOR_EACH_SSA_DEF_OPERAND (def_p, stmt, op_iter, SSA_OP_ALL_DEFS)
    {
      tree def = DEF_FROM_PTR (def_p);
      def = SSA_NAME_VAR (def);
      if (MTAG_P (def) && is_call_clobbered (def))
        goto unsafe;
    }

OK with those changes if all tests pass?

- Josh


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