https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116101
--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The trunk branch has been updated by Andrew Pinski <pins...@gcc.gnu.org>: https://gcc.gnu.org/g:9fe53beacfc5c01e24690dc70d7599db084cc8b4 commit r15-2343-g9fe53beacfc5c01e24690dc70d7599db084cc8b4 Author: Andrew Pinski <quic_apin...@quicinc.com> Date: Thu Jul 25 17:43:07 2024 -0700 isel: Don't duplicate comparisons for -O0 nor -fno-tree-ter [PR116101] While doing cleanups on this code I noticed that we do the duplicate of comparisons at -O0. For C and C++ code this makes no difference as the gimplifier never produces COND_EXPR. But it could make a difference for other front-ends. Oh and for -fno-tree-ter, duplicating the comparison is just a waste as it is never used for expand. I also decided to add a few testcases so this is checked in the future. Even added one for the duplication itself. Bootstrapped and tested on x86_64-linux-gnu with no regressions. PR tree-optimization/116101 gcc/ChangeLog: * gimple-isel.cc (maybe_duplicate_comparison): Don't do anything for -O0 or -fno-tree-ter. gcc/testsuite/ChangeLog: * gcc.dg/tree-ssa/dup_compare_cond-1.c: New test. * gcc.dg/tree-ssa/dup_compare_cond-2.c: New test. * gcc.dg/tree-ssa/dup_compare_cond-3.c: New test. Signed-off-by: Andrew Pinski <quic_apin...@quicinc.com>