Fix issue where the unsigned value used for the the map select budget could underflow
authorBrian Sullivan <briansul@microsoft.com>
Fri, 5 Jan 2018 19:43:42 +0000 (11:43 -0800)
committerBrian Sullivan <briansul@microsoft.com>
Fri, 5 Jan 2018 23:26:43 +0000 (15:26 -0800)
commit3fc07ad6ffcb49646d629ba63b6f156a7071c2eb
tree072714a2eca07326191fd9ce1ba6e23c8f81e621
parent41d23b05acac98c68d3b348c60bf151cfedd778f
Fix issue where the unsigned value used for the the map select budget could underflow
resulting in an unlimited budget

Changed m_mapSelectBudget and budget to be a signed integer
Added an assert that ensures that the remaining budget is between [0..m_mapSelectBudget]
Change the test for running out of budge to be a <= zero test instead of an equal zero test.

Fixed the bug in the handling of phiArgs in VNForMapSelectWork
by adding a check if we exceeded our budget when processing the first phiArg.

Added a define for DEFAULT_MAP_SELECT_BUDGET
src/jit/jitconfigvalues.h
src/jit/valuenum.cpp
src/jit/valuenum.h