summaryrefslogtreecommitdiff
path: root/gcc/graphite-isl-ast-to-gimple.c
diff options
context:
space:
mode:
authorspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-07 15:40:17 +0000
committerspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-07 15:40:17 +0000
commitf032380cbedc23a3aa42f03e4bc36adaa71f281e (patch)
tree52d9f99e1a45ff8db4eea5f4b72274f513275471 /gcc/graphite-isl-ast-to-gimple.c
parented03898decebd0f0de30d55afe5db0238f1bb615 (diff)
downloadgcc-f032380cbedc23a3aa42f03e4bc36adaa71f281e.tar.gz
move graphite bookkeeping from sese to sese_info
2015-10-06 Aditya Kumar <aditya.k7@samsung.com> Sebastian Pop <s.pop@samsung.com> * graphite-isl-ast-to-gimple.c (translate_isl_ast_to_gimple): Use an sese_info_p. (copy_def): Same. (copy_internal_parameters): Same. (translate_isl_ast_to_gimple): Use an sese_l. (build_iv_mapping): Same. * graphite-poly.c (new_sese): Rename new_sese_info. (free_sese): Rename free_sese_info. * graphite-poly.h (struct scop): Use an sese_info_p. (scop_set_region): Same. * graphite-scop-detection.c (struct sese_l): Moved... (get_entry_bb): Moved... (get_exit_bb): Moved... (parameter_index_in_region_1): Use an sese_info_p. (parameter_index_in_region): Same. (scan_tree_for_params): Same. (find_params_in_bb): Same. (sese_dom_walker): Use an sese_l. * graphite-sese-to-poly.c (remove_invariant_phi): Same. (reduction_phi_p): Same. (parameter_index_in_region_1): Use an sese_info_p. (propagate_expr_outside_region): Use an sese_l. * graphite.c: Replace uses of SCOP_REGION. * sese.c (sese_record_loop): Use an sese_info_p. (build_sese_loop_nests): Same. (sese_build_liveouts_use): Same. (sese_build_liveouts_bb): Same. (sese_build_liveouts_bb): Same. (sese_bad_liveouts_use): Same. (sese_reset_debug_liveouts_bb): Same. (sese_build_liveouts): Same. (new_sese): Renamed new_sese_info. (free_sese): Renamed free_sese_info. (set_rename): Use an sese_info_p. (graphite_copy_stmts_from_block): Same. (copy_bb_and_scalar_dependences): Same. (outermost_loop_in_sese_1): Use an sese_l. (outermost_loop_in_sese): Same. (if_region_set_false_region): Use an sese_info_p. (move_sese_in_condition): Same. (scalar_evolution_in_region): Use an sese_l. * sese.h (struct sese_l): ... here. (SESE_ENTRY): Remove. (SESE_ENTRY_BB): Remove. (SESE_EXIT): Remove. (SESE_EXIT_BB): Remove. (sese_contains_loop): Use an sese_info_p. (sese_nb_params): Same. (bb_in_sese_p): Use an sese_l. (stmt_in_sese_p): Same. (defined_in_sese_p): Same. (loop_in_sese_p): Same. (sese_loop_depth): Same. (struct ifsese_s): Use an sese_info_p. (gbb_loop_at_index): Use an sese_l. (nb_common_loops): Same. (scev_analyzable_p): Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@228572 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/graphite-isl-ast-to-gimple.c')
-rw-r--r--gcc/graphite-isl-ast-to-gimple.c38
1 files changed, 19 insertions, 19 deletions
diff --git a/gcc/graphite-isl-ast-to-gimple.c b/gcc/graphite-isl-ast-to-gimple.c
index 43cb7ddfe3c..f4e7edfe1f9 100644
--- a/gcc/graphite-isl-ast-to-gimple.c
+++ b/gcc/graphite-isl-ast-to-gimple.c
@@ -132,7 +132,7 @@ void ivs_params_clear (ivs_params &ip)
class translate_isl_ast_to_gimple
{
public:
- translate_isl_ast_to_gimple (sese r)
+ translate_isl_ast_to_gimple (sese_info_p r)
: region (r)
{ }
@@ -261,9 +261,9 @@ class translate_isl_ast_to_gimple
corresponding tree expressions. */
void build_iv_mapping (vec<tree> iv_map, gimple_poly_bb_p gbb,
__isl_keep isl_ast_expr *user_expr, ivs_params &ip,
- sese region);
+ sese_l &region);
private:
- sese region;
+ sese_info_p region;
};
/* Return the tree variable that corresponds to the given isl ast identifier
@@ -741,7 +741,7 @@ void
translate_isl_ast_to_gimple::
build_iv_mapping (vec<tree> iv_map, gimple_poly_bb_p gbb,
__isl_keep isl_ast_expr *user_expr, ivs_params &ip,
- sese region)
+ sese_l &region)
{
gcc_assert (isl_ast_expr_get_type (user_expr) == isl_ast_expr_op &&
isl_ast_expr_get_op_type (user_expr) == isl_ast_op_call);
@@ -756,7 +756,6 @@ build_iv_mapping (vec<tree> iv_map, gimple_poly_bb_p gbb,
loop_p old_loop = gbb_loop_at_index (gbb, region, i - 1);
iv_map[old_loop->num] = t;
}
-
}
/* Translates an isl_ast_node_user to Gimple.
@@ -787,10 +786,10 @@ translate_isl_ast_node_user (__isl_keep isl_ast_node *node,
iv_map.create (nb_loops);
iv_map.safe_grow_cleared (nb_loops);
- build_iv_mapping (iv_map, gbb, user_expr, ip, SCOP_REGION (pbb->scop));
+ build_iv_mapping (iv_map, gbb, user_expr, ip, pbb->scop->region->region);
isl_ast_expr_free (user_expr);
next_e = copy_bb_and_scalar_dependences (GBB_BB (gbb),
- SCOP_REGION (pbb->scop), next_e,
+ pbb->scop->region, next_e,
iv_map,
&graphite_regenerate_error);
iv_map.release ();
@@ -910,7 +909,7 @@ print_isl_ast_node (FILE *file, __isl_keep isl_ast_node *node,
static void
add_parameters_to_ivs_params (scop_p scop, ivs_params &ip)
{
- sese region = SCOP_REGION (scop);
+ sese_info_p region = scop->region;
unsigned nb_parameters = isl_set_dim (scop->param_context, isl_dim_param);
gcc_assert (nb_parameters == SESE_PARAMS (region).length ());
unsigned i;
@@ -1075,13 +1074,14 @@ scop_to_isl_ast (scop_p scop, ivs_params &ip)
DEF_STMT. GSI points to entry basic block of the TO_REGION. */
static void
-copy_def(tree tr, gimple *def_stmt, sese region, sese to_region, gimple_stmt_iterator *gsi)
+copy_def (tree tr, gimple *def_stmt, sese_info_p region, sese_info_p to_region,
+ gimple_stmt_iterator *gsi)
{
- if (!defined_in_sese_p (tr, region))
+ if (!defined_in_sese_p (tr, region->region))
return;
+
ssa_op_iter iter;
use_operand_p use_p;
-
FOR_EACH_SSA_USE_OPERAND (use_p, def_stmt, iter, SSA_OP_USE)
{
tree use_tr = USE_FROM_PTR (use_p);
@@ -1116,14 +1116,14 @@ copy_def(tree tr, gimple *def_stmt, sese region, sese to_region, gimple_stmt_ite
}
static void
-copy_internal_parameters(sese region, sese to_region)
+copy_internal_parameters (sese_info_p region, sese_info_p to_region)
{
/* For all the parameters which definitino is in the if_region->false_region,
insert code on true_region (if_region->true_region->entry). */
int i;
tree tr;
- gimple_stmt_iterator gsi = gsi_start_bb(to_region->entry->dest);
+ gimple_stmt_iterator gsi = gsi_start_bb(to_region->region.entry->dest);
FOR_EACH_VEC_ELT (region->params, i, tr)
{
@@ -1144,7 +1144,7 @@ bool
graphite_regenerate_ast_isl (scop_p scop)
{
loop_p context_loop;
- sese region = SCOP_REGION (scop);
+ sese_info_p region = scop->region;
ifsese if_region = NULL;
isl_ast_node *root_node;
ivs_params ip;
@@ -1165,19 +1165,19 @@ graphite_regenerate_ast_isl (scop_p scop)
if_region = move_sese_in_condition (region);
sese_insert_phis_for_liveouts (region,
- if_region->region->exit->src,
- if_region->false_region->exit,
- if_region->true_region->exit);
+ if_region->region->region.exit->src,
+ if_region->false_region->region.exit,
+ if_region->true_region->region.exit);
recompute_all_dominators ();
graphite_verify ();
- context_loop = SESE_ENTRY (region)->src->loop_father;
+ context_loop = region->region.entry->src->loop_father;
/* Copy all the parameters which are defined in the region. */
copy_internal_parameters(if_region->false_region, if_region->true_region);
translate_isl_ast_to_gimple t(region);
- edge e = single_succ_edge (if_region->true_region->entry->dest);
+ edge e = single_succ_edge (if_region->true_region->region.entry->dest);
split_edge (e);
t.translate_isl_ast (context_loop, root_node, e, ip);