svn commit: r439993 - in head/www/firefox: . files
Jan Beich
jbeich at FreeBSD.org
Tue May 2 23:53:48 UTC 2017
Author: jbeich
Date: Tue May 2 23:53:47 2017
New Revision: 439993
URL: https://svnweb.freebsd.org/changeset/ports/439993
Log:
www/firefox: use X29 as frame pointer like aarch64 kernel does
Modified:
head/www/firefox/Makefile (contents, props changed)
head/www/firefox/files/patch-bug1359142 (contents, props changed)
Modified: head/www/firefox/Makefile
==============================================================================
--- head/www/firefox/Makefile Tue May 2 22:56:14 2017 (r439992)
+++ head/www/firefox/Makefile Tue May 2 23:53:47 2017 (r439993)
@@ -4,7 +4,7 @@
PORTNAME= firefox
DISTVERSION= 53.0
DISTVERSIONSUFFIX=.source
-PORTREVISION= 3
+PORTREVISION= 4
PORTEPOCH= 1
CATEGORIES= www ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
Modified: head/www/firefox/files/patch-bug1359142
==============================================================================
--- head/www/firefox/files/patch-bug1359142 Tue May 2 22:56:14 2017 (r439992)
+++ head/www/firefox/files/patch-bug1359142 Tue May 2 23:53:47 2017 (r439993)
@@ -1,13 +1,23 @@
-Define EPC_sig and RFP_sig for JS_CODEGEN_ARM64 on BSDs
+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 3f65bbb44f99..150331f19ea4 100644
+index 1ab76eeb4bd9..bcdff0487837 100644
--- js/src/wasm/WasmSignalHandlers.cpp
+++ js/src/wasm/WasmSignalHandlers.cpp
-@@ -109,6 +109,10 @@ class AutoSetHandlingSegFault
+@@ -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)
+-# 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])
@@ -15,33 +25,29 @@ index 3f65bbb44f99..150331f19ea4 100644
#elif defined(__linux__) || defined(SOLARIS)
# if defined(__linux__)
# define XMM_sig(p,i) ((p)->uc_mcontext.fpregs->_xmm[i])
-@@ -171,6 +175,13 @@ class AutoSetHandlingSegFault
+@@ -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])
-+# define EPC_sig(p) ((p)->uc_mcontext.__gregs[_REG_PC])
+# 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])
-@@ -195,11 +206,19 @@ class AutoSetHandlingSegFault
- # define R12_sig(p) ((p)->uc_mcontext.mc_r12)
- # define R13_sig(p) ((p)->uc_mcontext.mc_r13)
- # define R14_sig(p) ((p)->uc_mcontext.mc_r14)
-+# 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[19])
-+# endif
- # if defined(__FreeBSD__) && defined(__arm__)
- # define R15_sig(p) ((p)->uc_mcontext.__gregs[_REG_R15])
+@@ -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])
More information about the svn-ports-head
mailing list