From bdae07eceb51a038115f45a3aee2dd27323dd7b4 Mon Sep 17 00:00:00 2001 From: Naveen Saini Date: Thu, 8 Apr 2021 11:02:31 +0800 Subject: llvm-project-source: backport OpenCL recommended patches Updating SPIRV-LLVM-Translator srcrev to latest commits for * llvm_releae_100 * llvm_release_110 Backport opencl-clang recommended llvm/clang patches. llvm-10: https://github.com/intel/opencl-clang/tree/ocl-open-100/patches llvm-11: https://github.com/intel/opencl-clang/tree/ocl-open-110/patches Signed-off-by: Naveen Saini Signed-off-by: Anuj Mittal --- ...-Memory-leak-fix-for-Managed-Static-Mutex.patch | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Memory-leak-fix-for-Managed-Static-Mutex.patch (limited to 'dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Memory-leak-fix-for-Managed-Static-Mutex.patch') diff --git a/dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Memory-leak-fix-for-Managed-Static-Mutex.patch b/dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Memory-leak-fix-for-Managed-Static-Mutex.patch new file mode 100644 index 00000000..103dad5e --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-devtools/clang/files/0001-Memory-leak-fix-for-Managed-Static-Mutex.patch @@ -0,0 +1,35 @@ +From c86c43b70e029b102543e8a85d269cbeb5c00279 Mon Sep 17 00:00:00 2001 +From: juanrod2 <> +Date: Tue, 22 Dec 2020 08:33:08 +0800 +Subject: [PATCH] Memory leak fix for Managed Static Mutex + +Upstream-Status: Backport [Taken from opencl-clang patches; https://github.com/intel/opencl-clang/blob/ocl-open-100/patches/llvm/0001-Memory-leak-fix-for-Managed-Static-Mutex.patch] + +Signed-off-by: Naveen Saini + +Cleaning a mutex inside ManagedStatic llvm class. +--- + llvm/lib/Support/ManagedStatic.cpp | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/llvm/lib/Support/ManagedStatic.cpp b/llvm/lib/Support/ManagedStatic.cpp +index 053493f72fb5..6571580ccecf 100644 +--- a/llvm/lib/Support/ManagedStatic.cpp ++++ b/llvm/lib/Support/ManagedStatic.cpp +@@ -76,8 +76,12 @@ void ManagedStaticBase::destroy() const { + + /// llvm_shutdown - Deallocate and destroy all ManagedStatic variables. + void llvm::llvm_shutdown() { +- std::lock_guard Lock(*getManagedStaticMutex()); ++ getManagedStaticMutex()->lock(); + + while (StaticList) + StaticList->destroy(); ++ ++ getManagedStaticMutex()->unlock(); ++ delete ManagedStaticMutex; ++ ManagedStaticMutex = nullptr; + } +-- +2.29.2 + -- cgit v1.2.3-54-g00ecf