re PR tree-optimization/58626 (possible array wrong code bug)
authorRichard Biener <rguenther@suse.de>
Fri, 25 Oct 2013 11:51:11 +0000 (11:51 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Fri, 25 Oct 2013 11:51:11 +0000 (11:51 +0000)
commit447f3223806b2e90f4b13ad934063fdea4768cdb
tree92a4f2d75d7f8468ac5e0aa42e73009a8b78c97c
parent5970573cc103b6745b760478b2f3f628d607edd2
re PR tree-optimization/58626 (possible array wrong code bug)

2013-10-25  Richard Biener  <rguenther@suse.de>

PR tree-optimization/58626
* tree-loop-distribution.c (enum rdg_dep_type): Remove
anti_dd, output_dd and input_dd.
(struct rdg_edge): Remove level and relation members.
(RDGE_LEVEL, RDGE_RELATION): Remove.
(dot_rdg_1): Adjust.
(create_rdg_edge_for_ddr): Remove.
(create_rdg_edges_for_scalar): Adjust.
(create_edge_for_control_dependence): Likewise.
(create_rdg_edges): Split into ...
(create_rdg_flow_edges): ... this
(create_rdg_cd_edges): ... and this.
(free_rdg): Adjust.
(build_rdg): Likewise, do not compute data dependences or
add edges for them.
(pg_add_dependence_edges): New function.
(pgcmp): Likewise.
(distribute_loop): First apply all non-dependence based
partition mergings.  Then compute dependences between partitions
and merge and order partitions according to them.

* gcc.dg/torture/pr58626.c: New testcase.

From-SVN: r204062
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr58626.c [new file with mode: 0644]
gcc/tree-loop-distribution.c