summaryrefslogtreecommitdiff
path: root/js/src/jit-test/tests/basic/metadata-hook.js
blob: 2b251ab8c6f254912eff4832a4d15f57d8f056b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

enableShellAllocationMetadataBuilder();

function Foo() {
  this.x = 0;
  this.y = 1;
}

function hello() {
  function there() {
    w = new Foo();
    x = [1,2,3];
    y = [2,3,5];
    z = {a:0,b:1};
  }
  callee = there;
  callee();
}
hello();

var wc = getAllocationMetadata(w).index;
var xc = getAllocationMetadata(x).index;
var yc = getAllocationMetadata(y).index;
var zc = getAllocationMetadata(z).index;

assertEq(xc > wc, true);
assertEq(yc > xc, true);
assertEq(zc > yc, true);
assertEq(getAllocationMetadata(x).stack[0], callee);
assertEq(getAllocationMetadata(x).stack[1], hello);