JIT: Fix a couple of inequalities in promotion decomposition (#87186)
authorJakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com>
Thu, 8 Jun 2023 15:04:35 +0000 (17:04 +0200)
committerGitHub <noreply@github.com>
Thu, 8 Jun 2023 15:04:35 +0000 (17:04 +0200)
commit897093def5c96503576f38b7ba0724bbbe9bfd84
tree7a46b746cc2a2b6adf50fe3f12a353123205de89
parenteef8dd9b87363734a6c0103949bff978b723e312
JIT: Fix a couple of inequalities in promotion decomposition (#87186)

These checks were of the form `end < start` when more precisely they
can be `end <= start`. It was causing some unnecessarily conservative
writebacks to occur in some cases.

Also skip entries in the decomposition plan that are writing to the
remainder when the remainder is dead. Saw a bunch of these cases in
the regressions and realized we were missing this case.
src/coreclr/jit/promotiondecomposition.cpp