[ssa-coalesce] Rename register_ssa_partition

Message ID a1a9b520-2f30-b53e-c24a-465720976fae@linaro.org
State New
Headers show

Commit Message

kugan Nov. 14, 2016, 10:56 p.m.
Hi Richard,

On 08/11/16 23:45, Richard Biener wrote:
> On Tue, Nov 8, 2016 at 3:32 AM, kugan <kugan.vivekanandarajah@linaro.org> wrote:

>> Hi,

>>

>> In tree-ssa-coalesce, register_ssa_partition ) and

>> register_ssa_partition_check have lost their meaning over various commits

>> and now just verifies that ssa_var is indeed a SSA_NAME and not a

>> virtual_operand_p. It is confusing when one look at if for the fist time and

>> would expect more while reading the register_ssa_partition.

>>

>> Attached patch just changes it to verify_ssa_for_coalesce to better reflect

>> what it is doing now.

>>

>> Bootstrap and regression testing is ongoing. Is this OK for trunk if no

>> regressions?

>

> Hum, can you retain the inline wrapper please?  I find the new name

> verify_ssa_for_coalesce bad as tree-ssa-live.h is something generic,

> not just coalescing related.  I'd say a better improvement would be to remove

> register_ssa_partition completely.

Do you like the attached patch which completely removes this.

Thanks,
Kugan

>

> Richard.

>

>> Thanks,

>> Kugan

>>

>>

>>

>> gcc/ChangeLog:

>>

>> 2016-11-08  Kugan Vivekanandarajah  <kuganv@linaro.org>

>>

>>         * tree-ssa-coalesce.c (register_default_def): Remove usage of arg

>>         map which is not used at all.

>>         (create_outofssa_var_map): Use renamed verify_ssa_for_coalesce from

>>         register_ssa_partition.

>>         * tree-ssa-live.c (verify_ssa_for_coalesce): Renamed

>> register_ssa_partition.

>>         (register_ssa_partition_check): Remove.

>>         * tree-ssa-live.h (register_ssa_partition): Renamed to

>> verify_ssa_for_coalesce

Comments

Richard Biener Nov. 15, 2016, 8:18 a.m. | #1
On Mon, Nov 14, 2016 at 11:56 PM, kugan
<kugan.vivekanandarajah@linaro.org> wrote:
> Hi Richard,

>

> On 08/11/16 23:45, Richard Biener wrote:

>>

>> On Tue, Nov 8, 2016 at 3:32 AM, kugan <kugan.vivekanandarajah@linaro.org>

>> wrote:

>>>

>>> Hi,

>>>

>>> In tree-ssa-coalesce, register_ssa_partition ) and

>>> register_ssa_partition_check have lost their meaning over various commits

>>> and now just verifies that ssa_var is indeed a SSA_NAME and not a

>>> virtual_operand_p. It is confusing when one look at if for the fist time

>>> and

>>> would expect more while reading the register_ssa_partition.

>>>

>>> Attached patch just changes it to verify_ssa_for_coalesce to better

>>> reflect

>>> what it is doing now.

>>>

>>> Bootstrap and regression testing is ongoing. Is this OK for trunk if no

>>> regressions?

>>

>>

>> Hum, can you retain the inline wrapper please?  I find the new name

>> verify_ssa_for_coalesce bad as tree-ssa-live.h is something generic,

>> not just coalescing related.  I'd say a better improvement would be to

>> remove

>> register_ssa_partition completely.

>

> Do you like the attached patch which completely removes this.


Yes.

Ok if it passes bootstrap/regtest.

RIchard.

> Thanks,

> Kugan

>

>

>>

>> Richard.

>>

>>> Thanks,

>>> Kugan

>>>

>>>

>>>

>>> gcc/ChangeLog:

>>>

>>> 2016-11-08  Kugan Vivekanandarajah  <kuganv@linaro.org>

>>>

>>>         * tree-ssa-coalesce.c (register_default_def): Remove usage of arg

>>>         map which is not used at all.

>>>         (create_outofssa_var_map): Use renamed verify_ssa_for_coalesce

>>> from

>>>         register_ssa_partition.

>>>         * tree-ssa-live.c (verify_ssa_for_coalesce): Renamed

>>> register_ssa_partition.

>>>         (register_ssa_partition_check): Remove.

>>>         * tree-ssa-live.h (register_ssa_partition): Renamed to

>>> verify_ssa_for_coalesce

Patch hide | download patch | download mbox

diff --git a/gcc/tree-ssa-coalesce.c b/gcc/tree-ssa-coalesce.c
index 6423cdd..d2574df 100644
--- a/gcc/tree-ssa-coalesce.c
+++ b/gcc/tree-ssa-coalesce.c
@@ -1040,17 +1040,13 @@  create_default_def (tree var, void *arg ATTRIBUTE_UNUSED)
 /* Register VAR's default def in MAP.  */
 
 static void
