https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115337
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Looks like the code in `cfn_clz::fold_range` in gimple-range-op.cc assume that the return value for defining of 0 should only be positive. `cfn_ctz::fold_range` has a similar issue too. As a seperate note I notice: ``` // Implement range operator for CFN_BUILT_IN_POPCOUNT. class cfn_popcount : public cfn_ffs ``` That seems wrong, popcount is not related to ffs (ffs is more related to clz/ctz).