https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111718
--- Comment #2 from Yi <652023330028 at smail dot nju.edu.cn> --- We noticed one change between gcc-13.2 and the current gcc-trunk: https://godbolt.org/z/j5Mnvno9n In the following code, gcc-13.2 does not yet have the ability to optimize as expected, but on gcc-trunk, it does. unsigned n1,n2; void func1(unsigned a){ if(a<=10 || a>=20) return; n2=(a+a)/a; } Maybe this change will help solve this issue?