Update array length compare value numbers on CSE
authorJoseph Tremoulet <jotrem@microsoft.com>
Mon, 13 Feb 2017 22:27:12 +0000 (14:27 -0800)
committerJoseph Tremoulet <jotrem@microsoft.com>
Wed, 15 Feb 2017 20:46:26 +0000 (15:46 -0500)
commit04e0c4c850a0ad6762655807e1ca289e9b0cacfe
tree4208a5f692e313195d8c3ed81c09b4271ecab685
parent0fae96e0973d09b907124ddc3c62bdad3160f27d
Update array length compare value numbers on CSE

Modify CSE to identify compares which are functions of CSE candidate array
length nodes; when those length nodes get CSEd and consequently have their
value numbers updated, also update the value number on the compare
consuming the array length; this way the assertions generated in assertion
prop for the different compares on the CSEd array will use the same value
numbers, and range check elimination becomes more effective.

Resolves #5371
src/jit/compiler.h
src/jit/optcse.cpp