blob: 36f523d8ad41de879793b6a38c3fa0c511ae6d49 [file] [log] [blame]
// Copyright 2018 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
let {session, contextGroup, Protocol} = InspectorTest.start(
'Checks pause inside blackboxed optimized function call.');
contextGroup.addScript(`
function foo() {
return 1 + bar();
}
//# sourceURL=framework.js
`);
contextGroup.addScript(`
function bar() {
return 2;
}
%PrepareFunctionForOptimization(foo);
foo();
foo();
%OptimizeFunctionOnNextCall(foo);
foo();
//# sourceURL=test.js
`);
(async function test(){
Protocol.Debugger.enable();
Protocol.Debugger.setBlackboxPatterns({patterns: ['framework\.js']});
Protocol.Runtime.evaluate({expression: `
inspector.callWithScheduledBreak(foo, 'break', '');
//# sourceURL=expr.js
`});
const {params:{callFrames}} = await Protocol.Debugger.oncePaused();
session.logCallFrames(callFrames);
InspectorTest.completeTest();
})();