Skip to content

Commit 44d052c

Browse files
GeorgNeisCommit Bot
authored andcommitted
Merged: [deoptimizer] Stricter checks during deoptimization
Revision: 506e893 BUG=chromium:1161357 NOTRY=true NOPRESUBMIT=true NOTREECHECKS=true [email protected] Change-Id: I97b69ae11d85bc0acd4a0c7bd28e1b692433de80 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2616219 Reviewed-by: Mythri Alle <[email protected]> Commit-Queue: Georg Neis <[email protected]> Cr-Commit-Position: refs/branch-heads/8.8@{#23} Cr-Branched-From: 2dbcdc1-refs/heads/8.8.278@{#1} Cr-Branched-From: 366d30c-refs/heads/master@{#71094}
1 parent 3ef5441 commit 44d052c

3 files changed

Lines changed: 20 additions & 0 deletions

File tree

src/deoptimizer/deoptimizer.cc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -267,6 +267,7 @@ class ActivationsFinder : public ThreadVisitor {
267267
SafepointEntry safepoint = code.GetSafepointEntry(it.frame()->pc());
268268
int trampoline_pc = safepoint.trampoline_pc();
269269
DCHECK_IMPLIES(code == topmost_, safe_to_deopt_);
270+
CHECK_GE(trampoline_pc, 0);
270271
// Replace the current pc on the stack with the trampoline.
271272
// TODO(v8:10026): avoid replacing a signed pointer.
272273
Address* pc_addr = it.frame()->pc_address();

test/mjsunit/mjsunit.status

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,10 @@
7777
# https://crbug.com/1129854
7878
'tools/log': ['arch == arm or arch == arm64', SKIP],
7979

80+
# crbug.com/1161357
81+
# TODO(solanes): Remove this entry once the underlying issue is fixed.
82+
'regress/regress-1161357': [PASS, FAIL],
83+
8084
##############################################################################
8185
# Tests where variants make no sense.
8286
'd8/enable-tracing': [PASS, NO_VARIANTS],
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// Copyright 2020 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+
for (let i = 0; i < 3; i++) {
6+
for (let j = 0; j < 32767; j++) {
7+
Number;
8+
}
9+
for (let j = 0; j < 2335; j++) {
10+
Number;
11+
}
12+
var arr = [, ...(new Int16Array(0xffff)), 4294967296];
13+
arr.concat(Number, arr)
14+
}
15+
eval(``);

0 commit comments

Comments
 (0)