summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/state_trackers/clover/llvm/codegen/common.cpp2
-rw-r--r--src/gallium/state_trackers/clover/llvm/compat.hpp6
2 files changed, 7 insertions, 1 deletions
diff --git a/src/gallium/state_trackers/clover/llvm/codegen/common.cpp b/src/gallium/state_trackers/clover/llvm/codegen/common.cpp
index 13ccd591c11..3b0014d8797 100644
--- a/src/gallium/state_trackers/clover/llvm/codegen/common.cpp
+++ b/src/gallium/state_trackers/clover/llvm/codegen/common.cpp
@@ -129,7 +129,7 @@ namespace {
cast<::llvm::PointerType>(actual_type)->getAddressSpace();
if (address_space == address_spaces[clang::LangAS::opencl_local
- - clang::LangAS::Offset]) {
+ - compat::lang_as_offset]) {
args.emplace_back(module::argument::local, arg_api_size,
target_size, target_align,
module::argument::zero_ext);
diff --git a/src/gallium/state_trackers/clover/llvm/compat.hpp b/src/gallium/state_trackers/clover/llvm/compat.hpp
index 906367b3146..67d2d0fd546 100644
--- a/src/gallium/state_trackers/clover/llvm/compat.hpp
+++ b/src/gallium/state_trackers/clover/llvm/compat.hpp
@@ -67,6 +67,12 @@ namespace clover {
typedef ::llvm::TargetLibraryInfo target_library_info;
#endif
+#if HAVE_LLVM >= 0x0500
+ const auto lang_as_offset = 0;
+#else
+ const auto lang_as_offset = clang::LangAS::Offset;
+#endif
+
inline void
set_lang_defaults(clang::CompilerInvocation &inv,
clang::LangOptions &lopts, clang::InputKind ik,