| 2011-05-26 Alexey Kravets <kayrick@ispras.ru> |
| |
| PR middle-end/49147 |
| * graphite-opencl-codegen.c |
| (opencl_get_perfect_nested_loop_depth): Use |
| enabled_dependency_in_clast_loop_p instead of |
| dependency_in_clast_loop_p. |
| * graphite-opencl.c (opencl_transform_stmt_list): Ditto. |
| (enabled_dependency_in_clast_loop_p): New. |
| * graphite-opencl.h (enabled_dependency_in_clast_loop_p): Export. |
| |
| * gcc.dg/graphite/pr49147.c: New test. |
| |
| 2011-05-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-opencl-codegen.c (opencl_print_local_vars): Fix typo. |
| |
| 2011-05-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (graphite_outer_subscript_bound): Remove |
| memory leaks, add one more assert. |
| |
| 2011-05-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (build_alias_set_powerset): Remove |
| continue from loop, add one more assert. |
| |
| 2011-05-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (graphite_outer_subscript_bound): Remove |
| unused parameter. |
| * graphite-dependences.h (graphite_outer_subscript_bound): Same. |
| * graphite-opencl-meta-clast.c (opencl_set_meta_rw_flags): Update |
| call to graphite_outer_subscript_bound. |
| * graphite-opencl.c (opencl_get_indirect_size): Same. |
| |
| 2011-05-24 Alexey Kravets <kayrick@ispras.ru> |
| |
| * graphite-opencl.c (opencl_private_var_name_p): Removed. |
| (graphite_artificial_array_p): Removed. |
| (opencl_data_create): Use zero_dim_array_p instead of |
| graphite_artificial_array_p. |
| |
| 2011-01-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-opencl.c (opencl_create_function_call): Use cl_khr_fp64 |
| pragma extension only when it is defined. Use cl_amd_fp64 when it |
| is defined. |
| |
| 2011-01-23 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * doc/install.texi: Replace '/' by an or and give the exact |
| version number of cloog-0.16.1 |
| |
| 2011-01-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (dr_indices_valid_in_loop): New. |
| (close_phi_written_to_memory): Call for_each_index with |
| dr_indices_valid_in_loop. |
| |
| * gfortran.dg/graphite/id-24.f: New. |
| * gfortran.dg/graphite/id-25.f: New. |
| |
| 2011-01-19 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (new_pbb_from_pbb): Only copy PBB_DOMAIN |
| when it is initialized. |
| |
| * gfortran.dg/graphite/id-23.f: New. |
| |
| 2011-01-19 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Update |
| call to graphite_find_data_references_in_stmt. |
| * graphite-sese-to-poly.c (outermost_loop_in_sese_1): New. |
| (try_generate_gimple_bb): Call outermost_loop_in_sese_1. Update |
| call to graphite_find_data_references_in_stmt. |
| (analyze_drs_in_stmts): Same. |
| * tree-data-ref.c (dr_analyze_indices): Pass in parameter the loop |
| in which the scalar analysis of indices is performed. |
| (create_data_ref): Same. Update call to dr_analyze_indices. |
| (find_data_references_in_stmt): Update call to create_data_ref. |
| (graphite_find_data_references_in_stmt): Same. |
| * tree-data-ref.h (graphite_find_data_references_in_stmt): Update |
| declaration. |
| (create_data_ref): Same. |
| * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Update |
| call to create_data_ref. |
| |
| 2011-01-19 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (build_poly_scop): Move |
| rewrite_commutative_reductions_out_of_ssa before |
| find_scop_parameters. |
| |
| 2011-01-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR tree-optimization/46970 |
| * gcc.dg/graphite/pr46970.c: New. |
| |
| 2011-01-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR tree-optimization/46215 |
| * gcc.dg/graphite/pr46215.c: New. |
| |
| 2011-01-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR tree-optimization/46168 |
| * gcc.dg/graphite/pr46168.c: New. |
| |
| 2011-01-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR tree-optimization/43657 |
| * gcc.dg/graphite/pr43657.c: New. |
| |
| 2011-01-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR tree-optimization/29832 |
| * gfortran.dg/graphite/pr29832.f90: New. |
| |
| 2011-01-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR tree-optimization/43567 |
| * gcc.dg/graphite/pr43567.c: New. |
| |
| 2011-01-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR tree-optimization/43567 |
| * gcc.dg/graphite/pr43567.c: New. |
| |
| 2011-01-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Makefile.in (LAMBDA_H): Removed. |
| (TREE_DATA_REF_H): Remove dependence on LAMBDA_H. |
| (OBJS-common): Remove dependence on lambda-code.o, lambda-mat.o, |
| lambda-trans.o, and tree-loop-linear.o. |
| (lto-symtab.o): Remove dependence on LAMBDA_H. |
| (tree-loop-linear.o): Remove rule. |
| (lambda-mat.o): Same. |
| (lambda-trans.o): Same. |
| (lambda-code.o): Same. |
| (tree-vect-loop.o): Add missing dependence on TREE_DATA_REF_H. |
| (tree-vect-slp.o): Same. |
| * hwint.h (gcd): Moved here. |
| (least_common_multiple): Same. |
| * lambda-code.c: Removed. |
| * lambda-mat.c: Removed. |
| * lambda-trans.c: Removed. |
| * lambda.h: Removed. |
| * tree-loop-linear.c: Removed. |
| * lto-symtab.c: Do not include lambda.h. |
| * omega.c (gcd): Removed. |
| * passes.c (init_optimization_passes): Remove pass_linear_transform. |
| * tree-data-ref.c (print_lambda_vector): Moved here. |
| (lambda_vector_copy): Same. |
| (lambda_matrix_copy): Same. |
| (lambda_matrix_id): Same. |
| (lambda_vector_first_nz): Same. |
| (lambda_matrix_row_add): Same. |
| (lambda_matrix_row_exchange): Same. |
| (lambda_vector_mult_const): Same. |
| (lambda_vector_negate): Same. |
| (lambda_matrix_row_negate): Same. |
| (lambda_vector_equal): Same. |
| (lambda_matrix_right_hermite): Same. |
| * tree-data-ref.h: Do not include lambda.h. |
| (lambda_vector): Moved here. |
| (lambda_matrix): Same. |
| (dependence_level): Same. |
| (lambda_transform_legal_p): Removed declaration. |
| (lambda_collect_parameters): Same. |
| (lambda_compute_access_matrices): Same. |
| (lambda_vector_gcd): Same. |
| (lambda_vector_new): Same. |
| (lambda_vector_clear): Same. |
| (lambda_vector_lexico_pos): Same. |
| (lambda_vector_zerop): Same. |
| (lambda_matrix_new): Same. |
| * tree-flow.h (least_common_multiple): Removed declaration. |
| * tree-parloops.c (lambda_trans_matrix): Moved here. |
| (LTM_MATRIX): Same. |
| (LTM_ROWSIZE): Same. |
| (LTM_COLSIZE): Same. |
| (LTM_DENOMINATOR): Same. |
| (lambda_trans_matrix_new): Same. |
| (lambda_matrix_vector_mult): Same. |
| (lambda_transform_legal_p): Same. |
| * tree-pass.h (pass_linear_transform): Removed declaration. |
| * tree-ssa-loop.c (tree_linear_transform): Removed. |
| (gate_tree_linear_transform): Removed. |
| (pass_linear_transform): Removed. |
| (gate_graphite_transforms): Make flag_tree_loop_linear an alias of |
| flag_loop_interchange. |
| |
| * gfortran.dg/graphite/interchange-4.f: New. |
| * gfortran.dg/graphite/interchange-5.f: New. |
| |
| * gcc.dg/tree-ssa/ltrans-1.c: Removed. |
| * gcc.dg/tree-ssa/ltrans-2.c: Removed. |
| * gcc.dg/tree-ssa/ltrans-3.c: Removed. |
| * gcc.dg/tree-ssa/ltrans-4.c: Removed. |
| * gcc.dg/tree-ssa/ltrans-5.c: Removed. |
| * gcc.dg/tree-ssa/ltrans-6.c: Removed. |
| * gcc.dg/tree-ssa/ltrans-8.c: Removed. |
| * gfortran.dg/ltrans-7.f90: Removed. |
| * gcc.dg/tree-ssa/data-dep-1.c: Removed. |
| |
| * gcc.dg/pr18792.c: -> gcc.dg/graphite/pr18792.c |
| * gcc.dg/pr19910.c: -> gcc.dg/graphite/pr19910.c |
| * gcc.dg/tree-ssa/20041110-1.c: -> gcc.dg/graphite/pr20041110-1.c |
| * gcc.dg/tree-ssa/pr20256.c: -> gcc.dg/graphite/pr20256.c |
| * gcc.dg/pr23625.c: -> gcc.dg/graphite/pr23625.c |
| * gcc.dg/tree-ssa/pr23820.c: -> gcc.dg/graphite/pr23820.c |
| * gcc.dg/tree-ssa/pr24309.c: -> gcc.dg/graphite/pr24309.c |
| * gcc.dg/tree-ssa/pr26435.c: -> gcc.dg/graphite/pr26435.c |
| * gcc.dg/pr29330.c: -> gcc.dg/graphite/pr29330.c |
| * gcc.dg/pr29581-1.c: -> gcc.dg/graphite/pr29581-1.c |
| * gcc.dg/pr29581-2.c: -> gcc.dg/graphite/pr29581-2.c |
| * gcc.dg/pr29581-3.c: -> gcc.dg/graphite/pr29581-3.c |
| * gcc.dg/pr29581-4.c: -> gcc.dg/graphite/pr29581-4.c |
| * gcc.dg/tree-ssa/loop-27.c: -> gcc.dg/graphite/pr30565.c |
| * gcc.dg/tree-ssa/pr31183.c: -> gcc.dg/graphite/pr31183.c |
| * gcc.dg/tree-ssa/pr33576.c: -> gcc.dg/graphite/pr33576.c |
| * gcc.dg/tree-ssa/pr33766.c: -> gcc.dg/graphite/pr33766.c |
| * gcc.dg/pr34016.c: -> gcc.dg/graphite/pr34016.c |
| * gcc.dg/tree-ssa/pr34017.c: -> gcc.dg/graphite/pr34017.c |
| * gcc.dg/tree-ssa/pr34123.c: -> gcc.dg/graphite/pr34123.c |
| * gcc.dg/tree-ssa/pr36287.c: -> gcc.dg/graphite/pr36287.c |
| * gcc.dg/tree-ssa/pr37686.c: -> gcc.dg/graphite/pr37686.c |
| * gcc.dg/pr42917.c: -> gcc.dg/graphite/pr42917.c |
| * gcc.dg/tree-ssa/data-dep-1.c |
| * gfortran.dg/loop_nest_1.f90: -> gfortran.dg/graphite/pr29290.f90 |
| * gfortran.dg/pr29581.f90: -> gfortran.dg/graphite/pr29581.f90 |
| * gfortran.dg/pr36286.f90: -> gfortran.dg/graphite/pr36286.f90 |
| * gfortran.dg/pr36922.f: -> gfortran.dg/graphite/pr36922.f |
| * gfortran.dg/pr39516.f: -> gfortran.dg/graphite/pr39516.f |
| |
| 2011-01-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow |
| VAR_DECL, PARM_DECL, and RESULT_DECL. |
| |
| * gfortran.dg/graphite/interchange-3.f90: Un-XFAILed. |
| |
| 2011-01-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (reduction_dr_1): Allow several reductions |
| in a reduction PBB. |
| * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs |
| that have already been marked as PBB_IS_REDUCTION. |
| |
| 2011-01-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-scop-detection.c (same_close_phi_node): New. |
| (remove_duplicate_close_phi): New. |
| (make_close_phi_nodes_unique): New. |
| (canonicalize_loop_closed_ssa): Call make_close_phi_nodes_unique. |
| |
| 2011-01-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (new_poly_ddr): Call same_pdr_p. |
| * graphite-poly.h (same_pdr_p): Do not expect that the PDR_TYPE |
| of both data references to be the same. |
| |
| 2011-01-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (build_lexicographical_constraint): Remove the |
| gdim parameter. |
| (build_lexicographical_constraint): Adjust call to ppl_powerset_is_empty. |
| (dependence_polyhedron): Same. |
| (graphite_legal_transform_dr): Same. |
| (graphite_carried_dependence_level_k): Same. |
| * graphite-ppl.c (ppl_powerset_is_empty): Remove the nb_params parameter. |
| * graphite-ppl.h (ppl_powerset_is_empty): Adjust declaration. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c |
| (translate_scalar_reduction_to_array_for_stmt): Call unshare_expr. |
| (close_phi_written_to_memory): New. |
| (translate_scalar_reduction_to_array): Call close_phi_written_to_memory |
| and unshare_expr. |
| |
| * gcc.dg/graphite/block-0.c: Un-XFAILed. |
| * gcc.dg/graphite/block-1.c: Un-XFAILed. |
| * gcc.dg/graphite/block-7.c: Un-XFAILed. |
| * gcc.dg/graphite/block-8.c: Un-XFAILed. |
| * gcc.dg/graphite/interchange-12.c: Un-XFAILed. |
| * gcc.dg/graphite/interchange-14.c: Un-XFAILed. |
| * gcc.dg/graphite/interchange-15.c: Un-XFAILed. |
| * gcc.dg/graphite/interchange-8.c: Un-XFAILed. |
| * gcc.dg/graphite/interchange-mvt.c: Un-XFAILed. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * doc/install.texi: Update the expected version number of PPL to 0.11. |
| * graphite-ppl.c (ppl_powerset_is_empty): Remove now dead code under |
| #if PPL_VERSION_MINOR < 11. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (new_poly_ddr): Inlined into |
| dependence_polyhedron. |
| (free_poly_ddr): Moved close by new_poly_ddr. |
| (dependence_polyhedron_1): Renamed dependence_polyhedron. |
| Early return NULL when ppl_powerset_is_empty returns true. |
| (dependence_polyhedron): Renamed new_poly_ddr. Call only once |
| poly_drs_may_alias_p. Avoid one call to ppl_powerset_is_empty. |
| (graphite_legal_transform_dr): Call new_poly_ddr. |
| (graphite_carried_dependence_level_k): Same. |
| (dot_original_deps_stmt_1): Renamed dot_deps_stmt_2. Use new_poly_ddr. |
| (dot_transformed_deps_stmt_1): Removed. |
| (dot_deps_stmt_1): Call dot_deps_stmt_2. |
| (dot_original_deps): Renamed dot_deps_2. Call new_poly_ddr. |
| (dot_deps_1): Call dot_deps_2. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (new_poly_dr): Call ppl_powerset_is_empty. |
| (build_lexicographical_constraint): Same. |
| (dependence_polyhedron_1): Same. |
| (graphite_legal_transform_dr): Same. |
| (graphite_carried_dependence_level_k): Same. |
| * graphite-ppl.c (ppl_powerset_is_empty): New. |
| * graphite-ppl.h (ppl_powerset_is_empty): Declared. |
| * tree-data-ref.c (dump_data_reference): Print the basic block index. |
| |
| * gcc.dg/graphite/block-0.c: Add documentation. |
| * gcc.dg/graphite/block-4.c: Same. |
| * gcc.dg/graphite/block-7.c: Same. |
| * gcc.dg/graphite/block-8.c: New. |
| * gcc.dg/graphite/interchange-1.c: Un-XFAILed. |
| * gcc.dg/graphite/interchange-11.c: Un-XFAILed. |
| * gcc.dg/graphite/interchange-12.c: Add documentation. |
| * gcc.dg/graphite/interchange-13.c: New. |
| * gcc.dg/graphite/interchange-14.c: New. |
| * gcc.dg/graphite/interchange-15.c: New. |
| * gcc.dg/graphite/interchange-8.c: Add documentation. |
| * gcc.dg/graphite/interchange-mvt.c: Same. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (build_pairwise_scheduling): Correctly compute |
| the "a followed by b" relation and document it. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (build_lexicographical_constraint): Stop the |
| iteration when the bag of constraints is empty. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (pbb_remove_duplicate_pdrs): Make it work. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (lst_interchange_profitable_p): Takes a loop |
| nest and two loop depths as parameters. |
| (lst_try_interchange_loops): Call lst_interchange_profitable_p after |
| lst_perfect_nestify. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (print_pddr): Call |
| ppl_io_fprint_Pointset_Powerset_C_Polyhedron. |
| |
| 2011-01-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-ppl.c (debug_gmp_value): New. |
| * graphite-ppl.h (debug_gmp_value): Declared. |
| |
| 2011-01-13 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * doc/install.texi: Document availability of cloog-0.16 |
| |
| 2011-01-05 Vladimir Kargov <kargov@gmail.com> |
| |
| * graphite-scop-detection.c (is_valid_stmt_p): Pass the entry basic |
| block instead of region start to the instantiation. |
| (is_valid_bb_p): Add support for basic blocks with conditional |
| statements. |
| (find_scops_new): Recalculate dominance info before SCOP |
| detection. |
| |
| 2011-01-05 Vladimir Kargov <kargov@gmail.com> |
| |
| * graphite-scop-detection.c (get_outermost_loop_in_region): New. |
| (is_valid_loop_p): Correct loop passed to stmt_has_simple_data_refs_p |
| |
| 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. |
| (lst_update_scattering): Correctly handle outermost loop dewey |
| renumbering. |
| |
| 2010-09-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (pbb_strip_mine_profitable_p): Renamed |
| lst_strip_mine_profitable_p. Call lst_niter_for_loop. |
| * graphite-poly.h (lst_niter_for_loop): New. |
| |
| 2010-09-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (apply_poly_transforms): Do not abort when the |
| transform read from disk is not legal. Call fatal_error instead. |
| |
| 2010-09-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (print_pbb_body): Add missing closing parenthesis. |
| (print_scop_header): Removed. Inlined in the only call place... |
| (print_scop): ... here. |
| |
| 2010-09-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.h (lst_dewey_number): Use FOR_EACH_VEC_ELT. |
| |
| 2010-09-02 Vladimir Kargov <kargov@gmail.com> |
| |
| * graphite-scop-detection.c (is_valid_expr_p, is_valid_loop_p): New. |
| (is_valid_stmt_p): Add data reference and operation-specific checks. |
| (is_valid_bb_p): Change structure, add loop validity check. |
| (is_scop_p): Move the TODO list |
| (find_scops_new): New. |
| (build_scops_new): Move part of functionality to find_scops_new and |
| build_scops. Add necessary steps for successful SCoP construction. |
| (build_scops): Compute SCoP sets for both detection algorithms, choose |
| the resulting one depending on static condition. |
| |
| 2010-08-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (graphite_read_scop_file): Fix uninitialize warning. |
| |
| 2010-08-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (dot_deps): Avoid set but not used warning. |
| (dot_deps_stmt): Same. |
| * graphite-poly.c (dot_lst): Same. |
| |
| 2010-08-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (scop_do_strip_mine): Do not call |
| graphite_legal_transform. |
| (scop_do_block): Same. |
| |
| 2010-08-20 Vladimir Kargov <kargov@gmail.com> |
| |
| * graphite-scop-detection.c (graphite_can_represent_loop): Correct the |
| description. |
| |
| 2010-08-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/45230 |
| * gcc.dg/graphite/id-pr45230.c: New. |
| |
| 2010-08-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_array_ref): New. |
| (instantiate_scev_r): Also handle ARRAY_REFs. |
| |
| 2010-08-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop): |
| Do not check for VAR_DECL, PARM_DECL, FUNCTION_DECL, LABEL_DECL, |
| RESULT_DECL, and FIELD_DECL. Return false for an |
| SSA_NAME_IS_DEFAULT_DEF. |
| (compute_scalar_evolution_in_loop): Do not further analyze the |
| scalar evolution when no_evolution_in_loop_p returns true. |
| |
| 2010-08-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-chrec.h (evolution_function_is_affine_p): Do not check |
| whether CHREC_LEFT is invariant. A function is affine when |
| CHREC_RIGHT is invariant. |
| |
| 2010-08-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (reduction_phi_p): Remove check for |
| is_gimple_reg. |
| (rewrite_degenerate_phi): Same. |
| (rewrite_reductions_out_of_ssa): Add check for is_gimple_reg. |
| |
| 2010-08-18 Vladimir Kargov <kargov@gmail.com> |
| |
| * graphite-scop-detection.c (graphite_can_represent_scev, |
| graphite_can_represent_expr, stmt_has_simple_data_refs_p, |
| graphite_can_represent_loop): Remove outermost_loop. |
| |
| 2010-08-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/45229 |
| * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Do not |
| handle GIMPLE_CALLs with no LHS. |
| |
| 2010-08-17 Riyadh Baghdadi <baghdadi.mr@gmail.com> |
| Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/graphite.exp: Add test rules for openscop read/write. |
| Call remove-build-file to clean up the generated *.graphite files. |
| |
| 2010-08-17 Riyadh Baghdadi <baghdadi.mr@gmail.com> |
| |
| * doc/invoke.texi (debugging options): Update documentation. |
| (-floop-interchange): Same. |
| (-flopp-strip-mine): Same. |
| (-floop-block): Same. |
| (-fgraphite-read): Add documentation. |
| (-fgraphite-write): Same. |
| |
| 2010-08-17 Riyadh Baghdadi <baghdadi.mr@gmail.com> |
| |
| * toplev.c (process_options): Disable graphite loop optimization |
| options when -fgraphite-read flag is used. |
| |
| 2010-08-17 Riyadh Baghdadi <baghdadi.mr@gmail.com> |
| |
| * graphite-poly.c (init_graphite_out_file): New. |
| (init_graphite_in_file): New. |
| (apply_poly_transforms): Updated to enable reading and writing of |
| multiple scop files. |
| * toplev.c (init_asm_output): Remove graphite in/out file initialization. |
| |
| 2010-08-17 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-scop-detection.c (graphite_can_represent_scev): Remove |
| redundant checks. |
| |
| 2010-08-12 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (precision_for_value): Adjust |
| computation of precision by 1. |
| |
| 2010-08-12 Riyadh Baghdadi <baghdadi.mr@gmail.com> |
| |
| * graphite-cloog-util.c (openscop_read_cloog_matrix): New. |
| (openscop_read_polyhedron_matrix): New. |
| * graphite-cloog-util.h (openscop_read_polyhedron_matrix): Declared. |
| (openscop_read_N_int): Same. |
| * graphite-poly.c (openscop_read_N_int): New. |
| (openscop_read_one_int): New. |
| (openscop_read_N_string): New. |
| (openscop_read_one_string): New. |
| (openscop_read_powerset_matrix): New. |
| (graphite_read_transforms): Remove. |
| (graphite_read_scatt): New. |
| (graphite_read_scop_file): New. |
| (apply_poly_transforms): Updated to call graphite_read_scop_file. |
| |
| 2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-poly.c: Change include order. |
| |
| 2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-cloog-compat.h (cloog_matrix_ncolumns): New. |
| (cloog_matrix_nrows): New. |
| |
| 2010-08-11 Riyadh Baghdadi <baghdadi.mr@gmail.com> |
| |
| * graphite-cloog-util.c (openscop_print_cloog_matrix): Remove spaces |
| from matrix lines. |
| * graphite-poly.c (openscop_print_scattering_function_1): Same. |
| (print_scattering_function_1): Same. |
| (openscop_print_pbb_domain): Same. |
| (openscop_print_scop_context): Same. |
| (print_scop_context): Same. |
| |
| 2010-08-11 Riyadh Baghdadi <baghdadi.mr@gmail.com> |
| |
| * graphite-poly.c (openscop_print_pdr_polyhedron): Fix indentation. |
| (openscop_print_pdr_polyhedron): Print pph. |
| |
| 2010-07-29 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/graphite.exp: Add compile rules for vect-* files. |
| * gfortran.dg/graphite/graphite.exp: Same. |
| * gcc.dg/graphite/vect-pr43423.c: New. |
| |
| 2010-07-29 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (gcc_type_for_interval): Generate in |
| priority signed types. |
| |
| 2010-07-29 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (max_signed_precision_type): Remove the call |
| to lang_hooks.types.type_for_size. Call build_nonstandard_integer_type. |
| |
| 2010-07-29 Riyadh Baghdadi <baghdadi.mr@gmail.com> |
| |
| * graphite-cloog-util.c (openscop_print_cloog_matrix): New. |
| (openscop_print_polyhedron_matrix): New. |
| * graphite-cloog-util.h (openscop_print_polyhedron_matrix): Declared. |
| * graphite-poly.c (openscop_print_pdr_polyhedron): Same. |
| (openscop_print_pdr_powerset): New. |
| (openscop_print_powerset_matrix): New. |
| (openscop_print_scattering_function_1): New. |
| (print_scattering_function): Add support for scattering names and |
| OpenScop format. |
| (graphite_write_transforms): Remove. |
| (apply_poly_transforms): Updated to call print_scop. |
| (print_pdr_access_layout): Updated to support OpenScop format. |
| (print_pdr): Same. |
| (openscop_print_pbb_domain): New. |
| (print_pbb_body): Added a parameter to allow indicating that pbb_body is |
| not provided. |
| (print_pbb): Updated to call the new print_pbb_body. |
| (openscop_print_scop_context): New. |
| (print_scop_header): New. |
| (print_scop): Updated to call print_scop_header. |
| * graphite-poly.h: Document OpenScop format. |
| |
| 2010-07-29 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Add back |
| the case removed in the previous patch, when the only phi argument |
| is defined in the same loop as the phi node itself. Handle it |
| separately from the invariant case by both propagating it outside |
| the region and replacing the phi node with an assign. |
| |
| 2010-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): The only |
| constant phi nodes with one argument are is_gimple_min_invariant |
| and SSA_NAME_IS_DEFAULT_DEF. |
| |
| * gfortran.dg/graphite/id-22.f: New. |
| |
| 2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite.c (graphite_initialize): Do not initialize |
| CLooG and initialize the Parma Polyhedra Library |
| manually when using CLOOG_ORG. |
| (graphite_finalize): Do not finalize CLooG and finalize |
| the Parma Polyhedra Library manually when using CLOOG_ORG. |
| * graphite-cloog-compat.h (cloog_initialize): Hide function |
| when using CLOOG_ORG. |
| (cloog_finalize): Same. |
| |
| 2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (free_scattering): Change |
| CloogDomainList/CloogDomain to CloogScatteringList/CloogScattering |
| (CLOOG_ORG). |
| (build_cloog_prog): Same. |
| * graphite-cloog-compat.h (cloog_domain): Removed. |
| (cloog_scattering): New. |
| (cloog_set_domain): Removed. |
| (cloog_set_scattering): New. |
| (cloog_next_domain): Removed. |
| (cloog_next_scattering): New. |
| (cloog_set_next_domain): Removed. |
| (cloog_set_next_scattering): New. |
| (CloogScatteringList): New. |
| (CloogScattering): New. |
| (cloog_scattering_free): New. |
| (new_Cloog_Scattering_from_ppl_Polyhedron): New. |
| * graphite-cloog-util.c (new_Cloog_Scattering_from_ppl_Polyhedron): |
| New. |
| |
| 2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (build_cloog_prog): Extend with |
| CloogState. |
| (set_cloog_options): Same. |
| (print_clast_stmt): Same. |
| (scop_to_clast): Same. |
| (print_generated_program): Same. |
| (gloog): Same. |
| * graphite-clast-to-gimple.h: Include graphite-cloog-util.h. |
| (scop_to_clast): Extend with CloogState. |
| * graphite-cloog-util.c: Include graphite-cloog-compat.h |
| (new_Cloog_Domain_from_ppl_Polyhedron): |
| Extend with CloogState. Use cloog_domain_from_cloog_matrix (CLOOG_ORG). |
| (new_Cloog_Domain_from_ppl_Pointset_Powerset): Extend with CloogState. |
| (new_Cloog_Domain_from_ppl_Polyhedron): Same. |
| * graphite-cloog-util.h (build_cloog_prog): Same. |
| * graphite-cloog-copat.h (build_cloog_prog): New. |
| (CloogState): New. |
| (cloog_state_malloc): New. |
| (cloog_state_free): New. |
| (cloog_loop_malloc): New. |
| (cloog_options_malloc): New. |
| (cloog_statement_alloc): New. |
| (cloog_domain_from_cloog_matrix): New. |
| (new_Cloog_Domain_from_ppl_Pointset_Powerset): New. |
| (new_Cloog_Domain_from_ppl_Polyhedron): New. |
| |
| 2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (clast_name_to_gcc): Parameter |
| type of NAME now depends on used CLooG version. |
| (clast_to_gcc_expression): Replace expr_* with clast_expr_*. |
| (gcc_type_for_clast_expr): Same. |
| (print_clast_stmt): Replace pprint with clast_pprint. |
| * graphite-cloog-compat.h: Provide compatibility macros for |
| CLooG Legacy. |
| (clast_name_p): New. |
| (clast_expr_term): New. |
| (clast_expr_red): New. |
| (clast_expr_bin): New. |
| (clast_pprint): New. |
| |
| 2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (set_cloog_options): Make CLooG options |
| compatible to newer CLooG releases (CLOOG_ORG). |
| (build_cloog_prog): Pass CloogOptions to more functions (CLOOG_ORG). |
| (scop_to_clast): Pass CloogOptions to build_cloog_prog (CLOOG_ORG). |
| * graphite-cloog-compat.h: Add compatibility macros for CLooG Legacy. |
| (build_cloog_prog) : New. |
| (cloog_program_extract_scalars): New. |
| (cloog_program_scatter): New. |
| |
| 2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c: Include graphite-cloog-compat.h |
| conditionally (CLOOG_ORG). |
| * graphite-cloog-compat.h: New. Include graphite-cloog-compat.h. |
| (cloog_statement_usr): New. |
| (cloog_domain): Same. |
| (cloog_set_domain): Same. |
| (cloog_next_domain): Same. |
| (cloog_set_next_domain): Same. |
| (cloog_program_nb_scattdims): Same. |
| (cloog_program_set_nb_scattdims): Same. |
| (cloog_program_names): Same. |
| (cloog_program_set_names): Same. |
| (cloog_program_set_context): Same. |
| (cloog_program_set_loop): Same. |
| (cloog_program_blocklist): Same. |
| (cloog_program_set_blocklist): Same. |
| (cloog_program_scaldims): Same. |
| (cloog_program_set_scaldims): Same. |
| (cloog_names_nb_parameters): Same. |
| (cloog_names_set_nb_parameters): Same. |
| (cloog_names_parameters): Same. |
| (cloog_names_set_parameters): Same. |
| (cloog_names_set_nb_iterators): Same. |
| (cloog_names_set_iterators): Same. |
| (cloog_names_set_nb_scattering): Same. |
| (cloog_names_set_scattering): Same. |
| (cloog_statement_set_usr): Same. |
| (cloog_loop_set_next): Same. |
| (cloog_loop_set_domain): Same. |
| (cloog_loop_set_block): Same. |
| (cloog_block_list_next): Same. |
| (cloog_block_list_set_next): |
| (cloog_block_list_set_block): Same. |
| |
| 2010-07-27 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Returns |
| a bool. |
| (rewrite_commutative_reductions_out_of_ssa_close_phi): Same. |
| (rewrite_commutative_reductions_out_of_ssa_loop): Same. |
| (rewrite_cross_bb_scalar_deps_out_of_ssa): Call scev_reset_htab |
| when something has been changed. |
| (rewrite_commutative_reductions_out_of_ssa): Same. |
| |
| * gcc.dg/graphite/id-26.c: New. |
| |
| 2010-07-26 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (propagate_expr_outside_region): Also |
| handle the case when def is in the sese region. |
| (rewrite_close_phi_out_of_ssa): Call propagate_expr_outside_region |
| for invariant expressions. |
| (rewrite_cross_bb_phi_deps): Removed. |
| (rewrite_cross_bb_scalar_deps): Also handle GIMPLE_PHI nodes. |
| (rewrite_cross_bb_scalar_deps_out_of_ssa): Do not call |
| rewrite_cross_bb_phi_deps. |
| |
| 2010-07-26 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c |
| (rewrite_commutative_reductions_out_of_ssa_loop): Call |
| scev_analyzable_p only on is_gimple_reg |
| |
| * gcc.dg/graphite/id-25.c: New. |
| |
| 2010-07-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (propagate_expr_outside_region): New. |
| (rewrite_close_phi_out_of_ssa): Propagate constant values or |
| parametric expressions outside the scop region. |
| (rewrite_cross_bb_scalar_deps): Same. |
| * sese.c (rename_uses): Use NULL_TREE instead of NULL for trees. |
| |
| * gcc.dg/graphite/run-id-5.c: New. |
| * gcc.dg/graphite/run-id-6.c: New. |
| * gfortran.dg/graphite/id-21.f: New. |
| |
| 2010-07-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Use |
| SSA_NAME_DEF_STMT only on SSA_NAMEs. |
| |
| * gcc.dg/graphite/id-24.c: New. |
| |
| 2010-07-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_name): Do not |
| instantiate default definitions. |
| |
| 2010-07-20 Vladimir Kargov <kargov@gmail.com> |
| |
| * graphite-scop-detection.c (is_valid_stmt_p): New. |
| (is_valid_bb_p): New. |
| |
| 2010-07-20 Vladimir Kargov <kargov@gmail.com> |
| Sebastian Pop <sebastian.pop@amd.com> |
| |
| * cfgloop.c (is_loop_exit): Renamed loop_exits_to_bb_p. |
| (loop_exits_from_bb_p): New. |
| * cfgloop.h (is_loop_exit): Renamed loop_exits_to_bb_p. |
| (loop_exits_from_bb_p): Declared. |
| * graphite-scop-detection.c (scopdet_basic_block_info): Call |
| loop_exits_to_bb_p. |
| |
| 2010-07-20 Vladimir Kargov <kargov@gmail.com> |
| |
| * refined-regions.c: Include tree-pass.h, cfgloop.h, gimple.h, and |
| tree-data-ref.h. |
| (dot_regions_1): New. |
| (dot_regions): New. |
| * refined-regions.h (dot_regions): Declared. |
| * Makefile.in (refined-regions.o): Update dependences. |
| |
| 2010-07-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Add an |
| extra parameter for the region. Call scev_analyzable_p. |
| (rewrite_reductions_out_of_ssa): Update call to |
| rewrite_close_phi_out_of_ssa. |
| (rewrite_cross_bb_phi_deps): Same. |
| (rewrite_commutative_reductions_out_of_ssa_loop): Add an extra |
| parameter for the region. Call scev_analyzable_p. |
| (rewrite_commutative_reductions_out_of_ssa): Update call to |
| rewrite_commutative_reductions_out_of_ssa_loop. |
| |
| 2010-07-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/tree-ssa/pr20742.c: New. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.c (rename_uses): Call unshare_expr before force_gimple_operand. |
| |
| * gcc.dg/graphite/id-23.c: New. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (reduction_phi_p): Do not rewrite out of |
| SSA scalar phi nodes that can be scev_analyzable_p. |
| |
| * gfortran.dg/graphite/id-20.f: Adjust testcase. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Correctly |
| handle SSA_NAME_IS_DEFAULT_DEF. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.c (rename_uses): Handl unconditionally gimple_debug statements. |
| |
| * gcc.dg/graphite/pr42729.c: New. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Special |
| case non close-phi nodes with one argument. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.h (scev_analyzable_p): Scevs could be expressions without |
| chrecs and still be scev_analyzable_p. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * cfgloop.c (alloc_loop): Remove initialization of loop->single_iv. |
| * cfgloop.h (struct loop): Remove single_iv field. |
| * graphite-sese-to-poly.c (graphite_loop_normal_form): Removed. |
| (scop_canonicalize_loops): Removed. |
| (scop_ivs_can_be_represented): Do not use loop->single_iv. Iterate |
| over all the loop phi nodes in loop->header. |
| (build_poly_scop): Remove use of scop_canonicalize_loops. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Also |
| handle GIMPLE_CALL. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-chrec.c (chrec_apply): Should only apply to the specified |
| variable. Also handle multivariate chains of recurrences that |
| satisfy evolution_function_is_affine_p. Also handle CASE_CONVERT. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (debug_clast_name_index): Removed. |
| (debug_clast_name_indexes_1): Removed. |
| (debug_clast_name_indexes): Removed. |
| (pbb_to_depth_to_oldiv): Removed. |
| (build_iv_mapping): Replace the use of rename_map with iv_map. |
| (translate_clast_user): Remove uses of rename_map. Allocate and |
| free iv_map. |
| (translate_clast_for_loop): Remove uses of rename_map. |
| (translate_clast_for): Same. |
| (translate_clast_guard): Same. |
| (translate_clast): Same. |
| (gloog): Same. |
| * graphite-clast-to-gimple.h (debug_clast_name_indexes): Removed. |
| * graphite-sese-to-poly.c (scev_analyzable_p): Moved... |
| * sese.c (set_rename): Now static. |
| (rename_variables_in_stmt): Removed. |
| (rename_uses): New. |
| (is_parameter): Removed. |
| (is_iv): Removed. |
| (expand_scalar_variables_call): Removed. |
| (expand_scalar_variables_ssa_name): Removed. |
| (expand_scalar_variables_expr): Removed. |
| (expand_scalar_variables_stmt): Removed. |
| (expand_scalar_variables): Removed. |
| (rename_variables): Removed. |
| (remove_condition): Removed. |
| (get_true_edge_from_guard_bb): Removed. |
| (get_false_edge_from_guard_bb): Removed. |
| (struct igp): Removed. |
| (default_before_guard): Removed. |
| (convert_for_phi_arg): Removed. |
| (add_guard_exit_phis): Removed. |
| (insert_guard_phis): Removed. |
| (graphite_copy_stmts_from_block): Now also uses iv_map and a |
| region. Do not copy conditions. Do not copy induction variables. |
| Call rename_uses. |
| (copy_bb_and_scalar_dependences): Allocate a local rename_map for |
| the translated statement. Use the iv_map for the induction |
| variable renaming. |
| * sese.h (copy_bb_and_scalar_dependences): Update declaration. |
| (set_rename): Removed declaration. |
| (scev_analyzable_p): ...here. |
| * tree-chrec.c (chrec_apply_map): New. |
| * tree-chrec.h (chrec_apply_map): Declared. |
| |
| 2010-07-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (translate_clast_for_loop): Do not call |
| insert_loop_close_phis. |
| * sese.c (name_defined_in_loop_p): Removed. |
| (expr_defined_in_loop_p): Removed. |
| (alive_after_loop): Removed. |
| (close_phi_not_yet_inserted_p): Removed. |
| (struct alep): Removed. |
| (add_loop_exit_phis): Removed. |
| (insert_loop_close_phis): Removed. |
| |
| 2010-07-15 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-cloog-util.c (cloog_matrix_to_ppl_constraint): Fix flipped |
| condition. |
| * graphite-poly.c (psct_scattering_dim_for_loop_depth): Same. |
| |
| 2010-07-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gfortran.dg/graphite/id-20.f: New. |
| |
| 2010-07-05 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-cloog-util.h: Added cloog.h. |
| * graphite-blocking.c: Removed cloog.h. |
| * graphite-dependences.c: Same. |
| * graphite-interchange.c: Same. |
| * graphite-poly.c: Same. |
| * graphite-ppl.c: Same. |
| * graphite-scop-detection.c: Same. |
| * graphite-sese-to-poly.c: |
| Removed cloog.h. |
| Removed graphite-clast-to-gimple.h. |
| (check_poly_representation): Removed (unused). |
| * graphite-sese-to-poly.h |
| (check_poly_representation): Removed (unused). |
| |
| 2010-07-05 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * Makefile.in |
| (OBJS-common): Added graphite-cloog-util.o. |
| (graphite-clast-to-gimple.o): Added graphite-cloog-util.h. |
| (graphite-cloog-util.o): New. |
| (graphite-ppl.o): Added graphite-cloog-util.h. |
| * graphite-clast-to-gimple.c: |
| Added graphite-cloog-util.h to include statements. |
| * graphite-cloog-util.c: New. |
| (new_Cloog_Matrix_from_ppl_Polyhedron): Moved from graphite-ppl.c. |
| (new_Cloog_Domain_from_ppl_Polyhedron): Same. |
| (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same. |
| (new_C_Polyhedron_from_Cloog_Matrix): Same. |
| (ppl_Constrain_System_number_of_constraints): Same. |
| (new_Cloog_Matrix_from_ppl_Constraint_System): Same. |
| (oppose_constraint): Same. |
| (cloog_matrix_to_ppl_constraint): Same. |
| (new_Constraint_System_from_Cloog_Matrix): Same. |
| (insert_constraint_into_matrix): Same. Declared static. |
| * graphite-cloog-util.h: New. |
| (new_Cloog_Matrix_from_ppl_Polyhedron): Moved from graphite-ppl.h. |
| (new_Cloog_Domain_from_ppl_Polyhedron): Same. |
| (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same. |
| (new_C_Polyhedron_from_Cloog_Matrix): Same. |
| (insert_constraint_into_matrix): Same. |
| * graphite-ppl.c: |
| Added graphite-cloog-util.h to include statements. |
| (new_Cloog_Matrix_from_ppl_Polyhedron): Moved to graphite-cloog-util.c. |
| (new_Cloog_Domain_from_ppl_Polyhedron): Same. |
| (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same. |
| (new_C_Polyhedron_from_Cloog_Matrix): Same. |
| (insert_constraint_into_matrix): Same. |
| (ppl_Constrain_System_number_of_constraints): Same. |
| (new_Cloog_Matrix_from_ppl_Constraint_System): Same. |
| (oppose_constraint): Same. |
| (cloog_matrix_to_ppl_constraint): Same. |
| (new_Constraint_System_from_Cloog_Matrix): Same. |
| * graphite-ppl.h: |
| (new_Cloog_Matrix_from_ppl_Polyhedron): Moved to |
| graphite-cloog-util.h. |
| (new_Cloog_Domain_from_ppl_Polyhedron): Same. |
| (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same. |
| (new_C_Polyhedron_from_Cloog_Matrix): Same. |
| (insert_constraint_into_matrix): Removed. |
| |
| 2010-07-04 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c |
| (precision_for_value): Resolve value_* calls to matching mpz_* calls. |
| (precision_for_interval): Same. |
| (gcc_type_for_interval): Same. |
| (compute_type_for_level): Same. |
| * graphite-interchange.c |
| (lst_interchange_profitable_p): Same. |
| * graphite-poly.c |
| (psct_scattering_dim_for_loop_depth): Same. |
| * graphite-ppl.c |
| (ppl_max_for_le_pointset): Same. |
| (ppl_min_for_le_pointset): Same. |
| |
| 2010-06-25 Vladimir Kargov <kargov@gmail.com> |
| |
| * refined-regions.c (bb_index_compare): New. |
| (get_bbs_in_region): New. |
| (print_bbs_in_region): New. |
| (print_refined_region): Add an argument that allows to print |
| all basic blocks contained in regions. |
| (debug_refined_region): Update call to print_refined_region. |
| * refined-regions.h (print_refined_region): Update declaration. |
| (get_bbs_in_region): Declared. |
| * graphite-scop-detection.c (build_scops_new): Print the refined |
| region tree into the Grahite dump file. |
| |
| 2010-06-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_degenerate_phi): New. |
| (rewrite_reductions_out_of_ssa): Call it for degenerate_phi_result. |
| |
| 2010-06-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_cross_bb_phi_deps): Call |
| rewrite_close_phi_out_of_ssa. |
| |
| * gcc.dg/graphite/id-22.c: New. |
| |
| 2010-06-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_cross_bb_phi_deps): Remove dead code. |
| |
| 2010-06-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (build_iv_mapping): Rename map with |
| rename_map. |
| * sese.c (debug_rename_map): Same. |
| (get_rename): Same. |
| (set_rename): Same. |
| (rename_variables_in_stmt): Same. |
| (expand_scalar_variables_call): Same. |
| (expand_scalar_variables_ssa_name): Same. |
| (expand_scalar_variables_expr): Same. |
| (expand_scalar_variables_stmt): Same. |
| (expand_scalar_variables): Same. |
| (rename_variables): Same. |
| (graphite_copy_stmts_from_block): Same. |
| (copy_bb_and_scalar_dependences): Same. |
| |
| 2010-06-24 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (copy_renames): Removed. |
| (translate_clast_for): Do not call copy_renames. |
| (translate_clast_guard): Same. |
| |
| 2010-06-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa): Moved up. |
| (rewrite_cross_bb_phi_deps): Split out of rewrite_cross_bb_scalar_deps. |
| (rewrite_cross_bb_scalar_deps_out_of_ssa): Run rewrite_cross_bb_phi_deps |
| before rewrite_cross_bb_scalar_deps. |
| |
| 2010-06-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_commutative_reductions_out_of_ssa): |
| Early return in when flag_associative_math is not set. |
| |
| 2010-06-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/run-id-2.c: Call abort. |
| |
| 2010-06-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Always insert out |
| of SSA copies on edges except for loop->latch. |
| |
| 2010-06-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps_out_of_ssa): |
| Split out of rewrite_reductions_out_of_ssa. |
| * graphite-sese-to-poly.h (rewrite_cross_bb_scalar_deps_out_of_ssa): |
| Declared. |
| * graphite.c (graphite_transform_loops): Call it. |
| |
| 2010-06-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite.c (graphite_transform_loops): Add two more dbg_cnt calls. |
| |
| 2010-06-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * passes.c (init_optimization_passes): Add pass_graphite. |
| Schedule a pass_copy_prop before pass_graphite_transforms. |
| * timevar.def (TV_GRAPHITE): Declared. |
| * tree-pass.h (pass_graphite): Declared. |
| * tree-ssa-loop.c (pass_graphite): New. |
| |
| * gcc.dg/graphite/id-20.c: New. |
| |
| 2010-06-12 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (gloog): Do not pass scops in parameter. |
| Remove calls to rename_nb_iterations and rename_sese_parameters. |
| * graphite-clast-to-gimple.h (gloog): Update declaration. |
| * graphite.c (graphite_transform_loops): Update call to gloog. |
| * sese.c (rename_variables_in_expr): Removed. |
| (rename_nb_iterations): Removed. |
| (rename_sese_parameters): Removed. |
| * sese.h (rename_nb_iterations): Removed. |
| (rename_sese_parameters): Removed. |
| |
| 2010-06-12 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (gloog): Remove call to |
| sese_adjust_liveout_phis. |
| * graphite-sese-to-poly.c (scev_analyzable_p): When scev returns an |
| SSA_NAME, allow it to be handled by rewrite_cross_bb_scalar_deps. |
| (rewrite_cross_bb_scalar_deps): Handle GIMPLE_PHI nodes: call |
| rewrite_phi_out_of_ssa. |
| * sese.c (get_vdef_before_sese): Removed. |
| (sese_adjust_vphi): Removed. |
| (sese_adjust_liveout_phis): Removed. |
| * sese.h (sese_adjust_liveout_phis): Removed. |
| |
| 2010-06-12 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Pass an extra |
| argument for the place after which to insert the out of SSA copy. |
| (rewrite_close_phi_out_of_ssa): Update calls to insert_out_of_ssa_copy. |
| (rewrite_phi_out_of_ssa): Same. |
| (rewrite_cross_bb_scalar_deps): Same. |
| (insert_copyout): Removed. |
| (insert_copyin): Removed. |
| (translate_scalar_reduction_to_array): Call insert_out_of_ssa_copy and |
| insert_out_of_ssa_copy_on_edge instead of insert_copyout and |
| insert_copyin. |
| |
| 2010-06-12 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (build_scop_bbs): Not static anymore. |
| (rewrite_reductions_out_of_ssa): Same. |
| (rewrite_commutative_reductions_out_of_ssa): Same. |
| (build_poly_scop): Do not call these functions. |
| * graphite-sese-to-poly.h (build_poly_scop): Declared. |
| (rewrite_reductions_out_of_ssa): Declared. |
| (rewrite_commutative_reductions_out_of_ssa): Declared. |
| * graphite.c (graphite_transform_loops): Call on every scop |
| rewrite_commutative_reductions_out_of_ssa before calling |
| rewrite_reductions_out_of_ssa and build_scop_bbs. |
| |
| 2010-06-12 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (dot_deps): Make system call to dotty run |
| in background. |
| (dot_deps_stmt): Same. |
| * graphite-poly.c (dot_lst): Same. |
| |
| 2010-06-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (gcc_type_for_interval): Do not pass |
| old_type in parameter. |
| (gcc_type_for_value): Update call to gcc_type_for_interval. |
| (compute_type_for_level_1): Renamed compute_type_for_level. |
| Update call to gcc_type_for_interval. |
| |
| 2010-06-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_name): Do not fail |
| the scev analysis when the variable is not used outside the loop |
| in a close phi node: call compute_overall_effect_of_inner_loop. |
| |
| 2010-06-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (single_pred_cond): Renamed |
| single_pred_cond_non_loop_exit. Return NULL for loop exit edges. |
| (build_sese_conditions_before): Renamed call to single_pred_cond. |
| (build_sese_conditions_after): Same. |
| |
| 2010-06-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.h: Fix comments and indentation. |
| * graphite-sese-to-poly.c: Same. |
| (build_sese_conditions_before): Compute stmt and gbb only when needed. |
| * tree-chrec.c: Fix comments and indentation. |
| (tree-ssa-loop-niter.c): Same. |
| |
| 2010-06-08 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * refined-regions.c (create_region): Only initialize the region. |
| (find_regions_with_entry): Initialize parent relation and bbmap |
| correctly. |
| (build_regions_tree): Set outermost_region to region instead of |
| topmost_region. |
| (calculate_region_tree): Remove unneeded parameters. |
| |
| 2010-06-02 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-scop-detection.c (is_scop_p): New. |
| (build_scops_new): New. A skeleton for the new scop detection. |
| (build_scops_old): Renamed from build_scops. |
| (build_scops): New version. Call the new and the old scop |
| detection. |
| |
| 2010-05-27 Tobias Grosser <grosser@fim.uni-passau.de> |
| Antoniu Pop <antoniu.pop@gmail.com> |
| |
| * Makefile.in (OBJS-common): Add refined-regions.o. |
| (refined-regions.o): New. |
| (graphite-scop-detection.o): Use refined-regions.h. |
| * graphite-scop-detection.c: Include refined-regions.h |
| (build_scops): Also build the refined region tree. |
| * refined-regions.c: New. Adds an algorithm to detect refined |
| regions. |
| (print_refined_region): New. |
| (debug_refined_region): New. |
| (refined_region_contains_bb_p): New. |
| (refined_region_contains_region_p): New. |
| (is_common_df): New. |
| (struct find_regions_global_data): New. |
| (is_region): New. |
| (typedef struct bb_bb_def): New. |
| (new_bb_bb_def): New. |
| (bb_bb_map_hash): New. |
| (eq_bb_bb_map): New. |
| (find_new_bb): New. |
| (bb_reg_def): New. |
| (new_bb_reg_def): New. |
| (bb_reg_map_hash): New. |
| (eq_bb_reg_map): New. |
| (find_new_region): New. |
| (insert_new_reg): New. |
| (insert_new_bb): New. |
| (insert_shortcut): New. |
| (get_next_postdom): New. |
| (create_region): New. |
| (find_regions_with_entry): New. |
| (find_regions_adc): New. |
| (find_regions): New. |
| (get_topmost_parent): New. |
| (build_regions_tree): New. |
| (calculate_region_tree): New. |
| (free_region_tree): New. |
| * refined-regions.h: New. |
| (struct refined_region): New. |
| (calculate_region_tree): New. |
| (free_region_tree): New. |
| (refined_region_contains_bb_p): New. |
| (refined_region_contains_region_p): New. |
| (print_refined_region): New. |
| (debug_refined_region): New. |
| |
| 2010-05-26 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use |
| size_one_node. |
| |
| 2010-05-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Fix |
| type of integer_one_node for fold_build of POINTER_PLUS_EXPR. |
| |
| 2010-05-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (loop_entry_phi_arg): Renamed |
| phi_arg_in_outermost_loop. |
| (remove_simple_copy_phi): Call phi_arg_in_outermost_loop. |
| (remove_invariant_phi): Same. |
| |
| 2010-04-12 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-blocking.c |
| (pbb_strip_mine_profitable_p): Replace Value with mpz_t. |
| * graphite-clast-to-gimple.c |
| (clast_to_gcc_expression): Same. |
| (precision_for_value): Same. |
| (precision_for_interval): Same. |
| (gcc_type_for_interval): Same. |
| (graphite_create_new_guard): Same. |
| (compute_bounds_for_level): Same. |
| (graphite_create_new_loop_guard): Same. |
| * graphite-interchange.c |
| (build_linearized_memory_access): Same. |
| (pdr_stride_in_loop): Same. |
| (memory_strides_in_loop_1): Same. |
| (memory_strides_in_loop): Same. |
| (extend_scattering): Same. |
| (psct_scattering_dim_for_loop_depth): Same. |
| (pbb_number_of_iterations): Same. |
| * graphite-poly.h |
| (debug_iteration_domains): Same. |
| * graphite-ppl.c |
| (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same. |
| (ppl_set_inhomogeneous_gmp): Same. |
| (ppl_strip_loop): Same. |
| (ppl_lexico_compare_linear_expressions): Same. |
| (ppl_read_polyhedron_matrix): Same. |
| (ppl_max_for_le_pointset): Same. |
| * graphite-ppl.h |
| (ppl_read_polyhedron_matrix): Same. |
| (tree_int_to_gmp): Same. |
| (gmp_cst_to_tree): Same. |
| (ppl_set_inhomogeneous): Same. |
| (ppl_set_inhomogeneous_tree): Same. |
| (ppl_set_coef): Same. |
| (ppl_set_coef_tree): Same. |
| * graphite-sese-to-poly.c |
| (build_pbb_scattering_polyhedrons): Same. |
| (build_scop_scattering): Same. |
| (scan_tree_for_params_right_scev): Same. |
| (scan_tree_for_params): Same. |
| (find_params_in_bb): Same. |
| (find_scop_parameters): Same. |
| (add_upper_bounds_from_estimated_nit): Same. |
| (build_loop_iteration_domains): Same. |
| (add_condition_to_domain): Same. |
| (pdr_add_memory_accesses): Same. |
| |
| 2010-04-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de> |
| |
| * graphite-blocking.c (pbb_strip_mine_profitable_p): Resolve |
| CLooG's value_* macros to their respective mpz_* counterparts. |
| * graphite-clast-to-gimple.c (clast_to_gcc_expression): Same. |
| (graphite_create_new_loop_guard): Same. |
| * graphite-interchange.c (build_linearized_memory_access): Same. |
| (pdr_stride_in_loop): Same. |
| (memory_strides_in_loop_1): Same. |
| (1st_interchange_profitable_p): Same. |
| * graphite-poly.c (extend_scattering): Same. |
| (psct_scattering_dim_for_loop_depth): Same. |
| (pbb_number_of_iterations): Same. |
| (pbb_number_of_iterations_at_time): Same. |
| * graphite-poly.h (new_1st_loop): Same. |
| * graphite-ppl.c (cloog_matrix_to_ppl_constraint): Same. |
| (oppose_constraint): Same. |
| (insert_constraint_into_matrix): Same. |
| (ppl_set_inhomogeneous_gmp): Same. |
| (ppl_set_coef_gmp): Same. |
| (ppl_strip_loop): Same. |
| (ppl_lexico_compare_linear_expressions): Same. |
| (ppl_max_for_le_pointset): Same. |
| (ppl_min_for_le_pointset): Same. |
| (ppl_build_realtion): Same. |
| * graphite-ppl.h (gmp_cst_to_tree): Same. |
| (ppl_set_inhomogeneous): Same. |
| (ppl_set_inhomogeneous_tree): Same. |
| (ppl_set_coef): Same. |
| (ppl_set_coef_tree): Same. |
| * graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): Same. |
| (build_scop_scattering): Same. |
| (add_value_to_dim): Same. |
| (scan_tree_for_params_right_scev): Same. |
| (scan_tree_for_params_int): Same. |
| (scan_tree_for_params): Same. |
| (find_params_in_bb): Same. |
| (find_scop_parameters): Same. |
| (add_upper_bounds_from_estimated_nit): Same. |
| (build_loop_iteration_domains): Same. |
| (create_linear_expr_from_tree): Same. |
| (add_condition_to_domain): Same. |
| (pdr_add_memory_accesses): Same. |
| |
| 2010-04-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43519 |
| * graphite-clast-to-gimple.c (max_signed_precision_type): Use |
| lang_hooks.types.type_for_size instead of build_nonstandard_integer_type. |
| When converting an unsigned type to signed, double its precision. |
| (gcc_type_for_interval): Use lang_hooks.types.type_for_size. |
| (gcc_type_for_iv_of_clast_loop): Call max_signed_precision_type. |
| (graphite_create_new_loop_guard): When ub + 1 wraps around, use lb <= ub. |
| |
| 2010-04-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43519 |
| * graphite-clast-to-gimple.c (max_signed_precision_type): Use |
| build_nonstandard_integer_type. |
| (gcc_type_for_interval): Same. |
| |
| 2010-04-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43519 |
| * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use |
| POINTER_PLUS_EXPR for pointer types. |
| |
| * gcc.dg/graphite/id-19.c: New. |
| |
| 2010-04-04 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43519 |
| * Makefile.in (graphite-clast-to-gimple.o): Depends on langhooks.h. |
| * graphite-clast-to-gimple.c: Include langhooks.h. |
| (max_signed_precision_type): New. |
| (max_precision_type): Takes two types as arguments. |
| (precision_for_value): New. |
| (precision_for_interval): New. |
| (gcc_type_for_interval): New. |
| (gcc_type_for_value): New. |
| (gcc_type_for_clast_term): New. |
| (gcc_type_for_clast_red): New. |
| (gcc_type_for_clast_bin): New. |
| (gcc_type_for_clast_expr): Split up into several functions. |
| (gcc_type_for_clast_eq): Rewritten. |
| (compute_bounds_for_level): New. |
| (compute_type_for_level_1): New. |
| (compute_type_for_level): New. |
| (gcc_type_for_cloog_iv): Removed. |
| (gcc_type_for_iv_of_clast_loop): Rewritten. |
| (graphite_create_new_loop): Compute the lower and upper bound types |
| with gcc_type_for_clast_expr. |
| (graphite_create_new_loop_guard): Same. |
| (find_cloog_iv_in_expr): Removed. |
| (compute_cloog_iv_types_1): Removed. |
| (compute_cloog_iv_types): Removed. |
| (gloog): Do not call compute_cloog_iv_types. |
| * graphite-sese-to-poly.c (new_gimple_bb): Do not initialize |
| GBB_CLOOG_IV_TYPES. |
| (free_data_refs_aux): Do not free GBB_CLOOG_IV_TYPES. |
| * sese.h (struct gimple_bb): Removed field cloog_iv_types. |
| (GBB_CLOOG_IV_TYPES): Removed. |
| |
| * gcc.dg/graphite/run-id-pr42644.c: Call abort. |
| |
| 2010-04-02 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Reverted this commit: as at this point the loop closed SSA form |
| is under a canonical form respecting the single argument condition. |
| * graphite-sese-to-poly.c (scalar_close_phi_node_p): Loop |
| close phi nodes may have more than one argument. |
| |
| 2010-04-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Assert that |
| gimple_phi_num_args of the loop close SSA phi node is equal to 1. |
| (detect_commutative_reduction): Same. |
| |
| 2010-03-31 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (scalar_close_phi_node_p): Loop |
| close phi nodes may have more than one argument. |
| |
| 2010-03-30 Richard Guenther <rguenther@suse.de> |
| Zdenek Dvorak <ook@ucw.cz> |
| Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43464 |
| * tree-ssa-copy.c (init_copy_prop): Handle loop close phi nodes |
| with multiple arguments. |
| (execute_copy_prop): Remove call to rewrite_into_loop_closed_ssa. |
| |
| 2010-03-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (print_pddr): Call print_pdr with an |
| extra argument. |
| * graphite-poly.c (debug_pdr): Add an extra argument for the |
| verbosity level. |
| (print_pdr): Same. |
| (print_pbb_domain): Same. |
| (print_pbb): Same. |
| (print_scop_context): Same. |
| (print_scop): Same. |
| (print_cloog): Same. |
| (debug_pbb_domain): Same. |
| (debug_pbb): Same. |
| (print_pdrs): Same. |
| (debug_pdrs): Same. |
| (debug_scop_context): Same. |
| (debug_scop): Same. |
| (debug_cloog): Same. |
| (print_scop_params): Same. |
| (debug_scop_params): Same. |
| (print_iteration_domain): Same. |
| (print_iteration_domains): Same. |
| (debug_iteration_domain): Same. |
| (debug_iteration_domains): Same. |
| (print_scattering_function): Same. |
| (print_scattering_functions): Same. |
| (debug_scattering_function): Same. |
| (debug_scattering_functions): Same. |
| * graphite-poly.h (debug_pdr): Update declaration. |
| (print_pdr): Same. |
| (print_pbb_domain): Same. |
| (print_pbb): Same. |
| (print_scop_context): Same. |
| (print_scop): Same. |
| (print_cloog): Same. |
| (debug_pbb_domain): Same. |
| (debug_pbb): Same. |
| (print_pdrs): Same. |
| (debug_pdrs): Same. |
| (debug_scop_context): Same. |
| (debug_scop): Same. |
| (debug_cloog): Same. |
| (print_scop_params): Same. |
| (debug_scop_params): Same. |
| (print_iteration_domain): Same. |
| (print_iteration_domains): Same. |
| (debug_iteration_domain): Same. |
| (debug_iteration_domains): Same. |
| (print_scattering_function): Same. |
| (print_scattering_functions): Same. |
| (debug_scattering_function): Same. |
| (debug_scattering_functions): Same. |
| |
| 2010-03-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (print_scattering_function_1): New. |
| (print_scattering_function): Call it. |
| (print_scop_params): Remove spaces at the end of lines. |
| (print_cloog): New. |
| (debug_cloog): New. |
| * graphite-poly.h (print_cloog): Declared. |
| (debug_cloog): Declared. |
| |
| 2010-03-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-ssa-copy.c: Revert this previous change: |
| (init_copy_prop): Loop closed phi nodes cancontain more than one |
| argument. |
| (execute_copy_prop): Revert the previous change: do not call |
| rewrite_into_loop_closed_ssa. |
| |
| 2010-03-21 Sebastian Pop <sebastian.pop@amd.com> |
| Richard Guenther <rguenther@suse.de> |
| |
| PR middle-end/43464 |
| * tree-ssa-copy.c (init_copy_prop): Loop closed phi nodes can |
| contain more than one argument. |
| (execute_copy_prop): Revert the previous change: do not call |
| rewrite_into_loop_closed_ssa. |
| |
| * gcc.dg/graphite/id-pr43464.c: Remove compile warning. |
| * gcc.dg/graphite/id-pr43464-1.c: New. |
| |
| 2010-03-21 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43464 |
| * tree-ssa-copy.c (execute_copy_prop): Call rewrite_into_loop_closed_ssa |
| and verify_loop_closed_ssa when copy prop is executed in the LNO. |
| |
| * gcc.dg/graphite/id-pr43464.c: New. |
| |
| 2010-03-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (graphite_loop_normal_form): Add the IV bump |
| in loop->header. |
| * tree-flow.h (canonicalize_loop_ivs): Updated declaration. |
| * tree-parloops.c (gen_parallel_loop): Add the IV bump in loop->latch. |
| * tree-ssa-loop-manip.c (canonicalize_loop_ivs): Add a new parameter |
| to switch between adding the IV bump in loop->latch or in loop->header. |
| |
| 2010-03-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * passes.c (init_optimization_passes): Add pass_copy_prop |
| after Graphite. |
| |
| 2010-03-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (print_scattering_function): Pretty print following |
| the scoplib format. |
| (print_pdr): Same. |
| (print_pbb_domain): Same. |
| (dump_gbb_cases): Same. |
| (dump_gbb_conditions): Same. |
| (print_pdrs): Same. |
| (print_pbb): Same. |
| (print_scop_params): Same. |
| (print_scop_context): Same. |
| (print_scop): Same. |
| (print_pbb_body): New. |
| (lst_indent_to): New. |
| (print_lst): Start new lines with a #. |
| * graphite-poly.h (pbb_bb): New. |
| (pbb_index): Use pbb_bb. |
| * graphite-ppl.c (ppl_print_powerset_matrix): Print the number of |
| disjuncts. |
| * tree-data-ref.c (dump_data_reference): Start new lines with a #. |
| |
| 2010-03-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43351 |
| * gcc.dg/graphite/id-pr43351.c |
| |
| 2010-03-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43354 |
| * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Do not |
| call insert_out_of_ssa_copy for default definitions. |
| * gfortran.dg/graphite/id-pr43354.f: New. |
| |
| 2010-03-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43349 |
| * gfortran.dg/graphite/pr43349.f: New. |
| |
| 2010-03-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (my_long_long): Defined. |
| (gcc_type_for_cloog_iv): Use it instead of long_long_integer_type_node. |
| * graphite-sese-to-poly.c (my_long_long): Defined. |
| (scop_ivs_can_be_represented): Use it. |
| |
| 2010-03-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * doc/invoke.texi: Fix documentation of graphite-max-nb-scop-params, |
| graphite-max-bbs-per-function, and loop-block-tile-size. |
| * params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Replace "maximal" |
| with "maximum". |
| (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Same. |
| |
| 2010-03-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Remove |
| forward declaration. |
| * graphite-sese-to-poly.c (reduction_phi_p): Remove FIXME comment. |
| (add_upper_bounds_from_estimated_nit): New. |
| (build_loop_iteration_domains): Use it. |
| |
| 2010-03-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * doc/invoke.texi (PARAM_LOOP_BLOCK_TILE_SIZE): Document. |
| |
| 2010-03-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43306 |
| * tree-chrec.c (evolution_function_right_is_integer_cst): CHREC_RIGHT |
| should be an INTEGER_CST. Also handle CASE_CONVERT. |
| * gcc.dg/graphite/pr43306.c: New. |
| |
| 2010-03-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite.c (graphite_initialize): To bound the number of bbs per |
| function, use PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION. |
| * params.def (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Declared. |
| * doc/invoke.texi: Document it. |
| |
| 2010-03-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (build_poly_scop): Do not return bool. |
| * graphite-sese-to-poly.h (build_poly_scop): Same. |
| |
| 2010-03-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (build_poly_scop): Limit scops following |
| the number of parameters in the scop. Use as an upper bound |
| PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS. |
| * params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Declared. |
| * doc/invoke.texi: Document it. |
| |
| 2010-03-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (add_param_constraints): Use |
| lower_bound_in_type and upper_bound_in_type. |
| |
| 2010-03-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (add_param_constraints): Use sizetype |
| instead of unsigned_type_node. |
| |
| 2010-03-05 Sebastian Pop <sebastian.pop@amd.com> |
| Reza Yazdani <reza.yazdani@amd.com> |
| |
| PR middle-end/43065 |
| * graphite-sese-to-poly.c (add_param_constraints): Insert bounds |
| on pointer type parameters. |
| |
| * gcc.dg/graphite/run-id-4.c: New. |
| |
| 2010-03-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43065 |
| * gcc.dg/graphite/run-id-3.c: New. |
| |
| 2010-03-05 Tobias Grosser <grosser@fim.uni-passau.de> |
| Ramakrishna Upadrasta <Ramakrishna.Upadrasta@inria.fr> |
| |
| * graphite-clast-to-gimple.c (clast_to_gcc_expression): Also |
| handle conversions from pointer to integers. |
| (gcc_type_for_cloog_iv): Choose the smalles signed integer as an |
| induction variable, to be able to work with code generated by CLooG. |
| * graphite-sese-to-poly.c (scop_ivs_can_be_represented): New. |
| (build_poly_scop): Bail out if we cannot codegen a loop. |
| |
| 2010-03-04 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (translate_clast): Do not short-cut |
| code generation with gloog_error. |
| |
| 2010-03-04 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.c (expand_scalar_variables_ssa_name): Add new argument for type. |
| Call fold_convert on all the returned values. |
| (expand_scalar_variables_expr): Pass to expand_scalar_variables_ssa_name |
| the type of the resulting expression. |
| |
| 2010-03-04 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-ppl.c (ppl_min_for_le_polyhedron): Renamed |
| ppl_min_for_le_pointset. Use ppl_Pointset_Powerset_C_Polyhedron_minimize. |
| * graphite-ppl.h (ppl_min_for_le_polyhedron): Update declaration. |
| |
| 2010-03-04 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (map_into_dep_poly): Removed. |
| (dependence_polyhedron_1): Use combine_context_id_scat. |
| |
| 2010-03-04 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.h (struct poly_scattering): Add layout documentation. |
| (struct poly_bb): Same. |
| (combine_context_id_scat): New. |
| |
| 2010-03-02 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42326 |
| * sese.c (name_defined_in_loop_p): Return false for default |
| definitions. |
| |
| * gcc.dg/graphite/pr42326.c: New. |
| |
| 2010-02-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (find_cloog_iv_in_expr): Simplify |
| and clean up the logic. |
| |
| 2010-02-23 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (add_param_constraints): Enabled: remove |
| early return. |
| |
| 2010-02-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43083 |
| * graphite-scop-detection.c (create_single_exit_edge): Move |
| the call to find_single_exit_edge to.... |
| (create_sese_edges): ...here. Don't handle multiple edges |
| exiting the function. |
| (build_graphite_scops): Don't handle multiple edges |
| exiting the function. |
| |
| * gcc.dg/graphite/pr43083.c: New. |
| |
| 2010-02-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43097 |
| * sese.c (get_rename): Assert that old_name is an SSA_NAME. |
| (rename_variables_in_stmt): Continue when the use is not an SSA_NAME. |
| |
| * gfortran.dg/graphite/pr43097.f: New. |
| |
| 2010-02-22 Sebastian Pop <sebastian.pop@amd.com> |
| Manuel López-Ibáñez <manu@gcc.gnu.org> |
| |
| PR middle-end/43140 |
| * g++.dg/graphite/pr41305.C: Add -Wno-conversion-null. |
| |
| 2010-02-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43026 |
| * sese.c (expand_scalar_variables_expr): Handle COMPONENT_REF. |
| |
| * g++.dg/graphite/pr43026.C: New. |
| |
| 2010-02-13 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * Merge from mainline (154736:156693). |
| |
| 2010-02-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/43012 |
| * gcc.dg/graphite/pr43012.c: New. |
| |
| 2010-02-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite.c (graphite_transform_loops): Re-enable dbg_cnt. |
| 2010-02-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * g++.dg/graphite/pr42930.C: New. |
| |
| 2010-02-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42930 |
| * graphite-scop-detection.c (graphite_can_represent_scev): Call |
| graphite_can_represent_init for MULT_EXPR. |
| |
| 2010-02-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42914 |
| PR middle-end/42530 |
| * graphite-sese-to-poly.c (remove_phi): New. |
| (translate_scalar_reduction_to_array): Call remove_phi. |
| |
| * gcc.dg/graphite/pr42530.c: New. |
| * gcc.dg/graphite/pr42914.c: New. |
| |
| 2010-02-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42771 |
| * graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters. |
| * graphite-clast-to-gimple.h (gloog): Update declaration. |
| * graphite-poly.c (new_scop): Clear POLY_SCOP_P. |
| * graphite-poly.h (struct poly_bb): Add missing comments. |
| (struct scop): Add poly_scop_p field. |
| (POLY_SCOP_P): New. |
| * graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P. |
| * graphite.c (graphite_transform_loops): Build the polyhedral |
| representation for each scop before code generation. |
| * sese.c (rename_variables_in_operand): Removed. |
| (rename_variables_in_expr): Return the renamed expression. |
| (rename_sese_parameters): New. |
| * sese.h (rename_sese_parameters): Declared. |
| |
| * gcc.dg/graphite/pr42771.c: New. |
| |
| 2010-02-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/block-0.c: Call abort for runtime test. Always |
| return 0 from main. |
| * gcc.dg/graphite/block-1.c: Same. |
| * gcc.dg/graphite/block-3.c: Same. |
| * gcc.dg/graphite/block-4.c: Same. |
| * gcc.dg/graphite/block-5.c: Same. |
| * gcc.dg/graphite/block-6.c: Same. |
| * gcc.dg/graphite/block-7.c: Same. |
| * gcc.dg/graphite/interchange-0.c: Same. |
| * gcc.dg/graphite/interchange-1.c: Same. |
| * gcc.dg/graphite/interchange-10.c: Same. |
| * gcc.dg/graphite/interchange-11.c: Same. |
| * gcc.dg/graphite/interchange-12.c: Same. |
| * gcc.dg/graphite/interchange-2.c: Same. |
| * gcc.dg/graphite/interchange-3.c: Same. |
| * gcc.dg/graphite/interchange-4.c: Same. |
| * gcc.dg/graphite/interchange-5.c: Same. |
| * gcc.dg/graphite/interchange-6.c: Same. |
| * gcc.dg/graphite/interchange-7.c: Same. |
| * gcc.dg/graphite/interchange-8.c: Same. |
| * gcc.dg/graphite/interchange-9.c: Same. |
| * gcc.dg/graphite/interchange-mvt.c: Same. |
| |
| 2010-02-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gfortran.dg/graphite/id-19.f: New. |
| * gfortran.dg/graphite/pr14741.f90: New. |
| * gfortran.dg/graphite/pr41924.f90: New. |
| * gfortran.dg/graphite/run-id-2.f90: New. |
| |
| 2010-02-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42988 |
| * graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND |
| to unknown_dependence. |
| (graphite_legal_transform_dr): Handle the unknown_dependence. |
| (graphite_carried_dependence_level_k): Same. |
| |
| 2010-02-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/. |
| |
| 2010-02-05 Sebastian Pop <sebastian.pop@amd.com> |
| Konrad Trifunovic <konrad.trifunovic@inria.fr> |
| |
| PR middle-end/42637 |
| * graphite-dependences.c (build_lexicographical_constraint): Return |
| a union of dependence polyhedra. |
| (dependence_polyhedron_1): Adapt for build_lexicographical_constraint. |
| |
| * gcc.dg/graphite/block-0.c: Enable runtime check. XFAILed. |
| * gcc.dg/graphite/block-4.c: Same. |
| * gcc.dg/graphite/block-7.c: Same. |
| * gcc.dg/graphite/interchange-12.c: Same. |
| * gcc.dg/graphite/interchange-mvt.c: Same. |
| * gfortran.dg/graphite/interchange-1.f: XFAILed. |
| * gfortran.dg/graphite/interchange-3.f90: XFAILed. |
| * gfortran.dg/graphite/run-id-1.f: New testcase for PR42637. |
| |
| 2010-02-03 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/interchange-12.c: Return 0 to avoid |
| the execution check to FAIL. This testcase is miscompiled by Graphite |
| and the check should be re-enabled. |
| * gcc.dg/graphite/interchange-mvt.c: Same. |
| * gcc.dg/graphite/block-0.c: Same. |
| * gcc.dg/graphite/block-4.c: Same. |
| * gcc.dg/graphite/block-7.c: Same. |
| |
| 2010-02-03 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/interchange-mvt.c: Un-XFAILed. |
| * gcc.dg/graphite/scop-0.c: Fix spaces. |
| * gfortran.dg/graphite/block-1.f90: Rewrite expected output. |
| * gfortran.dg/graphite/block-2.f: Same. |
| * gfortran.dg/graphite/block-3.f90: Same. |
| * gfortran.dg/graphite/block-4.f90: Same. |
| * gfortran.dg/graphite/interchange-1.f: Un-XFAILed. |
| * gfortran.dg/graphite/interchange-3.f90: Un-XFAILed. |
| |
| 2010-02-03 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (new_poly_ddr): Initialize PDDR_KIND and |
| PDDR_ORIGINAL_SCATTERING_P. |
| (pddr_is_empty): Rewritten. |
| (print_dependence_polyhedron_layout): New. |
| (print_pddr): New. |
| (debug_pddr): New. |
| (build_alias_set_powerset): Moved up. |
| (poly_drs_may_alias_p): Moved up. |
| (lexicographically_gt_p): Removed. |
| (build_lexicographically_gt_constraint): Renamed |
| build_lexicographical_constraint, reimplemented. |
| (dependence_polyhedron_1): Simplified parameters. |
| (dependence_polyhedron): Same. Keep along empty PDDRs |
| to make efficient use of the cache. |
| (reduction_dr_p): Compute the PBBs don't pass them as parameters. |
| (graphite_legal_transform_dr): Rewritten. |
| (graphite_legal_transform_bb): Pass fewer arguments to |
| graphite_legal_transform_dr. |
| (graphite_carried_dependence_level_k): Simplified implementation. |
| (dot_original_deps_stmt_1): Call dependence_polyhedron. |
| (dot_transformed_deps_stmt_1): Same. |
| (dot_original_deps): Same. |
| (dot_transformed_deps): Same. |
| * graphite-dependences.h (struct poly_ddr): Added a new field |
| original_scattering_p. |
| (PDDR_ORIGINAL_SCATTERING_P): New. |
| (print_pddr): Declared. |
| (debug_pddr): Declared. |
| * graphite-ppl.c: Clarify comment. |
| * sese.h (print_gimple_bb): Removed unused declaration. |
| (debug_gbb): Same. |
| |
| 2010-02-03 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * g++.dg/graphite/graphite.exp: Rewritten. |
| * gcc.dg/graphite/graphite.exp: Rewritten. |
| * gfortran.dg/graphite/graphite.exp: Rewritten. |
| * gcc.dg/graphite/block-0.c: Added runtime test. |
| * gcc.dg/graphite/block-1.c: Same. |
| * gcc.dg/graphite/block-3.c: Same. |
| * gcc.dg/graphite/block-4.c: Same. |
| * gcc.dg/graphite/block-5.c: Same. |
| * gcc.dg/graphite/block-6.c: Same. |
| * gcc.dg/graphite/block-7.c: Same. |
| * gcc.dg/graphite/interchange-0.c: Same. |
| * gcc.dg/graphite/interchange-1.c: Same. |
| * gcc.dg/graphite/interchange-10.c: Same. |
| * gcc.dg/graphite/interchange-11.c: Same. |
| * gcc.dg/graphite/interchange-12.c: Same. |
| * gcc.dg/graphite/interchange-2.c: Same. |
| * gcc.dg/graphite/interchange-3.c: Same. |
| * gcc.dg/graphite/interchange-4.c: Same. |
| * gcc.dg/graphite/interchange-5.c: Same. |
| * gcc.dg/graphite/interchange-6.c: Same. |
| * gcc.dg/graphite/interchange-7.c: Same. |
| * gcc.dg/graphite/interchange-8.c: Same. |
| * gcc.dg/graphite/interchange-9.c: Same. |
| * gcc.dg/graphite/interchange-mvt.c: Same. |
| * gcc.dg/graphite/run-id-2.c: Remove useless dg-do run. |
| |
| 2010-01-22 Ramakrishna Upadrasta <Ramakrishna.Upadrasta@inria.fr> |
| |
| * graphite-scop-detection.c (dot_all_scops): Make calls to dot run in |
| background. |
| |
| 2010-01-22 Ramakrishna Upadrasta <Ramakrishna.Upadrasta@inria.fr> |
| |
| * common.opt: Add -fgraphite-cloog-opts. |
| * graphite-clast-to-gimple.c (set_cloog_options): Same. |
| * opts.c (decode_options): Same. |
| |
| 2010-01-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/id-17.c: New. |
| * gcc.dg/graphite/pr41888.c: New. |
| * gcc.dg/graphite/scop-22.c: New. |
| * gfortran.dg/graphite/pr40982.f90: New. |
| |
| 2010-01-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c: Clarify comments. |
| (build_pddr): Add an extra parameter direction. |
| (graphite_legal_transform_dr): Use build_pddr. |
| (dot_original_deps_stmt_1): Update use of build_pddr. |
| (dot_transformed_deps_stmt_1): Same. |
| (dot_original_deps): Same. |
| (dot_transformed_deps): Same. |
| |
| * gcc.dg/graphite/interchange-12.c: New. |
| * gcc.dg/graphite/block-7.c: New. |
| |
| 2010-01-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (pddr_original_scattering): Renamed build_pddr. |
| (pddr_transformed_scattering): Removed. |
| (graphite_legal_transform_dr): Use build_pddr. |
| (dot_original_deps_stmt_1): Same. |
| (dot_transformed_deps_stmt_1): Same. |
| (dot_original_deps): Same. |
| (dot_transformed_deps): Same. |
| |
| 2010-01-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (lexicographically_gt_p): Add comments. |
| (build_lexicographically_gt_constraint): Same. |
| (dependence_polyhedron_1): Same. |
| (dependence_polyhedron): Same. |
| |
| 2010-01-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (build_pairwise_scheduling_equality): Removed. |
| (build_pairwise_scheduling_inequality): Renamed build_pairwise_scheduling. |
| (lexicographically_gt_p): Change type of direction to int. |
| (build_lexicographically_gt_constraint): Same. |
| (dependence_polyhedron_1): Same. |
| (dependence_polyhedron): Same. |
| (pddr_original_scattering): Use integers for direction. |
| (pddr_transformed_scattering): Same. |
| (graphite_legal_transform_dr): Same. |
| (graphite_carried_dependence_level_k): Same. |
| |
| 2010-01-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (build_pairwise_constraint): Renamed |
| ppl_build_relation. Moved... |
| (dr_equality_constraints): Use ppl_build_relation. |
| (build_pairwise_scheduling_equality): Same. |
| (build_pairwise_scheduling_inequality): Same. |
| * graphite-ppl.c (ppl_build_relation): ...here. |
| * graphite-ppl.h (ppl_build_relation): Declared. |
| |
| 2010-01-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42681 |
| * graphite-clast-to-gimple.c (gloog_error): New static variable. |
| (clast_to_gcc_expression): Do not build MULT_EXPR of POINTER_TYPE_P. |
| Set gloog_error when such an expression failed to be built. |
| (translate_clast): Early return when gloog_error is set. |
| (gloog): Clear gloog_error. When gloog_error is set, call |
| set_ifsese_condition to enable the original code. Return the status |
| of the code generation based on gloog_error. |
| * sese.c (set_ifsese_condition): New. |
| * sese.h (set_ifsese_condition): Declared. |
| |
| * g++.dg/graphite/pr42681.C: New. |
| |
| 2010-01-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42732 |
| * graphite-clast-to-gimple.c (gloog): Call scev_reset_htab and |
| rename_nb_iterations. |
| * sese.c (rename_variables_in_operand): New. |
| (rename_variables_in_expr): New. |
| (rename_nb_iterations): New. |
| (sese_adjust_liveout_phis): Update the rename_map. |
| * sese.h (rename_nb_iterations): Declared. |
| * tree-scalar-evolution.c (scev_reset_htab): New. |
| (scev_reset): Call scev_reset_htab. |
| * tree-scalar-evolution.h (scev_reset_htab): Declared. |
| |
| * gfortran.dg/graphite/pr42732.f: New. |
| |
| 2010-01-08 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42393 |
| * graphite-clast-to-gimple.c: Fix formatting. |
| * sese.c (defined_in_loop_p): Renamed name_defined_in_loop_p. |
| (expr_defined_in_loop_p): New. |
| (add_loop_exit_phis): Also handle full expressions: remove from |
| the rename_map the expressions defined in the loop that we're closing. |
| |
| * gfortran.dg/graphite/pr42393-1.f90: New. |
| * gfortran.dg/graphite/pr42393.f90: Add new flags |
| -fno-loop-block -fno-loop-interchange -fno-loop-strip-mine to also |
| make this testcase useful in the Graphite branch. |
| |
| 2010-01-08 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-scop-detection.c (exclude_component_ref): Removed. |
| (is_simple_operand): Removed. |
| (stmt_simple_for_scop_p): Remove use of is_simple_operand. |
| |
| 2010-01-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42221 |
| * sese.c (expand_scalar_variables_expr): Follow the SSA links into |
| the array indexing of ADDR_EXPRs. |
| |
| * gcc.dg/graphite/pr42221.c: New. |
| |
| 2010-01-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42521 |
| * graphite.c (graphite_finalize): Call scev_reset. |
| (graphite_transform_loops): Do not call scev_reset between the code |
| generation of scops. |
| |
| * gcc.dg/graphite/pr42521.c: New. |
| |
| 2010-01-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (memory_stride_in_loop): Renamed |
| pdr_stride_in_loop. |
| (memory_strides_in_loop): Renamed memory_strides_in_loop_1. |
| (memory_strides_in_loop): Memoize the memory strides per loop. |
| (lst_interchange_profitable_p): Do not initialize to zero the memory |
| strides. |
| * graphite-poly.h (struct lst): Add a field memory_strides. |
| (LST_LOOP_MEMORY_STRIDES): New. |
| (new_lst_loop): Initialize LST_LOOP_MEMORY_STRIDES to -1. |
| (free_lst): Clear LST_LOOP_MEMORY_STRIDES. |
| |
| 2010-01-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (memory_strides_in_loop_depth): Renamed |
| memory_strides_in_loop. Gather memory strides on a whole loop. |
| (pbb_interchange_profitable_p): Renamed lst_interchange_profitable_p. |
| (lst_interchange_profitable_p): Removed. |
| (lst_try_interchange_loops): Call lst_interchange_profitable_p. |
| |
| 2010-01-07 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Revert patch 2009-11-23 Tobias Grosser <grosser@fim.uni-passau.de> |
| * graphite-clast-to-gimple.c (try_mark_loop_parallel): New. |
| (translate_clast_for, translate_clast_guard, translate_clast, gloog): |
| Remove context_loop and level. |
| |
| 2010-01-07 Richard Guenther <rguenther@suse.de> |
| |
| PR tree-optimization/42641 |
| * sese.c (rename_map_elt_info): Use the SSA name version, do |
| not hash pointers. |
| |
| 2010-01-06 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (scop_do_block): Print "SCoP will be loop |
| blocked" only when both the strip mine and the interchange have |
| been applied. |
| |
| * gcc.dg/graphite/block-2.c: Removed. |
| * gcc.dg/graphite/block-3.c: Add scan pattern. |
| * gcc.dg/graphite/block-4.c: Same. |
| * gcc.dg/graphite/block-5.c: Same. |
| * gcc.dg/graphite/block-6.c: Same. |
| |
| 2010-01-06 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (save_clast_name_index): Free slot |
| before allocating a new one. |
| (copy_renames): Check that slot is not NULL. |
| (mark_bb_with_pbb): Same. |
| (compute_cloog_iv_types_1): Same. |
| * graphite-interchange.c (lst_perfect_nestify): Free the before, |
| nest, and after LSTs. |
| (lst_try_interchange_loops): Same. |
| |
| 2010-01-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42178 |
| * graphite-interchange.c (lst_try_interchange_loops): Do not return |
| the before, nest, and after LSTs. |
| (lst_try_interchange): Removed. |
| (lst_interchange_select_inner): Do not iterate over the LSTs if they |
| were modified. |
| (lst_interchange_select_outer): Apply interchange on the outer loop |
| until there are no more changes in the inner loops. |
| |
| 2009-12-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Revert patch fixing PR middle-end/42221. |
| |
| 2009-12-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42180 |
| * graphite-sese-to-poly.c (follow_ssa_with_commutative_ops): Handle |
| GIMPLE_CALL. |
| |
| * gfortran.dg/graphite/pr42180.f90: Add compile flags. |
| |
| 2009-12-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42180 |
| * graphite-sese-to-poly.c (split_reduction_stmt): Do not split blocks |
| that contain only one statement. |
| |
| * gfortran.dg/graphite/pr42180.f90: New. |
| |
| 2009-12-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42393 |
| * gfortran.dg/graphite/pr42393.f90: New. |
| |
| 2009-12-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42186 |
| * gfortran.dg/graphite/pr42186.f90: New. |
| |
| 2009-12-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42205 |
| * graphite-sese-to-poly.c (translate_scalar_reduction_to_array_for_stmt): |
| Insert the reduction copy in the same block as the phi node. |
| (follow_ssa_with_commutative_ops): Handle GIMPLE_NOPs. |
| |
| * gcc.dg/graphite/pr42205-1.c: New. |
| * gcc.dg/graphite/pr42205-2.c: New. |
| |
| 2009-12-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42221 |
| * sese.c (expand_scalar_variables_expr): Follow the SSA links into |
| the array indexing of ADDR_EXPRs. |
| |
| * gcc.dg/graphite/pr42221.c: New. |
| |
| 2009-12-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42178 |
| PR middle-end/42334 |
| * graphite-interchange.c (lst_try_interchange): Do not modify OUTER |
| index. Call lst_interchange_select_inner only once. |
| (lst_interchange_select_inner): Update use of lst_try_interchange. |
| (lst_interchange_select_outer): Update. |
| |
| 2009-12-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42178 |
| PR middle-end/42334 |
| * graphite-interchange.c (lst_try_interchange): Do not increment the |
| the OUTER index when there is no AFTER kernel. Do not increment the |
| OUTER index for after processing the AFTER kernel. |
| (lst_interchange_select_inner): Call lst_try_interchange only on loops. |
| (lst_interchange_select_outer): Do not pass in a pointer to the OUTER |
| index. Do not pass to lst_interchange_select_inner the OUTER index. |
| (scop_do_interchange): Update use of lst_interchange_select_outer. |
| |
| * gfortran.dg/graphite/graphite.exp |
| (DEFAULT_FLAGS_GRAPHITE_IDENTITY): Remove -fdump-tree-graphite-all. |
| * gfortran.dg/graphite/interchange-1.f: Add comment. Clean |
| the graphite dump file. |
| * gfortran.dg/graphite/interchange-2.f: Same. |
| * gfortran.dg/graphite/pr42334-1.f: New. |
| |
| 2009-12-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42178 |
| PR middle-end/42334 |
| * graphite-interchange.c (lst_perfect_nestify): Reset to NULL the LSTs |
| that are empty. |
| (lst_do_interchange_1): Renamed lst_interchange_select_inner. |
| (lst_try_interchange): Reimplemented. |
| (lst_interchange_select_inner): Same. |
| (lst_do_interchange): Renamed lst_interchange_select_outer. |
| Reimplemented. |
| (scop_do_interchange): Update use of lst_interchange_select_outer. |
| |
| * g++.dg/graphite/pr42130.C: Add -fgraphite-identity. |
| * gcc.dg/graphite/block-0.c: Un-XFAILed. |
| * gcc.dg/graphite/pr42211.c: New. |
| * gfortran.dg/graphite/pr42334.f90: New. |
| |
| 2009-12-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42181 |
| * graphite-scop-detection.c (graphite_can_represent_scev): Handle more |
| carefully PLUS_EXPR, MINUS_EXPR, and MULT_EXPR. |
| |
| * gfortran.dg/graphite/pr42181.f90: New. |
| |
| 2009-12-12 Sebastian Pop <sebpop@gmail.com> |
| |
| PR middle-end/42284 |
| * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Call |
| insert_out_of_ssa_copy_on_edge for anything else than SSA_NAMEs. |
| (detect_commutative_reduction_arg): Simplified. |
| (detect_commutative_reduction): Early return when the argument of |
| the close phi is not of an SSA_NAME. |
| |
| * gcc.dg/graphite/pr42284.c: New. |
| |
| 2009-12-11 Alexander Monakov <amonakov@ispras.ru> |
| |
| * dbgcnt.def (graphite_scop): New counter. |
| * graphite.c: Include dbgcnt.h |
| (graphite_transform_loops): Use new counter to limit transformations. |
| |
| 2009-12-08 Sebastian Pop <sebpop@gmail.com> |
| |
| PR middle-end/42285 |
| * graphite-scop-detection.c (graphite_can_represent_init): Also |
| handle more complex MULT_EXPRs containing parameters by recursion |
| on the structure. |
| |
| * gfortran.dg/graphite/pr42285.f90: New. |
| |
| 2009-12-01 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * g++.dg/graphite/pr42130.C: Fix type. |
| |
| 2009-11-29 Alexander Monakov <amonakov@gcc.gnu.org> |
| |
| * g++.dg/graphite/pr42130.C: Correct testcase. |
| |
| 2009-11-28 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * Merge from mainline (154493:154734). |
| |
| 2009-11-28 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * Merge from mainline (151362:154491). |
| |
| 2009-11-24 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (try_mark_loop_parallel, |
| graphite_create_new_loop_guard, translate_clast_for): Fix comments. |
| |
| 2009-11-23 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| PR middle-end/42130 |
| * graphite-clast-to-gimple.c (graphite_create_new_loop_guard, |
| translate_clast_for_loop): New. |
| (translate_clast_for): Add a condition around the loop, to do not |
| execute loops with zero iterations. |
| * g++.dg/graphite/pr42130.C: New. |
| * gcc.dg/graphite/pr35356-2.c: Adapt. |
| |
| 2009-11-23 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (try_mark_loop_parallel): New. |
| (translate_clast_for, translate_clast_guard, translate_clast, gloog): |
| Remove context_loop and level. |
| |
| 2009-11-23 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (translate_clast_user, |
| translate_clast_for, translate_clast_guard): Simplify and move common |
| elements to translate_clast(). |
| (translate_clast): Simplify and get common elements. |
| |
| 2009-11-23 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-clast-to-gimple.c (translate_clast_user, |
| translate_clast_for, translate_clast_guard): Split out of |
| translate_clast. |
| |
| 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. |
| |
| 2009-11-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Revert the following patch from 2009-09-14: |
| * graphite-blocking.c: Fix order of includes: tree-chrec.h, then |
| tree-scalar-evolution.h, and then tree-data-ref.h. |
| * graphite-clast-to-gimple.c: Same. |
| * graphite-dependences.c: Same. |
| * graphite-interchange.c: Same. |
| * graphite-poly.c: Same. |
| * graphite-scop-detection.c: Same. |
| * graphite-sese-to-poly.c: Same. |
| * graphite.c: Same. |
| * lambda-code.c: Same. |
| * matrix-reorg.c: Same. |
| * tree-data-ref.c: Same. |
| * tree-if-conv.c: Same. |
| * tree-loop-distribu: Same.: Same. |
| * tree-loop-linear.c: Same. |
| * tree-parloops.c: Same. |
| * tree-predcom.c: Same. |
| * tree-vect-patterns.c: Same. |
| |
| 2009-11-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Revert patch from 2009-09-14. |
| * tree-ssa-loop.c (gate_graphite_transforms): Re-enable Graphite |
| passes at -O1 and below. |
| |
| 2009-11-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/40281 |
| * gcc.dg/graphite/pr40281.c: New. |
| |
| * tree-scalar-evolution.c (instantiate_scev_poly): Base and stride |
| evolutions should not variate in inner loops. |
| |
| 2009-11-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/42050 |
| * gfortran.dg/graphite/pr42050.f90: New. |
| |
| 2009-11-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (memory_strides_in_loop_depth): New. |
| (pbb_interchange_profitable_p): Call memory_strides_in_loop_depth. |
| |
| 2009-11-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (scop_do_block): New. |
| * graphite-poly.c (apply_poly_transforms): Call scop_do_block. |
| * graphite-poly.h (scop_do_block): Declared. |
| |
| 2009-11-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (pbb_strip_mine_profitable_p): The parameter |
| depth is the loop nesting depth in the LST. Call psct_dynamic_dim |
| to transform depth into the time_depth before calling |
| pbb_number_of_iterations_at_time. |
| (lst_do_strip_mine): Use a scalar variable instead of recomputing |
| lst_depth. |
| |
| 2009-11-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Reverted the patch for "scattering permutations" from 2009-10-28. |
| |
| * graphite-poly.c (print_permutation): New. |
| (debug_permutation): New. |
| (new_poly_bb): Initialize PBB_PERMUTATION. |
| (free_poly_bb): Free PBB_PERMUTATION. |
| * graphite-poly.h (pbb_permutation_elt_p): Declared. |
| (struct pbb_permutation_elt): New. |
| (PBB_PERMUTATION_ELT_STRIDE): New. |
| (PBB_PERMUTATION_ELT_STRIDED_P): New. |
| (PBB_PERMUTATION_ELT_TIME_DIMENSION): New. |
| (new_pbb_permutation_elt): New. |
| (pbb_permutation_elt_free): New. |
| (struct poly_bb): Add field permutation. |
| (PBB_PERMUTATION): New. |
| (print_permutation): Declared. |
| (debug_permutation): Declared. |
| |
| 2009-11-04 Konrad Trifunovic <konrad.trifunovic@inria.fr> |
| |
| * graphite-interchange.c (build_partial_difference): New. |
| (memory_stride_in_loop): Refactored the computation of |
| equality constraints into build_partial_difference function. |
| Added support for debugging stride computations. |
| |
| 2009-11-03 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (gloog): Free if_region, |
| if_region->true_region, and if_region->region. |
| * sese.c (if_region_set_false_region): Free if_region->false_region. |
| (create_if_region_on_edge): Do not use GGC_NEW. |
| (move_sese_in_condition): Remove useless initialization. |
| |
| 2009-11-03 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (lst_perfect_nestify): Pass 3 parameters |
| for the loops created by the loop distribution. Do not modify the |
| input LSTs. |
| (lst_try_interchange_loops): Same. Use a temporary LST for the |
| transformed schedule. Call lst_update_scattering before data |
| dependence analysis. |
| (lst_try_interchange): Pass an extra parameter INDEX. |
| (lst_do_interchange_1): New. |
| (lst_do_interchange): Call lst_do_interchange_1. |
| (scop_do_interchange): Call lst_update_scattering. |
| * graphite-poly.c (apply_poly_transforms): Do not call |
| lst_update_scattering. |
| * graphite-poly.h (lst_pred): New. |
| (lst_succ): New. |
| (lst_find_first_pbb): Return NULL when not found. |
| (lst_empty_p): New. |
| (lst_insert_in_sequence): Allow LST1 to be NULL. |
| (lst_replace): New. |
| (lst_substitute_3): New. |
| * gcc.dg/graphite/interchange-1.c: XFail. |
| * gcc.dg/graphite/interchange-8.c: XFail. |
| * gcc.dg/graphite/interchange-11.c: XFail. |
| |
| 2009-10-30 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (lst_perfectly_nested_p): New. |
| (lst_perfect_nestify): New. |
| (lst_try_interchange_loops): Call store_lst_schedule, |
| lst_perfectly_nested_p, lst_perfect_nestify and restore_lst_schedule. |
| (scop_do_interchange): Avoid redundant legality test. |
| Call lst_do_interchange on a copy of SCOP_TRANSFORMED_SCHEDULE. |
| * graphite-poly.c (apply_poly_transforms): Call lst_update_scattering. |
| * graphite-poly.h (psct_static_dim): New. |
| (lst_dewey_number_at_depth): New. |
| (lst_find_pbb): Restructured. |
| (lst_find_first_pbb): Restructured. |
| (lst_find_last_pbb): New. |
| (lst_contains_p): New. |
| (lst_contains_pbb): New. |
| (lst_create_nest): New. |
| (lst_remove_from_sequence): New. |
| (pbb_update_scattering): New. |
| (lst_update_scattering_under): New. |
| (lst_update_scattering_seq): New. |
| (lst_update_scattering): New. |
| (lst_insert_in_sequence): New. |
| (lst_distribute_lst): New. |
| (lst_remove_all_before_including_pbb): New. |
| (lst_remove_all_before_excluding_pbb): New. |
| |
| 2009-10-30 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-ssa-loop-niter.c (finite_loop_p): Do not call twice |
| get_loop_exit_edges. |
| |
| 2009-10-30 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (pbb_remove_duplicate_pdrs): Free collapsed. |
| |
| 2009-10-28 Konrad Trifunovic <konrad.trifunovic@gmail.com> |
| |
| * graphite-poly.c (print_permutation): New. |
| (debug_permutation): New. |
| (new_poly_bb): Initialize PBB_PERMUTATION. |
| (free_poly_bb): Free PBB_PERMUTATION. |
| * graphite-poly.h (pbb_permutation_elt_p): Declared. |
| (struct pbb_permutation_elt): New. |
| (PBB_PERMUTATION_ELT_STRIDE): New. |
| (PBB_PERMUTATION_ELT_STRIDED_P): New. |
| (PBB_PERMUTATION_ELT_TIME_DIMENSION): New. |
| (new_pbb_permutation_elt): New. |
| (pbb_permutation_elt_free): New. |
| (struct poly_bb): Add field permutation. |
| (PBB_PERMUTATION): New. |
| (print_permutation): Declared. |
| (debug_permutation): Declared. |
| |
| 2009-10-26 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (gloog): Do not call |
| sese_reset_aux_in_loops. |
| * graphite-sese-to-poly.c (build_loop_iteration_domains): Pass an |
| extra argument for domains. Do not use loop->aux. |
| (build_scop_iteration_domain): Initialize and free domains, pass it |
| to build_loop_iteration_domains and extract the information from |
| domains. Do not use loop->aux. |
| * sese.c (sese_reset_aux_in_loops): Removed. |
| * sese.h (sese_reset_aux_in_loops): Removed. |
| |
| 2009-10-26 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (find_pbb_via_hash): Moved up. |
| (dependency_in_loop_p): Same. |
| (translate_clast): Do not use loop->aux. Initialize |
| loop->can_be_parallel. |
| (mark_loops_parallel): Removed. |
| * graphite-clast-to-gimple.h (mark_loops_parallel): Removed. |
| * graphite.c (free_aux_in_new_loops): Removed. |
| (graphite_finalize): Do not call free_aux_in_new_loops. |
| (graphite_transform_loops): Do not call mark_loops_parallel. |
| |
| 2009-10-26 Li Feng <nemokingdom@gmail.com> |
| |
| * graphite-clast-to-gimple.c (get_stmtfor_depth): Removed. |
| (translate_clast): Pass an extra parameter LEVEL. |
| Call get_scattering_level. |
| * graphite-clast-to-gimple.h (get_scattering_level): New. |
| |
| 2009-10-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * cfgloop.c (alloc_loop): Initialize loop->single_iv. |
| * cfgloop.h (struct loop): New field single_iv. |
| |
| * graphite-clast-to-gimple.c (pbb_to_depth_to_oldiv): Do not use |
| loop->aux anymore: use loop->single_iv. |
| (graphite_loop_normal_form): Moved... |
| (build_graphite_loop_normal_form): Removed. |
| (gloog): Do not call build_graphite_loop_normal_form. |
| (free_aux_in_new_loops): Moved... |
| (mark_loops_parallel): Restructure. |
| * graphite-clast-to-gimple.h (free_aux_in_new_loops): Do not declare. |
| * graphite-sese-to-poly.c (graphite_loop_normal_form): ...here. |
| (scop_canonicalize_loops): New. |
| (build_poly_scop): Call scop_canonicalize_loops. |
| * graphite.c (free_aux_in_new_loops): ...here. |
| |
| 2009-10-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * g++.dg/graphite/graphite.exp: Add the same rules as in |
| gcc.dg/graphite/graphite.exp. |
| |
| 2009-10-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * g++.dg/graphite/id-1.C: New. |
| |
| 2009-10-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (create_zero_dim_array): Pass an extra |
| argument base_name. |
| (rewrite_close_phi_out_of_ssa): Update use of create_zero_dim_array. |
| (rewrite_phi_out_of_ssa): Same. |
| (rewrite_cross_bb_scalar_deps): Same. |
| (translate_scalar_reduction_to_array): Same. |
| |
| 2009-10-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (build_scop_drs): Disable call to |
| dump_alias_graphs. |
| |
| 2009-10-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (dump_alias_graphs): New. |
| (build_scop_drs): Call dump_alias_graphs. |
| |
| 2009-10-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (new_scop): Initialize SCOP_ORIGINAL_SCHEDULE, |
| SCOP_TRANSFORMED_SCHEDULE, and SCOP_SAVED_SCHEDULE. |
| (free_scop): Call free_lst on SCOP_ORIGINAL_SCHEDULE, |
| SCOP_TRANSFORMED_SCHEDULE, and SCOP_SAVED_SCHEDULE. |
| * graphite-poly.h (free_lst): New. |
| (store_lst_schedule): Free SCOP_SAVED_SCHEDULE. |
| (restore_lst_schedule): Free SCOP_TRANSFORMED_SCHEDULE. |
| |
| 2009-10-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.h (struct scop): Add a field saved_schedule. |
| (SCOP_SAVED_SCHEDULE): New. |
| (store_lst_schedule): New. |
| (restore_lst_schedule): New. |
| (store_scattering): Call store_lst_schedule. |
| (restore_scattering): Call restore_lst_schedule. |
| |
| 2009-10-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (free_data_refs_aux): Fix formatting. |
| (pdr_add_alias_set): Same. |
| (build_poly_dr): Same. |
| (build_alias_set_optimal_p): Same. |
| (build_base_obj_set_for_drs): Same. Do not store the result of |
| graphds_dfs. |
| |
| 2009-10-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (build_alias_set_optimal_p): Initialize |
| all_components_are_cliques to 1. |
| |
| 2009-10-20 Li Feng <nemokingdom@gmail.com> |
| |
| * graphite-sese-to-poly.c (free_data_refs_aux): Update to free |
| the new structure. |
| (pdr_add_alias_set): Update retrieving alias_set_num. |
| (build_poly_dr): Update retrieving dr_base_object_set. |
| (partition_drs_to_sets): Remove. |
| (build_alias_set_optimal_p): New. |
| (build_alias_set_for_drs): Rename. |
| (build_scop_drs): Update. |
| * graphite-sese-to-poly.h (struct base_alias_pair): New. |
| (ALIAS_SET_INDEX): Remove. |
| (BASE_OBJECT_SET_INDEX): Remove. |
| |
| 2009-10-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.c (get_vdef_before_sese): Handle GIMPLE_ASSIGN and GIMPLE_CALL. |
| |
| 2009-10-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (pdr_add_data_dimensions): Do not infer |
| loop upper bounds for 1-element arrays at end of structures. |
| * tree-flow.h (array_at_struct_end_p): Declared. |
| * tree-ssa-loop-niter.c (array_at_struct_end_p): Not static anymore. |
| |
| 2009-10-20 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * g++.dg/graphite/pr41305.C: New. |
| |
| 2009-10-20 Alexander Monakov <amonakov@ispras.ru> |
| |
| * graphite-sese-to-poly.c (build_loop_iteration_domains): Generalize |
| construction of parameter constraints from loop iteration analysis. |
| * gcc.dg/graphite/run-id-2.c: New test. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (memory_stride_in_loop): Delete p1, lma |
| and new_cstr. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (dependence_polyhedron_1): Remove |
| unused gdim dimensions from the DDR polyhedron. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (pddr_transformed_scattering): New. |
| (dot_original_deps_stmt_1): New. |
| (dot_transformed_deps_stmt_1): New. |
| (dot_deps_stmt_1): Call dot_original_deps_stmt_1 and |
| dot_transformed_deps_stmt_1. |
| (dot_original_deps): New. |
| (dot_transformed_deps): New. |
| (dot_deps_1): Call dot_original_deps and dot_transformed_deps. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (reduction_dr_1): Remove wrong |
| assert: reduction BBs can have multiple reduction writes |
| to memory. interchange-3.f90 is an example. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gfortran.dg/graphite/interchange-3.f90: New. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/interchange-1.c: Un-XFAILed. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (dependence_polyhedron_1): Add the |
| context to the dependence polyhedron. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (pbb_remove_duplicate_pdrs): Initialize |
| PBB_PDR_DUPLICATES_REMOVED. |
| (new_poly_bb): Same. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (find_scop_parameters): Initialize |
| SCOP_CONTEXT. |
| (build_loop_iteration_domains): Extract bounds on parameters |
| based on the data size. |
| (build_scop_context): Do not initialize SCOP_CONTEXT; |
| add new constraints. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-ppl.c (ppl_min_for_le_polyhedron): New. |
| * graphite-ppl.h (graphite-ppl.h): Declared. |
| |
| 2009-10-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-ppl.c (ppl_print_linear_expr): New. |
| (debug_ppl_linear_expr): New. |
| * graphite-ppl.h (ppl_print_linear_expr): Declared. |
| (debug_ppl_linear_expr): Declared. |
| |
| 2009-10-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c: Fix comments. |
| * gcc.dg/graphite/block-1.c: Fix comments. |
| |
| 2009-10-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/interchange-7.c: Un-XFAILed. |
| * gcc.dg/graphite/interchange-9.c: Un-XFAILed. |
| |
| 2009-10-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Reapply the patch from Alexander Monakov that disappeared during |
| the last merges from trunk. |
| |
| 2009-09-16 Alexander Monakov <amonakov@ispras.ru> |
| |
| * graphite-sese-to-poly.c (pdr_add_data_dimensions): Add bounds only |
| for ARRAY_REFs. Use array_ref_{low,up}_bound to determine bounds. |
| |
| 2009-10-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (memory_stride_in_loop): The depth |
| argument corresponds to a dynamic time dimension, so use |
| psct_dynamic_dim to refer to the transformed scattering dimension. |
| |
| 2009-10-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (memory_stride_in_loop): Fix comments. |
| |
| 2009-10-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (lst_do_strip_mine): Avoid strip mining the |
| root of the LST. |
| * graphite-interchange.c (lst_do_interchange): Avoid interchanging |
| the root of the LST. |
| * graphite-poly.c (scop_to_lst): Fix LST sequence in an outermost |
| fake loop. |
| (print_lst): Print the root of LST in a different format. |
| * graphite-poly.h (lst_depth): Adjust to include the root of the LST. |
| |
| 2009-10-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (print_scop): Fix pretty printing of a SCoP. |
| |
| 2009-10-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * doc/passes.texi: Document the Graphite infrastructure. |
| |
| 2009-10-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (insert_copyin): Use gsi_insert_seq_on_edge. |
| (rewrite_commutative_reductions_out_of_ssa): Call gsi_commit_edge_inserts, |
| and check the SSA representation. |
| |
| * gfortran.dg/graphite/id-18.f90: New, reduced from PR41193. |
| |
| 2009-10-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/pr40157.c: Use -floop-block as reported in the PR. |
| |
| 2009-10-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/interchange-11.c: New. |
| |
| 2009-10-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/interchange-8.c: Enable loop interchange. |
| |
| 2009-10-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): |
| Add -fno-loop-strip-mine and -fno-loop-interchange. |
| (DEFAULT_FLAGS_GRAPHITE_INTERCHANGE): Add -fno-loop-block and |
| -fno-loop-strip-mine. |
| * gfortran.dg/graphite/graphite.exp: Same. |
| |
| 2009-10-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): |
| Renamed DEFAULT_FLAGS_GRAPHITE_BLOCK. |
| (DEFAULT_CFLAGS_GRAPHITE_IDENTITY): Renamed |
| DEFAULT_FLAGS_GRAPHITE_IDENTITY. |
| (DEFAULT_CFLAGS_GRAPHITE_INTERCHANGE): Renamed |
| DEFAULT_FLAGS_GRAPHITE_INTERCHANGE. |
| (DEFAULT_CFLAGS_GRAPHITE_SCOP): Renamed |
| DEFAULT_FLAGS_GRAPHITE_SCOP. |
| (DEFAULT_CFLAGS_RUN_ID): Renamed DEFAULT_FLAGS_RUN_ID. |
| (DEFAULT_CFLAGS_GRAPHITE): Renamed DEFAULT_FLAGS_GRAPHITE. |
| |
| 2009-10-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (pbb_number_of_iterations_at_time): Cleanup comments. |
| |
| 2009-10-14 Konrad Trifunovic <konrad.trifunovic@gmail.com> |
| Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (build_linearized_memory_access): Pass an |
| offset as parameter. |
| (memory_stride_in_loop): Include transform scattering in the |
| access functions to be able to querry the strides in the |
| transformed loops. |
| (pbb_interchange_loop_depths): Interchange the psct_dynamic_dim, |
| not the psct_iterator_dim. |
| |
| 2009-10-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (pbb_do_strip_mine): Removed. |
| (lst_do_strip_mine_loop): New. |
| (lst_do_strip_mine): New. |
| (scop_do_strip_mine): Call lst_do_strip_mine. |
| * graphite-poly.h (lst_add_loop_under_loop): New. |
| (lst_find_first_pbb): New. |
| |
| 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> |
| |
| * 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> |
| |
| * 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. |
| * opts.c (decode_options): Enable flag_loop_block at -O2. |
| * 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> |
| |
| * Merge from mainline (151310:151361). |
| |
| 2009-09-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Merge from mainline (151171:151310). |
| |
| 2009-09-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Merge from mainline (151171:151806). |
| |
| 2009-09-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Revert the last commit. |
| |
| 2009-09-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Merge from mainline (151171:151819). |
| |
| 2009-09-17 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-scop-detection.c (stmt_simple_memref_p): Removed. |
| (is_simple_operand): Remove call to stmt_simple_memref_p. |
| (stmt_simple_for_scop_p): Update call to is_simple_operand. |
| |
| 2009-09-17 David Edelsohn <edelsohn@gnu.org> |
| |
| * gcc.dg/graphite/interchange-mvt.c: New File. |
| * gcc.dg/graphite/scop-dsyrk.c: New File. |
| * gcc.dg/graphite/scop-dsyr2k.c: New File. |
| * gcc.dg/graphite/scop-mvt.c: New File. |
| * gcc.dg/graphite/scop-sor.c: New File. |
| |
| 2009-09-17 Li Feng <nemokingdom@gmail.com> |
| |
| * graphite-dependences.c (poly_drs_may_alias_p): Adjust definition. |
| (pddr_original_scattering): Make sure 2 pdr2 in the same base object set. |
| (graphite_carried_dependence_level_k): Ditto. |
| * graphite-poly.c (new_poly_dr): Add init of PDR_BASE_OBJECT_SET. |
| * graphite-poly.h (struct poly_dr): Add member dr_base_object_set. |
| (new_poly_dr): Adjust declaration. |
| * graphite-sese-to-poly.c (free_data_refs_aux): New. |
| (free_gimple_bb): Added free_data_refs_aux. |
| (build_poly_dr): Add dr_base_object_set. |
| (partition_drs_to_sets): New. |
| (dr_same_base_object_p): New. |
| (build_alias_set_for_drs): New. |
| (build_base_object_set_for_drs): New. |
| (build_scop_drs): Add build_base_obj_set_for_drs. |
| * graphite-sese-to-poly.h: Added #define for alias set number index and |
| base object set index. |
| * libgomp/testsuite/libgomp.graphite/force-parallel-6.c: Refine tests. |
| * libgomp/testsuite/libgomp.graphite/pr4118.c: New. |
| |
| 2009-09-16 Alexander Monakov <amonakov@ispras.ru> |
| |
| * graphite-sese-to-poly.c (pdr_add_data_dimensions): Add bounds only |
| for ARRAY_REFs. Use array_ref_{low,up}_bound to determine bounds. |
| |
| 2009-09-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (struct irp_data): Removed. |
| (idx_record_params): Removed. |
| (find_params_in_bb): Scan for parameters the access functions; don't |
| parse the tree representation. |
| |
| 2009-09-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-ssa-loop.c (gate_graphite_transforms): Disable Graphite |
| passes at -O1 and below. |
| |
| 2009-09-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c: Fix order of includes: tree-chrec.h, then |
| tree-scalar-evolution.h, and then tree-data-ref.h. |
| * graphite-clast-to-gimple.c: Same. |
| * graphite-dependences.c: Same. |
| * graphite-interchange.c: Same. |
| * graphite-poly.c: Same. |
| * graphite-scop-detection.c: Same. |
| * graphite-sese-to-poly.c: Same. |
| * graphite.c: Same. |
| * lambda-code.c: Same. |
| * matrix-reorg.c: Same. |
| * tree-data-ref.c: Same. |
| * tree-if-conv.c: Same. |
| * tree-loop-distribu: Same.: Same. |
| * tree-loop-linear.c: Same. |
| * tree-parloops.c: Same. |
| * tree-predcom.c: Same. |
| * tree-vect-patterns.c: Same. |
| |
| 2009-09-02 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Partially revert the previous patch, except the following. |
| * tree-scalar-evolution.c (instantiate_scev_not): Adapted to pass |
| as parameters the operands of the not expression. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_assign): New. |
| Do not call analyze_scalar_evolution on assignments. |
| (instantiate_scev_phi): Call analyze_scalar_evolution. |
| (instantiate_scev_name): Call instantiate_scev_assign and |
| instantiate_scev_phi. |
| (instantiate_scev_not): Adapted to pass as parameters the operands |
| of the not expression. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_binary): Adapted |
| to pass as parameters the operands of the binary expression. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_bitnot): Renamed |
| instantiate_scev_not. Handle NEGATE_EXPR. |
| (instantiate_scev_r): Handle NEGATE_EXPR. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_1): Renamed |
| instantiate_scev_r. |
| (instantiate_scev_r): Move code in instantiate_scev_2 |
| and instantiate_scev_1. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_3): New. |
| (instantiate_scev_1): Move code in instantiate_scev_3. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_poly): New. |
| (instantiate_scev_1): Move code in instantiate_scev_poly. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_bitnot): New. |
| (instantiate_scev_1): Move code in instantiate_scev_bitnot. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_convert): New. |
| (instantiate_scev_1): Move code in instantiate_scev_convert. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_binary): New. |
| (instantiate_scev_1): Move code in instantiate_scev_binary. |
| |
| 2009-09-01 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_name): New. |
| (instantiate_scev_1): Move code in instantiate_scev_name. |
| |
| 2009-08-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Merge from mainline (150992:151171). |
| |
| 2009-08-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * opts.c (decode_options): Enable flag_loop_interchange at -O2. |
| |
| 2009-08-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (graphite_legal_transform_bb): Call |
| pbb_remove_duplicate_pdrs. |
| * graphite-poly.c (can_collapse_pdr): Removed. |
| (pdr_find_duplicate): Removed. |
| (can_collapse_pdrs): New. |
| (pbb_remove_duplicate_pdrs): New. |
| (new_poly_dr): Do not look for duplicates. |
| * graphite-poly.h (struct poly_bb): New field pdr_duplicates_removed. |
| (PBB_PDR_DUPLICATES_REMOVED): New. |
| (pbb_remove_duplicate_pdrs): Declared. |
| |
| 2009-08-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (pbb_interchange_profitable_p): Adjust |
| the strides by multiplying by PDR_NB_REFS. |
| * graphite-poly.c (can_collapse_pdr): New. |
| (pdr_find_duplicate): New. |
| (new_poly_dr): Call pdr_find_duplicate. Collapse duplicate PDRs. |
| Initialize PDR_NB_REFS. |
| * graphite-poly.h (struct poly_dr): Add field nb_refs. |
| (PDR_NB_REFS): New. |
| (new_poly_dr): Number of subscripts is a graphite_dim_t. |
| |
| 2009-08-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| Revert one of the previous commits: |
| * graphite-dependences.c (graphite_legal_transform_bb): Avoid |
| the computation of symmetric data dependence relations. |
| (dependency_between_pbbs_p): Same. |
| |
| 2009-08-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/40965 |
| * graphite-poly.c (apply_poly_transforms): Remove legality test before |
| any transform. |
| |
| 2009-08-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (pddr_original_scattering): Return NULL |
| for read-read dependence relations. |
| * graphite-poly.h (enum poly_dr_type): Fix comment. |
| (pdr_read_p): New. |
| (pdr_write_p): New. |
| (pdr_may_write_p): New. |
| |
| 2009-08-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.h (enum POLY_DR_TYPE): Renamed poly_dr_type. |
| (struct poly_dr): Same. |
| (new_poly_dr): Same. |
| * graphite-poly.c (new_poly_dr): Same. |
| |
| 2009-08-25 Konrad Trifunovic <konrad.trifunovic@gmail.com> |
| Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (pbb_strip_mine_loop_depth): Renamed |
| pbb_strip_mine_time_depth. Changed the implementation so that |
| transformation is expressed as a transformation on |
| time (scatttering) dimensions. Also, ensures that the 2d+1 |
| scheduling format is preserved. |
| (pbb_strip_mine_profitable_p): Profitability is based on the |
| iteration number of a given time (scattering) dimension, |
| and not on a original loop depth dimension. |
| (pbb_strip_mine): Call pbb_number_of_iterations_at_time. |
| (pbb_do_strip_mine): Call psct_dynamic_dim. |
| * graphite-poly.c (pbb_number_of_iterations_at_time): New. |
| * graphite-poly.h (pbb_number_of_iterations_at_time): Declared. |
| (pbb_nb_dynamic_scattering_transform): New. |
| (psct_dynamic_dim): New. |
| |
| 2009-08-25 Konrad Trifunovic <konrad.trifunovic@gmail.com> |
| |
| * graphite-ppl.c (ppl_max_for_le): Renamed ppl_max_for_le_pointset. |
| * graphite-ppl.h (ppl_max_for_le): Renamed ppl_max_for_le_pointset. |
| * graphite-poly.c (pbb_number_of_iterations): Rename ppl_max_for_le. |
| * graphite-interchange.c (build_linearized_memory_access): Same. |
| (memory_stride_in_loop): Same. |
| |
| 2009-08-25 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (pddr_original_scattering): New. |
| (graphite_legal_transform_dr): Call pddr_original_scattering. |
| (dot_deps_1): New. |
| (dot_deps): New. |
| * graphite-dependences.h (dot_deps): Declared. |
| * graphite-poly.c (new_poly_dr): Initialize PDR_ID. |
| (print_pdr): Print PDR_ID. |
| * graphite-poly.h (struct poly_dr): Add field id. |
| (PDR_ID): New. |
| (pbb_index): New. |
| * graphite-scop-detection.c (dot_all_scops_1): Cleanup comment. |
| |
| 2009-08-22 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (graphite_carried_dependence_level_k): Do |
| not delete the original dependence relation. |
| |
| 2009-08-21 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (graphite_legal_transform_bb): Avoid |
| the computation of symmetric data dependence relations. |
| (dependency_between_pbbs_p): Same. |
| |
| 2009-08-21 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (new_poly_dr_pair): Renamed new_poly_ddr. |
| (eq_poly_dr_pair_p): Renamed eq_poly_ddr_p. |
| (hash_poly_dr_pair_p): Renamed hash_poly_ddr_p. |
| (free_poly_ddr): New. |
| (pddr_is_empty): New. |
| (dependence_polyhedron_1): Now returns a poly_ddr_p. |
| (dependence_polyhedron): Same. Remove useless gcc_assert. |
| Remove fprintfs. |
| (graphite_legal_transform_dr): Call pddr_is_empty and free_poly_ddr. |
| (graphite_carried_dependence_level_k): Call pddr_is_empty. |
| * graphite-dependences.h (enum poly_dependence_kind): New. |
| (poly_dr_pair): Renamed poly_ddr. Added a field kind. |
| (PDRP_SOURCE): Renamed PDDR_SOURCE. |
| (PDRP_SINK): Renamed PDDR_SINK. |
| (PDRP_DDP): Renamed PDDR_DDP. |
| (PDDR_KIND): New. |
| (free_poly_ddr): Declared. |
| * graphite-poly.c (new_scop): Use the new hash function names. |
| * graphite-poly.h (struct scop): Renamed field original_pdr_pairs |
| into original_pddrs. |
| (SCOP_ORIGINAL_PDR_PAIRS): Renamed SCOP_ORIGINAL_PDDRS. |
| |
| 2009-08-21 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Merge from mainline (150764:150992). |
| |
| 2009-08-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * cfgloopmanip.c (create_empty_loop_on_edge): Generate upper |
| bounds with LT_EXPR to make niter analysis more precise on code |
| generated by Graphite. |
| |
| 2009-08-18 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (graphite_legal_transform_dr): Fix formatting. |
| (graphite_legal_transform_bb): Same. |
| (poly_drs_may_alias_p): Same. |
| |
| 2009-08-15 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/40981 |
| * graphite-ppl.c (ppl_max_for_le): Correct the use of |
| ppl_Pointset_Powerset_C_Polyhedron_maximize. |
| |
| 2009-08-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (print_pbb): Print PBB index. |
| |
| 2009-08-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Merge from mainline (r150672:150764). |
| |
| 2009-08-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (ppl_max_for_le): Moved... |
| * graphite-poly.c (pbb_number_of_iterations): Call ppl_max_for_le. |
| * graphite-ppl.c (ppl_max_for_le): ... here. |
| * graphite-ppl.h (ppl_max_for_le): Declared. |
| |
| 2009-08-12 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Merge from mainline (r150372:150672). |
| |
| 2009-08-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| PR middle-end/40980 |
| * sese.c (convert_for_phi_arg): New. |
| (add_guard_exit_phis): Use convert_for_phi_arg. |
| |
| * gfortran.dg/graphite/id-17.f: New. |
| |
| 2009-08-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (pdr_add_data_dimensions): Dont add |
| unknown subscript upper bounds. |
| |
| * gcc.dg/graphite/interchange-6.c: Un-XFAIL. |
| |
| 2009-08-11 Sebastian Pop <sebastian.pop@amd.com> |
| Pranav Garg <pranav.garg2107@gmail.com> |
| |
| * graphite-interchange.c (gather_access_strides): Removed. |
| (ppl_max_for_le): New. |
| (build_linearized_memory_access): New. |
| (memory_stride_in_loop): New. |
| (pbb_interchange_profitable_p): Reimplemented. |
| * graphite-ppl.h (ppl_new_id_map): New. |
| (ppl_interchange): New. |
| |
| * gcc.dg/graphite/interchange-6.c: XFAILed. |
| |
| 2009-08-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (compute_subscript): Removed. |
| (compute_array_size_cstr): Removed. |
| (compute_array_size_poly): Removed. |
| (compute_array_size): Removed. |
| (gather_access_strides_poly): Removed. |
| (gather_access_strides): Empty. |
| |
| 2009-08-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (dependence_polyhedron_1): Replace |
| pdr_nb_subscripts with PDR_NB_SUBSCRIPTS. |
| (graphite_legal_transform_dr): Same. |
| (graphite_carried_dependence_level_k): Same. |
| * graphite-poly.c (new_poly_dr): Add a parameter nb_subscripts. |
| Initialize PDR_NB_SUBSCRIPTS. |
| (print_pdr_access_layout): Replace pdr_nb_subscripts with |
| PDR_NB_SUBSCRIPTS. |
| * graphite-poly.h (struct poly_dr): Add nb_subscripts field. |
| (PDR_NB_SUBSCRIPTS): New. |
| (pdr_nb_subscripts): Removed. |
| (pdr_dim): Simplified. |
| * graphite-sese-to-poly.c (build_poly_dr): Replace pdr_nb_subscripts |
| with PDR_NB_SUBSCRIPTS. |
| |
| 2009-08-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-interchange.c (compute_array_size): Remove use of |
| PDR_DATA_CONTAINER. |
| * graphite-poly.c (new_poly_dr): Remove argument data_container. |
| Do not initialize PDR_DATA_CONTAINER. |
| (print_pdr): Do not print PDR_DATA_CONTAINER. |
| * graphite-poly.h (struct poly_dr): Remove data_container field. |
| (PDR_DATA_CONTAINER): Removed. |
| * graphite-sese-to-poly.c (pdr_add_data_dimensions): Remove use of |
| PDR_DATA_CONTAINER. |
| (build_poly_dr): Same. |
| |
| 2009-08-11 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/interchange-9.c: New. |
| |
| 2009-08-05 Konrad Trifunovic <konrad.trifunovic@gmail.com> |
| Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c (graphite_legal_transform_dr): Work on a |
| copy of the dependence polyhedron. Free the temporary objects. |
| (graphite_carried_dependence_level_k): Free unused objects before |
| returning. |
| |
| * gcc.dg/graphite/interchange-1.c: XFAILed. |
| * gcc.dg/graphite/interchange-2.c: XFAILed. |
| * gcc.dg/graphite/interchange-3.c: XFAILed. |
| * gcc.dg/graphite/interchange-4.c: XFAILed. |
| * gcc.dg/graphite/interchange-7.c: XFAILed. |
| |
| 2009-08-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-blocking.c (scop_do_strip_mine): Call store_scattering. |
| Early return without analyzing the data dependences if no |
| transform has been done. Call restore_scattering if the transform |
| is not legal. |
| (graphite-interchange.c): Same. |
| * graphite-poly.c (print_scattering_function): Test for PBB_TRANSFORMED. |
| (graphite_read_transforms): Initialize PBB_TRANSFORMED. |
| (apply_poly_transforms): Do not gcc_assert that |
| the transform is legal. |
| (new_poly_bb): Initialize PBB_TRANSFORMED, PBB_SAVED, and PBB_ORIGINAL. |
| Do not initialize PBB_NB_SCATTERING_TRANSFORM, PBB_NB_LOCAL_VARIABLES, |
| PBB_TRANSFORMED_SCATTERING, and PBB_ORIGINAL_SCATTERING. |
| (free_poly_dr): Free PBB_TRANSFORMED, PBB_SAVED, and PBB_ORIGINAL. |
| * graphite-poly.h (struct poly_scattering): New. |
| (struct poly_bb): Add original, transformed, and saved fields. |
| Remove transformed_scattering, original_scattering, nb_local_variables, |
| and nb_scattering_transform fields. |
| (PBB_ORIGINAL, PBB_TRANSFORMED, PBB_SAVED): New. |
| (poly_scattering_new): New. |
| (poly_scattering_free): New. |
| (poly_scattering_copy): New. |
| (store_scattering_pbb): New. |
| (store_scattering): New. |
| (restore_scattering_pbb): New. |
| (restore_scattering): New. |
| * graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): |
| Initialize PBB_TRANSFORMED and PBB_ORIGINAL. |
| |
| 2009-08-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-poly.c (print_pbb): Add parentheses in the pretty print. |
| (print_scop): Same. |
| |
| 2009-08-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Makefile.in (graphite.o): Depends on PREDICT_H. |
| * graphite.c: Include predict.h. |
| (graphite_finalize): Call tree_estimate_probability. |
| * predict.c (predict_loops): Do not call scev_initialize and |
| scev_finalize. |
| (tree_estimate_probability_bb): New. |
| (tree_estimate_probability): Do not initialize loops: move that |
| code to the driver. Call tree_estimate_probability_bb. |
| (tree_estimate_probability_driver): New. |
| (pass_profile): Use tree_estimate_probability_driver. |
| * predict.h (tree_estimate_probability): Declared. |
| |
| 2009-08-05 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (gloog): Add time to TV_GRAPHITE_CODE_GEN. |
| * graphite-dependences.c (graphite_legal_transform): Add time to |
| TV_GRAPHITE_DATA_DEPS. |
| (dependency_between_pbbs_p): Same. |
| * timevar.def (TV_GRAPHITE_DATA_DEPS, TV_GRAPHITE_CODE_GEN): New. |
| |
| 2009-08-03 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * Merge from mainline (r149952:150372). |
| |
| 2009-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * ChangeLog.graphite: Fix indenting, white spaces and 80 columns. |
| * graphite-blocking.c: Same. |
| * graphite-clast-to-gimple.c: Same. |
| * graphite-dependences.c: Same. |
| * graphite-poly.c: Same. |
| * graphite-poly.h: Same. |
| * graphite-ppl.c: Same. |
| * graphite-scop-detection.c: Same. |
| * graphite-sese-to-poly.c: Same. |
| * graphite.c: Same. |
| |
| 2009-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (loop_entry_phi_arg): New. |
| (remove_simple_copy_phi): New. |
| (remove_invariant_phi): New. |
| (simple_copy_phi_p): New. |
| (reduction_phi_p): New. |
| (gsi_for_ssa_name_def): New. |
| (insert_out_of_ssa_copy): New. |
| (insert_out_of_ssa_copy_on_edge): New. |
| (create_zero_dim_array): New. |
| (scalar_close_phi_node_p): New. |
| (rewrite_close_phi_out_of_ssa): New. |
| (rewrite_phi_out_of_ssa): New. |
| (rewrite_reductions_out_of_ssa): New. |
| (build_poly_scop): Call rewrite_reductions_out_of_ssa. |
| |
| * gcc.dg/graphite/id-11.c: New. |
| * gcc.dg/graphite/id-15.c: New. |
| * gcc.dg/graphite/interchange-1.c: Un-XFAIL. |
| * gcc.dg/graphite/interchange-2.c: Un-XFAIL. |
| * gcc.dg/graphite/interchange-3.c: Un-XFAIL. |
| * gcc.dg/graphite/interchange-4.c: Un-XFAIL. |
| * gcc.dg/graphite/interchange-7.c: Un-XFAIL. |
| * gcc.dg/graphite/scop-matmult.c: Un-XFAIL. |
| * gfortran.dg/graphite/id-13.f: New. |
| * gfortran.dg/graphite/id-5.f: New. |
| |
| 2009-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (graphite_loop_normal_form): Do not |
| check that nb_reductions_in_loop is zero. |
| * graphite-scop-detection.c (harmful_stmt_in_bb): Don't filter out |
| reduction phi nodes. |
| (nb_reductions_in_loop): Removed. |
| (graphite_can_represent_loop): Do not call nb_reductions_in_loop. |
| * graphite-sese-to-poly.c (phi_node_is_iv): Removed. |
| (bb_contains_non_iv_scalar_phi_nodes): Removed. |
| (scop_contains_non_iv_scalar_phi_nodes): Removed. |
| (build_poly_scop): Do not call scop_contains_non_iv_scalar_phi_nodes. |
| |
| 2009-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (build_cloog_prog): Do not code generate |
| statements that have an empty iteration domain. |
| * gfortran.dg/graphite/id-16.f: New. |
| |
| 2009-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (instantiate_scev_1): Return |
| chrec_dont_know when the result is not above instantiate_below. |
| * graphite-scop-detection.c (scopdet_basic_block_info): Fix formatting. |
| * graphite-sese-to-poly.c (create_linear_expr_from_tree): Assert that |
| the tree has a known scalar evolution. |
| * gfortran.dg/graphite/id-14.f: New. |
| * gfortran.dg/graphite/id-15.f: New. |
| |
| 2009-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.c (rename_variables_in_stmt): Pass in an extra parameter |
| insert_gsi. |
| (rename_variables): Keep inserting renames after the ones already |
| inserted. |
| |
| 2009-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (compare_bb_depths): New. |
| (graphite_sort_dominated_info): New. |
| (build_scop_bbs_1): Call graphite_sort_dominated_info. |
| (build_scop_scattering): Fix comment. |
| |
| 2009-07-28 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite.c (graphite_finalize): Call print_loops instead of |
| dump_function_to_file. |
| * gcc.dg/graphite/graphite.exp: Fix formatting. |
| * gcc.dg/graphite/pr35356-1.c: New. Look for the number of |
| loops generated in the graphite output file. |
| * gcc.dg/graphite/pr35356-2.c: New. |
| * gcc.dg/graphite/pr35356-3.c: New. XFAILed for now. |
| * gfortran.dg/graphite/id-12.f: New. |
| |
| 2009-07-24 Li Feng <nemokingdom@gmail.com> |
| |
| * gcc.dg/graphite/graphite_autopar/force-parallel-8.c: |
| Remove 2 XFAIL. |
| |
| 2009-07-24 Li Feng <nemokingdom@gmail.com> |
| Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-sese-to-poly.c (pdr_add_alias_set): Use data reference's |
| alias set number build alias in ACCESSES polyhedron. |
| (build_alias_set_for_drs): New. |
| (build_pbb_drs): Added build_alias_set_for_drs. |
| * graphite-dependences.c (poly_drs_may_alias_p): New. |
| (graphite_carried_dependence_level_k): Check alias information |
| before building polyhedron. |
| |
| 2009-07-24 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * Makefile.in (lambda-code.o): Fix formatting. |
| |
| 2009-07-24 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * Merge from mainline (r149350-149952) |
| |
| 2009-07-18 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-poly.c (apply_poly_transforms): Move strip_mine |
| before interchange to prepare for loop blocking. |
| |
| 2009-07-18 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-poly.c (apply_poly_transforms): Add checks after every |
| transformation. |
| * graphite-sese-to-poly.c (build_poly_scop): Remove check, as already |
| done in apply_poly_transforms. |
| |
| 2009-07-17 Konrad Trifunovic <konrad.trifunovic@gmail.com> |
| |
| * graphite-dependences.c (build_lexicographically_gt_constraint): |
| Replace RES parameter with *RES. |
| (dependence_polyhedron_1): Pass an address of the parameter RES |
| instead of value of RES. |
| |
| 2009-07-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite.c (graphite_finalize): Fix comment. |
| (graphite_transform_loops): Reset scev info after code generation |
| of each scop. |
| |
| 2009-07-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite.c (graphite_finalize): Call scev_reset. |
| |
| 2009-07-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-clast-to-gimple.c (compute_cloog_iv_types): Do not create |
| GBB_CLOOG_IV_TYPES hash table twice. |
| * graphite-sese-to-poly.c (free_gimple_bb): Call free_data_refs. |
| (add_condition_to_domain): Clear GMP values. |
| |
| 2009-07-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-dependences.c: Fix formatting. |
| * graphite-poly.c (free_poly_dr): Also free PDR_DATA_CONTAINER. |
| (pbb_number_of_iterations): Free ppl_Linear_Expression. |
| * graphite-sese-to-poly.c: Fix formatting. |
| * graphite.c (graphite_transform_loops): Create the hash table |
| after the early return. |
| |
| 2009-07-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/id-14.c: New. |
| * gcc.dg/graphite/pr40157.c: New. |
| * gfortran.dg/graphite/id-11.f: New. |
| |
| 2009-07-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (nb_pbbs_in_loops): New. |
| (build_poly_scop): Return false when there are no pbbs within |
| loops to avoid to pass to cloog scops with no loops. |
| |
| 2009-07-16 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): Avoid |
| useless test "i % 2". |
| (build_pbb_scattering_polyhedrons): Fix formatting. |
| (build_poly_dr): Same. |
| * graphite.c (graphite_transform_loops): Restructure. |
| |
| 2009-07-14 Razya Ladelsky <razya@il.ibm.com> |
| |
| * tree-ssa-loop-manip.c (rewrite_phi_with_iv): Remove |
| reduction_list parameter. |
| (rewrite_all_phi_nodes_with_iv): Same. |
| (canonicalize_loop_ivs): Same. |
| * tree-parloops.c (struct brli): Removed. |
| (build_reduction_list_info): Removed. |
| (build_new_reduction): New. |
| (analyze_reduction_list): Removed. |
| (gather_scalar_reductions): Find reductions instead of phi |
| nodes that can't be canonicalized. |
| (try_create_reduction_list): Remove reduction_list parameter. |
| (gen_parallel_loop): Same. |
| (parallelize_loops): Remove analyze_reductions variable, |
| initialization and free. |
| Change reduction_list htab initialization to reduction_info |
| elements instead of ssa names. |
| Call try_create_reduction_list and gen_parallel_loop without |
| analyzed_reduction argument. |
| * graphite-clast-to-gimple (graphite_loop_normal_form): Call |
| canonicalize_loop_ivs with one less argument. |
| * tree-flow.h (canonicalize_loop_ivs): Remove one argument. |
| |
| 2009-07-14 Konrad Trifunovic <konrad.trifunovic@gmail.com> |
| |
| * graphite-dependences.c (new_poly_dr_pair): New. |
| (dependence_polyhedron): Renamed into dependence_polyhedron_1. |
| (new_poly_dr_pair): New. |
| (eq_poly_dr_pair_p): New. |
| (hash_poly_dr_pair_p): New. |
| * graphite-dependences.h (struct poly_dr_pair): New. |
| (eq_poly_dr_pair_p): Declared. |
| (hash_poly_dr_pair_p): Declared. |
| * graphite-poly.c (new_scop): Initialize SCOP_ORIGINAL_PDR_PAIRS. |
| (free_scop): Free SCOP_ORIGINAL_PDR_PAIRS. |
| * graphite-poly.h (struct scop): Add original_pdr_pairs field. |
| * Makefile.in (graphite-poly.o): Add dependence on |
| graphite-dependences.h. |
| |
| 2009-07-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-scop-detection.c (graphite_can_represent_scev): Do not let |
| polynomials of degree > 1 pass to Graphite. |
| * tree-chrec.c (scev_is_linear_expression): Call |
| evolution_function_is_affine_multivariate_p. |
| * gfortran.dg/graphite/id-10.f90: New. |
| |
| 2009-07-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * tree-scalar-evolution.c (compute_overall_effect_of_inner_loop): |
| Instantiate scevs varying in outer loops. |
| * gfortran.dg/graphite/id-9.f: Correct testcase. |
| |
| 2009-07-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (build_loop_iteration_domains): Do not insert |
| redundant constraint. |
| |
| 2009-07-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/graphite.exp: Fix comments. |
| * gfortran.dg/graphite/graphite.exp: Trigger actions |
| based on the file names as in the C testsuite. |
| * gfortran.dg/graphite/block-1.f90: Fix patterns. |
| * gfortran.dg/graphite/block-2.f: Same. |
| * gfortran.dg/graphite/block-3.f90: Same. |
| * gfortran.dg/graphite/block-4.f90: Same. |
| * gfortran.dg/graphite/id-1.f90: Same. |
| * gfortran.dg/graphite/id-2.f90: Same. |
| * gfortran.dg/graphite/id-3.f90: Same. |
| * gfortran.dg/graphite/id-4.f90: Same. |
| * gfortran.dg/graphite/id-6.f: Same. |
| * gfortran.dg/graphite/id-9.f: Same. |
| * gfortran.dg/graphite/interchange-1.f: Same. |
| * gfortran.dg/graphite/interchange-2.f: Same. |
| * gfortran.dg/graphite/scop-1.f: Same. |
| |
| 2009-07-14 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.c (expand_scalar_variables_call): New. |
| (expand_scalar_variables_ssa_name): Handle calls in expander. |
| |
| 2009-07-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/graphite_autopar/force-parallel-6.c: |
| Expect to see the pattern twice. |
| * gcc.dg/graphite/interchange-0.c: Un-XFAIL. |
| * gcc.dg/graphite/interchange-5.c: Same. |
| * gcc.dg/graphite/interchange-6.c: Same. |
| |
| 2009-07-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/id-10.c: New. |
| * gcc.dg/graphite/id-12.c: New. |
| * gfortran.dg/graphite/id-7.f: New. |
| * gfortran.dg/graphite/id-8.f: New. |
| |
| 2009-07-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (pdr_add_data_dimensions): Fix division by |
| zero. |
| |
| 2009-07-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.c (rename_variables_in_stmt): Call fold_convert during renaming. |
| |
| 2009-07-13 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * sese.c (expand_scalar_variables_stmt): Avoid unnecessary expansion. |
| |
| 2009-07-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (pdr_add_memory_accesses): Fix order of |
| building PDR subscripts. |
| |
| 2009-07-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (pdr_add_data_dimensions): Fix the |
| computation of array sizes. |
| |
| 2009-07-10 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * graphite-sese-to-poly.c (add_param_constraints): Disabled. |
| |
| 2009-07-10 Tobias Grosser <grosser@fim.uni-passau.de> |
| |
| * graphite-dependences.c (map_into_dep_poly, map_dr_into_dep_poly, |
| build_pairwise_constraint, dr_equality_constraints, |
| build_pairwise_scheduling_equality, |
| build_pairwise_scheduling_inequality, lexicographically_gt_p, |
| build_lexicographically_gt_constraint, dependence_polyhedron, |
| graphite_legal_transform_dr, graphite_carried_dependence_level_k): |
| Move from NNC_Polyhedron to C_Polyhedron. |
| * graphite-interchange.c (compute_array_size_poly, |
| gather_access_strides): Dito. |
| * graphite-poly.c (apply_poly_transforms, new_poly_dr, free_poly_bb, |
| free_scop, pbb_number_of_iterations): Dito. |
| * graphite-poly.h (struct poly_dr, pdr_nb_subscripts, struct poly_bb, |
| pbb_dim_iter_domain, struct scop): Dito. |
| * graphite-ppl.c (new_Constraint_System_from_Cloog_Matrix, |
| new_Cloog_Domain_from_ppl_Polyhedron, |
| new_Cloog_Domain_from_ppl_Pointset_Powerset, ppl_set_coef_gmp, |
| ppl_insert_dimensions_pointset, ppl_insert_dimensions_pointset, |
| ppl_strip_loop, ppl_strip_loop, ppl_print_polyhedron_matrix, |
| ppl_print_powerset_matrix, debug_ppl_polyhedron_matrix, |
| debug_ppl_powerset_matrix, ppl_read_polyhedron_matrix): Dito. |
| * graphite-ppl.h (ppl_Pointset_Powerset_C_Polyhedron_t, |
| new_C_Polyhedron_from_Cloog_Matrix, ppl_print_powerset_matrix, |
| debug_ppl_powerset_matrix, ppl_insert_dimensions_pointset): Dito. |
| * graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons, |
| build_loop_iteration_domains, ppl_constraint_type_from_tree_code, |
| add_condition_to_domain, add_condition_to_pbb, build_scop_context, |
| build_scop_iteration_domain, build_poly_dr): Dito |
| |
| 2009-07-09 Sebastian Pop <sebastian.pop@amd.com> |
| |
| * gcc.dg/graphite/graphite.exp: Added a rule to execute |
| run-id-*.c files. |
| * gcc.dg/graphite/run-id-1.c: New. |
|
|