re PR tree-optimization/71815 (SLSR misses several PHI candidate cases)
authorWilliam Schmidt <wschmidt@gcc.gnu.org>
Mon, 26 Jun 2017 14:19:33 +0000 (14:19 +0000)
committerWilliam Schmidt <wschmidt@gcc.gnu.org>
Mon, 26 Jun 2017 14:19:33 +0000 (14:19 +0000)
commit226ab0a80879f9d758ba992b2fe06ac1049e8a98
tree7f7d0ec07dc95b2e04ac4540346b411a92cf80a0
parentdf11b2ea7f3139e0f786e634040d425421ce77c4
re PR tree-optimization/71815 (SLSR misses several PHI candidate cases)

[gcc]

2016-06-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/71815
* gimple-ssa-strength-reduction.c (uses_consumed_by_stmt): New
function.
(find_basis_for_candidate): Call uses_consumed_by_stmt rather than
has_single_use.
(slsr_process_phi): Likewise.
(replace_uncond_cands_and_profitable_phis): Don't replace a
multiply candidate with a stride of 1 (copy or cast).
(phi_incr_cost): Call uses_consumed_by_stmt rather than
has_single_use.
(lowest_cost_path): Likewise.
(total_savings): Likewise.

[gcc/testsuite]

2016-06-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/71815
* gcc.dg/tree-ssa/slsr-35.c: Remove -fno-code-hoisting workaround.
* gcc.dg/tree-ssa/slsr-36.c: Likewise.

From-SVN: r249649
gcc/ChangeLog
gcc/testsuite/ChangeLog