js/src/jit-test/tests/basic/metadata-hook.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

     2 x = [1,2,3];
     3 setObjectMetadata(x, {y:0});
     4 assertEq(getObjectMetadata(x).y, 0);
     6 setObjectMetadataCallback(true);
     8 function Foo() {
     9   this.x = 0;
    10   this.y = 1;
    11 }
    13 function hello() {
    14   function there() {
    15     w = new Foo();
    16     x = [1,2,3];
    17     y = [2,3,5];
    18     z = {a:0,b:1};
    19   }
    20   callee = there;
    21   callee();
    22 }
    23 hello();
    25 var wc = getObjectMetadata(w).index;
    26 var xc = getObjectMetadata(x).index;
    27 var yc = getObjectMetadata(y).index;
    28 var zc = getObjectMetadata(z).index;
    30 assertEq(xc > wc, true);
    31 assertEq(yc > xc, true);
    32 assertEq(zc > yc, true);
    33 assertEq(getObjectMetadata(x).stack[0], callee);
    34 assertEq(getObjectMetadata(x).stack[1], hello);

mercurial