From aed4bb9af765daf139c751b6fac0b359f6e2f5c5 Mon Sep 17 00:00:00 2001 From: Teoh Suh Haw Date: Wed, 12 Apr 2023 16:08:51 +0800 Subject: intel-graphics-compiler: upgrade 1.0.12812.24 -> 1.0.13230.7 Release Notes: https://github.com/intel/intel-graphics-compiler/releases/tag/igc-1.0.13230.7 Drop already merged patches: c707d1e2244aec988bdd5d2a7473ef3a32a5bac7.patch d1761dfc3ca6b54bac0ee213389a65f84d2aa9b7.patch e09e752949e7af0231884d1b11ea907e3e8b1611.patch fix-build-with-llvm12.patch Fixes fuzz warnings. Signed-off-by: Teoh Suh Haw Signed-off-by: Anuj Mittal --- ...iF-CMakeLists.txt-remove-opt-from-DEPENDS.patch | 10 +- ...IRV-Tools-change-path-to-tools-and-header.patch | 10 +- .../recipes-opencl/igc/files/0001-fix-tblgen.patch | 4 +- ...3-Improve-Reproducibility-for-src-package.patch | 10 +- .../c707d1e2244aec988bdd5d2a7473ef3a32a5bac7.patch | 144 --------------------- .../d1761dfc3ca6b54bac0ee213389a65f84d2aa9b7.patch | 77 ----------- .../e09e752949e7af0231884d1b11ea907e3e8b1611.patch | 49 ------- .../igc/files/fix-build-with-llvm12.patch | 29 ----- 8 files changed, 14 insertions(+), 319 deletions(-) delete mode 100644 dynamic-layers/clang-layer/recipes-opencl/igc/files/c707d1e2244aec988bdd5d2a7473ef3a32a5bac7.patch delete mode 100644 dynamic-layers/clang-layer/recipes-opencl/igc/files/d1761dfc3ca6b54bac0ee213389a65f84d2aa9b7.patch delete mode 100644 dynamic-layers/clang-layer/recipes-opencl/igc/files/e09e752949e7af0231884d1b11ea907e3e8b1611.patch delete mode 100644 dynamic-layers/clang-layer/recipes-opencl/igc/files/fix-build-with-llvm12.patch (limited to 'dynamic-layers/clang-layer/recipes-opencl/igc/files') diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch index 0dd75537..9ec48819 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch +++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch @@ -1,4 +1,4 @@ -From 16fb6c022380bbb3c48f21372fcb1da7f30d3903 Mon Sep 17 00:00:00 2001 +From 9abd198b13d4764ee2e34b385ac20fc11a56d8f3 Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Tue, 12 Oct 2021 23:46:42 +0800 Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS @@ -13,23 +13,21 @@ using prebuilt binaries. Upstream-Status: Inappropriate Signed-off-by: Anuj Mittal + --- IGC/VectorCompiler/lib/BiF/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/IGC/VectorCompiler/lib/BiF/CMakeLists.txt b/IGC/VectorCompiler/lib/BiF/CMakeLists.txt -index be8e5557e..07ab40382 100644 +index c439f334a..756cc84c3 100644 --- a/IGC/VectorCompiler/lib/BiF/CMakeLists.txt +++ b/IGC/VectorCompiler/lib/BiF/CMakeLists.txt @@ -112,7 +112,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE) add_custom_command(OUTPUT ${BIF_OPT_BC_PATH} - COMMAND ${LLVM_OPT_EXE} --O2 -o ${BIF_OPT_BC_NAME} ${BIF_CMCL_BC_NAME} + COMMAND ${LLVM_OPT_EXE} ${IGC_LLVM_DEPENDENT_OPT_FLAGS} --O2 -o ${BIF_OPT_BC_NAME} ${BIF_CMCL_BC_NAME} COMMENT "vc_build_bif: running opt with O2: ${BIF_CMCL_BC_NAME} -> ${BIF_OPT_BC_NAME}" - DEPENDS opt ${BIF_CMCL_BC_PATH}) + DEPENDS ${BIF_CMCL_BC_PATH}) set(${RES_FILE} ${BIF_OPT_BC_NAME} PARENT_SCOPE) endfunction() --- -2.35.3 - diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch index 79d70d3e..dca75e22 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch +++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch @@ -1,4 +1,4 @@ -From 776692307258f273d54b81c00701a0ad01c9f4e4 Mon Sep 17 00:00:00 2001 +From e69a3181482e5f442756a61c7b683914072884f1 Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Mon, 9 Jan 2023 11:43:05 +0800 Subject: [PATCH] external/SPIRV-Tools: change path to tools and headers @@ -9,15 +9,16 @@ file path substitutions take place. Upstream-Status: Inappropriate Signed-off-by: Anuj Mittal + --- external/SPIRV-Tools/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/external/SPIRV-Tools/CMakeLists.txt b/external/SPIRV-Tools/CMakeLists.txt -index 076079f7c..3b2059f88 100644 +index 9afa5746c..7ca24d5dc 100644 --- a/external/SPIRV-Tools/CMakeLists.txt +++ b/external/SPIRV-Tools/CMakeLists.txt -@@ -42,8 +42,8 @@ else() #By default use build from sources +@@ -43,8 +43,8 @@ else() #By default use build from sources message(STATUS "[SPIRV-Tools] : Building from source") message(STATUS "[SPIRV-Tools] : Current source dir: ${CMAKE_CURRENT_SOURCE_DIR}") @@ -28,6 +29,3 @@ index 076079f7c..3b2059f88 100644 set(SPIRV-Tools_OUTPUT_DIR "${IGC_OPTION__OUTPUT_DIR}/external/SPIRV-Tools/build") set(IGC_BUILD__SPIRV-Headers_DIR "${SPIRV-Headers_SOURCE_DIR}") --- -2.37.3 - diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch index f8eddfcf..39443931 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch +++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch @@ -1,4 +1,4 @@ -From cfc8d6775cc213bdc0c938c20167d74f6aeb310a Mon Sep 17 00:00:00 2001 +From 5648568e597acd0fed82aac3e6aef0f95a1b78d1 Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Thu, 19 May 2022 22:50:09 +0800 Subject: [PATCH] fix tblgen @@ -10,7 +10,7 @@ Upstream-Status: Inappropriate [OE specific] 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake -index 96e3b0d11..b48c91ff4 100644 +index 10322533c..9020cb3c8 100644 --- a/IGC/cmake/igc_llvm.cmake +++ b/IGC/cmake/igc_llvm.cmake @@ -52,7 +52,7 @@ else() diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch index 7dd36aec..650130a8 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch +++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch @@ -1,7 +1,7 @@ -From c2b7f30dd56568482b1b7c2f22bafdf68736fc88 Mon Sep 17 00:00:00 2001 +From 0559332abd04b6c8bc70171d201f43d2e4735336 Mon Sep 17 00:00:00 2001 From: Lee Chee Yang Date: Wed, 2 Sep 2020 08:28:35 +0800 -Subject: [PATCH 3/5] Improve Reproducibility for src package +Subject: [PATCH] Improve Reproducibility for src package Improve reproducibility for intel-graphics-compiler-src package. needs to pass build path as environment variable to the build. @@ -9,12 +9,13 @@ this only works on bison 3.7 onward, hence check for bison version before adding the flags. Upstream-Status: Inappropriate [applying --file-prefix-map in such way does not work for upstream] Signed-off-by: Lee Chee Yang + --- visa/CMakeLists.txt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/visa/CMakeLists.txt b/visa/CMakeLists.txt -index 65dbb4934..8cd607a69 100644 +index 6be467587..930c386a6 100644 --- a/visa/CMakeLists.txt +++ b/visa/CMakeLists.txt @@ -123,8 +123,11 @@ endif() @@ -31,6 +32,3 @@ index 65dbb4934..8cd607a69 100644 ADD_FLEX_BISON_DEPENDENCY(CISAScanner CISAParser) set(CISAScanner_dependencies) --- -2.20.1 - diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/c707d1e2244aec988bdd5d2a7473ef3a32a5bac7.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/c707d1e2244aec988bdd5d2a7473ef3a32a5bac7.patch deleted file mode 100644 index 5f9527b3..00000000 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/c707d1e2244aec988bdd5d2a7473ef3a32a5bac7.patch +++ /dev/null @@ -1,144 +0,0 @@ -From cce0d22ebba79075792e6f30c597d8d29d946e8c Mon Sep 17 00:00:00 2001 -From: Artem Gindinson -Date: Thu, 17 Nov 2022 18:51:03 +0000 -Subject: [PATCH] Disable opaque pointers in IGC stack for LLVM 15+ - -While IGC is a long way from supporting opaque pointers, LLVM 15 has them -enabled by default. Enforce typed pointers explicitly within all LLVM -pipelines employed by our stack (unless CMake instructs otherwise). - -Upstream-Status: Backport -Signed-off-by: Anuj Mittal - ---- - IGC/BiFModule/CMakeLists.txt | 4 ++-- - IGC/CMakeLists.txt | 4 ++++ - IGC/Compiler/CodeGenContext.cpp | 3 +++ - IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp | 4 ++++ - IGC/VectorCompiler/lib/BiF/CMakeLists.txt | 4 ++-- - IGC/cmake/igc_llvm.cmake | 24 +++++++++++++++++++++++ - 6 files changed, 39 insertions(+), 4 deletions(-) - -diff --git a/IGC/BiFModule/CMakeLists.txt b/IGC/BiFModule/CMakeLists.txt -index 60fc5cf8d..e87288ca6 100644 ---- a/IGC/BiFModule/CMakeLists.txt -+++ b/IGC/BiFModule/CMakeLists.txt -@@ -251,7 +251,7 @@ function(igc_bif_build_bc) - add_custom_command( - OUTPUT "${_bcTempFilePath}" - COMMAND "${CMAKE_COMMAND}" -E compare_files ${BiFModule_PREBUILD_SHA_PATH} ${BiFModule_SRC_SHA_PATH} || "${CMAKE_COMMAND}" -E make_directory "${_outBcFileDir}" -- COMMAND "${CMAKE_COMMAND}" -E compare_files ${BiFModule_PREBUILD_SHA_PATH} ${BiFModule_SRC_SHA_PATH} || "$" -cc1 -x cl -fblocks -fpreserve-vec3-type -opencl-builtins "-triple=${_archTriple}" -w -emit-llvm-bc -o "${_bcTempFilePath}" ${_pchFlags} ${_incFileFlags} ${_includeDirsFlags} ${_defineFlags} ${_options_DEFAULT} ${_options_CL} "${_srcFilePath}" -+ COMMAND "${CMAKE_COMMAND}" -E compare_files ${BiFModule_PREBUILD_SHA_PATH} ${BiFModule_SRC_SHA_PATH} || "$" -cc1 ${IGC_LLVM_DEPENDENT_CLANG_FLAGS} -x cl -fblocks -fpreserve-vec3-type -opencl-builtins "-triple=${_archTriple}" -w -emit-llvm-bc -o "${_bcTempFilePath}" ${_pchFlags} ${_incFileFlags} ${_includeDirsFlags} ${_defineFlags} ${_options_DEFAULT} ${_options_CL} "${_srcFilePath}" - DEPENDS clang-tool ${_pchFilePath} ${_incFilePaths} "${_srcFilePath}" ${_dependencies} - COMMENT "BiF: \"${_outBcFileName}\": Compiling OpenCL source: \"${_srcFileName}\"" - ) -@@ -351,7 +351,7 @@ function(igc_bif_build_bc) - add_custom_command( - OUTPUT "${_bcTempFilePath}" - COMMAND "${CMAKE_COMMAND}" -E compare_files ${BiFModule_PREBUILD_SHA_PATH} ${BiFModule_SRC_SHA_PATH} || "${CMAKE_COMMAND}" -E make_directory "${_outBcFileDir}" -- COMMAND "${CMAKE_COMMAND}" -E compare_files ${BiFModule_PREBUILD_SHA_PATH} ${BiFModule_SRC_SHA_PATH} || "${bif-llvm-opt_exe}" -O2 -o "${_bcTempFilePath}" ${_options_DEFAULT} ${_options_OPT} ${_bcFiles} -+ COMMAND "${CMAKE_COMMAND}" -E compare_files ${BiFModule_PREBUILD_SHA_PATH} ${BiFModule_SRC_SHA_PATH} || "${bif-llvm-opt_exe}" -O2 -o "${_bcTempFilePath}" ${IGC_LLVM_DEPENDENT_OPT_ARGS} ${_options_DEFAULT} ${_options_OPT} ${_bcFiles} - DEPENDS ${_bcFiles} ${_dependencies} - COMMENT "BiF: \"${_outBcFileName}\": Optmizing output .bc." - ) -diff --git a/IGC/CMakeLists.txt b/IGC/CMakeLists.txt -index 930a55212..66ea2a3b5 100644 ---- a/IGC/CMakeLists.txt -+++ b/IGC/CMakeLists.txt -@@ -275,6 +275,10 @@ endif() - # Remove this condition after transition period is over - option(IGC_OPTION__USE_KHRONOS_SPIRV_TRANSLATOR_IN_SC "[Experimental] Enable usage of Khronos SPIRV-LLVM-Translator in Scalar Compiler" OFF) - -+# TODO: Change this flag to opt-out or remove completely once -+# opaque pointers are fully supported within the IGC stack. -+option(IGC_OPTION__LLVM_OPAQUE_POINTERS_ENABLED "[Experimental] Allow usage of opaque pointers within LLVM transformations" OFF) -+ - option(IGC_OPTION__ENABLE_LIT_TESTS "Enable lit testing for IGC compiler. May require additional tools like llvm lit and opt" OFF) - - set(IGC_OPTION__BIF_SRC_OCL_DIR "${IGC_SOURCE_DIR}/BiFModule" -diff --git a/IGC/Compiler/CodeGenContext.cpp b/IGC/Compiler/CodeGenContext.cpp -index fc04b5d84..fe1773b85 100644 ---- a/IGC/Compiler/CodeGenContext.cpp -+++ b/IGC/Compiler/CodeGenContext.cpp -@@ -232,6 +232,9 @@ namespace IGC - { - CreateResourceDimensionTypes(*this); - } -+#ifdef __IGC_OPAQUE_POINTERS_FORCE_DISABLED__ -+ this->setOpaquePointers(false); -+#endif - } - - void LLVMContextWrapper::AddRef() -diff --git a/IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp b/IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp -index 4a6fb40dd..f9b308503 100644 ---- a/IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp -+++ b/IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp -@@ -1494,6 +1494,10 @@ namespace TC - optionsEx += " -debug-info-kind=line-tables-only -dwarf-version=4"; - } - -+#ifdef __IGC_OPAQUE_POINTERS_FORCE_DISABLED__ -+ optionsEx += " -no-opaque-pointers"; -+#endif -+ - std::string extensionsFromInternalOptions = GetSubstring(pInternalOptions, "-cl-ext="); - - std::string extensions; -diff --git a/IGC/VectorCompiler/lib/BiF/CMakeLists.txt b/IGC/VectorCompiler/lib/BiF/CMakeLists.txt -index b2e56e091..77f397f79 100644 ---- a/IGC/VectorCompiler/lib/BiF/CMakeLists.txt -+++ b/IGC/VectorCompiler/lib/BiF/CMakeLists.txt -@@ -90,7 +90,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE) - - add_custom_command(OUTPUT "${BIF_CLANG_BC_PATH}" - COMMAND clang-tool -cc1 ${CMCL_INCLUDES} ${VC_INCLUDES} ${UTILS_HEADERS} -- ${EXTRA_CLANG_INCLUDES} ${EXTRA_CLANG_FLAGS} -+ ${EXTRA_CLANG_INCLUDES} ${IGC_LLVM_DEPENDENT_CLANG_FLAGS} ${EXTRA_CLANG_FLAGS} - -x cl -cl-std=clc++ -triple=${SPIR_TARGET} - -O2 -disable-llvm-passes -emit-llvm-bc -o "${BIF_CLANG_BC_NAME}" ${CMCL_SRC} - COMMENT "vc_build_bif: Compiling CMCL source ${CMCL_SRC} to BC ${BIF_CLANG_BC_NAME}" -@@ -110,7 +110,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE) - COMMENT "vc_build_bif: Translating CMCL builtins: ${BIF_CLANG_BC_NAME_FINAL} -> ${BIF_CMCL_BC_NAME}" - DEPENDS CMCLTranslatorTool ${BIF_CLANG_BC_PATH_FINAL}) - add_custom_command(OUTPUT ${BIF_OPT_BC_PATH} -- COMMAND ${LLVM_OPT_EXE} --O2 -o ${BIF_OPT_BC_NAME} ${BIF_CMCL_BC_NAME} -+ COMMAND ${LLVM_OPT_EXE} ${IGC_LLVM_DEPENDENT_OPT_FLAGS} --O2 -o ${BIF_OPT_BC_NAME} ${BIF_CMCL_BC_NAME} - COMMENT "vc_build_bif: running opt with O2: ${BIF_CMCL_BC_NAME} -> ${BIF_OPT_BC_NAME}" - DEPENDS ${BIF_CMCL_BC_PATH}) - set(${RES_FILE} ${BIF_OPT_BC_NAME} PARENT_SCOPE) -diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake -index c0f74dcea..96e3b0d11 100644 ---- a/IGC/cmake/igc_llvm.cmake -+++ b/IGC/cmake/igc_llvm.cmake -@@ -69,6 +69,30 @@ list(TRANSFORM LLVM_INCLUDE_DIRS PREPEND "-I=" OUTPUT_VARIABLE LLVM_TABLEGEN_FLA - # Add major version definition for llvm wrapper. - add_compile_definitions(LLVM_VERSION_MAJOR=${LLVM_VERSION_MAJOR}) - -+set(IGC_LLVM_DEPENDENT_CLANG_FLAGS "") -+set(IGC_LLVM_DEPENDENT_OPT_FLAGS "") -+ -+# Disable the opaque pointers' usage explicitly, unless the block below deems that unnecessary -+set(IGC_OPAQUE_POINTERS_FORCE_DISABLED ON) -+if(IGC_OPTION__LLVM_OPAQUE_POINTERS_ENABLED) -+ if(LLVM_VERSION_MAJOR LESS 14) -+ message(WARNING "IGC_OPTION__LLVM_OPAQUE_POINTERS_ENABLED ignored: opaque pointers are not available prior to LLVM 14") -+ endif() -+ set(IGC_OPAQUE_POINTERS_FORCE_DISABLED OFF) -+elseif(LLVM_VERSION_MAJOR LESS 15) -+ # Opaque pointers are either absent (LLVM <14) or disabled by default. No need to force-disable -+ set(IGC_OPAQUE_POINTERS_FORCE_DISABLED OFF) -+endif(IGC_OPTION__LLVM_OPAQUE_POINTERS_ENABLED) -+ -+if(IGC_OPAQUE_POINTERS_FORCE_DISABLED) -+ # Once we've figured out that explicit disabling is needed, propagate -+ # corresponding options to all the in-tree calls of clang/opt tools. -+ list(APPEND IGC_LLVM_DEPENDENT_CLANG_FLAGS "-no-opaque-pointers") -+ list(APPEND IGC_LLVM_DEPENDENT_OPT_FLAGS "-opaque-pointers=0") -+ # Also inform the preprocessor. -+ add_compile_definitions(__IGC_OPAQUE_POINTERS_FORCE_DISABLED__) -+endif() -+ - # Include LLVM headers as system ones. - # This will disable warnings on linux. - include_directories(SYSTEM ${LLVM_INCLUDE_DIRS}) diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/d1761dfc3ca6b54bac0ee213389a65f84d2aa9b7.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/d1761dfc3ca6b54bac0ee213389a65f84d2aa9b7.patch deleted file mode 100644 index a96be212..00000000 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/d1761dfc3ca6b54bac0ee213389a65f84d2aa9b7.patch +++ /dev/null @@ -1,77 +0,0 @@ -From d1761dfc3ca6b54bac0ee213389a65f84d2aa9b7 Mon Sep 17 00:00:00 2001 -From: Artem Gindinson -Date: Mon, 28 Nov 2022 14:33:44 +0000 -Subject: [PATCH] Explicitly cast pointers to `int` in BiFModule (LLVM 15) - -Starting from version 15, Clang defaults to -`-Werror=int-conversion`. Add explicit casts in OpenCL C builtins' -code where necessary for LLVM 15 buildability. - -Upstream-Status: Backport -Signed-off-by: Anuj Mittal - ---- - IGC/BiFModule/Implementation/group.cl | 4 ++-- - IGC/BiFModule/Languages/OpenCL/IBiF_Images.cl | 8 ++++---- - 2 files changed, 6 insertions(+), 6 deletions(-) - -diff --git a/IGC/BiFModule/Implementation/group.cl b/IGC/BiFModule/Implementation/group.cl -index dd6cfd6ba26..df9a2f64f4f 100644 ---- a/IGC/BiFModule/Implementation/group.cl -+++ b/IGC/BiFModule/Implementation/group.cl -@@ -1897,13 +1897,13 @@ void SPIRV_OVERLOADABLE SPIRV_BUILTIN(SubgroupImageBlockWriteINTEL, _img2d_wo_v2 - global Img2d_wo* image, int2 coord, TYPE data) \ - { \ - int id = (int)__builtin_astype(image, __global void*); \ -- INTERNAL_FUNC(image, coord, data); \ -+ INTERNAL_FUNC((int)image, coord, data); \ - } \ - void SPIRV_OVERLOADABLE SPIRV_BUILTIN(SubgroupImageBlockWriteINTEL, _img2d_rw_v2i32_##TYPE_ABBR, )( \ - global Img2d_rw* image, int2 coord, TYPE data) \ - { \ - int id = (int)__builtin_astype(image, __global void*); \ -- INTERNAL_FUNC(image, coord, data); \ -+ INTERNAL_FUNC((int)image, coord, data); \ - } - - #ifdef cl_intel_subgroups_char -diff --git a/IGC/BiFModule/Languages/OpenCL/IBiF_Images.cl b/IGC/BiFModule/Languages/OpenCL/IBiF_Images.cl -index 062b4f3f49f..1d9d158e9c5 100644 ---- a/IGC/BiFModule/Languages/OpenCL/IBiF_Images.cl -+++ b/IGC/BiFModule/Languages/OpenCL/IBiF_Images.cl -@@ -379,7 +379,7 @@ INLINE int4 OVERLOADABLE read_imagei(read_only image1d_array_t image_array, samp - - INLINE uint4 OVERLOADABLE read_imageui(read_only image1d_array_t image_array, sampler_t sampler, int2 coords) { - int id = (int)__builtin_astype(image_array, __global void*); -- int IDimage_array = __builtin_astype(image_array, __global void*); -+ int IDimage_array = (int)__builtin_astype(image_array, __global void*); - int dt = __builtin_IB_get_image_array_size(IDimage_array); - float layer = clamp(rint((float)coords.y), 0.0f, (float)(--dt)); - if ((__builtin_IB_get_address_mode(__builtin_IB_convert_sampler_to_int(sampler)) & 0x07) == CLK_ADDRESS_CLAMP_TO_EDGE) -@@ -395,7 +395,7 @@ INLINE uint4 OVERLOADABLE read_imageui(read_only image1d_array_t image_array, sa - - INLINE uint4 OVERLOADABLE read_imageui(read_only image1d_array_t image_array, sampler_t sampler, float2 coords) { - int id = (int)__builtin_astype(image_array, __global void*); -- int IDimage_array = __builtin_astype(image_array, __global void*); -+ int IDimage_array = (int)__builtin_astype(image_array, __global void*); - int dt = __builtin_IB_get_image_array_size(IDimage_array); - float layer = clamp(rint(coords.y), 0.0f, (float)(--dt)); - if ((__builtin_IB_get_address_mode(__builtin_IB_convert_sampler_to_int(sampler)) & 0x07) == CLK_ADDRESS_CLAMP) -@@ -581,7 +581,7 @@ INLINE int4 OVERLOADABLE read_imagei(read_only image2d_array_t image_array, samp - - INLINE uint4 OVERLOADABLE read_imageui(read_only image2d_array_t image_array, sampler_t sampler, int4 coords) { - int id = (int)__builtin_astype(image_array, __global void*); -- int IDimage_array = __builtin_astype(image_array, __global void*); -+ int IDimage_array = (int)__builtin_astype(image_array, __global void*); - int dt = __builtin_IB_get_image_array_size(IDimage_array); - float layer = clamp(rint((float)coords.z), 0.0f, (float)(--dt)); - if ((__builtin_IB_get_address_mode(__builtin_IB_convert_sampler_to_int(sampler)) & 0x07) == CLK_ADDRESS_CLAMP_TO_EDGE) -@@ -597,7 +597,7 @@ INLINE uint4 OVERLOADABLE read_imageui(read_only image2d_array_t image_array, sa - - INLINE uint4 OVERLOADABLE read_imageui(read_only image2d_array_t image_array, sampler_t sampler, float4 coords) { - int id = (int)__builtin_astype(image_array, __global void*); -- int IDimage_array = __builtin_astype(image_array, __global void*); -+ int IDimage_array = (int)__builtin_astype(image_array, __global void*); - int dt = __builtin_IB_get_image_array_size(IDimage_array); - float layer = clamp(rint(coords.z), 0.0f, (float)(--dt)); - if ((__builtin_IB_get_address_mode(__builtin_IB_convert_sampler_to_int(sampler)) & 0x07) == CLK_ADDRESS_CLAMP) diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/e09e752949e7af0231884d1b11ea907e3e8b1611.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/e09e752949e7af0231884d1b11ea907e3e8b1611.patch deleted file mode 100644 index 55cb2a7d..00000000 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/e09e752949e7af0231884d1b11ea907e3e8b1611.patch +++ /dev/null @@ -1,49 +0,0 @@ -From e09e752949e7af0231884d1b11ea907e3e8b1611 Mon Sep 17 00:00:00 2001 -From: Artem Gindinson -Date: Fri, 18 Nov 2022 14:48:45 +0000 -Subject: [PATCH] Additional VC fix of pointer element type API usage - -Quick fixup to the LLVM 15 buildability in the footsteps of commit -intel/intel-graphics-compiler@b86c1bf. - -Upstream-Status: Backport -Signed-off-by: Anuj Mittal - ---- - IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp b/IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp -index 363d622c24c..c047c545ac8 100644 ---- a/IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp -+++ b/IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp -@@ -748,12 +748,12 @@ void GenXPredToSimdCF::insertIfGoto(SimdCFIfRegion &R) { - Mask->getName() + ".not"); - Value *EM = getEM(M); - Instruction *OldGotoEM = -- Builder.CreateLoad(EM->getType()->getPointerElementType(), EM, -+ Builder.CreateLoad(IGCLLVM::getNonOpaquePtrEltTy(EM->getType()), EM, - false /*isVolatile*/, EM->getName()); - OldGotoEM->setDebugLoc(DL); - Value *GotoRMAddr = getRMAddr(Br->getSuccessor(0), SimdWidth); - Instruction *OldGotoRM = Builder.CreateLoad( -- GotoRMAddr->getType()->getPointerElementType(), GotoRMAddr, -+ IGCLLVM::getNonOpaquePtrEltTy(GotoRMAddr->getType()), GotoRMAddr, - false /*isVolatile*/, GotoRMAddr->getName()); - OldGotoRM->setDebugLoc(DL); - Type *GotoTys[] = {OldGotoEM->getType(), OldGotoRM->getType()}; -@@ -798,12 +798,12 @@ void GenXPredToSimdCF::insertIfGoto(SimdCFIfRegion &R) { - AfterThens[&R] = AfterThen; - - Builder.SetInsertPoint(AfterThen, AfterThen->begin()); -- auto *OldEM = Builder.CreateLoad(EM->getType()->getPointerElementType(), EM, -+ auto *OldEM = Builder.CreateLoad(IGCLLVM::getNonOpaquePtrEltTy(EM->getType()), EM, - false /*isVolatile*/, EM->getName()); - OldEM->setDebugLoc(DL); - auto *RMAddr = getRMAddr(Br->getSuccessor(0), SimdWidth); - auto *RM = -- Builder.CreateLoad(RMAddr->getType()->getPointerElementType(), RMAddr, -+ Builder.CreateLoad(IGCLLVM::getNonOpaquePtrEltTy(RMAddr->getType()), RMAddr, - false /*isVolatile*/, RMAddr->getName()); - RM->setDebugLoc(DL); - Type *Tys[] = {OldEM->getType(), RM->getType()}; diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/fix-build-with-llvm12.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/fix-build-with-llvm12.patch deleted file mode 100644 index fb29c940..00000000 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/fix-build-with-llvm12.patch +++ /dev/null @@ -1,29 +0,0 @@ -The condition should be checking for <= 11 since the change is available -in LLVM12: -https://github.com/llvm/llvm-project/commit/322d0afd875df66b36e4810a2b95c20a8f22ab9b - -Upstream-Status: Submitted -Signed-off-by: Anuj Mittal - -diff --git a/IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp b/IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp -index 363d622c2..bbb04be30 100644 ---- a/IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp -+++ b/IGC/VectorCompiler/lib/GenXCodeGen/GenXSimdCFRegion.cpp -@@ -395,7 +395,7 @@ public: - return GenXIntrinsic::getGenXIntrinsicID(V) == - GenXIntrinsic::genx_all || - CI->getIntrinsicID() == --#if LLVM_VERSION_MAJOR <= 12 -+#if LLVM_VERSION_MAJOR <= 11 - Intrinsic::experimental_vector_reduce_and; - #else - Intrinsic::vector_reduce_and; -@@ -408,7 +408,7 @@ public: - if (const CallInst *CI = dyn_cast(V)) - return GenXIntrinsic::getGenXIntrinsicID(V) == - GenXIntrinsic::genx_any || CI->getIntrinsicID() == --#if LLVM_VERSION_MAJOR <= 12 -+#if LLVM_VERSION_MAJOR <= 11 - Intrinsic::experimental_vector_reduce_or; - #else - Intrinsic::vector_reduce_or; -- cgit v1.2.3-54-g00ecf