1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/jit-test/tests/ion/bug855514.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,25 @@ 1.4 +var b = 1.5; 1.5 +var arr; 1.6 +function f_int(arr, index) { 1.7 + for (var i=0; i<100; i++) { 1.8 + arr[index]++; 1.9 + } 1.10 +} 1.11 +arr = [1, 2, 3]; 1.12 +f_int(arr, "1"); 1.13 +assertEq(arr[1], 102); 1.14 +arr = [1, 2, 3]; 1.15 +f_int(arr, 1); 1.16 +assertEq(arr[1], 102); 1.17 + 1.18 +function f_double(arr, index) { 1.19 + for (var i=0; i<100; i++) { 1.20 + arr[+Math.pow(index,1.0)*1.5/b]++; 1.21 + } 1.22 +} 1.23 +arr = [1, 2, 3]; 1.24 +f_double(arr, 1.0); 1.25 +assertEq(arr[1], 102); 1.26 +arr = [1, 2, 3]; 1.27 +f_double(arr, NaN); 1.28 +assertEq(arr[1], 2);