freebsd-ports/www/node/files/patch-deps_v8_src_arm_cpu-arm.cc
Sunpoet Po-Chuan Hsieh 9c328055d5 Update to 7.4.0 [1]
- Fix build on ARMv6 [2]
- While I'm here, remove duplicate PLIST_SUB which is already handled by OPTIONS_SUB=yes

Changes:	https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V7.md
		https://nodejs.org/en/blog/release/v7.4.0/
PR:		215775 [1], 215044 [2]
Submitted by:	Bradley T. Hughes <bradleythughes@fastmail.fm> (maintainer) [1],
		Peter Laursen <plaursen@kobalt.dk> [2]
2017-01-05 19:34:16 +00:00

22 lines
799 B
C++

--- deps/v8/src/arm/cpu-arm.cc.orig 2016-10-19 22:02:03 UTC
+++ deps/v8/src/arm/cpu-arm.cc
@@ -7,6 +7,9 @@
#ifdef __QNXNTO__
#include <sys/mman.h> // for cache flushing.
#undef MAP_TYPE
+#elif defined(__FreeBSD__)
+#include <sys/types.h>
+#include <machine/sysarch.h> // for cache flushing.
#else
#include <sys/syscall.h> // 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<uint32_t>(start);
register uint32_t end asm("r1") = beg + size;