object-create.js (475B)
1 // Ensure Ion inlining of Object.create(x) tests the type of x 2 // matches the template object. 3 4 var P1 = {}; 5 var P2 = {}; 6 minorgc(); 7 8 function f1() { 9 for (var i=0; i<100; i++) { 10 var P = (i & 1) ? P1 : P2; 11 var o = Object.create(P); 12 assertEq(Object.getPrototypeOf(o), P); 13 } 14 } 15 f1(); 16 17 function f2() { 18 var arr = [null, Array]; 19 for (var i=0; i<99; i++) { 20 var p = arr[(i / 50)|0]; 21 var o = Object.create(p); 22 assertEq(Object.getPrototypeOf(o), p); 23 } 24 } 25 f2();