summaryrefslogtreecommitdiff
path: root/deps/v8/src/execution/isolate.cc
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2019-10-11 11:42:04 +0200
committerMichaël Zasso <targos@protonmail.com>2019-10-13 20:25:13 +0200
commit7de5a557103dd689bd9a757720eca72459d86e66 (patch)
treeaf80c8524eed5046473a2bc2dbda81b34795351b /deps/v8/src/execution/isolate.cc
parent53ca0b9ae145c430842bf78e553e3b6cbd2823aa (diff)
downloadandroid-node-v8-7de5a557103dd689bd9a757720eca72459d86e66.tar.gz
android-node-v8-7de5a557103dd689bd9a757720eca72459d86e66.tar.bz2
android-node-v8-7de5a557103dd689bd9a757720eca72459d86e66.zip
deps: patch V8 to 7.8.279.17
Refs: https://github.com/v8/v8/compare/7.8.279.15...7.8.279.17 PR-URL: https://github.com/nodejs/node/pull/29928 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Diffstat (limited to 'deps/v8/src/execution/isolate.cc')
-rw-r--r--deps/v8/src/execution/isolate.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/deps/v8/src/execution/isolate.cc b/deps/v8/src/execution/isolate.cc
index d090ed5260..3ba39562b1 100644
--- a/deps/v8/src/execution/isolate.cc
+++ b/deps/v8/src/execution/isolate.cc
@@ -1680,8 +1680,13 @@ Object Isolate::UnwindAndFindHandler() {
int return_offset = static_cast<int>(frame->pc() - instruction_start);
int handler_offset = table.LookupReturn(return_offset);
DCHECK_NE(-1, handler_offset);
+ // Compute the stack pointer from the frame pointer. This ensures that
+ // argument slots on the stack are dropped as returning would.
+ Address return_sp = frame->fp() +
+ StandardFrameConstants::kFixedFrameSizeAboveFp -
+ code.stack_slots() * kSystemPointerSize;
return FoundHandler(Context(), instruction_start, handler_offset,
- code.constant_pool(), frame->sp(), frame->fp());
+ code.constant_pool(), return_sp, frame->fp());
}
case StackFrame::WASM_COMPILED: {