[Mesa-dev] [PATCH] llvmpipe: use MCJIT on ARM and AArch64
Jose Fonseca
jfonseca at vmware.com
Tue Jul 16 08:14:47 PDT 2013
Looks alright be me.
Jose
----- Original Message -----
> From: Kyle McMartin <kyle at redhat.com>
>
> 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 <kyle at redhat.com>
>
> --- 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 6b51160..96b5247 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
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
More information about the mesa-dev
mailing list