On Mon, Oct 05, 2015 at 04:26:49PM +0200, Richard Biener wrote:
> > > Otherwise other setters of SSA_NAME_RANGE_INFO would need to make
> > > sure SSA_NAME_ANTI_RANGE_P is cleared as well.
> >  
> > They mostly do, if I'm looking right, e.g.
> > tree-ssa-phiopt.c:1016
> > tree-ssa-loop-im.c:1224
> > tree-ssa-loop-im.c:1294
> > and I've also seen
> > <https://gcc.gnu.org/ml/gcc-patches/2015-01/msg00127.html>.
> 
> Those would be redundant then.

I can give this a whirl (as a follow-up)...

2015-10-05  Marek Polacek  <pola...@redhat.com>

        * tree-ssa-loop-im.c
        (move_computations_dom_walker::before_dom_children): Don't set
        SSA_NAME_ANTI_RANGE_P.
        * tree-ssa-phiopt.c (value_replacement): Likewise.

diff --git gcc/tree-ssa-loop-im.c gcc/tree-ssa-loop-im.c
index f3389a0..9b2436f 100644
--- gcc/tree-ssa-loop-im.c
+++ gcc/tree-ssa-loop-im.c
@@ -1222,7 +1222,6 @@ move_computations_dom_walker::before_dom_children 
(basic_block bb)
        {
          tree lhs = gimple_assign_lhs (new_stmt);
          SSA_NAME_RANGE_INFO (lhs) = NULL;
-         SSA_NAME_ANTI_RANGE_P (lhs) = 0;
        }
       gsi_insert_on_edge (loop_preheader_edge (level), new_stmt);
       remove_phi_node (&bsi, false);
@@ -1292,7 +1291,6 @@ move_computations_dom_walker::before_dom_children 
(basic_block bb)
        {
          tree lhs = gimple_get_lhs (stmt);
          SSA_NAME_RANGE_INFO (lhs) = NULL;
-         SSA_NAME_ANTI_RANGE_P (lhs) = 0;
        }
       /* In case this is a stmt that is not unconditionally executed
          when the target loop header is executed and the stmt may
diff --git gcc/tree-ssa-phiopt.c gcc/tree-ssa-phiopt.c
index 697836a..f33ca5c 100644
--- gcc/tree-ssa-phiopt.c
+++ gcc/tree-ssa-phiopt.c
@@ -1014,7 +1014,6 @@ value_replacement (basic_block cond_bb, basic_block 
middle_bb,
             <bb 4>:
             # u_3 = PHI <u_6(3), 4294967295(2)>  */
          SSA_NAME_RANGE_INFO (lhs) = NULL;
-         SSA_NAME_ANTI_RANGE_P (lhs) = 0;
          /* If available, we can use VR of phi result at least.  */
          tree phires = gimple_phi_result (phi);
          struct range_info_def *phires_range_info

        Marek

Reply via email to