Skip to content

Commit 52d3944

Browse files
o-targos
authored andcommitted
deps: V8: cherry-pick f915fa4c9f41
Original commit message: [osr] Ensure trying to osr does not skip loop interrupts Fixed: 374013413 Change-Id: I52d7b4e165e0abd0bd517a81d2e8ef3f1f802bfb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5946288 Commit-Queue: Darius Mercadier <[email protected]> Auto-Submit: Olivier Flückiger <[email protected]> Reviewed-by: Darius Mercadier <[email protected]> Cr-Commit-Position: refs/heads/main@{#96708} Refs: v8/v8@f915fa4 PR-URL: #55014 Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Yagiz Nizipli <[email protected]>
1 parent 99ffe35 commit 52d3944

File tree

3 files changed

+24
-2
lines changed

3 files changed

+24
-2
lines changed

common.gypi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737

3838
# Reset this number to 0 on major V8 upgrades.
3939
# Increment by one for each non-official patch applied to deps/v8.
40-
'v8_embedder_string': '-node.9',
40+
'v8_embedder_string': '-node.10',
4141

4242
##### V8 defaults for Node.js #####
4343

deps/v8/src/codegen/compiler.cc

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1338,7 +1338,14 @@ MaybeHandle<Code> GetOrCompileOptimized(
13381338
}
13391339

13401340
// Do not optimize when debugger needs to hook into every call.
1341-
if (isolate->debug()->needs_check_on_function_call()) return {};
1341+
if (isolate->debug()->needs_check_on_function_call()) {
1342+
// Reset the OSR urgency to avoid triggering this compilation request on
1343+
// every iteration and thereby skipping other interrupts.
1344+
if (IsOSR(osr_offset)) {
1345+
function->feedback_vector()->reset_osr_urgency();
1346+
}
1347+
return {};
1348+
}
13421349

13431350
// Do not optimize if we need to be able to set break points.
13441351
if (shared->HasBreakInfo(isolate)) return {};
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// Copyright 2024 the V8 project authors. All rights reserved.
2+
// Use of this source code is governed by a BSD-style license that can be
3+
// found in the LICENSE file.
4+
5+
// Flags: --enable-inspector
6+
7+
var Debug = debug.Debug;
8+
Debug.sendMessageForMethodChecked('Runtime.enable', {});
9+
const {msgid, msg} = Debug.createMessage('Runtime.evaluate', {
10+
expression: 'while(true) {}',
11+
throwOnSideEffect: true,
12+
timeout: 1000,
13+
})
14+
Debug.sendMessage(msg);
15+
Debug.takeReplyChecked(msgid).toString();

0 commit comments

Comments
 (0)