-register_default_def (tree var, void *map_)
+register_default_def (tree var, void *arg ATTRIBUTE_UNUSED)
 {
-  var_map map = (var_map)map_;
-
   if (!is_gimple_reg (var))
     return;
 
   tree ssa = ssa_default_def (cfun, var);
   gcc_assert (ssa);
-
-  register_ssa_partition (map, ssa);
 }
 
 /* If VAR is an SSA_NAME associated with a PARM_DECL or a RESULT_DECL,
@@ -1088,7 +1084,6 @@  create_outofssa_var_map (coalesce_list *cl, bitmap used_in_copy)
   gimple *stmt;
   tree first;
   var_map map;
-  ssa_op_iter iter;
   int v1, v2, cost;
   unsigned i;
 
@@ -1096,7 +1091,7 @@  create_outofssa_var_map (coalesce_list *cl, bitmap used_in_copy)
 
   map = init_var_map (num_ssa_names);
 
-  for_all_parms (register_default_def, map);
+  for_all_parms (register_default_def, NULL);
 
   FOR_EACH_BB_FN (bb, cfun)
     {
@@ -1114,7 +1109,6 @@  create_outofssa_var_map (coalesce_list *cl, bitmap used_in_copy)
 
 	  res = gimple_phi_result (phi);
 	  ver = SSA_NAME_VERSION (res);
-	  register_ssa_partition (map, res);
 
 	  /* Register ssa_names and coalesces between the args and the result
 	     of all PHI.  */
@@ -1125,7 +1119,6 @@  create_outofssa_var_map (coalesce_list *cl, bitmap used_in_copy)
 	      if (TREE_CODE (arg) != SSA_NAME)
 		continue;
 
-	      register_ssa_partition (map, arg);
 	      if (gimple_can_coalesce_p (arg, res)
 		  || (e->flags & EDGE_ABNORMAL))
 		{
@@ -1152,10 +1145,6 @@  create_outofssa_var_map (coalesce_list *cl, bitmap used_in_copy)
 	  if (is_gimple_debug (stmt))
 	    continue;
 
-	  /* Register USE and DEF operands in each statement.  */
-	  FOR_EACH_SSA_TREE_OPERAND (var, stmt, iter, (SSA_OP_DEF|SSA_OP_USE))
-	    register_ssa_partition (map, var);
-
 	  /* Check for copy coalesces.  */
 	  switch (gimple_code (stmt))
 	    {
diff --git a/gcc/tree-ssa-live.c b/gcc/tree-ssa-live.c
index b9eef20..9de03d1 100644
--- a/gcc/tree-ssa-live.c
+++ b/gcc/tree-ssa-live.c
@@ -1276,22 +1276,6 @@  debug (tree_live_info_d *ptr)
 }
 
 
-/* Verify that SSA_VAR is a non-virtual SSA_NAME.  */
-
-void
-register_ssa_partition_check (tree ssa_var)
-{
-  gcc_assert (TREE_CODE (ssa_var) == SSA_NAME);
-  if (virtual_operand_p (ssa_var))
-    {
-      fprintf (stderr, "Illegally registering a virtual SSA name :");
-      print_generic_expr (stderr, ssa_var, TDF_SLIM);
-      fprintf (stderr, " in the SSA->Normal phase.\n");
-      internal_error ("SSA corruption");
-    }
-}
-
-
 /* Verify that the info in LIVE matches the current cfg.  */
 
 static void
diff --git a/gcc/tree-ssa-live.h b/gcc/tree-ssa-live.h
index 6df102a..440efa9 100644
--- a/gcc/tree-ssa-live.h
+++ b/gcc/tree-ssa-live.h
@@ -80,7 +80,6 @@  extern void remove_unused_locals (void);
 extern void dump_var_map (FILE *, var_map);
 extern void debug (_var_map &ref);
 extern void debug (_var_map *ptr);
-extern void register_ssa_partition_check (tree ssa_var);
 
 
 /* Return number of partitions in MAP.  */
@@ -174,18 +173,6 @@  num_basevars (var_map map)
 }
 
 
-
-/* This routine registers a partition for SSA_VAR with MAP.  Any unregistered
-   partitions may be filtered out by a view later.  */
-
-static inline void
-register_ssa_partition (var_map map ATTRIBUTE_UNUSED, tree ssa_var)
-{
-  if (flag_checking)
-    register_ssa_partition_check (ssa_var);
-}
-
-
 /*  ---------------- live on entry/exit info ------------------------------
 
     This structure is used to represent live range information on SSA based