commit:     ff79850f5ff41c74cf8a70cab355a5803bfa648c
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 30 21:35:06 2022 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Thu Jun 30 21:45:54 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff79850f

dev-util/intel-graphics-compiler: add 1.0.11485

Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 dev-util/intel-graphics-compiler/Manifest          |   1 +
 ...aphics-compiler-1.0.11485-fix-BiF-caching.patch |  49 ++++++
 ...phics-compiler-1.0.11485-include-opencl-c.patch |  11 ++
 ...mpiler-1.0.11485-update-raytracing-llvm14.patch | 186 +++++++++++++++++++++
 ...compiler-1.0.11485-wrap-getNumArgOperands.patch |  24 +++
 .../intel-graphics-compiler-1.0.11485.ebuild       |  88 ++++++++++
 6 files changed, 359 insertions(+)

diff --git a/dev-util/intel-graphics-compiler/Manifest 
b/dev-util/intel-graphics-compiler/Manifest
index 0abfe62ca8e0..42d67d67a296 100644
--- a/dev-util/intel-graphics-compiler/Manifest
+++ b/dev-util/intel-graphics-compiler/Manifest
@@ -1 +1,2 @@
 DIST intel-graphics-compiler-1.0.11378.tar.gz 8809420 BLAKE2B 
d503b962193daf3731864739bc0efb753baed3603795e04941d17dcdcaf9e971787ffa877e8295054de41d889a39e2bdbf8119fb7d60110580acea3c24cefc58
 SHA512 
f3daedfe36badfe07f187b38c9a4da98116533940f4d910fbbd060813aeb1e3ffaa627a72180e66736748830a80cfca4c2a6dc9c8e9507884629e3e55add1cbb
+DIST intel-graphics-compiler-1.0.11485.tar.gz 8831925 BLAKE2B 
7e2bcb37b4c34bb01788a8d75fc42498223b6193421cb726c21ce7949181757a10d112ae151736cd9283ba6ed8f0625597fb1f2a61229a7352e7f1f5ec34d1d0
 SHA512 
03fb571fdd61daea3a5c61ff75a146bd98b9b92dfd8bc1957143fe127977f5111df680ac86769d3c1fa1801ba2012b600b1ff844b318ce64460f2d042c4ae65b

diff --git 
a/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-fix-BiF-caching.patch
 
