Bug 959597 part 1 - ARM simulator build changes. r=glandium

This commit is contained in:
Jan de Mooij 2014-01-28 15:33:53 +01:00
parent 659e05d266
commit 3f5ef01023
2 changed files with 41 additions and 5 deletions

View File

@ -3414,6 +3414,38 @@ if test -n "$MOZ_VALGRIND"; then
fi
AC_SUBST(MOZ_VALGRIND)
dnl ========================================================
dnl = Use ARM JIT code simulator. Requires an x86 build.
dnl ========================================================
dnl Also define JS_CODEGEN_ARM in this case. If the simulator is not used,
dnl JS_CODEGEN_foo is defined if JS_CPU_foo is defined.
MOZ_ARG_ENABLE_BOOL(arm-simulator,
[ --enable-arm-simulator Enable ARM simulator for JIT code],
JS_ARM_SIMULATOR=1,
JS_ARM_SIMULATOR= )
if test -n "$JS_ARM_SIMULATOR"; then
if test "$CPU_ARCH" != "x86"; then
AC_MSG_ERROR([The ARM simulator only works on x86.])
fi
AC_DEFINE(JS_ARM_SIMULATOR)
AC_DEFINE(JS_CODEGEN_ARM)
JS_CODEGEN_ARM=1
elif test "$CPU_ARCH" = "x86"; then
AC_DEFINE(JS_CODEGEN_X86)
JS_CODEGEN_X86=1
elif test "$CPU_ARCH" = "x86_64"; then
AC_DEFINE(JS_CODEGEN_X64)
JS_CODEGEN_X64=1
elif test "$CPU_ARCH" = "arm"; then
AC_DEFINE(JS_CODEGEN_ARM)
JS_CODEGEN_ARM=1
fi
AC_SUBST(JS_ARM_SIMULATOR)
AC_SUBST(JS_CODEGEN_ARM)
AC_SUBST(JS_CODEGEN_X86)
AC_SUBST(JS_CODEGEN_X64)
dnl ========================================================
dnl jprof
dnl ========================================================

View File

@ -281,7 +281,7 @@ if CONFIG['ENABLE_ION']:
'jit/ValueNumbering.cpp',
'jit/VMFunctions.cpp',
]
if CONFIG['TARGET_CPU'].find('86') != -1:
if CONFIG['JS_CODEGEN_X86'] or CONFIG['JS_CODEGEN_X64']:
UNIFIED_SOURCES += [
'jit/shared/Assembler-x86-shared.cpp',
'jit/shared/BaselineCompiler-x86-shared.cpp',
@ -290,7 +290,7 @@ if CONFIG['ENABLE_ION']:
'jit/shared/Lowering-x86-shared.cpp',
'jit/shared/MoveEmitter-x86-shared.cpp',
]
if CONFIG['TARGET_CPU'] == 'x86_64':
if CONFIG['JS_CODEGEN_X64']:
UNIFIED_SOURCES += [
'jit/x64/Assembler-x64.cpp',
'jit/x64/Bailouts-x64.cpp',
@ -312,7 +312,7 @@ if CONFIG['ENABLE_ION']:
'jit/x86/MacroAssembler-x86.cpp',
'jit/x86/Trampoline-x86.cpp',
]
elif CONFIG['TARGET_CPU'].find('arm') != -1:
elif CONFIG['JS_CODEGEN_ARM']:
UNIFIED_SOURCES += [
'jit/arm/Architecture-arm.cpp',
'jit/arm/Assembler-arm.cpp',
@ -325,6 +325,10 @@ if CONFIG['ENABLE_ION']:
'jit/arm/MoveEmitter-arm.cpp',
'jit/arm/Trampoline-arm.cpp',
]
if CONFIG['JS_ARM_SIMULATOR']:
UNIFIED_SOURCES += [
'jit/arm/Simulator-arm.cpp'
]
if CONFIG['OS_ARCH'] == 'WINNT':
SOURCES += [
@ -343,11 +347,11 @@ else:
]
if CONFIG['ENABLE_ION'] or CONFIG['ENABLE_YARR_JIT']:
if '86' in CONFIG['TARGET_CPU']:
if CONFIG['JS_CODEGEN_X86'] or CONFIG['JS_CODEGEN_X64']:
SOURCES += [
'assembler/assembler/MacroAssemblerX86Common.cpp',
]
elif CONFIG['CPU_ARCH'] == 'arm':
elif CONFIG['JS_CODEGEN_ARM']:
SOURCES += [
'assembler/assembler/ARMAssembler.cpp',
'assembler/assembler/MacroAssemblerARM.cpp',