/js/src/jit-test/tests/jaeger/setPropTypeGuard.js
http://github.com/zpao/v8monkey · JavaScript · 23 lines · 15 code · 2 blank · 6 comment · 1 complexity · 56e7f9b5658cae7c6b23c836e3348048 MD5 · raw file
- /*
- * Get a SETPROP site which is monitored (unknown lhs) and is repeatedly
- * invoked on objects with the same shape but different types (and without
- * triggering a recompile of the function). The SETPROP PIC needs a type guard
- * when the object is being monitored.
- */
- var x = {g:0};
- var y = {g:0,f:"fubar"};
- x.f = 10;
- function foo(x) {
- for (var i = 0; i < 30; i++)
- x.f = 10;
- }
- function access(x) {
- return x.f + 10;
- }
- foo(Object.create({}));
- eval("foo(x)");
- assertEq(access(y), "fubar10");
- eval("foo(y)");
- assertEq(access(y), 20);