[Bug middle-end/38446] [graphite] The def for a var exists inside one of the scops bb's but an appropriate phi is not created to allow the phi to reach the use of that def ouside the scop.
spop at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Thu Dec 11 19:38:00 GMT 2008
------- Comment #6 from spop at gcc dot gnu dot org 2008-12-11 19:37 -------
Subject: Bug 38446
Author: spop
Date: Thu Dec 11 19:35:41 2008
New Revision: 142688
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=142688
Log:
2008-12-11 Harsha Jagasia <harsha.jagasia@amd.com>
PR tree-optimization/38446
* graphite.c (register_bb_in_sese): New.
(bb_in_sese_p): Check if bb belongs to sese region by explicitly
looking at the bbs in the region.
* graphite.h (sese): Add region_basic_blocks pointer set to
structure and initialize at the time of defining new scop.
2008-12-11 Tobias Grosser <grosser@fim.uni-passau.de>
* graphite.c (new_graphite_bb): Initialize GBB_STATIC_SCHEDULE.
(find_params_in_bb): Do not free data refs.
(free_graphite_bb): Add FIXME on disabled free_data_refs.
2008-12-11 Sebastian Pop <sebastian.pop@amd.com>
* graphite.c (struct ivtype_map_elt): New.
(debug_ivtype_elt, debug_ivtype_map_1, debug_ivtype_map,
new_ivtype_map_elt, ivtype_map_elt_info, eq_ivtype_map_elts,
gcc_type_for_cloog_iv): New.
(loop_iv_stack_patch_for_consts): Use the type of the induction
variable from the original loop, except for the automatically
generated loops, i.e., in the case of a strip-mined loop, in
which case there is no original loop: in that case just use
integer_type_node.
(new_graphite_bb): Initialize GBB_CLOOG_IV_TYPES.
(free_graphite_bb): Free GBB_CLOOG_IV_TYPES.
(clast_name_to_gcc): Accept params to be NULL.
(clast_to_gcc_expression): Take an extra parameter for the type.
Convert to that type all the expressions built by this function.
(gcc_type_for_clast_expr, gcc_type_for_clast_eq): New.
(graphite_translate_clast_equation): Compute the type of the
clast_equation before translating its LHS and RHS.
(clast_get_body_of_loop, gcc_type_for_iv_of_clast_loop): New.
(graphite_create_new_loop): Compute the type of the induction
variable before translating the lower and upper bounds and before
creating the induction variable.
(rename_variables_from_edge, rename_phis_end_scop): New.
(copy_bb_and_scalar_dependences): Call rename_phis_end_scop.
(sese_add_exit_phis_edge): Do not use integer_zero_node.
(find_cloog_iv_in_expr, compute_cloog_iv_types_1,
compute_cloog_iv_types): New.
(gloog): Call compute_cloog_iv_types before starting the
translation of the clast.
* graphite.h (struct graphite_bb): New field cloog_iv_types.
(GBB_CLOOG_IV_TYPES): New.
(debug_ivtype_map): Declared.
(oldiv_for_loop): New.
2008-12-10 Tobias Grosser <grosser@fim.uni-passau.de>
PR middle-end/38459
* graphite.c (new_scop): Initialize SCOP_ADD_PARAMS.
(param_index): Assert if parameter is not know after parameter
detection.
(find_params_in_bb): Detect params directly in GBB_CONDITIONS.
(find_scop_parameters): Mark, that we have finished parameter
detection.
(graphite_transform_loops): Move condition detection before parameter
detection.
* graphite.h (struct scop): Add SCOP_ADD_PARAMS.
2008-12-11 Harsha Jagasia <harsha.jagasia@amd.com>
PR tree-optimization/38446
* gcc.dg/graphite/pr38446.c: New.
2008-12-11 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/scop-16.c: Test only scop specific info.
* gcc.dg/graphite/scop-17.c: Same.
* gcc.dg/graphite/block-5.c: New.
* gcc.dg/graphite/block-6.c: New.
* gcc.dg/graphite/pr37485.c: Clean dump file after.
* gcc.dg/graphite/pr37684.c: Same.
* gcc.dg/graphite/block-2.c: Same.
2008-12-10 Tobias Grosser <grosser@fim.uni-passau.de>
PR middle-end/38459
* gfortran.dg/graphite/pr38459.f90: New.
Added:
trunk/gcc/testsuite/gcc.dg/graphite/block-2.c
trunk/gcc/testsuite/gcc.dg/graphite/block-5.c
trunk/gcc/testsuite/gcc.dg/graphite/block-6.c
trunk/gcc/testsuite/gcc.dg/graphite/pr38446.c
trunk/gcc/testsuite/gfortran.dg/graphite/pr38459.f90
Modified:
trunk/gcc/ChangeLog
trunk/gcc/graphite.c
trunk/gcc/graphite.h
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/graphite/pr37485.c
trunk/gcc/testsuite/gcc.dg/graphite/pr37684.c
trunk/gcc/testsuite/gcc.dg/graphite/scop-15.c
trunk/gcc/testsuite/gcc.dg/graphite/scop-16.c
trunk/gcc/testsuite/gcc.dg/graphite/scop-17.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38446
More information about the Gcc-bugs
mailing list