Index: head/www/node/files/patch-deps_v8_src_base_atomicops_internals_arm_gcc.h =================================================================== --- head/www/node/files/patch-deps_v8_src_base_atomicops_internals_arm_gcc.h (revision 417791) +++ head/www/node/files/patch-deps_v8_src_base_atomicops_internals_arm_gcc.h (nonexistent) @@ -1,35 +0,0 @@ ---- deps/v8/src/base/atomicops_internals_arm_gcc.h.orig 2016-01-19 17:14:41 UTC -+++ deps/v8/src/base/atomicops_internals_arm_gcc.h -@@ -13,6 +13,11 @@ - #include - #endif - -+#if defined(__FreeBSD__) -+#include -+#include -+#endif -+ - namespace v8 { - namespace base { - -@@ -48,6 +53,8 @@ inline void MemoryBarrier() { - // Note: This is a function call, which is also an implicit compiler barrier. - typedef void (*KernelMemoryBarrierFunc)(); - ((KernelMemoryBarrierFunc)0xffff0fa0)(); -+#elif defined(__FreeBSD__) -+ sysarch(ARM_DRAIN_WRITEBUF, (void *)0); - #elif defined(__QNXNTO__) - __cpu_membarrier(); - #else -@@ -63,8 +70,9 @@ inline void MemoryBarrier() { - defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \ - defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || \ - defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || \ -- defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \ -- defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) -+ defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6KZ__) || \ -+ defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || \ -+ defined(__ARM_ARCH_6T2__) - - inline Atomic32 NoBarrier_CompareAndSwap(volatile Atomic32* ptr, - Atomic32 old_value, Property changes on: head/www/node/files/patch-deps_v8_src_base_atomicops_internals_arm_gcc.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/www/node/files/patch-deps_v8_src_arm_cpu-arm.cc =================================================================== --- head/www/node/files/patch-deps_v8_src_arm_cpu-arm.cc (revision 417791) +++ head/www/node/files/patch-deps_v8_src_arm_cpu-arm.cc (revision 417792) @@ -1,22 +1,22 @@ ---- deps/v8/src/arm/cpu-arm.cc.orig 2016-05-06 17:09:05.953032000 +0200 -+++ deps/v8/src/arm/cpu-arm.cc 2016-05-06 17:10:42.094376000 +0200 +--- deps/v8/src/arm/cpu-arm.cc.orig 2016-06-02 21:53:45 UTC ++++ deps/v8/src/arm/cpu-arm.cc @@ -7,6 +7,9 @@ #ifdef __QNXNTO__ #include // for cache flushing. #undef MAP_TYPE +#elif defined(__FreeBSD__) +#include +#include // for cache flushing. #else #include // for cache flushing. #endif @@ -24,6 +27,9 @@ void CpuFeatures::FlushICache(void* star #if !defined(USE_SIMULATOR) #if V8_OS_QNX msync(start, size, MS_SYNC | MS_INVALIDATE_ICACHE); +#elif defined(__FreeBSD__) + struct arm_sync_icache_args args = { .addr = (uintptr_t)start, .len = size }; + sysarch(ARM_SYNC_ICACHE, (void *)&args); #else register uint32_t beg asm("r0") = reinterpret_cast(start); register uint32_t end asm("r1") = beg + size; Index: head/www/node/files/patch-deps_v8_src_base_atomicops__internals__arm__gcc.h =================================================================== --- head/www/node/files/patch-deps_v8_src_base_atomicops__internals__arm__gcc.h (nonexistent) +++ head/www/node/files/patch-deps_v8_src_base_atomicops__internals__arm__gcc.h (revision 417792) @@ -0,0 +1,35 @@ +--- deps/v8/src/base/atomicops_internals_arm_gcc.h.orig 2016-06-02 21:53:45 UTC ++++ deps/v8/src/base/atomicops_internals_arm_gcc.h +@@ -13,6 +13,11 @@ + #include + #endif + ++#if defined(__FreeBSD__) ++#include ++#include ++#endif ++ + namespace v8 { + namespace base { + +@@ -48,6 +53,8 @@ inline void MemoryBarrier() { + // Note: This is a function call, which is also an implicit compiler barrier. + typedef void (*KernelMemoryBarrierFunc)(); + ((KernelMemoryBarrierFunc)0xffff0fa0)(); ++#elif defined(__FreeBSD__) ++ sysarch(ARM_DRAIN_WRITEBUF, (void *)0); + #elif defined(__QNXNTO__) + __cpu_membarrier(); + #else +@@ -63,8 +70,9 @@ inline void MemoryBarrier() { + defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \ + defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || \ + defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || \ +- defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \ +- defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) ++ defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6KZ__) || \ ++ defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || \ ++ defined(__ARM_ARCH_6T2__) + + inline Atomic32 NoBarrier_CompareAndSwap(volatile Atomic32* ptr, + Atomic32 old_value, Property changes on: head/www/node/files/patch-deps_v8_src_base_atomicops__internals__arm__gcc.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/node/files/patch-deps_v8_src_base_platform_platform-freebsd.cc =================================================================== --- head/www/node/files/patch-deps_v8_src_base_platform_platform-freebsd.cc (revision 417791) +++ head/www/node/files/patch-deps_v8_src_base_platform_platform-freebsd.cc (revision 417792) @@ -1,51 +1,51 @@ ---- deps/v8/src/base/platform/platform-freebsd.cc.orig 2016-01-19 17:19:28 UTC +--- deps/v8/src/base/platform/platform-freebsd.cc.orig 2016-06-02 21:53:45 UTC +++ deps/v8/src/base/platform/platform-freebsd.cc -@@ -36,6 +36,48 @@ +@@ -35,6 +35,48 @@ namespace v8 { namespace base { +#ifdef __arm__ + +bool OS::ArmUsingHardFloat() { + // GCC versions 4.6 and above define __ARM_PCS or __ARM_PCS_VFP to specify + // the Floating Point ABI used (PCS stands for Procedure Call Standard). + // We use these as well as a couple of other defines to statically determine + // what FP ABI used. + // GCC versions 4.4 and below don't support hard-fp. + // GCC versions 4.5 may support hard-fp without defining __ARM_PCS or + // __ARM_PCS_VFP. + +#define GCC_VERSION (__GNUC__ * 10000 \ + + __GNUC_MINOR__ * 100 \ + + __GNUC_PATCHLEVEL__) +#if GCC_VERSION >= 40600 +#if defined(__ARM_PCS_VFP) + return true; +#else + return false; +#endif + +#elif GCC_VERSION < 40500 + return false; + +#else +#if defined(__ARM_PCS_VFP) + return true; +#elif defined(__ARM_PCS) || defined(__SOFTFP__) || defined(__SOFTFP) || \ + !defined(__VFP_FP__) + return false; +#else +#error "Your version of GCC does not report the FP ABI compiled for." \ + "Please report it on this issue" \ + "http://code.google.com/p/v8/issues/detail?id=2140" + +#endif +#endif +#undef GCC_VERSION +} + +#endif // def __arm__ + const char* OS::LocalTimezone(double time, TimezoneCache* cache) { if (std::isnan(time)) return ""; Index: head/www/node/files/patch-deps_v8_src_log-utils.h =================================================================== --- head/www/node/files/patch-deps_v8_src_log-utils.h (revision 417791) +++ head/www/node/files/patch-deps_v8_src_log-utils.h (revision 417792) @@ -1,12 +1,12 @@ ---- deps/v8/src/log-utils.h.orig 2015-12-09 04:12:52 UTC +--- deps/v8/src/log-utils.h.orig 2016-06-02 21:53:46 UTC +++ deps/v8/src/log-utils.h -@@ -5,6 +5,9 @@ - #ifndef V8_LOG_UTILS_H_ - #define V8_LOG_UTILS_H_ +@@ -9,6 +9,9 @@ + + #include +#include +#include + #include "src/allocation.h" #include "src/base/platform/mutex.h" #include "src/flags.h" Index: head/www/node/files/patch-deps_v8_src_profiler_sampler.cc =================================================================== --- head/www/node/files/patch-deps_v8_src_profiler_sampler.cc (revision 417791) +++ head/www/node/files/patch-deps_v8_src_profiler_sampler.cc (revision 417792) @@ -1,15 +1,15 @@ ---- ./deps/v8/src/profiler/sampler.cc.orig 2016-05-06 11:58:26 UTC -+++ ./deps/v8/src/profiler/sampler.cc +--- deps/v8/src/profiler/sampler.cc.orig 2016-06-02 21:53:46 UTC ++++ deps/v8/src/profiler/sampler.cc @@ -515,9 +515,9 @@ void SignalHandler::HandleProfilerSignal state.sp = reinterpret_cast
(mcontext.mc_rsp); state.fp = reinterpret_cast
(mcontext.mc_rbp); #elif V8_HOST_ARCH_ARM - state.pc = reinterpret_cast
(mcontext.mc_r15); - state.sp = reinterpret_cast
(mcontext.mc_r13); - state.fp = reinterpret_cast
(mcontext.mc_r11); + state.pc = reinterpret_cast
(mcontext.__gregs[_REG_PC]); + state.sp = reinterpret_cast
(mcontext.__gregs[_REG_SP]); + state.fp = reinterpret_cast
(mcontext.__gregs[_REG_FP]); #endif // V8_HOST_ARCH_* #elif V8_OS_NETBSD #if V8_HOST_ARCH_IA32