Commit Graph

97166 Commits

Author SHA1 Message Date
Li Feng
2b178a5f0d graphite-sese-to-poly.c (free_data_refs_aux): Update to free the new structure.
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.

From-SVN: r154614
2009-11-25 05:19:32 +00:00
Sebastian Pop
e8af484268 sese.c (get_vdef_before_sese): Handle GIMPLE_ASSIGN and GIMPLE_CALL.
2009-10-20  Sebastian Pop  <sebastian.pop@amd.com>

	* sese.c (get_vdef_before_sese): Handle GIMPLE_ASSIGN and GIMPLE_CALL.

From-SVN: r154613
2009-11-25 05:19:05 +00:00
Sebastian Pop
3899a0b221 graphite-sese-to-poly.c (pdr_add_data_dimensions): Do not infer loop upper bounds for 1-element arrays at end of structures.
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.

From-SVN: r154612
2009-11-25 05:18:35 +00:00
Sebastian Pop
e34e583538 pr41305.C: New.
2009-10-20  Sebastian Pop  <sebastian.pop@amd.com>

	* g++.dg/graphite/pr41305.C: New.

From-SVN: r154611
2009-11-25 05:18:06 +00:00
Alexander Monakov
07b0d0e253 graphite-sese-to-poly.c (build_loop_iteration_domains): Generalize construction of parameter constraints from loop iteration analysis.
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.

From-SVN: r154610
2009-11-25 05:17:38 +00:00
Sebastian Pop
67255edf95 graphite-interchange.c (memory_stride_in_loop): Delete p1, lma and new_cstr.
2009-10-17  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-interchange.c (memory_stride_in_loop): Delete p1, lma
	and new_cstr.

From-SVN: r154609
2009-11-25 05:17:09 +00:00
Sebastian Pop
14ba996b08 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 (dependence_polyhedron_1): Remove
	unused gdim dimensions from the DDR polyhedron.

From-SVN: r154608
2009-11-25 05:16:42 +00:00
Sebastian Pop
4454141ae6 graphite-dependences.c (pddr_transformed_scattering): New.
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.

From-SVN: r154607
2009-11-25 05:16:14 +00:00
Sebastian Pop
dd61070df0 graphite-dependences.c (reduction_dr_1): Remove wrong assert: reduction BBs can have multiple reduction writes to memory.
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.

From-SVN: r154606
2009-11-25 05:15:47 +00:00
Sebastian Pop
65421bcc38 interchange-3.f90: New.
2009-10-17  Sebastian Pop  <sebastian.pop@amd.com>

	* gfortran.dg/graphite/interchange-3.f90: New.

From-SVN: r154605
2009-11-25 05:15:18 +00:00
Sebastian Pop
3e9f43ee6c interchange-1.c: Un-XFAILed.
2009-10-17  Sebastian Pop  <sebastian.pop@amd.com>

	* gcc.dg/graphite/interchange-1.c: Un-XFAILed.

From-SVN: r154604
2009-11-25 05:14:51 +00:00
Sebastian Pop
16bf8ab165 graphite-dependences.c (dependence_polyhedron_1): Add the context to the dependence polyhedron.
2009-10-17  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (dependence_polyhedron_1): Add the
	context to the dependence polyhedron.

From-SVN: r154603
2009-11-25 05:14:24 +00:00
Sebastian Pop
d422adfa00 graphite-poly.c (pbb_remove_duplicate_pdrs): Initialize PBB_PDR_DUPLICATES_REMOVED.
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.

From-SVN: r154602
2009-11-25 05:13:57 +00:00
Sebastian Pop
62e475c550 graphite-sese-to-poly.c (find_scop_parameters): Initialize SCOP_CONTEXT.
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.

From-SVN: r154601
2009-11-25 05:13:30 +00:00
Sebastian Pop
3ecbce7e02 graphite-ppl.c (ppl_min_for_le_polyhedron): New.
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.

From-SVN: r154600
2009-11-25 05:13:03 +00:00
Sebastian Pop
04863400c4 graphite-ppl.c (ppl_print_linear_expr): New.
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.

From-SVN: r154599
2009-11-25 05:12:35 +00:00
Sebastian Pop
009150e1fc graphite-interchange.c: Fix comments.
2009-10-16  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-interchange.c: Fix comments.
	* gcc.dg/graphite/block-1.c: Fix comments.

