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: [committed][lto merge]: Various minor fixes


On Fri, Apr 17, 2009 at 11:59 PM, Diego Novillo <dnovillo@google.com> wrote:
> On Fri, Apr 17, 2009 at 17:55, Richard Guenther
> <richard.guenther@gmail.com> wrote:
>
>>> +void
>>> +find_referenced_vars_in (gimple stmt)
>>
>> Why export this function? ?Are there outside uses on the branch?
>
> Yes. ?I forgot to mention that, sorry. ?I'll commit the code to use it
> when I start moving in LTO-specific changes.

Ok.

>>> @@ -3003,6 +3003,7 @@ create_expression_by_pieces (basic_block
>>> ? ? ? ? ? ? ?add_to_value (VN_INFO (forcedname)->value_id, nameexpr);
>>> ? ? ? ? ? ? ?if (!in_fre)
>>> ? ? ? ? ? ? ? ?bitmap_value_replace_in_set (NEW_SETS (block), nameexpr);
>>> + ? ? ? ? ? ? gcc_assert (AVAIL_OUT (block));
>>
>> Uh. ?That is odd. ?We certainly do not test this in other places and AVAIL_OUT
>> is allocated for all blocks.
>>
>> Thus, can you instead revert it on the branch (and now trunk)?
>
> *shrug* ? It was useful when LTO was miscompiling types causing
> confusion here. ?I can remove the assertion if it irritates you.

It does because it doesn't make sense given

  FOR_ALL_BB (bb)
    {
      EXP_GEN (bb) = bitmap_set_new ();
      PHI_GEN (bb) = bitmap_set_new ();
      TMP_GEN (bb) = bitmap_set_new ();
      AVAIL_OUT (bb) = bitmap_set_new ();
    }

IMHO asserts always should make sense.

Thanks,
Richard.


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