https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101014
--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> --- Should be fixed with: commit ecc5644fa3bc7f37eada2a3e9c627cd1918922e0 Author: Andrew MacLeod <amacl...@redhat.com> Date: Mon Jun 14 15:33:59 2021 -0400 Limit new value calculations to first order effects. When utilzing poor values during propagation, we mostly care about values that were undefined/processed directly used in calcualting the SSA_NAME being processed. 2nd level derivations of such poor values rarely affect the inital calculation. Leave them to when they are directly encountered. * gimple-range-cache.cc (ranger_cache::ranger_cache): Adjust. (ranger_cache::enable_new_values): Set to specified value and return the old value. (ranger_cache::disable_new_values): Delete. (ranger_cache::fill_block_cache): Disable non 1st order derived poor values. * gimple-range-cache.h (ranger_cache): Adjust prototypes. * gimple-range.cc (gimple_ranger::range_of_expr): Adjust.