/js/src/jit-test/tests/debug/Frame-identity-02.js

http://github.com/zpao/v8monkey · JavaScript · 22 lines · 17 code · 3 blank · 2 comment · 2 complexity · 0d7d8fcd8d36514ea52b56978fb66f2a MD5 · raw file

  1. // |jit-test| debug
  2. // Check that {throw:} resumption kills the current stack frame.
  3. load(libdir + "asserts.js");
  4. var g = newGlobal('new-compartment');
  5. g.debuggeeGlobal = this;
  6. g.eval("(" + function () {
  7. var dbg = new Debugger(debuggeeGlobal);
  8. var prev = null;
  9. dbg.onDebuggerStatement = function (frame) {
  10. assertEq(frame === prev, false);
  11. if (prev)
  12. assertEq(prev.live, false);
  13. prev = frame;
  14. return {throw: debuggeeGlobal.i};
  15. };
  16. } + ")();");
  17. function f() { debugger; }
  18. for (var i = 0; i < 10; i++)
  19. assertThrowsValue(f, i);