Commit 28708525 by William Schmidt

gimple-ssa-strength-reduction.c (slsr_process_phi): Re-enable.

gcc:

2013-05-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gimple-ssa-strength-reduction.c (slsr_process_phi): Re-enable.
	(find_candidates_in_block): Re-enable slsr_process_phi.
	(create_phi_basis): Fix double counting of candidate adjustment.

gcc/testsuite:

2013-05-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.dg/tree-ssa/slsr-32.c: Re-enable.
	* gcc.dg/tree-ssa/slsr-33.c: Likewise.
	* gcc.dg/tree-ssa/slsr-34.c: Likewise.
	* gcc.dg/tree-ssa/slsr-35.c: Likewise.
	* gcc.dg/tree-ssa/slsr-36.c: Likewise.
	* gcc.dg/tree-ssa/slsr-37.c: Likewise.
	* gcc.dg/tree-ssa/slsr-38.c: Likewise.

From-SVN: r198627
parent 6a927313
2013-05-06 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gimple-ssa-strength-reduction.c (slsr_process_phi): Re-enable.
(find_candidates_in_block): Re-enable slsr_process_phi.
(create_phi_basis): Fix double counting of candidate adjustment.
2013-05-06 Richard Biener <rguenther@suse.de> 2013-05-06 Richard Biener <rguenther@suse.de>
PR middle-end/57147 PR middle-end/57147
......
...@@ -657,9 +657,6 @@ add_cand_for_stmt (gimple gs, slsr_cand_t c) ...@@ -657,9 +657,6 @@ add_cand_for_stmt (gimple gs, slsr_cand_t c)
*slot = c; *slot = c;
} }
// FORNOW: Disable conditional candidate processing until bootstrap
// issue can be sorted out for i686-pc-linux-gnu.
#if 0
/* Given PHI which contains a phi statement, determine whether it /* Given PHI which contains a phi statement, determine whether it
satisfies all the requirements of a phi candidate. If so, create satisfies all the requirements of a phi candidate. If so, create
a candidate. Note that a CAND_PHI never has a basis itself, but a candidate. Note that a CAND_PHI never has a basis itself, but
...@@ -750,7 +747,6 @@ slsr_process_phi (gimple phi, bool speed) ...@@ -750,7 +747,6 @@ slsr_process_phi (gimple phi, bool speed)
/* Add the candidate to the statement-candidate mapping. */ /* Add the candidate to the statement-candidate mapping. */
add_cand_for_stmt (phi, c); add_cand_for_stmt (phi, c);
} }
#endif
/* Look for the following pattern: /* Look for the following pattern:
...@@ -1523,12 +1519,8 @@ find_candidates_in_block (struct dom_walk_data *walk_data ATTRIBUTE_UNUSED, ...@@ -1523,12 +1519,8 @@ find_candidates_in_block (struct dom_walk_data *walk_data ATTRIBUTE_UNUSED,
bool speed = optimize_bb_for_speed_p (bb); bool speed = optimize_bb_for_speed_p (bb);
gimple_stmt_iterator gsi; gimple_stmt_iterator gsi;
// FORNOW: Disable conditional candidate processing until bootstrap
// issue can be sorted out for i686-pc-linux-gnu.
#if 0
for (gsi = gsi_start_phis (bb); !gsi_end_p (gsi); gsi_next (&gsi)) for (gsi = gsi_start_phis (bb); !gsi_end_p (gsi); gsi_next (&gsi))
slsr_process_phi (gsi_stmt (gsi), speed); slsr_process_phi (gsi_stmt (gsi), speed);
#endif
for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi)) for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
{ {
...@@ -2098,7 +2090,7 @@ create_phi_basis (slsr_cand_t c, gimple from_phi, tree basis_name, ...@@ -2098,7 +2090,7 @@ create_phi_basis (slsr_cand_t c, gimple from_phi, tree basis_name,
feeding_def = gimple_assign_lhs (basis->cand_stmt); feeding_def = gimple_assign_lhs (basis->cand_stmt);
else else
{ {
double_int incr = c->index - basis->index; double_int incr = -basis->index;
feeding_def = create_add_on_incoming_edge (c, basis_name, incr, feeding_def = create_add_on_incoming_edge (c, basis_name, incr,
e, loc, known_stride); e, loc, known_stride);
} }
......
2013-05-03 Teresa Johnson <tejohnson@google.com> 2013-05-06 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.dg/tree-ssa/slsr-32.c: Re-enable.
* gcc.dg/tree-ssa/slsr-33.c: Likewise.
* gcc.dg/tree-ssa/slsr-34.c: Likewise.
* gcc.dg/tree-ssa/slsr-35.c: Likewise.
* gcc.dg/tree-ssa/slsr-36.c: Likewise.
* gcc.dg/tree-ssa/slsr-37.c: Likewise.
* gcc.dg/tree-ssa/slsr-38.c: Likewise.
2013-05-06 Teresa Johnson <tejohnson@google.com>
PR bootstrap/57154 PR bootstrap/57154
* gcc.dg/pr57154.c: New test. * gcc.dg/pr57154.c: New test.
......
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O3 -fdump-tree-optimized" } */ /* { dg-options "-O3 -fdump-tree-optimized" } */
/* { dg-skip-if "" { *-*-* } } */
int int
f (int s, int c, int i) f (int s, int c, int i)
......
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O3 -fdump-tree-optimized" } */ /* { dg-options "-O3 -fdump-tree-optimized" } */
/* { dg-skip-if "" { *-*-* } } */
int int
f (int c, int i) f (int c, int i)
......
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O3 -fdump-tree-optimized" } */ /* { dg-options "-O3 -fdump-tree-optimized" } */
/* { dg-skip-if "" { *-*-* } } */
extern void extern void
g (void); g (void);
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O3 -fdump-tree-optimized" } */ /* { dg-options "-O3 -fdump-tree-optimized" } */
/* { dg-skip-if "" { *-*-* } } */
int int
f (int c, int i) f (int c, int i)
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O3 -fdump-tree-optimized" } */ /* { dg-options "-O3 -fdump-tree-optimized" } */
/* { dg-skip-if "" { *-*-* } } */
int int
f (int s, int c, int i) f (int s, int c, int i)
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O3 -fdump-tree-optimized" } */ /* { dg-options "-O3 -fdump-tree-optimized" } */
/* { dg-skip-if "" { *-*-* } } */
int int
f (int s, int c, int i) f (int s, int c, int i)
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O3 -fdump-tree-optimized" } */ /* { dg-options "-O3 -fdump-tree-optimized" } */
/* { dg-skip-if "" { *-*-* } } */
int int
f (int c, int i) f (int c, int i)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment