From 7bdf1f2f1a3d7779919e7d45b2d4a22fb227932a Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Wed, 5 Jun 2013 09:26:29 +0100 Subject: [PATCH] gallium: System z support The main change is to use MCJIT rather than the old JIT, which will never be supported for System z. The endianness part is by example since the patch was tested on a glibc system. Signed-off-by: Richard Sandiford Signed-off-by: Brian Paul --- src/gallium/auxiliary/gallivm/lp_bld_init.c | 2 +- src/gallium/include/pipe/p_config.h | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c index 4a428ee02ad..3258f036ee6 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) +#if defined(PIPE_ARCH_PPC_64) || defined(PIPE_ARCH_S390) # 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 9a09cee8fb9..6b51160af69 100644 --- a/src/gallium/include/pipe/p_config.h +++ b/src/gallium/include/pipe/p_config.h @@ -110,6 +110,10 @@ #endif #endif +#if defined(__s390x__) +#define PIPE_ARCH_S390 +#endif + /* * Endian detection. @@ -146,7 +150,7 @@ #if defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64) #define PIPE_ARCH_LITTLE_ENDIAN -#elif defined(PIPE_ARCH_PPC) || defined(PIPE_ARCH_PPC_64) +#elif defined(PIPE_ARCH_PPC) || defined(PIPE_ARCH_PPC_64) || defined(PIPE_ARCH_S390) #define PIPE_ARCH_BIG_ENDIAN #endif -- 2.30.2