Javascript  |  22行  |  606 B

// Copyright 2015 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Flags: --allow-natives-syntax --expose-debug-as debug

function bar(x) { debugger; }
function foo() { bar(arguments[0]); }
function wrap() { return foo(1); }

wrap();
wrap();
%OptimizeFunctionOnNextCall(wrap);

var Debug = debug.Debug;
Debug.setListener(function(event, exec_state, event_data, data) {
  if (event != Debug.DebugEvent.Break) return;
  for (var i = 0; i < exec_state.frameCount(); i++) exec_state.frame(i);
});

wrap();