From-SVN: r154598
2009-11-25 05:12:07 +00:00
Sebastian Pop
9b196c9394 interchange-7.c: Un-XFAILed.
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.

From-SVN: r154597
2009-11-25 05:11:38 +00:00
Sebastian Pop
caa675f82e Empty patch, as it already is applied to trunk.
From-SVN: r154596
2009-11-25 05:11:10 +00:00
Sebastian Pop
92d92abba1 graphite-interchange.c (memory_stride_in_loop): The depth argument corresponds to a dynamic time dimension...
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.

From-SVN: r154595
2009-11-25 05:10:43 +00:00
Sebastian Pop
23159c5610 graphite-interchange.c (memory_stride_in_loop): Fix comments.
2009-10-15  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-interchange.c (memory_stride_in_loop): Fix comments.

From-SVN: r154594
2009-11-25 05:10:14 +00:00
Sebastian Pop
5c6c42c98d graphite-blocking.c (lst_do_strip_mine): Avoid strip mining the root of the LST.
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.

From-SVN: r154593
2009-11-25 05:09:36 +00:00
Sebastian Pop
f58be90efb graphite-poly.c (print_scop): Fix pretty printing of a SCoP.
2009-10-15  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.c (print_scop): Fix pretty printing of a SCoP.

From-SVN: r154592
2009-11-25 05:09:07 +00:00
Sebastian Pop
4e4ee19735 passes.texi: Document the Graphite infrastructure.
2009-10-15  Sebastian Pop  <sebastian.pop@amd.com>

	* doc/passes.texi: Document the Graphite infrastructure.

From-SVN: r154591
2009-11-25 05:08:37 +00:00
Sebastian Pop
6c4499b675 re PR middle-end/41193 (slow compilation with graphite / ice with graphite)
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.

From-SVN: r154590
2009-11-25 05:08:09 +00:00
Sebastian Pop
8e49fe911a pr40157.c: Use -floop-block as reported in the PR.
2009-10-15  Sebastian Pop  <sebastian.pop@amd.com>

	* gcc.dg/graphite/pr40157.c: Use -floop-block as reported in the PR.

From-SVN: r154589
2009-11-25 05:07:43 +00:00
Sebastian Pop
bb2b2dfc79 interchange-11.c: New.
2009-10-14  Sebastian Pop  <sebastian.pop@amd.com>

	* gcc.dg/graphite/interchange-11.c: New.

From-SVN: r154588
2009-11-25 05:07:16 +00:00
Sebastian Pop
e7ed4a64d6 interchange-8.c: Enable loop interchange.
2009-10-14  Sebastian Pop  <sebastian.pop@amd.com>

	* gcc.dg/graphite/interchange-8.c: Enable loop interchange.

From-SVN: r154587
2009-11-25 05:06:49 +00:00
Sebastian Pop
d7f25aa655 graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Add -fno-loop-strip-mine and -fno-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.

From-SVN: r154586
2009-11-25 05:06:21 +00:00
Sebastian Pop
6231cf4946 graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Renamed DEFAULT_FLAGS_GRAPHITE_BLOCK.
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.

From-SVN: r154585
2009-11-25 05:05:53 +00:00
Sebastian Pop
2b7c09a8b3 graphite-poly.c (pbb_number_of_iterations_at_time): Cleanup comments.
2009-10-14  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.c (pbb_number_of_iterations_at_time): Cleanup comments.

From-SVN: r154584
2009-11-25 05:05:22 +00:00
Konrad Trifunovic
b0c7a278f4 graphite-interchange.c (build_linearized_memory_access): Pass an offset as parameter.
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.

Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>

From-SVN: r154583
2009-11-25 05:04:53 +00:00
Sebastian Pop
13ae6f9118 graphite-blocking.c (pbb_do_strip_mine): Removed.
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.

From-SVN: r154582
2009-11-25 05:04:26 +00:00
Sebastian Pop
c0fe753b7d graphite-poly.c (loop_to_lst): Fix LST creation.
2009-10-14  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.c (loop_to_lst): Fix LST creation.

From-SVN: r154581
2009-11-25 05:03:58 +00:00
Tobias Grosser
8d75ec872b id-15.c: (8 * 8) replaced with sizeof(unsigned long) to make it run on 32bit systems.
2009-10-14  Tobias Grosser  <grosser@fim.uni-passau.de>

	* testsuite/gcc.dg/graphite/id-15.c: (8 * 8) replaced with
	sizeof(unsigned long) to make it run on 32bit systems.

