~ubuntu-branches/ubuntu/wily/mozjs17/wily

« back to all changes in this revision

Viewing changes to js/src/jit-test/tests/debug/Script-gc-01.js

  • Committer: Package Import Robot
  • Author(s): Rico Tzschichholz
  • Date: 2013-05-25 12:24:23 UTC
  • Revision ID: package-import@ubuntu.com-20130525122423-zmxucrhtensw90xy
Tags: upstream-17.0.0
ImportĀ upstreamĀ versionĀ 17.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// |jit-test| debug
 
2
// Debugger.Script instances with live referents stay alive.
 
3
 
 
4
var N = 4;
 
5
var g = newGlobal('new-compartment');
 
6
var dbg = new Debugger(g);
 
7
var i;
 
8
dbg.onDebuggerStatement = function (frame) {
 
9
    assertEq(frame.script instanceof Debugger.Script, true);
 
10
    frame.script.id = i;
 
11
};
 
12
 
 
13
g.eval('var arr = [];')
 
14
for (i = 0; i < N; i++)  // loop to defeat conservative GC
 
15
    g.eval("arr.push(function () { debugger }); arr[arr.length - 1]();");
 
16
 
 
17
gc();
 
18
 
 
19
var hits;
 
20
dbg.onDebuggerStatement = function (frame) {
 
21
    hits++;
 
22
    assertEq(frame.script.id, i);
 
23
};
 
24
hits = 0;
 
25
for (i = 0; i < N; i++)
 
26
    g.arr[i]();
 
27
assertEq(hits, N);