From: Jose Fonseca Date: Thu, 14 Apr 2016 11:32:32 +0000 (+0100) Subject: gallivm: Use LLVMSetTarget. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2211f8d5595becd1fb58e3018e365fc103fdac88;p=mesa.git gallivm: Use LLVMSetTarget. Instead of LLVM C++ interfaces. Reviewed-by: Roland Scheidegger --- diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp index c1e262bc1ed..77069efda38 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp +++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp @@ -518,10 +518,16 @@ lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT, #ifdef _WIN32 /* * MCJIT works on Windows, but currently only through ELF object format. + * + * XXX: We could use `LLVM_HOST_TRIPLE "-elf"` but LLVM_HOST_TRIPLE has + * different strings for MinGW/MSVC, so better play it safe and be + * explicit. */ - std::string targetTriple = llvm::sys::getProcessTriple(); - targetTriple.append("-elf"); - unwrap(M)->setTargetTriple(targetTriple); +# ifdef _WIN64 + LLVMSetTarget(M, "x86_64-pc-win32-elf"); +# else + LLVMSetTarget(M, "i686-pc-win32-elf"); +# endif #endif }