JIT: fix jump threading to keep track of preds instead of reanalyzing (#58579)
authorAndy Ayers <andya@microsoft.com>
Fri, 3 Sep 2021 00:53:15 +0000 (17:53 -0700)
committerGitHub <noreply@github.com>
Fri, 3 Sep 2021 00:53:15 +0000 (17:53 -0700)
commit87ac0d5a3f8ba81527f0fba88991b86f155fbd7e
treefcecedec93c56f1eba95131a56f3b6b307fb2619
parentf3390fdb46ece449e15515a925a81aa535059f19
JIT: fix jump threading to keep track of preds instead of reanalyzing (#58579)

In #58368 we see an issue where a previously ambiguous pred becomes a true pred
once other pred flow is redirected. While this may be a missed opportunity, we
are better off just keeping with our initial assessment for now.

So during the initial pred walk, track which preds are ambiguous and true (and
by implication, false) and then use that classification during the second walk.

Fixes #58368.
src/coreclr/jit/redundantbranchopts.cpp