Date: Tue, 2 Mar 2021 16:17:27 +0000 (UTC) From: Jan Beich <jbeich@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r566971 - in head: devel/intel-graphics-compiler devel/intel-graphics-compiler/files lang/intel-compute-runtime Message-ID: <202103021617.122GHR8N080682@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jbeich Date: Tue Mar 2 16:17:27 2021 New Revision: 566971 URL: https://svnweb.freebsd.org/changeset/ports/566971 Log: devel/intel-graphics-compiler: update to 1.0.6410 Changes: https://github.com/intel/intel-graphics-compiler/releases/tag/igc-1.0.6410 Reported by: GitHub (watch releases) Modified: head/devel/intel-graphics-compiler/Makefile (contents, props changed) head/devel/intel-graphics-compiler/distinfo (contents, props changed) head/devel/intel-graphics-compiler/files/patch-llvm (contents, props changed) head/devel/intel-graphics-compiler/files/patch-llvm11 (contents, props changed) head/devel/intel-graphics-compiler/pkg-plist (contents, props changed) head/lang/intel-compute-runtime/Makefile (contents, props changed) Modified: head/devel/intel-graphics-compiler/Makefile ============================================================================== --- head/devel/intel-graphics-compiler/Makefile Tue Mar 2 15:54:43 2021 (r566970) +++ head/devel/intel-graphics-compiler/Makefile Tue Mar 2 16:17:27 2021 (r566971) @@ -2,7 +2,7 @@ PORTNAME= intel-graphics-compiler DISTVERSIONPREFIX= igc- -DISTVERSION= 1.0.6087 +DISTVERSION= 1.0.6410 CATEGORIES= devel PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ @@ -25,7 +25,7 @@ USES= bison cmake compiler:c++17-lang python:build USE_GITHUB= yes USE_LDCONFIG= yes GH_ACCOUNT= intel -GH_TUPLE= intel:vc-intrinsics:ad99fd7:vcintrin/../vc-intrinsics +GH_TUPLE= intel:vc-intrinsics:e7837b2:vcintrin/../vc-intrinsics CMAKE_OFF= INSTALL_SPIRVDLL CFLAGS+= -Wno-macro-redefined # __fastcall PLIST_SUB= ARCH_SUFX=${ARCH:S/i386/32/:S/amd//:S/x86_//} @@ -47,8 +47,8 @@ post-patch: pre-configure: # Only one libLLVM can be loaded, so use the same version as devel/opencl-clang @for f in ${LOCALBASE}/lib/libopencl-clang.so.*; do \ - ${REINPLACE_CMD} "/set.*LLVM_VERSION/s/\".*\"/\"$${f##*so.}\"/" \ - ${WRKSRC}/IGC/CMakeLists.txt; \ + ${REINPLACE_CMD} "/set.*LLVM.*VERSION/s/\".*\"/\"$${f##*so.}\"/" \ + ${WRKSRC}/external/llvm/llvm_preferred_version.cmake; \ done .include <bsd.port.mk> Modified: head/devel/intel-graphics-compiler/distinfo ============================================================================== --- head/devel/intel-graphics-compiler/distinfo Tue Mar 2 15:54:43 2021 (r566970) +++ head/devel/intel-graphics-compiler/distinfo Tue Mar 2 16:17:27 2021 (r566971) @@ -1,8 +1,8 @@ -TIMESTAMP = 1610965894 -SHA256 (intel-intel-graphics-compiler-igc-1.0.6087_GH0.tar.gz) = 12ea1c1ce1e5a22cf3199782d572062c71af96f15139528da4b4a0afbe678580 -SIZE (intel-intel-graphics-compiler-igc-1.0.6087_GH0.tar.gz) = 7184672 -SHA256 (intel-vc-intrinsics-ad99fd7_GH0.tar.gz) = 71a22cfeee2c797179f8dc65138d2c81724bd9f2bb59e14a9838d92a742943db -SIZE (intel-vc-intrinsics-ad99fd7_GH0.tar.gz) = 121051 +TIMESTAMP = 1613381370 +SHA256 (intel-intel-graphics-compiler-igc-1.0.6410_GH0.tar.gz) = 48ff5f78ac7248ba68e3afa9e2b3871f970b5e660c91c62e1a4431d88c5805c2 +SIZE (intel-intel-graphics-compiler-igc-1.0.6410_GH0.tar.gz) = 7302962 +SHA256 (intel-vc-intrinsics-e7837b2_GH0.tar.gz) = 1f5328860688c2191d54687a7866fc393f7cc6a30de7b10689c1a081ef14880a +SIZE (intel-vc-intrinsics-e7837b2_GH0.tar.gz) = 122381 SHA256 (d878880cbb3b.patch) = f430b2da0d212594ce73f23b279a1435f08dea60f30ec35494411ab0dc0fcf70 SIZE (d878880cbb3b.patch) = 9088 SHA256 (f44eb990ac84.patch) = 4774683855caa8ef44a85a43356b7d509683bbdbef23e31ab6f5e4075715d67c Modified: head/devel/intel-graphics-compiler/files/patch-llvm ============================================================================== --- head/devel/intel-graphics-compiler/files/patch-llvm Tue Mar 2 15:54:43 2021 (r566970) +++ head/devel/intel-graphics-compiler/files/patch-llvm Tue Mar 2 16:17:27 2021 (r566971) @@ -5,9 +5,9 @@ Don't look for libLLVM without llvm-config or LLVM.cma CMake Error at IGC/CMakeLists.txt:3283 (message): [IGC] Could not find the LLVM dylib. Aborting. ---- IGC/CMakeLists.txt.orig 2020-05-19 05:44:04 UTC -+++ IGC/CMakeLists.txt -@@ -3278,12 +3278,8 @@ if(LLVM_LINK_LLVM_DYLIB) +--- external/llvm/llvm.cmake.orig 2021-02-15 09:29:30 UTC ++++ external/llvm/llvm.cmake +@@ -157,12 +157,8 @@ if(LLVM_LINK_LLVM_DYLIB) set(IGC_BUILD__LLVM_LIBS_TO_LINK "${SET_LLVM_LIB_PATH}/libLLVM-${LLVM_VERSION_MAJOR}.so") message(STATUS "[IGC] Link against specified LLVM dylib ${IGC_BUILD__LLVM_LIBS_TO_LINK}") else() Modified: head/devel/intel-graphics-compiler/files/patch-llvm11 ============================================================================== --- head/devel/intel-graphics-compiler/files/patch-llvm11 Tue Mar 2 15:54:43 2021 (r566970) +++ head/devel/intel-graphics-compiler/files/patch-llvm11 Tue Mar 2 16:17:27 2021 (r566971) @@ -1,114 +1,98 @@ -https://github.com/intel/intel-graphics-compiler/issues/155 +IGC/Compiler/ConvertMSAAPayloadTo16Bit.cpp:158:35: error: no member named 'getVectorElementType' in 'llvm::Type'; did you mean 'getPointerElementType'? + ldmcs->getType()->getVectorElementType()->isFloatTy()) + ^~~~~~~~~~~~~~~~~~~~ + getPointerElementType +/usr/local/llvm11/include/llvm/IR/Type.h:370:9: note: 'getPointerElementType' declared here + Type *getPointerElementType() const { + ^ +IGC/Compiler/ConvertMSAAPayloadTo16Bit.cpp:162:61: error: no member named 'getVectorNumElements' in 'llvm::Type' + uint ldmcsNumOfElements = ldmcs->getType()->getVectorNumElements(); + ~~~~~~~~~~~~~~~~ ^ +IGC/Compiler/ConvertMSAAPayloadTo16Bit.cpp:163:75: error: no member named 'getVectorNumElements' in 'llvm::Type' + uint new_mcs_callNumOfElements = new_mcs_call->getType()->getVectorNumElements(); + ~~~~~~~~~~~~~~~~~~~~~~~ ^ -In file included from IGC/VectorCompiler/lib/GenXOpts/CMPacketize/GenXPacketize.cpp:38: -In file included from IGC/VectorCompiler/lib/GenXOpts/CMPacketize/PacketBuilder.h:40: -IGC/WrapperLLVM/include/llvmWrapper/Support/Alignment.h:99:16: error: no viable conversion from returned value of type 'llvm::MaybeAlign' to function return type 'IGCLLVM::Align' (aka 'llvm::Align') - return Val.getAlign(); - ^~~~~~~~~~~~~~ -IGC/VectorCompiler/lib/GenXOpts/CMPacketize/GenXPacketize.cpp:279:37: note: in instantiation of function template specialization 'IGCLLVM::getAlign<llvm::Function, 0>' requested here - ClonedFunc->setAlignment(IGCLLVM::getAlign(*F)); - ^ -/usr/local/llvm11/include/llvm/Support/Alignment.h:71:13: note: candidate constructor not viable: no known conversion from 'llvm::MaybeAlign' to 'const llvm::Align &' for 1st argument - constexpr Align(const Align &Other) = default; - ^ -/usr/local/llvm11/include/llvm/Support/Alignment.h:72:13: note: candidate constructor not viable: no known conversion from 'llvm::MaybeAlign' to 'llvm::Align &&' for 1st argument - constexpr Align(Align &&Other) = default; - ^ -/usr/local/llvm11/include/llvm/Support/Alignment.h:109:13: note: candidate constructor not viable: no known conversion from 'llvm::MaybeAlign' to 'llvm::Align::LogValue' for 1st argument - constexpr Align(LogValue CA) : ShiftValue(CA.Log) {} - ^ -/usr/local/llvm11/include/llvm/Support/Alignment.h:76:12: note: explicit constructor is not a candidate - explicit Align(uint64_t Value) { - ^ -IGC/Compiler/CISACodeGen/ResolveGAS.cpp:83:28: error: use of undeclared identifier 'AAResultsWrapperPass' - AU.addRequired<AAResultsWrapperPass>(); - ^ -IGC/Compiler/CISACodeGen/ResolveGAS.cpp:735:5: error: unknown type name 'AliasAnalysis' - AliasAnalysis* AA = &getAnalysis<AAResultsWrapperPass>().getAAResults(); - ^ -IGC/Compiler/CISACodeGen/ResolveGAS.cpp:735:38: error: use of undeclared identifier 'AAResultsWrapperPass' - AliasAnalysis* AA = &getAnalysis<AAResultsWrapperPass>().getAAResults(); - ^ -IGC/Compiler/CISACodeGen/ResolveGAS.cpp:810:27: error: use of undeclared identifier 'MemoryLocation'; did you mean 'TempDILocation'? - if (AA->alias(MemoryLocation::get(SI), MemoryLocation::get(LI))) { - ^~~~~~~~~~~~~~ -IGC/Compiler/CISACodeGen/ResolveGAS.cpp:810:52: error: use of undeclared identifier 'MemoryLocation'; did you mean 'TempDILocation'? - if (AA->alias(MemoryLocation::get(SI), MemoryLocation::get(LI))) { - ^~~~~~~~~~~~~~ -IGC/VectorCompiler/lib/GenXCodeGen/GenXPatternMatch.cpp:2148:16: error: call to 'invertCondition' is ambiguous - Mask = invertCondition(Mask); - ^~~~~~~~~~~~~~~ -IGC/VectorCompiler/lib/GenXCodeGen/GenXUtil.h:206:8: note: candidate function -Value *invertCondition(Value *Condition); - ^ -/usr/local/llvm11/include/llvm/Transforms/Utils/Local.h:557:8: note: candidate function -Value *invertCondition(Value *Condition); - ^ -IGC/VectorCompiler/lib/GenXCodeGen/GenXPatternMatch.cpp:2284:36: error: no viable conversion from 'llvm::ElementCount' to 'unsigned int' - IGCLLVM::getElementCount(OperandWidth), - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -/usr/local/llvm11/include/llvm/IR/Constants.h:803:38: note: passing argument to parameter 'NumElts' here - static Constant *getSplat(unsigned NumElts, Constant *Elt); - ^ -IGC/VectorCompiler/lib/GenXCodeGen/GenXThreadPrivateMemory.cpp:462:37: error: no member named 'getMask' in 'llvm::ShuffleVectorInst' - NewVec1, NewVec2, ShuffleVec->getMask(), ShuffleVec->getName() + ".tpm"); - ~~~~~~~~~~ ^ +IGC/Compiler/Legalizer/InstPromoter.cpp:402:42: error: no member named 'getVectorNumElements' in 'llvm::Type' + for (unsigned i = 0; i < DestTy->getVectorNumElements(); i++) + ~~~~~~ ^ ---- IGC/Compiler/CISACodeGen/ResolveGAS.cpp.orig 2020-12-24 13:04:21 UTC -+++ IGC/Compiler/CISACodeGen/ResolveGAS.cpp -@@ -37,6 +37,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - #include <llvm/ADT/DenseSet.h> - #include <llvm/ADT/SmallVector.h> - #include <llvm/ADT/PostOrderIterator.h> -+#include <llvm/Analysis/AliasAnalysis.h> - #include <llvm/Analysis/LoopInfo.h> - #include <llvm/IR/IRBuilder.h> - #include <llvm/IR/NoFolder.h> ---- IGC/VectorCompiler/lib/GenXCodeGen/GenXPatternMatch.cpp.orig 2020-12-24 13:04:21 UTC -+++ IGC/VectorCompiler/lib/GenXCodeGen/GenXPatternMatch.cpp -@@ -2145,7 +2145,7 @@ static bool mergeToWrRegion(SelectInst *SI) { - Value *Mask = SI->getCondition(); - // Invert mask if needed. - if (Inverted) -- Mask = invertCondition(Mask); -+ Mask = genx::invertCondition(Mask); - // Create new wrregion. - Region WrReg(Wr, BaleInfo()); - WrReg.Mask = Mask; -@@ -2280,7 +2280,7 @@ static void decomposeSdivPow2(Instruction &Sdiv, - Builder.SetCurrentDebugLocation(Sdiv.getDebugLoc()); +IGC/Compiler/Optimizer/OpenCLPasses/WIFuncs/WIFuncResolution.cpp:308:27: error: no member named 'getVectorNumElements' in 'llvm::Type' + Size *= DataType->getVectorNumElements(); + ~~~~~~~~ ^ + +IGC/VectorCompiler/lib/GenXCodeGen/GenXPatternMatch.cpp:2203:5: error: no matching function for call to 'RecursivelyDeleteTriviallyDeadInstructions' + RecursivelyDeleteTriviallyDeadInstructions(ToErase); + ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +/usr/local/llvm11/include/llvm/Transforms/Utils/Local.h:161:6: note: candidate function not viable: no known conversion from 'SmallVector<llvm::Instruction *, 8>' to 'llvm::Value *' for 1st argument +bool RecursivelyDeleteTriviallyDeadInstructions( + ^ +/usr/local/llvm11/include/llvm/Transforms/Utils/Local.h:173:6: note: candidate function not viable: no known conversion from 'SmallVector<llvm::Instruction *, 8>' to 'SmallVectorImpl<llvm::WeakTrackingVH> &' for 1st argument +void RecursivelyDeleteTriviallyDeadInstructions( + ^ + +--- IGC/Compiler/ConvertMSAAPayloadTo16Bit.cpp.orig 2021-02-15 09:29:30 UTC ++++ IGC/Compiler/ConvertMSAAPayloadTo16Bit.cpp +@@ -155,12 +155,21 @@ void ConvertMSAAPayloadTo16Bit::visitCallInst(CallInst + // In OGL there are uses of ldmcs other then ldms, using vec4float type. + // Fix them to use newly created 16bit ldmcs. + if (ldmcs->getType()->isVectorTy() && ++#if LLVM_VERSION_MAJOR < 11 + ldmcs->getType()->getVectorElementType()->isFloatTy()) ++#else ++ cast<llvm::VectorType>(ldmcs->getType())->getElementType()->isFloatTy()) ++#endif + { + m_builder->SetInsertPoint(ldmcs); - auto createConstant = [](unsigned int OperandWidth, Type *Ty, int Value) { -- return OperandWidth != 0 ? ConstantDataVector::getSplat( -+ return OperandWidth != 0 ? ConstantVector::getSplat( - IGCLLVM::getElementCount(OperandWidth), - ConstantInt::get(Ty, Value)) - : ConstantInt::get(Ty, Value); ---- IGC/VectorCompiler/lib/GenXCodeGen/GenXThreadPrivateMemory.cpp.orig 2020-11-21 02:52:12 UTC -+++ IGC/VectorCompiler/lib/GenXCodeGen/GenXThreadPrivateMemory.cpp -@@ -459,7 +459,11 @@ bool GenXThreadPrivateMemory::replaceShuffleVector( - Value *NewVec1 = lookForPtrReplacement(Vec1); - Value *NewVec2 = lookForPtrReplacement(Vec2); - auto NewShuffleVec = new ShuffleVectorInst( +#if LLVM_VERSION_MAJOR < 11 - NewVec1, NewVec2, ShuffleVec->getMask(), ShuffleVec->getName() + ".tpm"); + uint ldmcsNumOfElements = ldmcs->getType()->getVectorNumElements(); + uint new_mcs_callNumOfElements = new_mcs_call->getType()->getVectorNumElements(); +#else -+ NewVec1, NewVec2, ShuffleVec->getShuffleMaskForBitcode(), ShuffleVec->getName() + ".tpm"); ++ uint ldmcsNumOfElements = cast<llvm::VectorType>(ldmcs->getType())->getNumElements(); ++ uint new_mcs_callNumOfElements = cast<llvm::VectorType>(new_mcs_call->getType())->getNumElements(); +#endif - NewShuffleVec->insertAfter(ShuffleVec); - auto CastToOldTy = ---- IGC/VectorCompiler/lib/GenXOpts/CMPacketize/GenXPacketize.cpp.orig 2020-12-24 13:04:21 UTC -+++ IGC/VectorCompiler/lib/GenXOpts/CMPacketize/GenXPacketize.cpp -@@ -276,7 +276,11 @@ Function *GenXPacketize::vectorizeSIMTFunction(Functio - VecFName + Suffix[Width / 8], F->getParent()); - ClonedFunc->setCallingConv(F->getCallingConv()); - ClonedFunc->setAttributes(F->getAttributes()); + // vec of 16bit ints to vec of 32bit ints + Type* new_mcs_callVecType = VectorType::get(m_builder->getInt32Ty(), new_mcs_callNumOfElements); +--- IGC/Compiler/Legalizer/InstPromoter.cpp.orig 2021-02-08 08:48:29 UTC ++++ IGC/Compiler/Legalizer/InstPromoter.cpp +@@ -399,7 +399,11 @@ bool InstPromoter::visitBitCastInst(BitCastInst& I) { + IRB->CreateBitCast(Val, VectorType::get(DestTy->getScalarType(), N)); + + std::vector<Constant*> Vals; +#if LLVM_VERSION_MAJOR < 11 - ClonedFunc->setAlignment(IGCLLVM::getAlign(*F)); + for (unsigned i = 0; i < DestTy->getVectorNumElements(); i++) +#else -+ ClonedFunc->setAlignment(F->getAlign()); ++ for (unsigned i = 0; i < cast<llvm::VectorType>(DestTy)->getNumElements(); i++) +#endif + Vals.push_back(IRB->getInt32(i)); - // then use CloneFunctionInto - ValueToValueMapTy ArgMap; + Value* Mask = ConstantVector::get(Vals); +--- IGC/Compiler/Optimizer/OpenCLPasses/WIFuncs/WIFuncResolution.cpp.orig 2021-02-07 09:58:11 UTC ++++ IGC/Compiler/Optimizer/OpenCLPasses/WIFuncs/WIFuncResolution.cpp +@@ -305,7 +305,11 @@ static Value* BuildLoadInst(CallInst& CI, unsigned int + auto Size = ElemByteSize; + if (DataType->isVectorTy()) + { ++#if LLVM_VERSION_MAJOR < 11 + Size *= DataType->getVectorNumElements(); ++#else ++ Size *= cast<llvm::VectorType>(DataType)->getNumElements(); ++#endif + } + unsigned int AlignedOffset = (Offset / ElemByteSize) * ElemByteSize; + unsigned int LoadByteSize = (Offset == AlignedOffset) ? Size : Size * 2; +--- IGC/VectorCompiler/lib/GenXCodeGen/GenXPatternMatch.cpp.orig 2021-02-15 09:29:30 UTC ++++ IGC/VectorCompiler/lib/GenXCodeGen/GenXPatternMatch.cpp +@@ -2194,7 +2194,11 @@ bool GenXPatternMatch::simplifySelect(Function *F) { + + bool GenXPatternMatch::clearDeadInstructions(Function &F) { + bool Changed = false; ++#if LLVM_VERSION_MAJOR < 11 + SmallVector<Instruction *, 8> ToErase; ++#else ++ SmallVector<WeakTrackingVH, 8> ToErase; ++#endif + for (auto &Inst : instructions(F)) + if (isInstructionTriviallyDead(&Inst)) + ToErase.push_back(&Inst); Modified: head/devel/intel-graphics-compiler/pkg-plist ============================================================================== --- head/devel/intel-graphics-compiler/pkg-plist Tue Mar 2 15:54:43 2021 (r566970) +++ head/devel/intel-graphics-compiler/pkg-plist Tue Mar 2 16:17:27 2021 (r566971) @@ -80,7 +80,6 @@ include/igc/ocl_igc_interface/platform_helper.h include/igc/ocl_igc_shared/device_enqueue/DeviceEnqueueInternalTypes.h include/igc/ocl_igc_shared/executable_format/patch_g10.h include/igc/ocl_igc_shared/executable_format/patch_g7.h -include/igc/ocl_igc_shared/executable_format/patch_g75.h include/igc/ocl_igc_shared/executable_format/patch_g8.h include/igc/ocl_igc_shared/executable_format/patch_g9.h include/igc/ocl_igc_shared/executable_format/patch_list.h Modified: head/lang/intel-compute-runtime/Makefile ============================================================================== --- head/lang/intel-compute-runtime/Makefile Tue Mar 2 15:54:43 2021 (r566970) +++ head/lang/intel-compute-runtime/Makefile Tue Mar 2 16:17:27 2021 (r566971) @@ -2,6 +2,7 @@ PORTNAME= compute-runtime DISTVERSION= 21.08.19096 +PORTREVISION= 1 CATEGORIES= lang PKGNAMEPREFIX= intel-
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202103021617.122GHR8N080682>