re PR tree-optimization/88533 (Higher performance penalty of array-bounds checking...
authorRichard Biener <rguenther@suse.de>
Wed, 19 Dec 2018 11:10:08 +0000 (11:10 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 19 Dec 2018 11:10:08 +0000 (11:10 +0000)
commit08926e6f5bbf23d1eebc776d84d648f8b5836931
treee0a904ac5d8b5b15f57fd336b91c9ecaf822dcaa
parent3c55d60f405e4429cbcd2cf5c27c048ac226b502
re PR tree-optimization/88533 (Higher performance penalty of array-bounds checking for sparse-matrix vector multiply)

2018-12-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/88533
Revert
2018-04-30  Richard Biener  <rguenther@suse.de>

PR tree-optimization/28364
PR tree-optimization/85275
* tree-ssa-loop-ch.c (ch_base::copy_headers): Stop after
copying first exit test.

* gcc.dg/tree-ssa/ssa-dom-thread-7.c: Adjust.

* tree-ssa-loop-ch.c: Include tree-phinodes.h and
ssa-iterators.h.
(should_duplicate_loop_header_p): Track whether stmt compute
loop invariants or values based on IVs.  Apart from the
original loop header only duplicate blocks with exit tests
that are based on IVs or invariants.

* gcc.dg/tree-ssa/copy-headers-6.c: New testcase.
* gcc.dg/tree-ssa/copy-headers-7.c: Likewise.
* gcc.dg/tree-ssa/ivopt_mult_1.c: Un-XFAIL.
* gcc.dg/tree-ssa/ivopt_mult_2.c: Likewise.

From-SVN: r267262
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/copy-headers-6.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/tree-ssa/copy-headers-7.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/tree-ssa/ivopt_mult_1.c
gcc/testsuite/gcc.dg/tree-ssa/ivopt_mult_2.c
gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-7.c
gcc/tree-ssa-loop-ch.c