diff options
Diffstat (limited to 'rhbz-1498561.patch')
-rw-r--r-- | rhbz-1498561.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/rhbz-1498561.patch b/rhbz-1498561.patch new file mode 100644 index 0000000..0c6cf40 --- /dev/null +++ b/rhbz-1498561.patch @@ -0,0 +1,27 @@ +diff -up firefox-60.0/js/src/wasm/WasmSignalHandlers.cpp.rhbz-1498561 firefox-60.0/js/src/wasm/WasmSignalHandlers.cpp +--- firefox-60.0/js/src/wasm/WasmSignalHandlers.cpp.rhbz-1498561 2018-05-16 13:45:46.014042224 +0200 ++++ firefox-60.0/js/src/wasm/WasmSignalHandlers.cpp 2018-05-16 13:50:48.834887034 +0200 +@@ -181,6 +181,12 @@ struct AutoSignalHandler + # define FP_sig(p) ((p)->uc_mcontext.mc_fp) + # define SP_sig(p) ((p)->uc_mcontext.mc_i7) + # endif ++# if defined(__linux__) && (defined(__ppc64__) || defined (__PPC64__) || defined(__ppc64le__) || defined (__PPC64LE__)) ++// powerpc stack frame pointer (SFP or SP or FP) ++# define R01_sig(p) ((p)->uc_mcontext.gp_regs[01]) ++// powerpc next instruction pointer (NIP or PC) ++# define R32_sig(p) ((p)->uc_mcontext.gp_regs[32]) ++# endif + #elif defined(__NetBSD__) + # define XMM_sig(p,i) (((struct fxsave64*)(p)->uc_mcontext.__fpregs)->fx_xmm[i]) + # define EIP_sig(p) ((p)->uc_mcontext.__gregs[_REG_EIP]) +@@ -426,6 +432,10 @@ struct macos_arm_context { + # define FP_sig(p) RFP_sig(p) + # define SP_sig(p) RSP_sig(p) + # define LR_sig(p) R31_sig(p) ++#elif defined(__ppc64__) || defined (__PPC64__) || defined(__ppc64le__) || defined (__PPC64LE__) ++# define PC_sig(p) R32_sig(p) ++# define SP_sig(p) R01_sig(p) ++# define FP_sig(p) R01_sig(p) + #endif + + #if defined(PC_sig) && defined(FP_sig) && defined(SP_sig) |