aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-cfg.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2021-07-13 10:17:35 +0100
committerRichard Sandiford <richard.sandiford@arm.com>2021-07-13 10:17:35 +0100
commit3658ee4c73955ebf281842d2e637ca556fa8bbfd (patch)
tree5e7527585057e982f664e36cfdda783ae6e1a04a /gcc/tree-cfg.c
parent0ae469e8c0ccb93a26bb1e60db6418d6bcced15e (diff)
downloadgcc-3658ee4c73955ebf281842d2e637ca556fa8bbfd.zip
gcc-3658ee4c73955ebf281842d2e637ca556fa8bbfd.tar.gz
gcc-3658ee4c73955ebf281842d2e637ca556fa8bbfd.tar.bz2
vect: Simplify epilogue reduction code
vect_create_epilog_for_reduction only handles two cases: single-loop reductions and double reductions. “nested cycles” (i.e. reductions in the inner loop when vectorising an outer loop) are handled elsewhere and don't need a vector->scalar reduction. The function had variables called nested_in_vect_loop and double_reduc and asserted that nested_in_vect_loop implied double_reduc, but it still had code to handle nested_in_vect_loop && !double_reduc. This patch removes that and uses double_reduc everywhere. gcc/ * tree-vect-loop.c (vect_create_epilog_for_reduction): Remove nested_in_vect_loop and use double_reduc everywhere. Remove dead assignment to "loop".
Diffstat (limited to 'gcc/tree-cfg.c')
0 files changed, 0 insertions, 0 deletions