diff --git a/L/LLVM/LLVM_full@19/build_tarballs.jl b/L/LLVM/LLVM_full@19/build_tarballs.jl new file mode 100644 index 00000000000..9c56f2f1159 --- /dev/null +++ b/L/LLVM/LLVM_full@19/build_tarballs.jl @@ -0,0 +1,7 @@ +version = v"19.1.1" + +include("../common.jl") + +build_tarballs(ARGS, configure_build(ARGS, version; experimental_platforms=true)...; + preferred_gcc_version=v"10", preferred_llvm_version=v"18", julia_compat="1.6") +# Build trigger: 4 diff --git a/L/LLVM/LLVM_full@19/bundled/libcxx_patches/7005_libcxx_musl.patch b/L/LLVM/LLVM_full@19/bundled/libcxx_patches/7005_libcxx_musl.patch new file mode 100644 index 00000000000..a7a41be4765 --- /dev/null +++ b/L/LLVM/LLVM_full@19/bundled/libcxx_patches/7005_libcxx_musl.patch @@ -0,0 +1,22 @@ +diff --git a/include/locale b/include/locale +index 9e97eb9f3395..896dac226dd7 100644 +--- a/include/locale ++++ b/include/locale +@@ -716,7 +716,7 @@ __num_get_signed_integral(const char* __a, const char* __a_end, ios_base::iostat + __libcpp_remove_reference_t __save_errno = errno; + errno = 0; + char* __p2; +- long long __ll = strtoll_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE); ++ long long __ll = strtoll(__a, &__p2, __base); + __libcpp_remove_reference_t __current_errno = errno; + if (__current_errno == 0) + errno = __save_errno; +@@ -748,7 +748,7 @@ __num_get_unsigned_integral(const char* __a, const char* __a_end, ios_base::iost + __libcpp_remove_reference_t __save_errno = errno; + errno = 0; + char* __p2; +- unsigned long long __ll = strtoull_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE); ++ unsigned long long __ll = strtoull(__a, &__p2, __base); + __libcpp_remove_reference_t __current_errno = errno; + if (__current_errno == 0) + errno = __save_errno; diff --git a/L/LLVM/LLVM_full@19/bundled/patches/0050-unique_function_clang-sa.patch b/L/LLVM/LLVM_full@19/bundled/patches/0050-unique_function_clang-sa.patch new file mode 100644 index 00000000000..68bd11ef940 --- /dev/null +++ b/L/LLVM/LLVM_full@19/bundled/patches/0050-unique_function_clang-sa.patch @@ -0,0 +1,28 @@ +From 1fa6efaa946243004c45be92e66b324dc980df7d Mon Sep 17 00:00:00 2001 +From: Valentin Churavy +Date: Thu, 17 Sep 2020 23:22:45 +0200 +Subject: [PATCH] clang-sa can't determine that !RHS implies !LHS + +--- + llvm/include/llvm/ADT/FunctionExtras.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/llvm/include/llvm/ADT/FunctionExtras.h b/llvm/include/llvm/ADT/FunctionExtras.h +index 121aa527a5d..b9b6d829b14 100644 +--- a/llvm/include/llvm/ADT/FunctionExtras.h ++++ b/llvm/include/llvm/ADT/FunctionExtras.h +@@ -193,9 +193,11 @@ public: + // Copy the callback and inline flag. + CallbackAndInlineFlag = RHS.CallbackAndInlineFlag; + ++#ifndef __clang_analyzer__ + // If the RHS is empty, just copying the above is sufficient. + if (!RHS) + return; ++#endif + + if (!isInlineStorage()) { + // The out-of-line case is easiest to move. +-- +2.28.0 + diff --git a/L/LLVM/LLVM_full@19/bundled/patches/0100-llvm-12-musl-bb.patch b/L/LLVM/LLVM_full@19/bundled/patches/0100-llvm-12-musl-bb.patch new file mode 100644 index 00000000000..a523d77073f --- /dev/null +++ b/L/LLVM/LLVM_full@19/bundled/patches/0100-llvm-12-musl-bb.patch @@ -0,0 +1,37 @@ +From f1901de14ff1f1abcc729c4adccfbd5017e30357 Mon Sep 17 00:00:00 2001 +From: Valentin Churavy +Date: Fri, 7 May 2021 13:54:41 -0400 +Subject: [PATCH] [Compiler-RT] Fix compilation on musl + +--- + compiler-rt/lib/fuzzer/FuzzerInterceptors.cpp | 1 + + .../lib/sanitizer_common/sanitizer_platform_limits_posix.cpp | 1 - + 2 files changed, 1 insertion(+), 1 deletion(-) + +diff --git a/compiler-rt/lib/fuzzer/FuzzerInterceptors.cpp b/compiler-rt/lib/fuzzer/FuzzerInterceptors.cpp +index b87798603fda..452a08aafe0e 100644 +--- a/compiler-rt/lib/fuzzer/FuzzerInterceptors.cpp ++++ b/compiler-rt/lib/fuzzer/FuzzerInterceptors.cpp +@@ -27,6 +27,7 @@ + #include + #include // for size_t + #include ++#include + #include // for dlsym() + + static void *getFuncAddr(const char *name, uintptr_t wrapper_addr) { +diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 12dd39e674ac..bb0f7a2daa8c 100644 +--- a/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -69,7 +69,6 @@ + #include + #include + #include +-#include + #include + #include + #include +-- +2.31.1 + diff --git a/L/LLVM/LLVM_full@19/bundled/patches/0200-templates.patch b/L/LLVM/LLVM_full@19/bundled/patches/0200-templates.patch new file mode 100644 index 00000000000..c33b5f0dacb --- /dev/null +++ b/L/LLVM/LLVM_full@19/bundled/patches/0200-templates.patch @@ -0,0 +1,40 @@ +From ad520c15cc2dae3231c38cca916f93c8347c1bd9 Mon Sep 17 00:00:00 2001 +From: Valentin Churavy +Date: Tue, 8 Nov 2022 13:18:59 -0500 +Subject: [PATCH] handle template weirdness + +--- + lld/ELF/InputFiles.cpp | 2 +- + lld/ELF/SyntheticSections.cpp | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lld/ELF/InputFiles.cpp b/lld/ELF/InputFiles.cpp +index 6c7ef27cbd49..7dcf1cc5b877 100644 +--- a/lld/ELF/InputFiles.cpp ++++ b/lld/ELF/InputFiles.cpp +@@ -310,7 +310,7 @@ template static void doParseFile(InputFile *file) { + ctx.objectFiles.push_back(cast(file)); + cast>(file)->parse(); + } else if (auto *f = dyn_cast(file)) { +- f->parse(); ++ f->template parse(); + } else if (auto *f = dyn_cast(file)) { + ctx.bitcodeFiles.push_back(f); + f->parse(); + +diff --git a/lld/ELF/SyntheticSections.cpp b/lld/ELF/SyntheticSections.cpp +index b359c2e7bcea..812d38ca81de 100644 +--- a/lld/ELF/SyntheticSections.cpp ++++ b/lld/ELF/SyntheticSections.cpp +@@ -3360,7 +3360,7 @@ template void elf::splitSections() { + if (auto *s = dyn_cast(sec)) + s->splitIntoPieces(); + else if (auto *eh = dyn_cast(sec)) +- eh->split(); ++ eh->template split(); + } + }); + } +-- +2.38.1 + diff --git a/L/LLVM/LLVM_full@19/bundled/patches/0300-mingw-mlir-visibility-hidden.patch b/L/LLVM/LLVM_full@19/bundled/patches/0300-mingw-mlir-visibility-hidden.patch new file mode 100644 index 00000000000..c0e84cc661b --- /dev/null +++ b/L/LLVM/LLVM_full@19/bundled/patches/0300-mingw-mlir-visibility-hidden.patch @@ -0,0 +1,17 @@ +diff --git a/mlir/CMakeLists.txt b/mlir/CMakeLists.txt +index c91e9cd93dc8..9260cdc1c83e 100644 +--- a/mlir/CMakeLists.txt ++++ b/mlir/CMakeLists.txt +@@ -17,6 +17,12 @@ endif() + include(GNUInstallDirs) + set(CMAKE_CXX_STANDARD 17) + ++if(MINGW OR CYGWIN) ++ set(CMAKE_VISIBILITY_INLINES_HIDDEN ON) ++ set(CMAKE_C_VISIBILITY_PRESET hidden) ++ set(CMAKE_CXX_VISIBILITY_PRESET hidden) ++endif() ++ + if(MLIR_STANDALONE_BUILD) + find_package(LLVM CONFIG REQUIRED) + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR}) diff --git a/L/LLVM/LLVM_full@19/bundled/patches/0400-MLIR-Disable-tblgen-lsp-server-and-tblgen-to-irdl.patch b/L/LLVM/LLVM_full@19/bundled/patches/0400-MLIR-Disable-tblgen-lsp-server-and-tblgen-to-irdl.patch new file mode 100644 index 00000000000..cf21ca81e1f --- /dev/null +++ b/L/LLVM/LLVM_full@19/bundled/patches/0400-MLIR-Disable-tblgen-lsp-server-and-tblgen-to-irdl.patch @@ -0,0 +1,54 @@ +From f3d0b3b681d1e3955e08dc1adf26040094a6df70 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mos=C3=A8=20Giordano?= +Date: Fri, 3 May 2024 12:47:19 +0100 +Subject: [PATCH] [MLIR] Disable `tblgen-lsp-server` and `tblgen-to-irdl` + +--- + mlir/lib/Tools/CMakeLists.txt | 2 +- + mlir/test/CMakeLists.txt | 4 ++-- + mlir/tools/CMakeLists.txt | 4 ++-- + 3 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/mlir/lib/Tools/CMakeLists.txt b/mlir/lib/Tools/CMakeLists.txt +index 01270fa4b0fc..7688c31bf26b 100644 +--- a/mlir/lib/Tools/CMakeLists.txt ++++ b/mlir/lib/Tools/CMakeLists.txt +@@ -8,4 +8,4 @@ add_subdirectory(mlir-tblgen) + add_subdirectory(mlir-translate) + add_subdirectory(PDLL) + add_subdirectory(Plugins) +-add_subdirectory(tblgen-lsp-server) ++# add_subdirectory(tblgen-lsp-server) +diff --git a/mlir/test/CMakeLists.txt b/mlir/test/CMakeLists.txt +index 6724dd4bdd1b..8566faa8a862 100644 +--- a/mlir/test/CMakeLists.txt ++++ b/mlir/test/CMakeLists.txt +@@ -108,8 +108,8 @@ set(MLIR_TEST_DEPENDS + mlir-reduce + mlir-tblgen + mlir-translate +- tblgen-lsp-server +- tblgen-to-irdl ++ # tblgen-lsp-server ++ # tblgen-to-irdl + ) + + set(MLIR_TEST_DEPENDS ${MLIR_TEST_DEPENDS} +diff --git a/mlir/tools/CMakeLists.txt b/mlir/tools/CMakeLists.txt +index 9b474385fdae..1206844f793c 100644 +--- a/mlir/tools/CMakeLists.txt ++++ b/mlir/tools/CMakeLists.txt +@@ -8,8 +8,8 @@ add_subdirectory(mlir-shlib) + add_subdirectory(mlir-spirv-cpu-runner) + add_subdirectory(mlir-translate) + add_subdirectory(mlir-vulkan-runner) +-add_subdirectory(tblgen-lsp-server) +-add_subdirectory(tblgen-to-irdl) ++# add_subdirectory(tblgen-lsp-server) ++# add_subdirectory(tblgen-to-irdl) + + # mlir-cpu-runner requires ExecutionEngine. + if(MLIR_ENABLE_EXECUTION_ENGINE) +-- +2.44.0 + diff --git a/L/LLVM/LLVM_full@19/bundled/patches/0704-no-codesign.patch b/L/LLVM/LLVM_full@19/bundled/patches/0704-no-codesign.patch new file mode 100644 index 00000000000..d4cfa982735 --- /dev/null +++ b/L/LLVM/LLVM_full@19/bundled/patches/0704-no-codesign.patch @@ -0,0 +1,25 @@ +From 811bde347d425929813cbf40620f497b924c2c45 Mon Sep 17 00:00:00 2001 +From: Valentin Churavy +Date: Tue, 8 Nov 2022 19:52:32 -0500 +Subject: [PATCH] no codesign + +--- + compiler-rt/cmake/Modules/AddCompilerRT.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake +index 298093462f80..34b9daf97400 100644 +--- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake ++++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake +@@ -413,7 +413,7 @@ function(add_compiler_rt_runtime name type) + + add_custom_command(TARGET ${libname} + POST_BUILD +- COMMAND codesign --sign - ${EXTRA_CODESIGN_ARGUMENTS} $ ++ # COMMAND codesign --sign - ${EXTRA_CODESIGN_ARGUMENTS} $ + WORKING_DIRECTORY ${COMPILER_RT_OUTPUT_LIBRARY_DIR} + COMMAND_EXPAND_LISTS + ) +-- +2.38.1 + diff --git a/L/LLVM/LLVM_full_assert@19/build_tarballs.jl b/L/LLVM/LLVM_full_assert@19/build_tarballs.jl new file mode 100644 index 00000000000..ce1d01aa30d --- /dev/null +++ b/L/LLVM/LLVM_full_assert@19/build_tarballs.jl @@ -0,0 +1,7 @@ +version = v"19.1.1" + +include("../common.jl") + +build_tarballs(ARGS, configure_build(ARGS, version; assert=true, experimental_platforms=true)...; + preferred_gcc_version=v"10", preferred_llvm_version=v"18", julia_compat="1.6") +# Build trigger: 5 diff --git a/L/LLVM/LLVM_full_assert@19/bundled b/L/LLVM/LLVM_full_assert@19/bundled new file mode 120000 index 00000000000..610418ab657 --- /dev/null +++ b/L/LLVM/LLVM_full_assert@19/bundled @@ -0,0 +1 @@ +../LLVM_full@19/bundled \ No newline at end of file diff --git a/L/LLVM/common.jl b/L/LLVM/common.jl index 833eacefe62..2513bd1abde 100644 --- a/L/LLVM/common.jl +++ b/L/LLVM/common.jl @@ -20,6 +20,7 @@ const llvm_tags = Dict( v"16.0.6" => "499f87882a4ba1837ec12a280478cf4cb0d2753d", # julia-16.0.6-2 v"17.0.6" => "0007e48608221f440dce2ea0d3e4f561fc10d3c6", # julia-17.0.6-5 v"18.1.7" => "ed30d043a240d06bb6e010a41086e75713156f4f", # julia-18.1.7-2 + v"19.1.1" => "dae03206c1f4dcf812ff27e2860358ccb933856c", # julia-19.1.1-0 ) const buildscript = raw""" @@ -140,6 +141,9 @@ fi if [[ "${LLVM_MAJ_VER}" -gt "14" ]]; then ninja -j${nproc} clang-tidy-confusable-chars-gen clang-pseudo-gen mlir-pdll fi +if [[ "${LLVM_MAJ_VER}" -ge "19" ]]; then + ninja -j${nproc} mlir-src-sharder +fi popd # Let's do the actual build within the `build` subdirectory @@ -271,6 +275,9 @@ if [[ "${LLVM_MAJ_VER}" -gt "14" ]]; then CMAKE_FLAGS+=(-DCLANG_PSEUDO_GEN=${WORKSPACE}/bootstrap/bin/clang-pseudo-gen) CMAKE_FLAGS+=(-DMLIR_PDLL_TABLEGEN=${WORKSPACE}/bootstrap/bin/mlir-pdll) fi +if [[ "${LLVM_MAJ_VER}" -ge "19" ]]; then + CMAKE_FLAGS+=(-DLLVM_NATIVE_TOOL_DIR=${WORKSPACE}/bootstrap/bin) +fi # Explicitly use our cmake toolchain file # Windows runs out of symbols so use clang which can do some fancy things @@ -337,7 +344,7 @@ if [[ "${target}" == *apple* ]] || [[ "${target}" == *freebsd* ]]; then fi if [[ "${target}" == *mingw* ]]; then - CMAKE_CPP_FLAGS+=(-remap -D__USING_SJLJ_EXCEPTIONS__ -D__CRT__NO_INLINE -pthread -DMLIR_CAPI_ENABLE_WINDOWS_DLL_DECLSPEC) + CMAKE_CPP_FLAGS+=(-remap -D__USING_SJLJ_EXCEPTIONS__ -D__CRT__NO_INLINE -pthread -DMLIR_CAPI_ENABLE_WINDOWS_DLL_DECLSPEC -Dmlir_arm_sme_abi_stubs_EXPORTS) CMAKE_C_FLAGS+=(-pthread -DMLIR_CAPI_ENABLE_WINDOWS_DLL_DECLSPEC) CMAKE_FLAGS+=(-DCOMPILER_RT_BUILD_SANITIZERS=OFF) # Windows is case-insensitive and some dependencies take full advantage of that