Retain existing range knowledge when prefilling statements.
authorAndrew MacLeod <amacleod@redhat.com>
Mon, 25 Apr 2022 13:56:35 +0000 (09:56 -0400)
committerAndrew MacLeod <amacleod@redhat.com>
Mon, 25 Apr 2022 13:58:53 +0000 (09:58 -0400)
commit362e2a9c6297203bcf7f66bfb51dffb82b42d3b3
tree01abff06b790a4d219fa4951900128723aa45313
parent46cd445fc0714cc6c834b680c3f59dbad0b94a3c
Retain existing range knowledge when prefilling statements.

When range_of_stmt was adjusted to avoid large recursion depth, we need to
intersect the calculated range whth the any known range to avoid losing
info.  Range_of_stmt does this, but the new prefill code missed it.

PR tree-optimization/105276
gcc/
* gimple-range.cc (gimple_ranger::prefill_stmt_dependencies): Include
existing global range with calculated value.

gcc/testsuite/
* g++.dg/pr105276.C: New.
gcc/gimple-range.cc
gcc/testsuite/g++.dg/pr105276.C [new file with mode: 0644]