js/src/jit-test/tests/jaeger/testSetElem-NewProto.js

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

     1 // vim: set ts=8 sts=4 et sw=4 tw=99:
     3 function f() {
     4     return [[], [], [], []];
     5 }
     7 function setelem(obj, key, val) {
     8     obj[key] = val;
     9 }
    11 // Generate IC
    12 setelem([], 0, "hi");
    13 setelem([], 0, "hi");
    15 var arrays = f();
    17 var evil = { };
    18 Object.defineProperty(evil, "1", { set: function (v) { this.ham = v; } });
    19 Array.prototype.__proto__ = evil;
    21 var k = arrays[0];
    22 setelem(k, 1, "yam");
    23 assertEq(k.ham, "yam");

mercurial