diff options
author | Kyle McMartin <[email protected]> | 2013-07-15 10:51:15 -0400 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2013-07-17 17:29:01 +1000 |
commit | 87c34405676e464345fea0f843264b8578fbe99e (patch) | |
tree | 6818b9d9ac229f3ab54f006d1f78f120acf7ab04 | |
parent | 00d32cd5b4119b8c477326d72ae8d069ea87b49e (diff) |
llvmpipe: use MCJIT on ARM and AArch64
MCJIT is the only supported LLVM JIT on AArch64 and ARM (the regular
JIT has bit-rotted badly on ARM and doesn't exist on AArch64.)
Signed-off-by: Kyle McMartin <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
-rw-r--r-- | src/gallium/auxiliary/gallivm/lp_bld_init.c | 2 | ||||
-rw-r--r-- | src/gallium/include/pipe/p_config.h | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c index 3258f036ee6..e4cc0582a70 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_init.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_init.c @@ -49,7 +49,7 @@ * - MC-JIT supports limited OSes (MacOSX and Linux) * - standard JIT in LLVM 3.1, with backports */ -#if defined(PIPE_ARCH_PPC_64) || defined(PIPE_ARCH_S390) +#if defined(PIPE_ARCH_PPC_64) || defined(PIPE_ARCH_S390) || defined(PIPE_ARCH_ARM) || defined(PIPE_ARCH_AARCH64) # define USE_MCJIT 1 # define HAVE_AVX 0 #elif HAVE_LLVM >= 0x0302 || (HAVE_LLVM == 0x0301 && defined(HAVE_JIT_AVX_SUPPORT)) diff --git a/src/gallium/include/pipe/p_config.h b/src/gallium/include/pipe/p_config.h index 6b51160af69..1588a92e41b 100644 --- a/src/gallium/include/pipe/p_config.h +++ b/src/gallium/include/pipe/p_config.h @@ -114,6 +114,13 @@ #define PIPE_ARCH_S390 #endif +#if defined(__arm__) +#define PIPE_ARCH_ARM +#endif + +#if defined(__aarch64__) +#define PIPE_ARCH_AARCH64 +#endif /* * Endian detection. @@ -148,7 +155,7 @@ #else -#if defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64) +#if defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64) || defined(PIPE_ARCH_ARM) || defined(PIPE_ARCH_AARCH64) #define PIPE_ARCH_LITTLE_ENDIAN #elif defined(PIPE_ARCH_PPC) || defined(PIPE_ARCH_PPC_64) || defined(PIPE_ARCH_S390) #define PIPE_ARCH_BIG_ENDIAN |