Fix DevDiv bug 359737.
authorPat Gavlin <pagavlin@microsoft.com>
Tue, 3 Jan 2017 20:24:56 +0000 (12:24 -0800)
committerPat Gavlin <pagavlin@microsoft.com>
Tue, 3 Jan 2017 20:46:11 +0000 (12:46 -0800)
commitc8f6f2d6eb11df83585df6b9849d10043a2e8e38
treea1c6d4e93c077d2051e179185cff474b9c09da48
parent6cc6a63615e64fa256c2b9bac191683d349f202f
Fix DevDiv bug 359737.

This bug was an assertion during CSE that ensures that all CSE
candidates have value numbers. This assertion tripped because an earlier
CSE in the same tree as the faulty candidate re-morphed modulus by a
constant into a divide and subtract; the resulting tree was left without
value numbers. This change disables the problematic transform when
remorphing as part of CSE.

Commit migrated from https://github.com/dotnet/coreclr/commit/7b32c8db705fc861ab3c52c47aecc6b647b7d5e8
src/coreclr/src/jit/morph.cpp
src/coreclr/tests/src/JIT/Regression/JitBlue/DevDiv_359737/DevDiv_359737.il [new file with mode: 0644]
src/coreclr/tests/src/JIT/Regression/JitBlue/DevDiv_359737/DevDiv_359737.ilproj [new file with mode: 0644]