aboutsummaryrefslogtreecommitdiff
path: root/gcc/sese.c
diff options
context:
space:
mode:
authorTobias Grosser <grosser@fim.uni-passau.de>2009-11-30 22:06:27 +0000
committerTobias Grosser <grosser@gcc.gnu.org>2009-11-30 22:06:27 +0000
commit7a521ff2fce2a365cf0e783ea33373f3b13b4b20 (patch)
tree8557f4e933b1efe957ca676604b348d1e69abdc2 /gcc/sese.c
parentf7ce0951b70d925d2c10e8927afdf74fea2669f1 (diff)
downloadgcc-7a521ff2fce2a365cf0e783ea33373f3b13b4b20.zip
gcc-7a521ff2fce2a365cf0e783ea33373f3b13b4b20.tar.gz
gcc-7a521ff2fce2a365cf0e783ea33373f3b13b4b20.tar.bz2
Do not abuse sese for codegeneration
CLooG automatically frees the names list, so sharing SESE_PARAMS_NAMES between gloog() and debug_generated_program() leads to freeing them twice. As both SESE_PARAM_NAMES and SESE_PARAMS_INDEX are code generation data structures remove them and the functions working on them from sese.h and put them in clast-to-gimple. 2009-11-21 Tobias Grosser <grosser@fim.uni-passau.de> * graphite-clast-to-gimple.c (clast_name_index, new_clast_name_index, clast_name_to_index, save_clast_name_index, debug_clast_name_index, debug_clast_name_indexes_1, debug_clast_name_indexes, clast_name_index_elt_info, eq_clast_name_indexes): Moved from sese.h. (clast_name_to_gcc, clast_to_gcc_expression, clast_to_gcc_expression_red, gcc_type_for_clast_expr, gcc_type_for_clast_eq, graphite_translate_clast_equation, graphite_create_guard_cond_expr, graphite_create_new_loop, translate_clast): Add params_index. (initialize_cloog_names): Create parameter strings from scratch, do not reference other strings. (create_params_index): New. (gloog): Initialize params_index. * graphite-scop-detection (free_scops_1): Removed. (limit_scops): Use normal free_scops. * graphite-sese-to-poly.c (save_var_names): Removed. (parameter_index_in_region): Do not initialize SESE_PARAM_NAMES and SESE_PARAMS_INDEX. * sese.c (new_sese, free_sese): Dito. * sese.h (struct sese): Remove params_index, params_names. (SESE_PARAMS_INDEX, SESE_PARAMS_NAMES): Removed. From-SVN: r154844
Diffstat (limited to 'gcc/sese.c')
-rw-r--r--gcc/sese.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/gcc/sese.c b/gcc/sese.c
index 338f482..2c03393 100644
--- a/gcc/sese.c
+++ b/gcc/sese.c
@@ -332,9 +332,6 @@ new_sese (edge entry, edge exit)
SESE_LOOP_NEST (region) = VEC_alloc (loop_p, heap, 3);
SESE_ADD_PARAMS (region) = true;
SESE_PARAMS (region) = VEC_alloc (tree, heap, 3);
- SESE_PARAMS_INDEX (region) = htab_create (10, clast_name_index_elt_info,
- eq_clast_name_indexes, free);
- SESE_PARAMS_NAMES (region) = XNEWVEC (char *, num_ssa_names);
return region;
}
@@ -350,11 +347,6 @@ free_sese (sese region)
VEC_free (tree, heap, SESE_PARAMS (region));
VEC_free (loop_p, heap, SESE_LOOP_NEST (region));
- if (SESE_PARAMS_INDEX (region))
- htab_delete (SESE_PARAMS_INDEX (region));
-
- /* Do not free SESE_PARAMS_NAMES: CLooG does that. */
-
XDELETE (region);
}