1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/jit-test/tests/ion/doubleArrays.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,51 @@ 1.4 + 1.5 +function testPushConvert() { 1.6 + var x = []; 1.7 + for (var i = 0; i < 10; i++) 1.8 + x.push(i + .5); 1.9 + for (var i = 0; i < 5; i++) 1.10 + x.push(i); 1.11 + var res = 0; 1.12 + for (var i = 0; i < x.length; i++) 1.13 + res += x[i]; 1.14 + assertEq(res, 60); 1.15 +} 1.16 +testPushConvert(); 1.17 + 1.18 +function testArrayInitializer() { 1.19 + var x = [.5,1.5,2.5,3]; 1.20 + var res = 0; 1.21 + for (var i = 0; i < x.length; i++) 1.22 + res += x[i]; 1.23 + assertEq(res, 7.5); 1.24 +} 1.25 +for (var i = 0; i < 5; i++) 1.26 + testArrayInitializer(); 1.27 + 1.28 +function testArrayConstructor() { 1.29 + var x = Array(.5,1.5,2.5,3); 1.30 + var res = 0; 1.31 + for (var i = 0; i < x.length; i++) 1.32 + res += x[i]; 1.33 + assertEq(res, 7.5); 1.34 +} 1.35 +for (var i = 0; i < 5; i++) 1.36 + testArrayConstructor(); 1.37 + 1.38 +function addInt(a) { 1.39 + // inhibit ion 1.40 + try { 1.41 + a[0] = 10; 1.42 + } catch (e) {} 1.43 +} 1.44 + 1.45 +function testBaseline() { 1.46 + var x = Array(.5,1.5,2.5,3); 1.47 + addInt(x); 1.48 + var res = 0; 1.49 + for (var i = 0; i < x.length; i++) 1.50 + res += x[i]; 1.51 + assertEq(res, 17); 1.52 +} 1.53 +for (var i = 0; i < 5; i++) 1.54 + testBaseline();