OSDN Git Service

2009-10-14 Sebastian Pop <sebastian.pop@amd.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog.graphite
index c9e5513..e58bf04 100644 (file)
@@ -1,3 +1,243 @@
+2009-10-14  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.c (loop_to_lst): Fix LST creation.
+
+2009-10-14  Tobias Grosser  <grosser@fim.uni-passau.de>
+
+       * testsuite/gcc.dg/graphite/id-15.c: (8 * 8) replaced with
+       sizeof(unsigned long) to make it run on 32bit systems.
+
+2009-10-14  Tobias Grosser  <grosser@fim.uni-passau.de>
+
+       * testsuite/gcc.dg/graphite/run-id-1.c: Use smaller matrix to not
+       SEGFAULT on 32bit.
+
+2009-10-14  Ramakrishna Upadrasta <Ramakrishna.Upadrasta@inria.fr>
+
+       * graphite-sese-to-poly.c (write_alias_graph_to_ascii_dimacs): Fix
+       Comment.
+       (write_alias_graph_to_ascii_dot): New.
+       (write_alias_graph_to_ascii_ecc): Ditto.
+       (partition_drs_to_sets): Add testing of optimality of current method
+       which assigns alias numbers according to DFS Comopnent number.  used
+       as heuristic for the upcoming ECC algorithm.
+       (build_scop_drs): Write to file also with the ecc and dot format.
+
+2009-10-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * gfortran.dg/graphite/interchange-1.f: XFail.
+
+2009-10-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite.c (graphite_initialize): Do not handle functions with
+       more than 100 basic blocks.
+
+2009-10-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-blocking.c (pbb_do_strip_mine): Use
+       PARAM_LOOP_BLOCK_TILE_SIZE.
+
+2009-10-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.c (dot_lst_1): New.
+       (dot_lst): New.
+       * graphite-poly.h (dot_lst): Declared.
+
+2009-10-13  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-dependences.c (dot_deps_stmt_1): New.
+       (dot_deps_stmt): New.
+       * graphite-dependences.h (dot_deps_stmt): Declared.
+
+2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_dependence): Do
+       not replace cross BB scalar dependences ending on PHI nodes.
+       (rewrite_cross_bb_scalar_deps): Filter out GIMPLE_PHI nodes.
+
+2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.c (apply_poly_transforms): Implement the high
+       level driver for flag_loop_block.
+       * tree-ssa-loop.c (gate_graphite_transforms): Remove call to sorry for
+       flag_loop_block.
+
+       * gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Add
+       -floop-block.
+       * gfortran.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK):
+       Add -floop-block.
+
+2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.h (lst_find_pbb): New.
+       (find_lst_loop): New.
+
+2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.c (new_scop): Remove init of SCOP_DEP_GRAPH.
+       * graphite-poly.h (struct scop): Remove dep_graph field.
+       (SCOP_DEP_GRAPH): Removed.
+
+2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.h (copy_lst): Do full copy of LST.
+
+2009-10-07  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi
+       when the loop stride is zero.
+
+       * gcc.dg/graphite/id-16.c: New.
+
+2009-10-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-dependences.c (reduction_dr_1): New.
+       (reduction_dr_p): New.
+       (graphite_legal_transform_dr): Call reduction_dr_p.
+       (reduction_ddr): Renamed reduction_ddr_p.
+       * graphite-poly.h (same_pdr_p): New.
+       (number_of_write_pdrs): New.
+       * graphite-sese-to-poly.c (nb_data_writes_in_bb): New.
+       (split_reduction_stmt): Do not split reduction statements
+       when there are no writes to memory.
+       (translate_scalar_reduction_to_array_for_stmt): Insert the
+       memory reduction statement just after the scalar reduction statement.
+
+       * gcc.dg/graphite/interchange-10.c: Updated to differ from interchange-4.c.
+       Un-XFAIL-ed.
+       * gcc.dg/graphite/interchange-3.c: Un-XFAIL-ed.
+       * gcc.dg/graphite/interchange-4.c: Un-XFAIL-ed.
+
+2009-10-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-interchange.c (lst_apply_interchange): New.
+       (lst_interchange_profitable_p): New.
+       (lst_try_interchange_loops): New.
+       (lst_try_interchange): New.
+       (lst_do_interchange): New.
+       (pbb_do_interchange): Removed.
+       (scop_do_interchange): Call lst_do_interchange.
+
+2009-10-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.c (print_scop): Print SCOP_ORIGINAL_SCHEDULE and
+       SCOP_TRANSFORMED_SCHEDULE.
+       (loop_to_lst): New.
+       (scop_to_lst): New.
+       (print_lst): New.
+       (debug_lst): New.
+       * graphite-poly.h (lst_p): New.
+       (struct lst): New.
+       (LST_LOOP_P): New.
+       (LST_LOOP_FATHER): New.
+       (LST_PBB): New.
+       (LST_SEQ): New.
+       (scop_to_lst): Declared.
+       (print_lst): Declared.
+       (debug_lst): Declared.
+       (new_lst_loop): New.
+       (new_lst_stmt): New.
+       (copy_lst): New.
+       (lst_depth): New.
+       (lst_dewey_number): New.
+       (struct scop): Add original_schedule and transformed_schedule fields.
+       (SCOP_ORIGINAL_SCHEDULE): New.
+       (SCOP_TRANSFORMED_SCHEDULE): New.
+       * graphite-sese-to-poly.c (build_poly_scop): Call scop_to_lst.
+
+2009-10-05  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-dependences.c (reduction_ddr): New.
+       (graphite_legal_transform_bb): Call reduction_ddr.
+       * graphite-poly.c (new_poly_bb): Pass a new bool parameter.
+       Initialize PBB_IS_REDUCTION.
+       * graphite-poly.h (struct poly_bb): New bool field is_reduction.
+       (PBB_IS_REDUCTION): New.
+       (new_poly_bb): Update declaration.
+       * graphite-scop-detection.h (build_scop_bbs): Removed.
+       (nb_reductions_in_loop): Removed.
+       * graphite-sese-to-poly.c (try_generate_gimple_bb): Pass a sbitmap
+       parameter for reductions.
+       (try_generate_gimple_bb): Update call to new_poly_bb.
+       (build_scop_bbs_1): Same.
+       (build_scop_bbs): Same.
+       (gsi_for_phi_node): New.
+       (scalar_close_phi_node_p): Remove gcc_assert.
+       (split_reduction_stmt): New.
+       (is_reduction_operation_p): New.
+       (phi_contains_arg): New.
+       (follow_ssa_with_commutative_ops): New.
+       (detect_commutative_reduction_arg): New.
+       (detect_commutative_reduction_assign): New.
+       (follow_inital_value_to_phi): New.
+       (edge_initial_value_for_loop_phi): New.
+       (initial_value_for_loop_phi): New.
+       (detect_commutative_reduction): New.
+       (translate_scalar_reduction_to_array_for_stmt): New.
+       (insert_copyout): New.
+       (insert_copyin): New.
+       (translate_scalar_reduction_to_array): New.
+       (rewrite_commutative_reductions_out_of_ssa_close_phi): New.
+       (rewrite_commutative_reductions_out_of_ssa_loop): New.
+       (rewrite_commutative_reductions_out_of_ssa): New.
+       (build_poly_scop): Call rewrite_commutative_reductions_out_of_ssa.
+       * sese.h (split_region_for_bb): New.
+
+       * gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Add -ffast-math.
+       * gcc.dg/graphite/interchange-1.c: Fix format.
+       * gcc.dg/graphite/interchange-10.c: New.
+
+2009-10-05  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Remove
+       buggy assert.
+
+2009-10-05  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (scev_analyzable_p): New.
+       (rewrite_cross_bb_scalar_dependence): New.
+       (rewrite_cross_bb_scalar_deps): New.
+       (rewrite_reductions_out_of_ssa): Use bb_in_sese_p.
+       Call rewrite_cross_bb_scalar_deps.
+
+2009-10-05  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (gsi_for_ssa_name_def): Removed.
+       (insert_out_of_ssa_copy): Directly use gsi_after_labels and
+       gsi_for_stmt.
+
+2009-10-05  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-clast-to-gimple.c (build_cloog_prog): Use pbb_index.
+       * graphite-interchange.c (pbb_do_interchange): Same.
+       * graphite-poly.c (print_scattering_function): Same.
+       (debug_pdrs): Same.
+       * graphite-poly.h (pbb_loop): New.
+       * graphite-sese-to-poly.c (create_linear_expr_from_tree): Use pbb_loop.
+
+2009-09-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-scop-detection.c (limit_scops): Do not build poly_bbs.
+
+2009-09-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (partition_drs_to_sets): Drs is not modified,
+       so don't pass a pointer to it.
+       (build_alias_set_for_drs): Same.
+       (build_base_obj_set_for_drs): Same.
+       (build_scop_drs): Same.
+
+2009-09-26  Li Feng  <nemokingdom@gmail.com>
+
+       * graphite-sese-to-poly.c (build_scop_drs): Disable writing to file
+       the alias graph of data references.
+
+2009-09-25  Li Feng  <nemokingdom@gmail.com>
+
+       * graphite-sese-to-poly.c (write_alias_graph_to_ascii_dimacs): New.
+       (build_scop_drs): When debugging, write the alias graph to file,
+       otherwise, should be disabled.
+
 2009-09-17  Sebastian Pop  <sebastian.pop@amd.com>
 
        * graphite-scop-detection.c (stmt_simple_memref_p): Removed.