+2016-11-16 Kugan Vivekanandarajah <kuganv@linaro.org>
+
+ * tree-ssa-coalesce.c (register_default_def): Remove register_ssa_partition.
+ (create_outofssa_var_map): Likewise.
+ * tree-ssa-live.c (register_ssa_partition_check): Remove.
+ * tree-ssa-live.h (register_ssa_partition): Likewise.
+
2016-11-15 Bernd Edlinger <bernd.edlinger@hotmail.de>
* genattrtab.c (attr_rtx_1): Avoid allocating new rtx objects.
/* 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,
gimple *stmt;
tree first;
var_map map;
- ssa_op_iter iter;
int v1, v2, cost;
unsigned i;
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)
{
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. */
if (TREE_CODE (arg) != SSA_NAME)
continue;
- register_ssa_partition (map, arg);
if (gimple_can_coalesce_p (arg, res)
|| (e->flags & EDGE_ABNORMAL))
{
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))
{
}
-/* 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
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. */
}
-
-/* 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