1. 30 Sep, 2010 40 commits
    • CDI_POST_DOMINATORS are not used in Graphite. · 61c6973f
      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.
      
      From-SVN: r164807
      Sebastian Pop committed
    • Only iterate over pbb_dim_iter_domain. · aad78a1a
      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.
      
      From-SVN: r164806
      Sebastian Pop committed
    • Fix comments. · 26315ccf
      2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-flattening.c: Fix comments.
      
      From-SVN: r164805
      Sebastian Pop committed
    • New pass: loop flattening. · 98af4c9f
      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.
      
      From-SVN: r164804
      Sebastian Pop committed
    • Add cloog_checksum. · c498b9b9
      2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-poly.c (cloog_checksum): New.
      	* graphite-poly.h (cloog_checksum): Declared.
      
      From-SVN: r164803
      Sebastian Pop committed
    • Fix pbb_number_of_iterations_at_time. · 26ccb556
      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.
      
      From-SVN: r164802
      Sebastian Pop committed
    • Fix lst_update_scattering. · b8745012
      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.
      
      From-SVN: r164801
      Sebastian Pop committed
    • Outline lst_niter_for_loop. · 22280f63
      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.
      
      From-SVN: r164800
      Sebastian Pop committed
    • Call fatal_error when the transform read from file is not legal. · 6eb412ef
      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.
      
      From-SVN: r164799
      Sebastian Pop committed
    • Fix pretty printers. · 0ba82567
      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.
      
      From-SVN: r164798
      Sebastian Pop committed
    • Use FOR_EACH_VEC_ELT. · 69ac2bb6
      2010-09-09  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-poly.h (lst_dewey_number): Use FOR_EACH_VEC_ELT.
      
      From-SVN: r164797
      Sebastian Pop committed
    • New SCoPDetection detects first SCoPs. · 0706c754
      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.
      
      From-SVN: r164796
      Vladimir Kargov committed
    • Fix uninitialize warning. · da8cebd1
      2010-08-24  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-poly.c (graphite_read_scop_file): Fix uninitialize warning.
      
      From-SVN: r164795
      Sebastian Pop committed
    • Avoid set but not used warning. · 1635d7b0
      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.
      
      From-SVN: r164794
      Sebastian Pop committed
    • Speed-up loop blocking: strip-mining is always legal. · 3a7cd438
      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.
      
      From-SVN: r164793
      Sebastian Pop committed
    • Fix the description of graphite_can_represent_loop. · 45fc26fc
      2010-08-20  Vladimir Kargov  <kargov@gmail.com>
      
      	* graphite-scop-detection.c (graphite_can_represent_loop): Correct the
      	description.
      
      From-SVN: r164792
      Vladimir Kargov committed
    • Add testcase for PR45230. · 6272efef
      2010-08-20  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR middle-end/45230
      	* gcc.dg/graphite/id-pr45230.c: New.
      
      From-SVN: r164791
      Sebastian Pop committed
    • Also handle ARRAY_REFs in instantiate_scev_r. · dbc08079
      2010-08-20  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-scalar-evolution.c (instantiate_array_ref): New.
      	(instantiate_scev_r): Also handle ARRAY_REFs.
      
      From-SVN: r164790
      Sebastian Pop committed
    • Fix chrec_contains_symbols_defined_in_loop. · 492e5456
      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.
      
      From-SVN: r164789
      Sebastian Pop committed
    • A function is affine when CHREC_RIGHT is invariant. · 21d91009
      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.
      
      From-SVN: r164788
      Sebastian Pop committed
    • Factor out is_gimple_reg calls. · c2bc669e
      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.
      
      From-SVN: r164787
      Sebastian Pop committed
    • Remove outermost loop parameter. · 56f30f65
      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.
      
      From-SVN: r164786
      Vladimir Kargov committed
    • Fix PR45229: gcc.c-torture/execute/20000412-4.c ICEs with -fgraphite-identity. · b4c8119f
      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.
      
      From-SVN: r164785
      Sebastian Pop committed
    • Integrate openscop tests in graphite testsuite. · 91989b60
      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.
      
      From-SVN: r164784
      Riyadh Baghdadi committed
    • Add documentation for -fgraphite-read and -fgraphite-write. · d3feeef9
      2010-08-14  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.
      
      From-SVN: r164783
      Riyadh Baghdadi committed
    • Disable graphite loop optimizations with fgraphite read. · a73c5323
      2010-08-14  Riyadh Baghdadi <baghdadi.mr@gmail.com>
      
      	* toplev.c (process_options): Disable graphite loop optimization
      	options when -fgraphite-read flag is used.
      
      From-SVN: r164782
      Riyadh Baghdadi committed
    • Dump each scop in a separate file. · f06ecc4b
      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.
      
      From-SVN: r164781
      Riyadh Baghdadi committed
    • Remove redundant checks in graphite_can_represent_scev. · d9ae7906
      2010-08-17  Tobias Grosser  <grosser@fim.uni-passau.de>
      
              * graphite-scop-detection.c (graphite_can_represent_scev): Remove
              redundant checks.
      
      From-SVN: r164780
      Sebastian Pop committed
    • Fix 435.gromacs miscompile. · 02315365
      2010-08-12  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (precision_for_value): Adjust
      	computation of precision by 1.
      
      From-SVN: r164779
      Sebastian Pop committed
    • Enable graphite to read an OpenScop file. · 721c8b1e
      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.
      
      From-SVN: r164778
      Riyadh Baghdadi committed
    • Fix include order to avoid failed compilation on CLOOG_ORG. · fd8bb591
      2010-08-11  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
      
      	* graphite-poly.c: Change include order.
      
      From-SVN: r164777
      Andreas Simbuerger committed
    • Add necessary accessors for CloogMatrix (CLOOG_ORG). · 562c1b02
      2010-08-11  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
      
      	* graphite-cloog-compat.h (cloog_matrix_ncolumns): New.
      	(cloog_matrix_nrows): New.
      
      From-SVN: r164776
      Andreas Simbuerger committed
    • Remove spaces from matrix lines. · 7241f8c5
      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.
      
      From-SVN: r164775
      Riyadh Baghdadi committed
    • Fix columns order in openscop. · d72f5037
      2010-08-11  Riyadh Baghdadi <baghdadi.mr@gmail.com>
      
      	* graphite-poly.c (openscop_print_pdr_polyhedron): Fix indentation.
      	(openscop_print_pdr_polyhedron): Print pph.
      
      From-SVN: r164774
      Riyadh Baghdadi committed
    • Add testcase for PR43423. · 9e054f1b
      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.
      
      From-SVN: r164773
      Sebastian Pop committed
    • Generate in priority signed types for integer constants. · c6060639
      2010-07-29  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (gcc_type_for_interval): Generate in
      	priority signed types.
      
      From-SVN: r164772
      Sebastian Pop committed
    • Avoid lang_hooks, call build_nonstandard_integer_type. · 2c2aceeb
      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.
      
      From-SVN: r164771
      Sebastian Pop committed
    • Write OpenScop format. · ae403f5a
      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.
      
      From-SVN: r164770
      Riyadh Baghdadi committed
    • Fix date · c8c2d4e7
      From-SVN: r164769
      Eric Botcazou committed
    • m32c.c (cris_memory_move_cost): New. · b95491a0
      	* config/cris/m32c.c (cris_memory_move_cost): New.
      	(cris_register_move_cost): Make static. Change arguments type from
      	enum reg_class to reg_class_t.
      	(TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
      	* config/cris/cris.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
      	* config/cris/cris-protos.h (cris_register_move_cost): Remove.
      
      From-SVN: r164768
      Anatoly Sokolov committed