summaryrefslogtreecommitdiff
path: root/www/node10/files/patch-deps_v8_src_libsampler_sampler.cc
diff options
context:
space:
mode:
Diffstat (limited to 'www/node10/files/patch-deps_v8_src_libsampler_sampler.cc')
-rw-r--r--www/node10/files/patch-deps_v8_src_libsampler_sampler.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/www/node10/files/patch-deps_v8_src_libsampler_sampler.cc b/www/node10/files/patch-deps_v8_src_libsampler_sampler.cc
new file mode 100644
index 000000000000..1548b15aae4b
--- /dev/null
+++ b/www/node10/files/patch-deps_v8_src_libsampler_sampler.cc
@@ -0,0 +1,19 @@
+--- deps/v8/src/libsampler/sampler.cc.orig 2019-03-05 15:16:28 UTC
++++ deps/v8/src/libsampler/sampler.cc
+@@ -550,9 +550,13 @@ void SignalHandler::FillRegisterState(void* context, R
+ state->sp = reinterpret_cast<void*>(mcontext.mc_rsp);
+ state->fp = reinterpret_cast<void*>(mcontext.mc_rbp);
+ #elif V8_HOST_ARCH_ARM
+- state->pc = reinterpret_cast<void*>(mcontext.mc_r15);
+- state->sp = reinterpret_cast<void*>(mcontext.mc_r13);
+- state->fp = reinterpret_cast<void*>(mcontext.mc_r11);
++ state->pc = reinterpret_cast<void*>(mcontext.__gregs[_REG_PC]);
++ state->sp = reinterpret_cast<void*>(mcontext.__gregs[_REG_SP]);
++ state->fp = reinterpret_cast<void*>(mcontext.__gregs[_REG_FP]);
++#elif V8_TARGET_ARCH_PPC_BE
++ state->pc = reinterpret_cast<void*>(mcontext.mc_srr0);
++ state->sp = reinterpret_cast<void*>(mcontext.mc_frame[1]);
++ state->fp = reinterpret_cast<void*>(mcontext.mc_frame[31]);
+ #endif // V8_HOST_ARCH_*
+ #elif V8_OS_NETBSD
+ #if V8_HOST_ARCH_IA32