Mesa (master): gallium: Require LLVM >= 3.7

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Sep 11 17:46:19 UTC 2019


Module: Mesa
Branch: master
Commit: 59f18f21595c46f103a0efecd19d4137d179ecab
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=59f18f21595c46f103a0efecd19d4137d179ecab

Author: Adam Jackson <ajax at redhat.com>
Date:   Fri Sep  6 09:50:22 2019 +0200

gallium: Require LLVM >= 3.7

Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
Reviewed-by: Jose Fonseca <jfonseca at vmware.com>

---

 meson.build                                   |  2 +-
 scons/llvm.py                                 | 16 ++-----------
 src/gallium/auxiliary/gallivm/lp_bld_init.c   |  4 +---
 src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 33 +++------------------------
 4 files changed, 7 insertions(+), 48 deletions(-)

diff --git a/meson.build b/meson.build
index b856f3acaec..48be4a122e6 100644
--- a/meson.build
+++ b/meson.build
@@ -1264,7 +1264,7 @@ elif with_gallium_swr
 elif with_gallium_opencl or with_gallium_r600
   _llvm_version = '>= 3.9.0'
 else
-  _llvm_version = '>= 3.6.0'
+  _llvm_version = '>= 3.7.0'
 endif
 
 _shared_llvm = get_option('shared-llvm')
diff --git a/scons/llvm.py b/scons/llvm.py
index adb93e7f41e..30a74d85ca5 100644
--- a/scons/llvm.py
+++ b/scons/llvm.py
@@ -37,7 +37,7 @@ import SCons.Errors
 import SCons.Util
 
 
-required_llvm_version = '3.6'
+required_llvm_version = '3.7'
 
 
 def generate(env):
@@ -159,24 +159,12 @@ def generate(env):
                 'LLVMSupport',
                 'LLVMIRReader', 'LLVMASMParser'
             ])
-        elif llvm_version >= distutils.version.LooseVersion('3.7'):
-            env.Prepend(LIBS = [
-                'LLVMBitWriter', 'LLVMX86Disassembler', 'LLVMX86AsmParser',
-                'LLVMX86CodeGen', 'LLVMSelectionDAG', 'LLVMAsmPrinter',
-                'LLVMCodeGen', 'LLVMScalarOpts', 'LLVMProfileData',
-                'LLVMInstCombine', 'LLVMInstrumentation', 'LLVMTransformUtils', 'LLVMipa',
-                'LLVMAnalysis', 'LLVMX86Desc', 'LLVMMCDisassembler',
-                'LLVMX86Info', 'LLVMX86AsmPrinter', 'LLVMX86Utils',
-                'LLVMMCJIT', 'LLVMTarget', 'LLVMExecutionEngine',
-                'LLVMRuntimeDyld', 'LLVMObject', 'LLVMMCParser',
-                'LLVMBitReader', 'LLVMMC', 'LLVMCore', 'LLVMSupport'
-            ])
         else:
             env.Prepend(LIBS = [
                 'LLVMBitWriter', 'LLVMX86Disassembler', 'LLVMX86AsmParser',
                 'LLVMX86CodeGen', 'LLVMSelectionDAG', 'LLVMAsmPrinter',
                 'LLVMCodeGen', 'LLVMScalarOpts', 'LLVMProfileData',
-                'LLVMInstCombine', 'LLVMTransformUtils', 'LLVMipa',
+                'LLVMInstCombine', 'LLVMInstrumentation', 'LLVMTransformUtils', 'LLVMipa',
                 'LLVMAnalysis', 'LLVMX86Desc', 'LLVMMCDisassembler',
                 'LLVMX86Info', 'LLVMX86AsmPrinter', 'LLVMX86Utils',
                 'LLVMMCJIT', 'LLVMTarget', 'LLVMExecutionEngine',
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c
index 23d330cff54..46355e0277c 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_init.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_init.c
@@ -602,9 +602,7 @@ gallivm_compile_module(struct gallivm_state *gallivm)
 
    /* Disable frame pointer omission on debug/profile builds */
    /* XXX: And workaround http://llvm.org/PR21435 */
-#if (LLVM_VERSION_MAJOR > 3 || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR >= 7)) && \
-    (defined(DEBUG) || defined(PROFILE) || \
-     defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64))
+#if defined(DEBUG) || defined(PROFILE) || defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64)
       LLVMAddTargetDependentFunctionAttr(func, "no-frame-pointer-elim", "true");
       LLVMAddTargetDependentFunctionAttr(func, "no-frame-pointer-elim-non-leaf", "true");
 #endif
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
index 23bf1cf7042..cf18d6d14f9 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
@@ -45,10 +45,8 @@
 #include <llvm/Config/llvm-config.h>
 
 // Workaround http://llvm.org/PR23628
-#if LLVM_VERSION_MAJOR > 3 || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR >= 7)
-#  pragma push_macro("DEBUG")
-#  undef DEBUG
-#endif
+#pragma push_macro("DEBUG")
+#undef DEBUG
 
 #include <llvm/Config/llvm-config.h>
 #include <llvm-c/Core.h>
@@ -57,11 +55,7 @@
 #include <llvm/Target/TargetOptions.h>
 #include <llvm/ExecutionEngine/ExecutionEngine.h>
 #include <llvm/ADT/Triple.h>
-#if LLVM_VERSION_MAJOR > 3 || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR >= 7)
 #include <llvm/Analysis/TargetLibraryInfo.h>
-#else
-#include <llvm/Target/TargetLibraryInfo.h>
-#endif
 #include <llvm/ExecutionEngine/SectionMemoryManager.h>
 #include <llvm/Support/CommandLine.h>
 #include <llvm/Support/Host.h>
@@ -80,9 +74,7 @@
 #endif
 
 // Workaround http://llvm.org/PR23628
-#if LLVM_VERSION_MAJOR > 3 || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR >= 7)
-#  pragma pop_macro("DEBUG")
-#endif
+#pragma pop_macro("DEBUG")
 
 #include "c11/threads.h"
 #include "os/os_thread.h"
@@ -160,11 +152,7 @@ LLVMTargetLibraryInfoRef
 gallivm_create_target_library_info(const char *triple)
 {
    return reinterpret_cast<LLVMTargetLibraryInfoRef>(
-#if LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR < 7
-   new llvm::TargetLibraryInfo(
-#else
    new llvm::TargetLibraryInfoImpl(
-#endif
    llvm::Triple(triple)));
 }
 
@@ -173,11 +161,7 @@ void
 gallivm_dispose_target_library_info(LLVMTargetLibraryInfoRef library_info)
 {
    delete reinterpret_cast<
-#if LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR < 7
-   llvm::TargetLibraryInfo
-#else
    llvm::TargetLibraryInfoImpl
-#endif
    *>(library_info);
 }
 
@@ -333,17 +317,6 @@ lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT,
    options.StackAlignmentOverride = 4;
 #endif
 
-#if defined(DEBUG) && (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR < 7)
-   options.JITEmitDebugInfo = true;
-#endif
-
-   /* XXX: Workaround http://llvm.org/PR21435 */
-#if defined(DEBUG) || defined(PROFILE) || defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64)
-#if LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR < 7
-   options.NoFramePointerElim = true;
-#endif
-#endif
-
    builder.setEngineKind(EngineKind::JIT)
           .setErrorStr(&Error)
           .setTargetOptions(options)




More information about the mesa-commit mailing list