From-SVN: r154580
2009-11-25 05:03:27 +00:00
Sebastian Pop
ee3a52d794 * testsuite/gcc.dg/graphite/id-15.c: Adjusted.
From-SVN: r154579
2009-11-25 05:02:58 +00:00
Sebastian Pop
7e0667ffc7 run-id-1.c: Adjusted size of data to fit on 32-bit machines.
* testsuite/gcc.dg/graphite/run-id-1.c: Adjusted size of data
	to fit on 32-bit machines.

From-SVN: r154578
2009-11-25 05:02:31 +00:00
Ramakrishna Upadrasta
2e5a7cbf74 graphite-sese-to-poly.c (write_alias_graph_to_ascii_dimacs): Fix Comment.
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.

From-SVN: r154577
2009-11-25 05:02:04 +00:00
Sebastian Pop
1e82de2a59 interchange-1.f: XFail.
2009-10-13  Sebastian Pop  <sebastian.pop@amd.com>

	* gfortran.dg/graphite/interchange-1.f: XFail.

From-SVN: r154576
2009-11-25 05:01:36 +00:00
Sebastian Pop
9bf13085d8 graphite.c (graphite_initialize): Do not handle functions with more than 100 basic blocks.
2009-10-13  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite.c (graphite_initialize): Do not handle functions with
	more than 100 basic blocks.

From-SVN: r154575
2009-11-25 05:01:06 +00:00
Sebastian Pop
e797c5f266 graphite-blocking.c (pbb_do_strip_mine): Use PARAM_LOOP_BLOCK_TILE_SIZE.
2009-10-13  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-blocking.c (pbb_do_strip_mine): Use
	PARAM_LOOP_BLOCK_TILE_SIZE.
	* params.def (PARAM_LOOP_BLOCK_TILE_SIZE): Declared.

From-SVN: r154574
2009-11-25 05:00:38 +00:00
Sebastian Pop
bfa00f485a graphite-poly.c (dot_lst_1): New.
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.

From-SVN: r154573
2009-11-25 05:00:08 +00:00
Sebastian Pop
3c7bdeb832 graphite-dependences.c (dot_deps_stmt_1): New.
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.

From-SVN: r154572
2009-11-25 04:59:39 +00:00
Sebastian Pop
7f05acf925 ChangeLog.graphite: New.
2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>

	* ChangeLog.graphite: New.
	* testsuite/libgomp.graphite/graphite.exp (PARALLEL_CFLAGS): Add
	-fno-loop-block.

From-SVN: r154571
2009-11-25 04:59:10 +00:00
Sebastian Pop
c7dc2fabcf graphite-sese-to-poly.c (rewrite_cross_bb_scalar_dependence): Do not replace cross BB scalar dependences ending on PHI nodes.
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.

From-SVN: r154570
2009-11-25 04:58:45 +00:00
Sebastian Pop
24c7970980 graphite-poly.c (apply_poly_transforms): Implement the high level driver for flag_loop_block.
2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.c (apply_poly_transforms): Implement the high
	level driver for flag_loop_block.
	* tree-ssa-loop.c (gate_graphite_transforms): Remove call to sorry for
	flag_loop_block.

	* gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Add
	-floop-block.
	* gfortran.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK):
	Add -floop-block.

From-SVN: r154569
2009-11-25 04:58:16 +00:00
Sebastian Pop
a0517b76dd graphite-poly.h (lst_find_pbb): New.
2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.h (lst_find_pbb): New.
	(find_lst_loop): New.

From-SVN: r154568
2009-11-25 04:57:45 +00:00
Sebastian Pop
9d0778350b graphite-poly.c (new_scop): Remove init of SCOP_DEP_GRAPH.
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.

From-SVN: r154567
2009-11-25 04:57:17 +00:00
Sebastian Pop
75b63a9191 graphite-poly.h (copy_lst): Do full copy of LST.
2009-10-09  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.h (copy_lst): Do full copy of LST.

From-SVN: r154566
2009-11-25 04:56:49 +00:00
Sebastian Pop
7cc4ff8d29 graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi when the loop stride is zero.
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.

From-SVN: r154565
2009-11-25 04:56:21 +00:00