https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101145
--- Comment #3 from Jiu Fu Guo <guojiufu at gcc dot gnu.org> --- Yes, while the code in adjust_cond_for_loop_until_wrap seems somehow tricky: /* Only support simple cases for the moment. */ if (TREE_CODE (iv0->base) != INTEGER_CST || TREE_CODE (iv1->base) != INTEGER_CST) return false; This code requires both sides are constant.