------- Comment #22 from dberlin at gcc dot gnu dot org  2009-07-15 13:37 
-------
Subject: Re:  [4.4/4.5 Regression] internal 
        compiler error: in compute_antic, at tree-ssa-pre.c:2501

Phi uses can be in the maximum set as long as they are not phi's themselves.
There is a comment above add_to_exp_gen that explains why:
" PHI nodes can't go in the maximal sets because they are not in
   TMP_GEN, so it is possible to get into non-monotonic situations
   during ANTIC calculation, because it will *add* bits. "

(being an intersection problem, the number of values in the set should
only ever stay the same or decrease)

I would be surprised if it bootstraps :)

On Wed, Jul 15, 2009 at 8:42 AM, rguenth at gcc dot gnu dot
org<gcc-bugzi...@gcc.gnu.org> wrote:
>
>
> ------- Comment #20 from rguenth at gcc dot gnu dot org  2009-07-15 12:42 
> -------
> One thing that is odd is that the maximal set misses a_1 and b_2 (but it does
> have the default defs).  Adding PHI arguments to the maximal set fixes this
> PR...
>
> Index: tree-ssa-pre.c
> ===================================================================
> --- tree-ssa-pre.c      (revision 149663)
> +++ tree-ssa-pre.c      (working copy)
> @@ -3662,6 +3662,16 @@ make_values_for_phi (gimple phi, basic_b
>       add_to_value (get_expr_value_id (e), e);
>       bitmap_insert_into_set (PHI_GEN (block), e);
>       bitmap_value_insert_into_set (AVAIL_OUT (block), e);
> +      if (!in_fre)
> +       {
> +         unsigned i;
> +         for (i = 0; i < gimple_phi_num_args (phi); ++i)
> +           {
> +             e = get_or_alloc_expr_for (gimple_phi_arg_def (phi, i));
> +             add_to_value (get_expr_value_id (e), e);
> +             bitmap_value_insert_into_set (maximal_set, e);
> +           }
> +       }
>     }
>  }
>
>
> I'll give this a complete round of bootstrapping / testing.
>
> Danny - does this look like an obvious mistake or are they not supposed to
> be in the maximal set?
>
>
> --
>
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40321
>
> ------- You are receiving this mail because: -------
> You are on the CC list for the bug, or are watching someone who is.
>


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40321

Reply via email to