1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/jit-test/tests/basic/testApplyCall.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,42 @@ 1.4 +function testApplyCallHelper(f) { 1.5 + var r = []; 1.6 + for (var i = 0; i < 10; ++i) f.call(); 1.7 + r.push(x); 1.8 + for (var i = 0; i < 10; ++i) f.call(this); 1.9 + r.push(x); 1.10 + for (var i = 0; i < 10; ++i) f.apply(this); 1.11 + r.push(x); 1.12 + for (var i = 0; i < 10; ++i) f.call(this,0); 1.13 + r.push(x); 1.14 + for (var i = 0; i < 10; ++i) f.apply(this,[0]); 1.15 + r.push(x); 1.16 + for (var i = 0; i < 10; ++i) f.call(this,0,1); 1.17 + r.push(x); 1.18 + for (var i = 0; i < 10; ++i) f.apply(this,[0,1]); 1.19 + r.push(x); 1.20 + for (var i = 0; i < 10; ++i) f.call(this,0,1,2); 1.21 + r.push(x); 1.22 + for (var i = 0; i < 10; ++i) f.apply(this,[0,1,2]); 1.23 + r.push(x); 1.24 + for (var i = 0; i < 10; ++i) f.call(this,0,1,2,3); 1.25 + r.push(x); 1.26 + for (var i = 0; i < 10; ++i) f.apply(this,[0,1,2,3]); 1.27 + r.push(x); 1.28 + for (var i = 0; i < 10; ++i) f.call(this,0,1,2,3,4); 1.29 + r.push(x); 1.30 + for (var i = 0; i < 10; ++i) f.apply(this,[0,1,2,3,4]); 1.31 + r.push(x); 1.32 + for (var i = 0; i < 10; ++i) f.call(this,0,1,2,3,4,5); 1.33 + r.push(x); 1.34 + for (var i = 0; i < 10; ++i) f.apply(this,[0,1,2,3,4,5]) 1.35 + r.push(x); 1.36 + return(r.join(",")); 1.37 +} 1.38 +function testApplyCall() { 1.39 + var r = testApplyCallHelper(function (a0,a1,a2,a3,a4,a5,a6,a7) { x = [a0,a1,a2,a3,a4,a5,a6,a7]; }); 1.40 + r += testApplyCallHelper(function (a0,a1,a2,a3,a4,a5,a6,a7) { x = [a0,a1,a2,a3,a4,a5,a6,a7]; }); 1.41 + return r; 1.42 +} 1.43 + 1.44 +assertEq(testApplyCall(), ",,,,,,,,,,,,,,,,,,,,,,,,0,,,,,,,,0,,,,,,,,0,1,,,,,,,0,1,,,,,,,0,1,2,,,,,,0,1,2,,,,,,0,1,2,3,,,,,0,1,2,3,,,,,0,1,2,3,4,,,,0,1,2,3,4,,,,0,1,2,3,4,5,,,0,1,2,3,4,5,," + 1.45 +",,,,,,,,,,,,,,,,,,,,,,,,0,,,,,,,,0,,,,,,,,0,1,,,,,,,0,1,,,,,,,0,1,2,,,,,,0,1,2,,,,,,0,1,2,3,,,,,0,1,2,3,,,,,0,1,2,3,4,,,,0,1,2,3,4,,,,0,1,2,3,4,5,,,0,1,2,3,4,5,,");