//@ requireOptions("--jitPolicyScale=0", "--useDFGJIT=0") | |
{ | |
var obj1 = this | |
function foo1() { | |
for (let i = 0; i < 5; ++i) | |
delete obj1.x | |
} | |
noInline(foo1) | |
foo1() | |
Object.defineProperty(obj1, "x", {}) | |
foo1() | |
} | |
{ | |
var obj2 = new Proxy({}, {}) | |
function foo2() { | |
for (let i = 0; i < 5; ++i) | |
delete obj2.x | |
} | |
noInline(foo2) | |
foo2() | |
Object.defineProperty(obj2, "x", {}) | |
foo2() | |
} | |
{ | |
var obj3 = $vm.createProxy({}) | |
function foo3() { | |
for (let i = 0; i < 5; ++i) | |
delete obj3.x | |
} | |
noInline(foo3) | |
foo3() | |
Object.defineProperty(obj3, "x", {}) | |
foo3() | |
} |