Bug 701957 enables the eager compilation of basic/testBranchingUnstableLoopCounter.js which is now failing because the oracle does not guess the right type during MIR generation and propagation of the Double type from the "if" inside the loop cause the assumption inside Lowering::visitToInt32 to fail with a non-resumable error.
Bug 701957 mutes this error by making the compilation fail in such case. (see Lowering::visitToInt32, MIRType_Double case)
This is a bug in type analysis. We could make ToInt32 support doubles, but really we should change the specialization to double.
Created attachment 576510 [details] [diff] [review]
Fixing this in type analysis is kind of tricky, and not really valuable if the type oracle is accurate. Besides we might need DoubleToInt32 for other things, so this patch just implements it.