Skip to content

Commit b220fbe

Browse files
dramforeverkxxt
authored andcommitted
deps: V8: backport 6a0a25abaed3
Original commit message: [riscv] Fix sp handling in MacroAssembler::LeaveFrame Keep sp <= fp to ensure that data right above fp doesn't get clobbered by an inopportune signal and its handler. Such clobbering can happen in e.g. Node.js when JIT-compiled code is interrupted by a SIGCHLD handler. Bug: None Change-Id: Ief0836032ada7942e89f081f7605f61632c4d414 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7540554 Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn> Commit-Queue: Yahan Lu (LuYahan) <yahan@iscas.ac.cn> Reviewed-by: Rezvan Mahdavi Hezaveh <rezvan@chromium.org> Cr-Commit-Position: refs/heads/main@{#105069} Refs: v8/v8@6a0a25a Co-authored-by: kxxt <rsworktech@outlook.com> PR-URL: #61666 Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
1 parent a879b39 commit b220fbe

File tree

3 files changed

+4
-2
lines changed

3 files changed

+4
-2
lines changed

common.gypi

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

3939
# Reset this number to 0 on major V8 upgrades.
4040
# Increment by one for each non-official patch applied to deps/v8.
41-
'v8_embedder_string': '-node.11',
41+
'v8_embedder_string': '-node.12',
4242

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

deps/v8/AUTHORS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,7 @@ Vadim Gorbachev <bmsdave@gmail.com>
305305
Varun Varada <varuncvarada@gmail.com>
306306
Victor Costan <costan@gmail.com>
307307
Victor Polevoy <fx@thefx.co>
308+
Vivian Wang <wangruikang@iscas.ac.cn>
308309
Vlad Burlik <vladbph@gmail.com>
309310
Vladimir Kempik <vladimir.kempik@syntacore.com>
310311
Vladimir Krivosheev <develar@gmail.com>

deps/v8/src/codegen/riscv/macro-assembler-riscv.cc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6846,9 +6846,10 @@ void MacroAssembler::EnterFrame(StackFrame::Type type) {
68466846

68476847
void MacroAssembler::LeaveFrame(StackFrame::Type type) {
68486848
ASM_CODE_COMMENT(this);
6849-
AddWord(sp, fp, 2 * kSystemPointerSize);
6849+
Move(sp, fp);
68506850
LoadWord(ra, MemOperand(fp, 1 * kSystemPointerSize));
68516851
LoadWord(fp, MemOperand(fp, 0 * kSystemPointerSize));
6852+
AddWord(sp, sp, 2 * kSystemPointerSize);
68526853
}
68536854

68546855
void MacroAssembler::EnterExitFrame(Register scratch, int stack_space,

0 commit comments

Comments
 (0)