b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-fix-BiF-caching.patch
new file mode 100644
index 000000000000..7ad261e0aa6c
--- /dev/null
+++ 
b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-fix-BiF-caching.patch
@@ -0,0 +1,49 @@
+From 12c99343388eba6e6275856b25e0fa8978585dfb Mon Sep 17 00:00:00 2001
+From: Marcin Naczk <[email protected]>
+Date: Mon, 13 Jun 2022 08:28:24 +0000
+Subject: [PATCH]  Find OpenCl-c.h when clang is take from system.
+
+Find OpenCl-c.h when clang is take from system.
+---
+ IGC/cmake/igc_find_opencl_clang.cmake | 24 +++++++++++++++---------
+ 1 file changed, 15 insertions(+), 9 deletions(-)
+
+diff --git a/IGC/cmake/igc_find_opencl_clang.cmake 
b/IGC/cmake/igc_find_opencl_clang.cmake
+index dc8924fb7ee..0a54ac68249 100644
+--- a/IGC/cmake/igc_find_opencl_clang.cmake
++++ b/IGC/cmake/igc_find_opencl_clang.cmake
+@@ -94,19 +94,25 @@ if(CCLANG_FROM_SYSTEM)
+   else()
+     set_property(TARGET opencl-clang-lib PROPERTY "IMPORTED_LOCATION" 
"${SYSTEM_COMMON_CLANG}")
+   endif()
+-  find_program(CLANG_GE7 clang-${LLVM_VERSION_MAJOR})
+-  if(CLANG_GE7)
+-    message(STATUS "[IGC] Found clang-${LLVM_VERSION_MAJOR} executable: 
${CLANG_GE7}")
++  find_program(CLANG_EXE clang-${LLVM_VERSION_MAJOR})
++  if(CLANG_EXE)
++    message(STATUS "[IGC] Found clang-${LLVM_VERSION_MAJOR} executable: 
${CLANG_EXE}")
+ 
+     add_executable(clang-tool IMPORTED GLOBAL)
+-    set_property(TARGET clang-tool PROPERTY "IMPORTED_LOCATION" 
"${CLANG_GE7}")
++    set_property(TARGET clang-tool PROPERTY "IMPORTED_LOCATION" 
"${CLANG_EXE}")
+     set(CL_OPTIONS "-finclude-default-header")
+-    if(LLVM_VERSION_MAJOR VERSION_EQUAL 7)
+-      message(WARNING "[IGC] : clang-7 should be patched with VME patch 
(https://reviews.llvm.org/D51484). Assuming that it is. If not, please add 
-DVME_TYPES_DEFINED=FALSE.")
+-    endif()
+-  else(CLANG_GE7)
++
++    # Get parent dir of the location of CLANG_EXE
++    get_filename_component(CLANG_EXE_PARENT_DIR ${CLANG_EXE} DIRECTORY)
++    file(GLOB_RECURSE opencl-header ${CLANG_EXE_PARENT_DIR}/../*opencl-c.h)
++    if(opencl-header)
++      message(STATUS "[IGC] Found opencl-c.h: ${opencl-header}")
++    else(opencl-header)
++      message(FATAL_ERROR "[IGC] : Couldn't find opencl-c.h, please provide 
it.")
++    endif(opencl-header)
++  else(CLANG_EXE)
+     message(FATAL_ERROR "[IGC] : Couldn't find clang-${LLVM_VERSION_MAJOR} 
executable, please install it.")
+-  endif(CLANG_GE7)
++  endif(CLANG_EXE)
+ ###
+ #2. CCLANG_BUILD_PREBUILDS - use prebuilt opencl-clang toolchain
+ elseif(${CCLANG_BUILD_PREBUILDS})

diff --git 
a/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-include-opencl-c.patch
 
b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-include-opencl-c.patch
new file mode 100644
index 000000000000..dbf4188ad0bc
--- /dev/null
+++ 
b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-include-opencl-c.patch
@@ -0,0 +1,11 @@
+--- a/IGC/cmake/igc_find_opencl_clang.cmake
++++ b/IGC/cmake/igc_find_opencl_clang.cmake
+@@ -104,7 +104,7 @@
+ 
+     # Get parent dir of the location of CLANG_EXE
+     get_filename_component(CLANG_EXE_PARENT_DIR ${CLANG_EXE} DIRECTORY)
+-    file(GLOB_RECURSE opencl-header ${CLANG_EXE_PARENT_DIR}/../*opencl-c.h)
++    file(GLOB_RECURSE opencl-header 
${CCLANG_INCLUDE_PREBUILDS_DIR}/*opencl-c.h)
+     if(opencl-header)
+       message(STATUS "[IGC] Found opencl-c.h: ${opencl-header}")
+     else(opencl-header)

diff --git 
a/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-update-raytracing-llvm14.patch
 
b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-update-raytracing-llvm14.patch
new file mode 100644
index 000000000000..248f8244e32f
--- /dev/null
+++ 
b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-update-raytracing-llvm14.patch
@@ -0,0 +1,186 @@
+From d9535cc5c3e54b21d56c492d4e21cb13c80b9b7a Mon Sep 17 00:00:00 2001
+From: Artem Gindinson <[email protected]>
+Date: Wed, 22 Jun 2022 11:53:02 +0000
+Subject: [PATCH]  Update RayTracing for full LLVM 14 buildability
+
+- Address further casting issues
+- Use pre-existing LLVM wrappers for function argument manipulations
+- Create & use LLVM wrappers for `AAQueryInfo` and
+  `CallBase::getRetDereferenceableBytes()`
+---
+ IGC/AdaptorCommon/RayTracing/AllocaTracking.cpp          | 3 ++-
+ IGC/AdaptorCommon/RayTracing/InlineDataPass.cpp          | 3 ++-
+ IGC/AdaptorCommon/RayTracing/LowerIntersectionAnyHit.cpp | 2 +-
+ IGC/AdaptorCommon/RayTracing/RTSpillShrinkPass.cpp       | 4 ++--
+ IGC/AdaptorCommon/RayTracing/RayTracingFinalizePass.cpp  | 4 ++--
+ IGC/AdaptorCommon/RayTracing/StackIDSchedulingPass.cpp   | 3 ++-
+ IGC/AdaptorCommon/TypesLegalizationPass.cpp              | 2 +-
+ .../include/llvmWrapper/Analysis/AliasAnalysis.h         | 7 +++++++
+ IGC/WrapperLLVM/include/llvmWrapper/IR/InstrTypes.h      | 9 +++++++++
+ 9 files changed, 28 insertions(+), 9 deletions(-)
+
+diff --git a/IGC/AdaptorCommon/RayTracing/AllocaTracking.cpp 
b/IGC/AdaptorCommon/RayTracing/AllocaTracking.cpp
+index b5ad27e32ca..67cf302495c 100644
+--- a/IGC/AdaptorCommon/RayTracing/AllocaTracking.cpp
++++ b/IGC/AdaptorCommon/RayTracing/AllocaTracking.cpp
+@@ -19,6 +19,7 @@ SPDX-License-Identifier: MIT
+ #include "common/LLVMWarningsPush.hpp"
+ #include <llvm/IR/Instruction.h>
+ #include <llvm/IR/IntrinsicInst.h>
++#include <llvmWrapper/IR/Instructions.h>
+ #include "common/LLVMWarningsPop.hpp"
+ 
+ using namespace llvm;
+@@ -129,7 +130,7 @@ void rewriteTypes(
+             "Only handles void right now!");
+ 
+         SmallVector<Type*, 4> Tys;
+-        for (auto &Op : II->arg_operands())
++        for (auto &Op : IGCLLVM::args(II))
+             Tys.push_back(Op->getType());
+ 
+         auto* NewFTy = FunctionType::get(
+diff --git a/IGC/AdaptorCommon/RayTracing/InlineDataPass.cpp 
b/IGC/AdaptorCommon/RayTracing/InlineDataPass.cpp
+index 5e4df4e1a86..9433340d259 100644
+--- a/IGC/AdaptorCommon/RayTracing/InlineDataPass.cpp
++++ b/IGC/AdaptorCommon/RayTracing/InlineDataPass.cpp
+@@ -46,6 +46,7 @@ SPDX-License-Identifier: MIT
+ #include <vector>
+ #include "common/LLVMWarningsPush.hpp"
+ #include <llvm/IR/InstIterator.h>
++#include <llvmWrapper/IR/InstrTypes.h>
+ #include "common/LLVMWarningsPop.hpp"
+ 
+ using namespace llvm;
+@@ -155,7 +156,7 @@ bool BindlessInlineDataPass::runOnModule(Module &M)
+                 // the size of the Shader Identifier + the size of the Local 
arguments
+                 const uint64_t dereferenceable_size =
+                     sizeof(ShaderIdentifier) +
+-                    
local_buffer_ptr->getDereferenceableBytes(AttributeList::ReturnIndex);
++                    IGCLLVM::getRetDereferenceableBytes(local_buffer_ptr);
+ 
+                 // Return a CallInst* representing the InlinedData intrinsic 
call
+                 // In the shader dumps,
+diff --git a/IGC/AdaptorCommon/RayTracing/LowerIntersectionAnyHit.cpp 
b/IGC/AdaptorCommon/RayTracing/LowerIntersectionAnyHit.cpp
+index 8b6bba69f23..2c3a98d04e3 100644
+--- a/IGC/AdaptorCommon/RayTracing/LowerIntersectionAnyHit.cpp
++++ b/IGC/AdaptorCommon/RayTracing/LowerIntersectionAnyHit.cpp
+@@ -449,7 +449,7 @@ CallInst* LowerIntersectionAnyHit::codeGenReportHit(
+                 CustomHitAttrPtr,
+                 4,
+                 Attrs,
+-                std::min(4U, 
DL.getABITypeAlignment(AttrTy->getPointerElementType())),
++                std::min(4U, 
(unsigned)DL.getABITypeAlignment(AttrTy->getPointerElementType())),
+                 
IRB.getInt64(DL.getTypeAllocSize(AttrTy->getPointerElementType())));
+         }
+ 
+diff --git a/IGC/AdaptorCommon/RayTracing/RTSpillShrinkPass.cpp 
b/IGC/AdaptorCommon/RayTracing/RTSpillShrinkPass.cpp
+index 4d42b32af36..d8d7ac3c54f 100644
+--- a/IGC/AdaptorCommon/RayTracing/RTSpillShrinkPass.cpp
++++ b/IGC/AdaptorCommon/RayTracing/RTSpillShrinkPass.cpp
+@@ -61,9 +61,9 @@ class RTSpillShrinkPass : public FunctionPass
+ 
+     unsigned getAlignment(const DataLayout& DL, StoreInst* ST) const
+     {
+-        unsigned Align = ST->getAlignment();
++        unsigned Align = (unsigned)ST->getAlignment();
+         if (Align == 0)
+-            Align = DL.getABITypeAlignment(ST->getType());
++            Align = (unsigned)DL.getABITypeAlignment(ST->getType());
+         return Align;
+     }
+ 
+diff --git a/IGC/AdaptorCommon/RayTracing/RayTracingFinalizePass.cpp 
b/IGC/AdaptorCommon/RayTracing/RayTracingFinalizePass.cpp
+index 87549a6ce85..797e77a548d 100644
+--- a/IGC/AdaptorCommon/RayTracing/RayTracingFinalizePass.cpp
++++ b/IGC/AdaptorCommon/RayTracing/RayTracingFinalizePass.cpp
+@@ -114,7 +114,7 @@ bool RayTracingFinalizePass::runOnModule(Module &M)
+             {
+                 // Temporary WA to ensure we don't page fault on unaligned
+                 // acceses.
+-                uint32_t Align = LI->getAlignment();
++                uint32_t Align = (uint32_t)LI->getAlignment();
+                 if (Align == 0)
+                     Align = (uint32_t)DL.getTypeAllocSize(LI->getType());
+ 
+@@ -125,7 +125,7 @@ bool RayTracingFinalizePass::runOnModule(Module &M)
+             {
+                 // Temporary WA to ensure we don't page fault on unaligned
+                 // acceses.
+-                uint32_t Align = SI->getAlignment();
++                uint32_t Align = (uint32_t)SI->getAlignment();
+                 if (Align == 0)
+                     Align = (uint32_t)DL.getTypeAllocSize(
+                         SI->getValueOperand()->getType());
+diff --git a/IGC/AdaptorCommon/RayTracing/StackIDSchedulingPass.cpp 
b/IGC/AdaptorCommon/RayTracing/StackIDSchedulingPass.cpp
+index db5490267fd..d352b67a50f 100644
+--- a/IGC/AdaptorCommon/RayTracing/StackIDSchedulingPass.cpp
++++ b/IGC/AdaptorCommon/RayTracing/StackIDSchedulingPass.cpp
+@@ -49,6 +49,7 @@ SPDX-License-Identifier: MIT
+ #include <llvm/IR/Dominators.h>
+ #include <llvm/Analysis/PostDominators.h>
+ #include <llvm/Analysis/LoopInfo.h>
++#include "llvmWrapper/Analysis/AliasAnalysis.h"
+ #include "llvmWrapper/Analysis/MemoryLocation.h"
+ #include "common/LLVMWarningsPop.hpp"
+ 
+@@ -175,7 +176,7 @@ BasicBlock* StackIDSchedulingPass::schedule(
+ ModRefInfo StackIDSchedulingPass::getModRefInfo(
+     const CallBase* Call, const MemoryLocation& Loc)
+ {
+-    AAQueryInfo AAQIP;
++    AAQueryInfo AAQIP = IGCLLVM::makeAAQueryInfo();
+     return AA->getModRefInfo(Call, Loc, AAQIP);
+ }
+ 
+diff --git a/IGC/AdaptorCommon/TypesLegalizationPass.cpp 
b/IGC/AdaptorCommon/TypesLegalizationPass.cpp
+index c3570f39d31..10da29ee242 100644
+--- a/IGC/AdaptorCommon/TypesLegalizationPass.cpp
++++ b/IGC/AdaptorCommon/TypesLegalizationPass.cpp
+@@ -207,7 +207,7 @@ TypesLegalizationPass::ResolveValue( Instruction *ip,Value 
*val,SmallVector<unsi
+   {
+     IGCLLVM::IRBuilder<> builder( ld );
+     Value* gep = CreateGEP( builder,ld->getOperand( 0 ),indices );
+-    unsigned alignment = ld->getAlignment();
++    unsigned alignment = (unsigned)ld->getAlignment();
+     unsigned pointerTypeSize = 
gep->getType()->getPointerElementType()->getScalarSizeInBits() / 8;
+     if ( alignment && pointerTypeSize == alignment )
+       return builder.CreateAlignedLoad( gep, IGCLLVM::getAlign(alignment) );
+diff --git a/IGC/WrapperLLVM/include/llvmWrapper/Analysis/AliasAnalysis.h 
b/IGC/WrapperLLVM/include/llvmWrapper/Analysis/AliasAnalysis.h
+index 873886cc860..385c04db970 100644
+--- a/IGC/WrapperLLVM/include/llvmWrapper/Analysis/AliasAnalysis.h
++++ b/IGC/WrapperLLVM/include/llvmWrapper/Analysis/AliasAnalysis.h
+@@ -19,6 +19,13 @@ namespace IGCLLVM
+ #else
+   using AliasResultEnum = llvm::AliasResult::Kind;
+ #endif
++inline llvm::AAQueryInfo makeAAQueryInfo() {
++#if LLVM_VERSION_MAJOR >= 14
++  return llvm::AAQueryInfo(new llvm::SimpleCaptureInfo());
++#else
++  return llvm::AAQueryInfo();
++#endif
++}
+ }
+ 
+ #endif
+diff --git a/IGC/WrapperLLVM/include/llvmWrapper/IR/InstrTypes.h 
b/IGC/WrapperLLVM/include/llvmWrapper/IR/InstrTypes.h
+index 569eece3fb5..1050c842271 100644
+--- a/IGC/WrapperLLVM/include/llvmWrapper/IR/InstrTypes.h
++++ b/IGC/WrapperLLVM/include/llvmWrapper/IR/InstrTypes.h
+@@ -50,6 +50,15 @@ namespace IGCLLVM
+         CI->addFnAttr(Kind);
+ #else
+         CI->addAttribute(llvm::AttributeList::FunctionIndex, Kind);
++#endif
++    }
++
++    inline uint64_t getRetDereferenceableBytes(llvm::CallBase* Call)
++    {
++#if LLVM_VERSION_MAJOR >= 14
++        return Call->getRetDereferenceableBytes();
++#else
++        return 
Call->getDereferenceableBytes(llvm::AttributeList::ReturnIndex);
+ #endif
+     }
+ }

diff --git 
a/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-wrap-getNumArgOperands.patch
 
b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-wrap-getNumArgOperands.patch
new file mode 100644
index 000000000000..23754ccb6b4b
--- /dev/null
+++ 
b/dev-util/intel-graphics-compiler/files/intel-graphics-compiler-1.0.11485-wrap-getNumArgOperands.patch
@@ -0,0 +1,24 @@
+From 1d5ceafdbc005f3adc58be5af1dc92f068908e16 Mon Sep 17 00:00:00 2001
+From: Artem Gindinson <[email protected]>
+Date: Mon, 20 Jun 2022 12:38:04 +0000
+Subject: [PATCH]  Wrap CallInst::getNumArgOperands calls for LLVM 14
+
+Rework all remaining call sites to rely on the already-existing wrapper
+function.
+---
+ IGC/Compiler/CISACodeGen/HFpackingOpt.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/IGC/Compiler/CISACodeGen/HFpackingOpt.cpp 
b/IGC/Compiler/CISACodeGen/HFpackingOpt.cpp
+index 69d6151f8bf..e24362d7791 100644
+--- a/IGC/Compiler/CISACodeGen/HFpackingOpt.cpp
++++ b/IGC/Compiler/CISACodeGen/HFpackingOpt.cpp
+@@ -825,7 +825,7 @@ bool 
HFpackingOpt::findStoreSequence(std::vector<Instruction*>& path, std::vecto
+         uint srciCount = inst->getNumOperands();
+         if (CallInst* cinst = dyn_cast<CallInst>(inst))
+         {
+-            srciCount = cinst->getNumArgOperands();
++            srciCount = IGCLLVM::getNumArgOperands(cinst);
+         }
+ 
+         for (uint srci = 0; srci < srciCount; srci++)

diff --git 
a/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.11485.ebuild 
b/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.11485.ebuild
new file mode 100644
index 000000000000..74f02de2f3a1
--- /dev/null
+++ b/dev-util/intel-graphics-compiler/intel-graphics-compiler-1.0.11485.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_BUILD_TYPE="Release"
+LLVM_MAX_SLOT="13"
+MY_PN="igc"
+MY_P="${MY_PN}-${PV}"
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit cmake flag-o-matic llvm python-any-r1
+
+DESCRIPTION="LLVM-based OpenCL compiler for OpenCL targetting Intel Gen 
graphics hardware"
+HOMEPAGE="https://github.com/intel/intel-graphics-compiler";
+SRC_URI="https://github.com/intel/${PN}/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug"
+
+DEPEND="
+       dev-libs/opencl-clang:${LLVM_MAX_SLOT}=
+       dev-util/spirv-tools
+       =sys-devel/lld-${LLVM_MAX_SLOT}*
+       sys-devel/llvm:${LLVM_MAX_SLOT}=
+"
+
+RDEPEND="${DEPEND}"
+
+BDEPEND="
+       =sys-devel/lld-${LLVM_MAX_SLOT}*
+       ${PYTHON_DEPS}
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-1.0.9-no_Werror.patch"
+       "${FILESDIR}/${PN}-1.0.8173-opencl-clang_version.patch"
+       "${FILESDIR}/${PN}-1.0.8365-disable-git.patch"
+       "${FILESDIR}/${PN}-1.0.11485-fix-BiF-caching.patch"
+       "${FILESDIR}/${PN}-1.0.11485-update-raytracing-llvm14.patch"
+       "${FILESDIR}/${PN}-1.0.11485-wrap-getNumArgOperands.patch"
+       "${FILESDIR}/${PN}-1.0.11485-include-opencl-c.patch"
+)
+
+pkg_setup() {
+       llvm_pkg_setup
+       python-any-r1_pkg_setup
+}
+
+src_configure() {
+       # Get LLVM version
+       local llvm_version="$(best_version -d sys-devel/llvm:${LLVM_MAX_SLOT})"
+
+       # See https://github.com/intel/intel-graphics-compiler/issues/212
+       append-ldflags -Wl,-z,undefs
+
+       # See https://bugs.gentoo.org/718824
+       ! use debug && append-cppflags -DNDEBUG
+
+       local mycmakeargs=(
+               
-DCCLANG_INCLUDE_PREBUILDS_DIR="/usr/lib/clang/${llvm_version##*-}/include"
+               -DCCLANG_SONAME_VERSION="${LLVM_MAX_SLOT}"
+               -DCMAKE_LIBRARY_PATH="$(get_llvm_prefix 
${LLVM_MAX_SLOT})/$(get_libdir)"
+               -DIGC_OPTION__ARCHITECTURE_TARGET="Linux64"
+               -DIGC_OPTION__CLANG_MODE="Prebuilds"
+               -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR="ON"
+               -DIGC_OPTION__LLD_MODE="Prebuilds"
+               -DIGC_OPTION__LLDELF_H_DIR="${EPREFIX}/usr/include/lld/Common"
+               -DIGC_OPTION__LLVM_MODE="Prebuilds"
+               -DIGC_OPTION__LLVM_PREFERRED_VERSION="${llvm_version##*-}"
+               -DIGC_OPTION__SPIRV_TOOLS_MODE="Prebuilds"
+               -DIGC_OPTION__SPIRV_TRANSLATOR_MODE="Prebuilds"
+               -DIGC_OPTION__USE_PREINSTALLED_SPRIV_HEADERS="ON"
+               -DINSTALL_GENX_IR="ON"
+               
-DSPIRVLLVMTranslator_INCLUDE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAX_SLOT}/include/LLVMSPIRVLib"
+               -Wno-dev
+
+               # Compilation with VectorCompiler causes currently a segfault.
+               # See 
https://github.com/intel/intel-graphics-compiler/issues/236
+               -DIGC_BUILD__VC_ENABLED="OFF"
+               # -DIGC_OPTION__VC_INTRINSICS_MODE="Prebuilds"
+       )
+
+       cmake_src_configure
+}

Reply via email to