new-6.js (414B)
1 // Enter an Ion constructor via on-stack replacement. 2 3 // This gets compiled and called by the interpreter. 4 // Allocation and primitive check need to happen caller-side. 5 function Foo() { 6 var y = 0; 7 for (var i = 0; i < 100; i++) 8 { y++ } 9 this.x = 5; 10 return y; 11 } 12 13 eval("//nothing"); // Prevent compilation of global script. 14 15 for (var i = 0; i < 100; i++) { 16 var x = new Foo(); 17 assertEq(typeof(x), "object"); 18 }