Bug 1323115 - Enable BaselineJIT on aarch64. r=jandem,jolesen

This commit is contained in:
Denis Scott 2016-12-23 15:45:12 +01:00
parent 1c2495cf81
commit 22a88e9693
3 changed files with 9 additions and 2 deletions

View File

@ -37,6 +37,9 @@
#include "jsalloc.h"
#include "jit/arm/Simulator-arm.h"
#if defined(JS_CODEGEN_ARM64)
#include "jit/arm64/vixl/Cpu-vixl.h"
#endif
#include "jit/mips32/Simulator-mips32.h"
#include "jit/mips64/Simulator-mips64.h"
#include "js/GCAPI.h"
@ -299,7 +302,7 @@ class ExecutableAllocator
#elif defined(JS_CODEGEN_ARM64) && (defined(__linux__) || defined(ANDROID)) && defined(__GNUC__)
static void cacheFlush(void* code, size_t size)
{
__clear_cache(code, (void *)((size_t)code + size));
vixl::CPU::EnsureIAndDCacheCoherency(code, size);
}
#elif defined(__sparc__)
static void cacheFlush(void* code, size_t size)

View File

@ -161,6 +161,7 @@ Assembler::executableCopy(uint8_t* buffer)
// into a single instruction call + nop in some instances, but this will work.
}
}
AutoFlushICache::setRange(uintptr_t(buffer), armbuffer_.size());
}
BufferOffset

View File

@ -908,7 +908,7 @@ fi
dnl Configure JIT support
case "$CPU_ARCH" in
x86|x86_64|arm|mips*)
x86|x86_64|arm|aarch64|mips*)
ENABLE_ION=1
;;
esac
@ -1728,6 +1728,9 @@ elif test "$CPU_ARCH" = "arm"; then
dnl ARM platforms may trap on unaligned accesses; catch the signal and
dnl recover.
elif test "$CPU_ARCH" = "aarch64"; then
AC_DEFINE(JS_CODEGEN_ARM64)
JS_CODEGEN_ARM64=1
elif test "$CPU_ARCH" = "mips32"; then
AC_DEFINE(JS_CODEGEN_MIPS32)
JS_CODEGEN_MIPS32=1