aboutsummaryrefslogtreecommitdiff
path: root/gcc/vr-values.c
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2020-10-20 15:25:20 +0200
committerAldy Hernandez <aldyh@redhat.com>2020-10-20 17:23:12 +0200
commit5d53ec27015b916640171e891870adf2c6fdfd4c (patch)
treee40dddc65912a5f0727da9e19536a0c53948fea6 /gcc/vr-values.c
parentdbcc6b1577bedd2bf5879393c862b6c461787503 (diff)
downloadgcc-5d53ec27015b916640171e891870adf2c6fdfd4c.zip
gcc-5d53ec27015b916640171e891870adf2c6fdfd4c.tar.gz
gcc-5d53ec27015b916640171e891870adf2c6fdfd4c.tar.bz2
Saturate overflows return from SCEV in ranger.
bounds_of_var_in_loop is returning an overflowed int, which is causing us to create a range for which we can't compare the bounds causing an ICE in verify_range. Overflowed bounds cause compare_values() to return -2, which we don't handle in verify_range. We don't represent overflowed ranges in irange, so this patch just saturates any overflowed end-points to MIN or MAX. gcc/ChangeLog: PR tree-optimization/97501 * gimple-range.cc (gimple_ranger::range_of_ssa_name_with_loop_info): Saturate overflows returned from SCEV. gcc/testsuite/ChangeLog: * gcc.dg/pr97501.c: New test.
Diffstat (limited to 'gcc/vr-values.c')
0 files changed, 0 insertions, 0 deletions