From 90c758c59e6c4f3b2300270a904792a471404db3 Mon Sep 17 00:00:00 2001 From: Milad Fa Date: Wed, 3 Aug 2022 09:21:52 -0400 Subject: [PATCH] deps: V8: cherry-pick 9861ce1deae2 Original commit message: PPC: pass a scratch reg when using register_location Change-Id: I43e4a4cadc60e958d6c9d80e725a49a3e36d8ba9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3797832 Reviewed-by: Junliang Yan Commit-Queue: Milad Farazmand Cr-Commit-Position: refs/heads/main@{#82146} Fixes: https://github.com/nodejs/node/issues/44055 PR-URL: https://github.com/nodejs/node/pull/44115 Refs: https://github.com/v8/v8/commit/9861ce1deae2fc52a7c1fb251b70401a728e44f4 Reviewed-By: Jiawen Geng Reviewed-By: Richard Lau Reviewed-By: Michael Dawson --- common.gypi | 2 +- deps/v8/src/regexp/ppc/regexp-macro-assembler-ppc.cc | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/common.gypi b/common.gypi index cc9e09cfed1..aa9f641cb19 100644 --- a/common.gypi +++ b/common.gypi @@ -36,7 +36,7 @@ # Reset this number to 0 on major V8 upgrades. # Increment by one for each non-official patch applied to deps/v8. - 'v8_embedder_string': '-node.10', + 'v8_embedder_string': '-node.11', ##### V8 defaults for Node.js ##### diff --git a/deps/v8/src/regexp/ppc/regexp-macro-assembler-ppc.cc b/deps/v8/src/regexp/ppc/regexp-macro-assembler-ppc.cc index da81f893202..aee833d148d 100644 --- a/deps/v8/src/regexp/ppc/regexp-macro-assembler-ppc.cc +++ b/deps/v8/src/regexp/ppc/regexp-macro-assembler-ppc.cc @@ -1139,7 +1139,7 @@ void RegExpMacroAssemblerPPC::WriteStackPointerToRegister(int reg) { __ mov(r4, Operand(ref)); __ LoadU64(r4, MemOperand(r4)); __ SubS64(r3, backtrack_stackpointer(), r4); - __ StoreU64(r3, register_location(reg)); + __ StoreU64(r3, register_location(reg), r0); } void RegExpMacroAssemblerPPC::ReadStackPointerFromRegister(int reg) { @@ -1147,7 +1147,7 @@ void RegExpMacroAssemblerPPC::ReadStackPointerFromRegister(int reg) { ExternalReference::address_of_regexp_stack_memory_top_address(isolate()); __ mov(r3, Operand(ref)); __ LoadU64(r3, MemOperand(r3)); - __ LoadU64(backtrack_stackpointer(), register_location(reg)); + __ LoadU64(backtrack_stackpointer(), register_location(reg), r0); __ AddS64(backtrack_stackpointer(), backtrack_stackpointer(), r3); }