summaryrefslogtreecommitdiff
path: root/backend/src/llvm/llvm_sampler_fix.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'backend/src/llvm/llvm_sampler_fix.cpp')
-rw-r--r--backend/src/llvm/llvm_sampler_fix.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/backend/src/llvm/llvm_sampler_fix.cpp b/backend/src/llvm/llvm_sampler_fix.cpp
index c2497558..c9ec8175 100644
--- a/backend/src/llvm/llvm_sampler_fix.cpp
+++ b/backend/src/llvm/llvm_sampler_fix.cpp
@@ -81,7 +81,11 @@ namespace gbe {
#if LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 40
Module *M = I->getParent()->getParent()->getParent();
+#if LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 50
+ Value* samplerCvt = M->getOrInsertFunction("__gen_ocl_sampler_to_int", i32Ty, I->getOperand(0)->getType());
+#else
Value* samplerCvt = M->getOrInsertFunction("__gen_ocl_sampler_to_int", i32Ty, I->getOperand(0)->getType(), nullptr);
+#endif
Value *samplerVal = Builder.CreateCall(samplerCvt, {I->getOperand(0)});
#else
Value *samplerVal = I->getOperand(0);
@@ -119,7 +123,11 @@ namespace gbe {
Builder.SetInsertPoint(I);
#if LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 40
Module *M = I->getParent()->getParent()->getParent();
+#if LLVM_VERSION_MAJOR * 10 + LLVM_VERSION_MINOR >= 50
+ Value* samplerCvt = M->getOrInsertFunction("__gen_ocl_sampler_to_int", i32Ty, I->getOperand(0)->getType());
+#else
Value* samplerCvt = M->getOrInsertFunction("__gen_ocl_sampler_to_int", i32Ty, I->getOperand(0)->getType(), nullptr);
+#endif
Value *samplerVal = Builder.CreateCall(samplerCvt, {I->getOperand(0)});
#else
Value *samplerVal = I->getOperand(0);