[Bug tree-optimization/125804] [17 Regression] 403.gcc miscompares since r17-837-g8af2e8e49d6e5d
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jun 17 11:12:12 GMT 2026
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125804
--- Comment #11 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tamar Christina <tnfchris@gcc.gnu.org>:
https://gcc.gnu.org/g:09ea2b042881a6fad24e9b96029b62b93eda4fea
commit r17-1614-g09ea2b042881a6fad24e9b96029b62b93eda4fea
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Jun 17 12:09:22 2026 +0100
vect: Fix early break in PEELED cases [PR125804]
When a loop is LOOP_VINFO_EARLY_BREAKS_VECT_PEELED && !
LOOP_VINFO_EARLY_BRK_NEEDS_EPILOG
then we still need the epilog loop for the main latch edge.
The early exits themselves when LOOP_VINFO_EARLY_BRK_NEEDS_EPILOG don't
need to
go to scalar code.
Allowing bound_epilog to still be set to VF when
LOOP_VINFO_EARLY_BREAKS_VECT_PEELED we get to the desired effect that the
early
exits do not require an epilog when !LOOP_VINFO_EARLY_BRK_NEEDS_EPILOG but
the main edge still does if LOOP_VINFO_EARLY_BREAKS_VECT_PEELED.
gcc/ChangeLog:
PR tree-optimization/125804
* tree-vect-loop-manip.cc (vect_do_peeling): Have
LOOP_VINFO_EARLY_BREAKS_VECT_PEELED require epilog.
gcc/testsuite/ChangeLog:
PR tree-optimization/125804
* gcc.dg/vect/vect-early-break_144-pr125804.c: New test.
More information about the Gcc-bugs
mailing list