]> git.ipfire.org Git - thirdparty/gcc.git/commit
tree-optimization/44794 - avoid excessive RTL unrolling on epilogues
authorRichard Biener <rguenther@suse.de>
Thu, 9 Mar 2023 08:02:07 +0000 (09:02 +0100)
committerRichard Biener <rguenther@suse.de>
Wed, 19 Apr 2023 11:50:21 +0000 (13:50 +0200)
commita243ce2a52a6c62bc0d6be0b756a85dd9c1bceb7
tree37e227b6780a77a541c003cc36af246061d7841d
parent6d7e0bcfa49e4ddc84dabe520bba8a023bc52692
tree-optimization/44794 - avoid excessive RTL unrolling on epilogues

The following adjusts tree_[transform_and_]unroll_loop to set an
upper bound on the number of iterations on the epilogue loop it
creates.  For the testcase at hand which involves array prefetching
this avoids applying RTL unrolling to them when -funroll-loops is
specified.

Other users of this API includes predictive commoning and
unroll-and-jam.

PR tree-optimization/44794
* tree-ssa-loop-manip.cc (tree_transform_and_unroll_loop):
If an epilogue loop is required set its iteration upper bound.
gcc/tree-ssa-loop-manip.cc