svn commit: r439552 - branches/2017Q2/www/firefox/files
Jan Beich
jbeich at FreeBSD.org
Thu Apr 27 14:34:41 UTC 2017
Author: jbeich
Date: Thu Apr 27 14:34:39 2017
New Revision: 439552
URL: https://svnweb.freebsd.org/changeset/ports/439552
Log:
MFH: r439551
www/firefox: try to unbreak aarch64 after r438264
In file included from /wrkdirs/usr/ports/www/firefox/work/firefox-53.0/obj-aarch64-unknown-freebsd11.0/js/src/Unified_cpp_js_src12.cpp:29:
/wrkdirs/usr/ports/www/firefox/work/firefox-53.0/js/src/jit/Ion.cpp:3528:30: error: no member named 'cacheFlush' in 'js::jit::ExecutableAllocator'
ExecutableAllocator::cacheFlush((void*)start_, size_t(stop_ - start_));
~~~~~~~~~~~~~~~~~~~~~^
Reported by: pkg-fallout
Approved by: ports-secteam blanket
Added:
branches/2017Q2/www/firefox/files/patch-bug1359051
- copied unchanged from r439551, head/www/firefox/files/patch-bug1359051
branches/2017Q2/www/firefox/files/patch-bug1359142
- copied unchanged from r439551, head/www/firefox/files/patch-bug1359142
Modified:
Directory Properties:
branches/2017Q2/ (props changed)
Copied: branches/2017Q2/www/firefox/files/patch-bug1359051 (from r439551, head/www/firefox/files/patch-bug1359051)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ branches/2017Q2/www/firefox/files/patch-bug1359051 Thu Apr 27 14:34:39 2017 (r439552, copy of r439551, head/www/firefox/files/patch-bug1359051)
@@ -0,0 +1,31 @@
+commit fe7592e16fcc
+Author: Sean Stangl <sstangl at mozilla.com>
+Date: Mon Apr 24 07:10:58 2017 -0700
+
+ Bug 1359051 - Define cacheFlush for non-Simulator ARM64 builds. r=tcampbell
+---
+ js/src/jit/ExecutableAllocator.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git js/src/jit/ExecutableAllocator.h js/src/jit/ExecutableAllocator.h
+index 3a42918142ef..570a25ff0dc3 100644
+--- js/src/jit/ExecutableAllocator.h
++++ js/src/jit/ExecutableAllocator.h
+@@ -259,7 +259,7 @@ class ExecutableAllocator
+ {
+ __clear_cache(code, reinterpret_cast<char*>(code) + size);
+ }
+-#elif defined(JS_CODEGEN_ARM) && defined(XP_IOS)
++#elif (defined(JS_CODEGEN_ARM) || defined(JS_CODEGEN_ARM64)) && defined(XP_IOS)
+ static void cacheFlush(void* code, size_t size)
+ {
+ sys_icache_invalidate(code, size);
+@@ -297,7 +297,7 @@ class ExecutableAllocator
+ : "r0", "r1", "r2");
+ }
+ }
+-#elif defined(JS_CODEGEN_ARM64) && (defined(__linux__) || defined(ANDROID)) && defined(__GNUC__)
++#elif defined(JS_CODEGEN_ARM64)
+ static void cacheFlush(void* code, size_t size)
+ {
+ vixl::CPU::EnsureIAndDCacheCoherency(code, size);
Copied: branches/2017Q2/www/firefox/files/patch-bug1359142 (from r439551, head/www/firefox/files/patch-bug1359142)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ branches/2017Q2/www/firefox/files/patch-bug1359142 Thu Apr 27 14:34:39 2017 (r439552, copy of r439551, head/www/firefox/files/patch-bug1359142)
@@ -0,0 +1,51 @@
+Define EPC_sig and RFP_sig for JS_CODEGEN_ARM64 on BSDs
+
+diff --git js/src/wasm/WasmSignalHandlers.cpp js/src/wasm/WasmSignalHandlers.cpp
+index 3f65bbb44f99..150331f19ea4 100644
+--- js/src/wasm/WasmSignalHandlers.cpp
++++ js/src/wasm/WasmSignalHandlers.cpp
+@@ -109,6 +109,10 @@ class AutoSetHandlingSegFault
+ # define R13_sig(p) ((p)->sc_r13)
+ # define R14_sig(p) ((p)->sc_r14)
+ # define R15_sig(p) ((p)->sc_r15)
++# 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 +175,13 @@ 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 RFP_sig(p) ((p)->uc_mcontext.__gregs[_REG_X29])
++# endif
++# if defined(__mips__)
++# 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])
+ # else
+ # define R15_sig(p) ((p)->uc_mcontext.mc_r15)
+ # 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)
More information about the svn-ports-all
mailing list