diff options
author | jbeich <jbeich@FreeBSD.org> | 2017-05-03 08:15:01 +0800 |
---|---|---|
committer | jbeich <jbeich@FreeBSD.org> | 2017-05-03 08:15:01 +0800 |
commit | a27221836a9b676c8cb17929626beda397502030 (patch) | |
tree | cdb46094a4531bcfc042181333e0f9039fb4eb29 /www/seamonkey | |
parent | 6c7fcf94511fe1f7cb3c8aa59b28650cec3f033e (diff) | |
download | freebsd-ports-gnome-a27221836a9b676c8cb17929626beda397502030.tar.gz freebsd-ports-gnome-a27221836a9b676c8cb17929626beda397502030.tar.zst freebsd-ports-gnome-a27221836a9b676c8cb17929626beda397502030.zip |
gecko: apply r439551 + r439993 to other ports
Diffstat (limited to 'www/seamonkey')
-rw-r--r-- | www/seamonkey/files/patch-bug1359142 | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/www/seamonkey/files/patch-bug1359142 b/www/seamonkey/files/patch-bug1359142 new file mode 100644 index 000000000000..6e5fc6e67dd5 --- /dev/null +++ b/www/seamonkey/files/patch-bug1359142 @@ -0,0 +1,57 @@ +Define EPC_sig and RFP_sig for JS_CODEGEN_(ARM64|MIPS) on BSDs + +diff --git js/src/wasm/WasmSignalHandlers.cpp js/src/wasm/WasmSignalHandlers.cpp +index 1ab76eeb4bd9..bcdff0487837 100644 +--- mozilla/js/src/asmjs/WasmSignalHandlers.cpp ++++ mozilla/js/src/asmjs/WasmSignalHandlers.cpp +@@ -108,7 +108,19 @@ class AutoSetHandlingSegFault + # define R12_sig(p) ((p)->sc_r12) + # define R13_sig(p) ((p)->sc_r13) + # define R14_sig(p) ((p)->sc_r14) +-# define R15_sig(p) ((p)->sc_r15) ++# if defined(__arm__) ++# define R15_sig(p) ((p)->sc_pc) ++# else ++# define R15_sig(p) ((p)->sc_r15) ++# endif ++# if defined(__aarch64__) ++# define EPC_sig(p) ((p)->sc_elr) ++# define RFP_sig(p) ((p)->sc_x[29]) ++# endif ++# if defined(__mips__) ++# define EPC_sig(p) ((p)->sc_pc) ++# define RFP_sig(p) ((p)->sc_regs[30]) ++# endif + #elif defined(__linux__) || defined(SOLARIS) + # if defined(__linux__) + # define XMM_sig(p,i) ((p)->uc_mcontext.fpregs->_xmm[i]) +@@ -171,6 +183,14 @@ class AutoSetHandlingSegFault + # define R13_sig(p) ((p)->uc_mcontext.__gregs[_REG_R13]) + # define R14_sig(p) ((p)->uc_mcontext.__gregs[_REG_R14]) + # define R15_sig(p) ((p)->uc_mcontext.__gregs[_REG_R15]) ++# if defined(__aarch64__) ++# define EPC_sig(p) ((p)->uc_mcontext.__gregs[_REG_PC]) ++# define RFP_sig(p) ((p)->uc_mcontext.__gregs[_REG_X29]) ++# endif ++# if defined(__mips__) ++# define EPC_sig(p) ((p)->uc_mcontext.__gregs[_REG_EPC]) ++# define RFP_sig(p) ((p)->uc_mcontext.__gregs[_REG_S8]) ++# endif + #elif defined(__DragonFly__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + # if defined(__DragonFly__) + # define XMM_sig(p,i) (((union savefpu*)(p)->uc_mcontext.mc_fpregs)->sv_xmm.sv_xmm[i]) +@@ -200,6 +220,14 @@ class AutoSetHandlingSegFault + # else + # define R15_sig(p) ((p)->uc_mcontext.mc_r15) + # endif ++# if defined(__FreeBSD__) && defined(__aarch64__) ++# define EPC_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_elr) ++# define RFP_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_x[29]) ++# endif ++# if defined(__FreeBSD__) && defined(__mips__) ++# define EPC_sig(p) ((p)->uc_mcontext.mc_pc) ++# define RFP_sig(p) ((p)->uc_mcontext.mc_regs[30]) ++# endif + #elif defined(XP_DARWIN) + # define EIP_sig(p) ((p)->uc_mcontext->__ss.__eip) + # define EBP_sig(p) ((p)->uc_mcontext->__ss.__ebp) |