OSDN Git Service

Free invalid postdominance info.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog.graphite
index f085803..9211870 100644 (file)
@@ -1,3 +1,334 @@
+2011-01-05  Vladimir Kargov  <kargov@gmail.com>
+
+       * graphite-scop-detection.c (canonicalize_loop_closed_ssa): Free
+       invalid postdominance info
+
+2010-12-29  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * Makefile.in (graphite-opencl-codegen.o): Update dependences.
+       (graphite-opencl-meta-clast.o): Same.
+       (graphite-opencl.o): Same.
+       (refined-regions.o): Same.
+       * graphite-opencl-codegen.c: Do not include unnecessary .h files.
+       * graphite-opencl-meta-clast.c: Same.
+       * graphite-opencl.c: Same.
+       * refined-regions.c: Same.
+
+2010-12-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-opencl-codegen.c: Use FOR_EACH_VEC_ELT.
+       * graphite-opencl-meta-clast.c: Same.
+       * graphite-opencl.c: Same.
+
+2010-12-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-opencl-codegen.c: Do not include sys/time.h.
+       * graphite-opencl.c: Same.
+
+2010-12-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-opencl.c (h_context, h_cmd_queue, h_program): Moved
+       out of ifdef HAVE_cloog section.
+
+2010-12-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * Makefile.in (graphite-opencl.o): Depends on
+       graphite-opencl-functions.def.
+       * graphite-opencl-functions.def: New.
+       * graphite-opencl.c (enum OPENCL_FUNCTIONS): Read data from
+       graphite-opencl-functions.def.
+       (opencl_function_names): Same.
+       (opencl_create_function_decl): Use the enum OPENCL_FUNCTIONS
+       as indices of opencl_function_names.
+
+2010-12-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-opencl-codegen.c: Fix formatting.
+       * graphite-opencl-meta-clast.c: Same.
+       * graphite-opencl.c: Same.
+
+2010-12-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-opencl-codegen.c: Fix formating problems.
+       * graphite-opencl-meta-clast.c: Same.
+       * graphite-opencl.c: Same.
+       * graphite-opencl.h: Same.
+
+2010-12-27  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-opencl-codegen.c: Sort topologically static functions.
+       * graphite-opencl.c: Same.
+
+2010-12-25  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-cloog-compat.h (cloog_names_nb_scattering): New.
+       (cloog_names_scattering): New.
+       * graphite-opencl-codegen.c (opencl_constant_expression_p): Use
+       clast_expr_* instead of expr_*.  Call clast_name_to_str.
+       (opencl_clast_name_to_tree): Now takes a clast_name_p in parameter.
+       (opencl_get_scat_real_name): Same.  Call clast_name_to_str.
+       (opencl_add_scat_as_arg): Same.
+       (opencl_print_local_vars): Call cloog_names_scattering and
+       cloog_names_nb_scattering.
+       (opencl_print_for): Do not call value_*.
+       (opencl_print_term): Same.
+       (opencl_print_expr): Use clast_expr_* instead of expr_*.
+       (opencl_print_sum): Same.
+       (opencl_print_binary): Same.
+
+2010-12-25  Alexey Kravets  <kayrick@ispras.ru>
+
+       * Makefile.in (OBJS-common): Add graphite-opencl-codegen.o,
+       graphite-opencl-meta-clast.o and graphite-opencl.o.
+       (graphite-opencl-codegen.o): New.
+       (graphite-opencl-meta-clast.o): New.
+       (graphite-opencl.o): New.
+       (GTFILES): Add graphite-opencl.c.
+       * common.opt (fgraphite-opencl): New.
+       (fgraphite-opencl-cpu): New.
+       (fgraphite-opencl-ignore-depth-heuristic): New.
+       (fgraphite-opencl-ignore-mem-heuristic): New.
+       (fgraphite-opencl-ignore-dep): New.
+       (fgraphite-opencl-ignore-types): New.
+       (fgraphite-opencl-depth-base): New.
+       (fgraphite-opencl-debug): New.
+       * graphite-opencl-codegen.c: New file.
+       * graphite-opencl-meta-clast.c: New file.
+       * graphite-opencl.c: New file.
+       * graphite-opencl.h: New file.
+       * graphite.c (graphite_transform_loops): Call graphite_opencl_init and
+       graphite_opencl_finalize.
+       * tree-ssa-loop.c (gate_graphite_transforms): Handle
+       flag_graphite_opencl.
+       * graphite-clast-to-gimple.c (gloog): Call opencl_transform_clast.
+       * dbgcnt.def (opencl_scop_cnt): New counter.
+
+2010-12-25  Alexander Monakov  <amonakov@ispras.ru>
+
+       * graphite-dependences.c (graphite_outer_subscript_bound): New.
+       (graphite_carried_dependence_level_k): Export.
+       * graphite-dependences.h (graphite_outer_subscript_bound): Declare.
+       (graphite_carried_dependence_level_k): Ditto.
+
+2010-12-25  Alexey Kravets  <kayrick@ispras.ru>
+
+       * graphite-clast-to-gimple.c (struct clast_name_index): Move
+       definition to graphite-clast-to-gimple.h.
+       (clast_name_to_index): Ditto.
+       (clast_name_index_elt_info): Ditto.
+       (eq_clast_name_indexes): Ditto.
+       (save_clast_name_index): Export.
+       (clast_name_to_gcc): Ditto.
+       (clast_to_gcc_expression): Ditto.
+       (gcc_type_for_clast_expr): Ditto.
+       (graphite_create_new_guard): Ditto.
+       (gcc_type_for_iv_of_clast_loop): Ditto.
+       (graphite_create_new_loop): Ditto.
+       (build_iv_mapping): Ditto.
+       (graphite_create_new_loop_guard): Ditto.
+       (debug_clast_name_index): New.
+       (debug_clast_name_indices): New debug function.
+
+2010-12-21  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR tree-optimization/47021
+       * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
+
+2010-11-26  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (analyze_drs_in_stmts): Fix set but
+       unused warning.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+
+2010-11-26  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (analyze_drs): Removed.
+       (build_scop_drs): Do not call analyze_drs.
+       (analyze_drs_in_stmts): New.
+       (insert_stmts): New.
+       (insert_out_of_ssa_copy): Call analyze_drs_in_stmts.
+       (insert_out_of_ssa_copy_on_edge): Same.
+       (rewrite_close_phi_out_of_ssa): Call insert_stmts.
+       (rewrite_phi_out_of_ssa): Same.
+       (rewrite_cross_bb_scalar_dependence): Same.
+       (split_reduction_stmt): Move data references in the new basic blocks.
+       (translate_scalar_reduction_to_array_for_stmt): Call insert_stmts.
+
+2010-11-26  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * sese.c (rename_uses): Do not handle ADDR_EXPR in LHS of assignments.
+
+2010-11-22  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/45297
+       * graphite-poly.c (new_poly_bb): Returns a poly_bb_p.  Do not take
+       the reduction bool in parameter.  Clear PBB_IS_REDUCTION.  Set GBB_PBB.
+       * graphite-poly.h (new_poly_bb): Update declaration.
+       (gbb_from_bb): Moved here...
+       (pbb_from_bb): New.
+       * graphite-sese-to-poly.c (var_used_in_not_loop_header_phi_node):
+       Removed.
+       (graphite_stmt_p): Removed.
+       (try_generate_gimple_bb): Returns a gimple_bb_p.  Do not pass in
+       sbitmap reductions.  Always build a gimple_bb_p.  Do not call
+       new_poly_bb.
+       (build_scop_bbs_1): Do not pass in sbitmap reductions.
+       (build_scop_bbs): Same.
+       (gbb_from_bb): ... from here.
+       (add_conditions_to_constraints): Moved up.
+       (analyze_drs): New.
+       (build_scop_drs): Call analyze_drs.  Remove all the PBBs that do
+       not contain data references.
+       (new_pbb_from_pbb): New.
+       (insert_out_of_ssa_copy_on_edge): Call new_pbb_from_pbb after a
+       block is split.
+       (rewrite_close_phi_out_of_ssa): Update call to
+       insert_out_of_ssa_copy_on_edge.
+       (rewrite_reductions_out_of_ssa): Now static.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+       (split_pbb): New.
+       (split_reduction_stmt): Call split_pbb.
+       (translate_scalar_reduction_to_array): Pass in the scop, do not
+       pass in the sbitmap reductions.
+       (rewrite_commutative_reductions_out_of_ssa_close_phi): Same.
+       (rewrite_commutative_reductions_out_of_ssa_loop): Same.
+       (rewrite_commutative_reductions_out_of_ssa): Same.
+       (build_poly_scop): Call build_scop_bbs,
+       rewrite_commutative_reductions_out_of_ssa,
+       rewrite_reductions_out_of_ssa, and
+       rewrite_cross_bb_scalar_deps_out_of_ssa.  Move build_scop_drs
+       before scop_to_lst.
+       * graphite-sese-to-poly.h (rewrite_commutative_reductions_out_of_ssa):
+       Removed declaration.
+       (rewrite_reductions_out_of_ssa): Same.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+       (build_scop_bbs): Same.
+       * graphite.c (graphite_transform_loops): Do not initialize reductions.
+       Do not call build_scop_bbs,
+       rewrite_commutative_reductions_out_of_ssa,
+       rewrite_reductions_out_of_ssa, and
+       rewrite_cross_bb_scalar_deps_out_of_ssa.
+       * sese.h (struct gimple_bb): Add field pbb.
+       (GBB_PBB): New.
+
+       * gcc.dg/graphite/pr45297.c: New.
+
+2010-11-22  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (handle_scalar_deps_crossing_scop_limits):
+       New.
+       (rewrite_cross_bb_scalar_deps): Pass in the scop.  Call
+       handle_scalar_deps_crossing_scop_limits.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Create an empty BB
+       after the scop.  Update call to rewrite_cross_bb_scalar_deps.
+
+2010-11-22  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * sese.c (rename_uses): Call recompute_tree_invariant_for_addr_expr
+       when replacing a constant in an ADDR_EXPR.
+
+2010-10-20  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-blocking.c (lst_do_strip_mine_loop): Extra parameter
+       for the stride.
+       (lst_do_strip_mine): Same.
+       (scop_do_strip_mine): Same.
+       * graphite-poly.c (apply_poly_transforms): Update call to
+       scop_do_strip_mine.
+       * graphite-poly.h (scop_do_strip_mine): Update declaration.
+
+2010-09-24  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/45758
+       * graphite.c (graphite_initialize): Call scev_reset.
+
+2010-09-23  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * sese.h (scev_analyzable_p): Return false for real or floating
+       point.  Only handle INTEGRAL_TYPE_P and POINTER_TYPE_P.
+
+2010-09-23  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/45758
+       * gfortran.dg/graphite/pr45758.f90: New.
+
+2010-09-23  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-scop-detection.c (is_scop_p): Free bblist.
+
+2010-09-23  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-clast-to-gimple.c (compute_bounds_for_level): Free le
+       and ps.
+       * graphite-poly.c (pbb_number_of_iterations_at_time): Free le and
+       domain.
+       * graphite-sese-to-poly.c (add_upper_bounds_from_estimated_nit):
+       Do not allocate ub_expr, it is passed in initialized.
+
+2010-09-21  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
+
+       * common.opt (fgraphite-dump-cloog): New flag.
+       * doc/invoke.texi (-fgraphite-dump-cloog): Documented.
+       * graphite-clast-to-gimple.c (init_cloog_input_file): New.
+       (build_cloog_prog): Dump CLooG input file when
+       flag_graphite_dump_cloog is set.
+       * graphite-cloog-compat.h (cloog_program_dump_cloog): New.
+
+2010-09-20  Sebastian Pop  <sebastian.pop@amd.com>
+
+       Revert previous patch "New flag: -fgraphite-dump-cloog."
+
+2010-09-20  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
+
+       * common.opt (fgraphite-dump-cloog): New flag.
+       * doc/invoke.texi (-fgraphite-dump-cloog): Documented.
+       * graphite-clast-to-gimple.c (init_cloog_input_file): New.
+       (build_cloog_prog): Dump CLooG input file when
+       flag_graphite_dump_cloog is set.
+
+2010-09-20  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-clast-to-gimple.c (graphite_verify): Remove call to
+       verify_dominators for CDI_POST_DOMINATORS.
+       * sese.h: Remove comment about CDI_POST_DOMINATORS.
+       (recompute_all_dominators): Remove call to free_dominance_info
+       for CDI_POST_DOMINATORS.  Remove call to calculate_dominance_info
+       for CDI_POST_DOMINATORS.
+
+2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.c (pbb_number_of_iterations_at_time): Only iterate
+       over pbb_dim_iter_domain.
+
+2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-flattening.c: Fix comments.
+
+2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * Makefile.in (OBJS-common): Add graphite-flattening.o.
+       (graphite-flattening.o): New rule.
+       * common.opt (floop-flatten): New flag.
+       * doc/invoke.texi (-floop-flatten): Documented.
+       * graphite-flattening.c: New.
+       * graphite-poly.c (apply_poly_transforms): Call flatten_all_loops.
+       * graphite-poly.h (flatten_all_loops): Declared.
+       (lst_remove_loop_and_inline_stmts_in_loop_father): New.
+       * tree-ssa-loop.c (gate_graphite_transforms): When flag_loop_flatten
+       is set, also set flag_graphite.
+
+2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.c (cloog_checksum): New.
+       * graphite-poly.h (cloog_checksum): Declared.
+
+2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-poly.c (pbb_number_of_iterations): Removed.
+       (pbb_number_of_iterations_at_time): Correctly compute the number
+       of iterations in the transformed loop.
+       * graphite-poly.h (pbb_number_of_iterations): Removed.
+
 2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
 
        * graphite-poly.h (lst_update_scattering_seq): Removed.