From: José Fonseca Date: Fri, 20 Jul 2012 17:17:14 +0000 (+0100) Subject: gallivm: Prefer the standard JIT engine whenever possible. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c30bf68946433d26f672c741a763bba4712aada7;p=mesa.git gallivm: Prefer the standard JIT engine whenever possible. Testing shows that the standard JIT engine retrofited with AVX support is quite stable and as capable to handle AVX instructions as MC-JIT is. And the old JIT is much more memory efficient, as we don't need to allocate one engine instance per shader, as we do for MC-JIT due to its incompleteness. Reviewed-by: Roland Scheidegger --- diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c index 5bf4bcfab3b..068a2cd7915 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_init.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_init.c @@ -49,12 +49,12 @@ * - MC-JIT supports limited OSes (MacOSX and Linux) * - standard JIT in LLVM 3.1, with backports */ -#if HAVE_LLVM >= 0x0301 && (defined(PIPE_OS_LINUX) || defined(PIPE_OS_APPLE)) -# define USE_MCJIT 1 -# define HAVE_AVX 1 -#elif HAVE_LLVM >= 0x0302 || (HAVE_LLVM == 0x0301 && defined(HAVE_JIT_AVX_SUPPORT)) +#if HAVE_LLVM >= 0x0302 || (HAVE_LLVM == 0x0301 && defined(HAVE_JIT_AVX_SUPPORT)) # define USE_MCJIT 0 # define HAVE_AVX 1 +#elif HAVE_LLVM == 0x0301 && (defined(PIPE_OS_LINUX) || defined(PIPE_OS_APPLE)) +# define USE_MCJIT 1 +# define HAVE_AVX 1 #else # define USE_MCJIT 0 # define HAVE_AVX 0