From c1d9d6083ea5bf957ac73c770df3fd28dfa36d29 Mon Sep 17 00:00:00 2001 From: Naveen Saini Date: Fri, 18 Jun 2021 13:04:50 +0800 Subject: llvm-project-source: fix do_patch for llvm-12 Backported (opencl-clang) recommend patch for llvm-12[1]. [1]: https://github.com/intel/opencl-clang/commit/669f9ae8a205b1ab43edfbff49915df7efc463c1 Signed-off-by: Naveen Saini Signed-off-by: Anuj Mittal --- ...1-Remove-__IMAGE_SUPPORT__-macro-for-SPIR.patch | 51 ++++++++++++++++++++++ .../clang/llvm-project-source.bbappend | 22 ++++++---- 2 files changed, 65 insertions(+), 8 deletions(-) create mode 100644 dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Remove-__IMAGE_SUPPORT__-macro-for-SPIR.patch (limited to 'dynamic-layers/clang-layer/recipes-devtools') diff --git a/dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Remove-__IMAGE_SUPPORT__-macro-for-SPIR.patch b/dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Remove-__IMAGE_SUPPORT__-macro-for-SPIR.patch new file mode 100644 index 00000000..c0696652 --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Remove-__IMAGE_SUPPORT__-macro-for-SPIR.patch @@ -0,0 +1,51 @@ +From dccea3a4e68c9a4ce069f2f0a2a24df057199db1 Mon Sep 17 00:00:00 2001 +From: haonanya +Date: Tue, 11 May 2021 11:13:02 +0800 +Subject: [PATCH] Remove __IMAGE_SUPPORT__ macro for SPIR since SPIR doesn't + require image support + +Upstream-Status: Backport [Taken from opencl-clang patches, https://github.com/intel/opencl-clang/blob/ocl-open-120/patches/clang/0001-Remove-__IMAGE_SUPPORT__-macro-for-SPIR.patch] + +Signed-off-by: haonanya +Signed-off-by: Naveen Saini +--- + clang/lib/Frontend/InitPreprocessor.cpp | 3 --- + clang/test/Preprocessor/predefined-macros.c | 2 -- + 2 files changed, 5 deletions(-) + +diff --git a/clang/lib/Frontend/InitPreprocessor.cpp b/clang/lib/Frontend/InitPreprocessor.cpp +index c64a912ce919..c60972c96e5d 100644 +--- a/clang/lib/Frontend/InitPreprocessor.cpp ++++ b/clang/lib/Frontend/InitPreprocessor.cpp +@@ -1121,9 +1121,6 @@ static void InitializePredefinedMacros(const TargetInfo &TI, + // OpenCL definitions. + if (LangOpts.OpenCL) { + TI.getOpenCLFeatureDefines(LangOpts, Builder); +- +- if (TI.getTriple().isSPIR()) +- Builder.defineMacro("__IMAGE_SUPPORT__"); + } + + if (TI.hasInt128Type() && LangOpts.CPlusPlus && LangOpts.GNUMode) { +diff --git a/clang/test/Preprocessor/predefined-macros.c b/clang/test/Preprocessor/predefined-macros.c +index e406b9a70570..88606518c7de 100644 +--- a/clang/test/Preprocessor/predefined-macros.c ++++ b/clang/test/Preprocessor/predefined-macros.c +@@ -188,14 +188,12 @@ + + // RUN: %clang_cc1 %s -E -dM -o - -x cl -triple spir-unknown-unknown \ + // RUN: | FileCheck -match-full-lines %s --check-prefix=CHECK-SPIR +-// CHECK-SPIR-DAG: #define __IMAGE_SUPPORT__ 1 + // CHECK-SPIR-DAG: #define __SPIR__ 1 + // CHECK-SPIR-DAG: #define __SPIR32__ 1 + // CHECK-SPIR-NOT: #define __SPIR64__ 1 + + // RUN: %clang_cc1 %s -E -dM -o - -x cl -triple spir64-unknown-unknown \ + // RUN: | FileCheck -match-full-lines %s --check-prefix=CHECK-SPIR64 +-// CHECK-SPIR64-DAG: #define __IMAGE_SUPPORT__ 1 + // CHECK-SPIR64-DAG: #define __SPIR__ 1 + // CHECK-SPIR64-DAG: #define __SPIR64__ 1 + // CHECK-SPIR64-NOT: #define __SPIR32__ 1 +-- +2.17.1 + diff --git a/dynamic-layers/clang-layer/recipes-devtools/clang/llvm-project-source.bbappend b/dynamic-layers/clang-layer/recipes-devtools/clang/llvm-project-source.bbappend index 4e2bc535..20bdecfe 100644 --- a/dynamic-layers/clang-layer/recipes-devtools/clang/llvm-project-source.bbappend +++ b/dynamic-layers/clang-layer/recipes-devtools/clang/llvm-project-source.bbappend @@ -1,13 +1,11 @@ FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/files:" -SPIRV_BRANCH = "${@bb.utils.contains('LLVMVERSION', '10.0.1', 'llvm_release_100', 'llvm_release_110', d)}" - SPIRV10_SRCREV = "576abae62cecd171992017a4a786e3831221ab8d" SPIRV11_SRCREV = "2a8c1e6c9778deaa720a23e08c293006dc5d56fd" SPIRV_SRCREV = "${@bb.utils.contains('LLVMVERSION', '10.0.1', '${SPIRV10_SRCREV}', '${SPIRV11_SRCREV}', d)}" -SRC_URI_LLVM10 = " \ +SRC_URI_LLVM10_PATCHES = " \ file://llvm10-skip-building-tests.patch;patchdir=llvm/projects/llvm-spirv \ file://fix-shared-libs.patch;patchdir=llvm/projects/llvm-spirv \ file://BasicBlockUtils-Add-metadata-fixing-in-SplitBlockPre.patch;patchdir=llvm \ @@ -19,17 +17,25 @@ SRC_URI_LLVM10 = " \ file://0001-Fix-debug-info-of-work-item-builtin-translation-745.patch;patchdir=llvm/projects/llvm-spirv \ " -SRC_URI_LLVM11 = " \ +SRC_URI_LLVM11_PATCHES = " \ file://llvm11-skip-building-tests.patch;patchdir=llvm/projects/llvm-spirv \ file://llvm11-OpenCL-3.0-support.patch \ file://0001-Memory-leak-fix-for-Managed-Static-Mutex.patch \ file://llvm11-Remove-repo-name-in-LLVM-IR.patch \ " +SRC_URI_LLVM12_PATCHES = " \ + file://0001-Remove-__IMAGE_SUPPORT__-macro-for-SPIR.patch \ + " + + +SPIRV_LLVM10_SRC_URI = "git://github.com/KhronosGroup/SPIRV-LLVM-Translator.git;protocol=https;branch=llvm_release_100;destsuffix=git/llvm/projects/llvm-spirv;name=spirv" + +SPIRV_LLVM11_SRC_URI = "git://github.com/KhronosGroup/SPIRV-LLVM-Translator.git;protocol=https;branch=llvm_release_110;destsuffix=git/llvm/projects/llvm-spirv;name=spirv" -SPIRV_LLVM_SRC_URI = "git://github.com/KhronosGroup/SPIRV-LLVM-Translator.git;protocol=https;branch=${SPIRV_BRANCH};destsuffix=git/llvm/projects/llvm-spirv;name=spirv" -SPIRV_LLVM_PATCHES = "${@bb.utils.contains('LLVMVERSION', '10.0.1', '${SRC_URI_LLVM10}', '${SRC_URI_LLVM11}', d)}" +SRC_URI_append_intel-x86-common = "${@bb.utils.contains('LLVMVERSION', '10.0.1', ' ${SPIRV_LLVM10_SRC_URI} ${SRC_URI_LLVM10_PATCHES} ', '', d)}" +SRC_URI_append_intel-x86-common = "${@bb.utils.contains('LLVMVERSION', '11.1.0', ' ${SPIRV_LLVM11_SRC_URI} ${SRC_URI_LLVM11_PATCHES} ', '', d)}" +SRC_URI_append_intel-x86-common = "${@bb.utils.contains('LLVMVERSION', '12.0.0', ' ${SRC_URI_LLVM12_PATCHES} ', '', d)}" -SRC_URI_append_intel-x86-common = "${@bb.utils.contains('LLVMVERSION', '12.0.0', '', ' ${SPIRV_LLVM_SRC_URI} ${SPIRV_LLVM_PATCHES} ', d)}" -SRCREV_spirv = "${@bb.utils.contains('LLVMVERSION', '12.0.0', '', '${SPIRV_SRCREV}', d)}" +SRCREV_spirv = "${@bb.utils.contains_any('LLVMVERSION', [ '13.0.0', '12.0.0' ], '', '${SPIRV_SRCREV}', d)}" -- cgit v1.2.3-54-g00ecf