diff --git a/debian/changelog b/debian/changelog index cd3f2878..fc885bbb 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,479 @@ -llvm-toolchain-17 (1:17.0.6-12~bpo12+pve1) proxmox-rust; urgency=medium +llvm-toolchain-18 (1:18.1.8-11) unstable; urgency=medium - * Rebuild for Debian Bookworm / Proxmox with t64 reverted + * Drop ocaml on armhf, ocamlopt disappeared making build ftbfs + * Drop extra space in changelog + * Sync spirv architectures with sid builds + * Fix x32 build failure due to orc library not being installed + * Add back LLVM_EXPERIMENTAL_TARGETS_TO_BUILD to PASSTHROUGH variables, to help m68k - -- Proxmox Support Team Tue, 28 May 2024 09:09:09 +0200 + -- Gianfranco Costamagna Mon, 09 Sep 2024 08:42:27 +0200 + +llvm-toolchain-18 (1:18.1.8-10) unstable; urgency=medium + + [ Matthias Klose ] + * ld.lld: When no package-metadata option is given, fall-back + to the envvar ELF_PACKAGE_METADATA. + + [ Emanuele Rocca ] + * Enable bolt on arm64, now supported upstream. + + [ Bo YU ] + * Backport two commits to fix riscv64 issue. (Closes: #1080435) + + -- Sylvestre Ledru Sat, 07 Sep 2024 23:08:26 +0200 + +llvm-toolchain-18 (1:18.1.8-9) unstable; urgency=medium + + [ Gianfranco Costamagna ] + * Mention in changelog also the SVE fixes from llvm-17 + * Drop mips D154390 patch, already upstream + + [ Sylvestre Ledru ] + * Really fix breaks/replaces (Closes: #1077587) + + -- Sylvestre Ledru Sat, 03 Aug 2024 20:07:17 +0200 + +llvm-toolchain-18 (1:18.1.8-8) unstable; urgency=medium + + [ Sylvestre Ledru ] + * Fix breaks/replaces (Closes: #1077587) + + [ Gianfranco Costamagna ] + * Merge llvm-toolchain-17 1:17.0.6-13 into llvm-18 branch + - Make SVE types available in device targets (Closes: #1076578) + + -- Sylvestre Ledru Tue, 30 Jul 2024 10:48:59 +0200 + +llvm-toolchain-18 (1:18.1.8-7) unstable; urgency=medium + + * Unbreak the cmake tools + + -- Sylvestre Ledru Sun, 28 Jul 2024 09:49:06 +0200 + +llvm-toolchain-18 (1:18.1.8-6) unstable; urgency=medium + + * Make libllvm multi arch ready again ... (Closes: #1076131) + * bring back spirv + + -- Sylvestre Ledru Fri, 26 Jul 2024 17:34:31 +0200 + +llvm-toolchain-18 (1:18.1.8-5) unstable; urgency=medium + + * Fix the broken Breaks/replaces for apt.llvm.org + Closes: https://github.com/llvm/llvm-project/issues/99502 + * Bring back libLLVM.so.18.1 as symlink library + (LP: #2073604) + * temporary disable spirv to unbreak the build + + [ John Paul Adrian Glaubitz ] + * Make regexp to grep for LLVM_DEFAULT_TARGET_TRIPLE less ambigious + + -- Sylvestre Ledru Wed, 24 Jul 2024 11:54:39 +0200 + +llvm-toolchain-18 (1:18.1.8-4) unstable; urgency=medium + + * fix the symlinks after LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF + Probably caused + https://github.com/llvm/llvm-project/issues/99017 + * Move back /usr/lib/llvm-18/lib/libLLVM-18.so.1 to libllvm18 (Closes: #1076469) + And add breaks/replaces to make sure the upgrade goes smoothly + + [ Matthias Klose ] + * Construct the --package-metadata option just from ELF_PACKAGE_METADATA. + + -- Sylvestre Ledru Tue, 16 Jul 2024 18:02:17 +0200 + +llvm-toolchain-18 (1:18.1.8-3) unstable; urgency=medium + + [ Sylvestre Ledru ] + * Revert LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON + 9ca35f30383d89e4fdd45d15e0eb82c832df4b8c + For causing https://github.com/llvm/llvm-project/issues/96210 + * Disable LLDB_BUILD_INTEL_PT on Ubuntu bionic + * Make libllvm co-installable again (Closes: #1076131) + + -- Sylvestre Ledru Mon, 15 Jul 2024 09:49:47 +0200 + +llvm-toolchain-18 (1:18.1.8-2) unstable; urgency=medium + + [ Matthias Klose ] + * Pass --package-metadata on distros with supporting linkers (starting + with Debian trixie and Ubuntu noble). + The package metadata is constructed from the environment variables + DEB_BUILD_OS_RELEASE_ID, DEB_SOURCE, DEB_VERSION and DEB_HOST_ARCH. + Setting NO_PKG_METADATA=1 disables the generation of the package metadata. + + [ Sylvestre Ledru ] + * Try to unbreak powerpc & sparc64 + + -- Sylvestre Ledru Sun, 07 Jul 2024 22:01:17 +0200 + +llvm-toolchain-17 (1:17.0.6-13) unstable; urgency=medium + + [ Emanuele Rocca ] + * Make SVE types available in device targets (Closes: #1076578) + + [ Matthias Klose ] + * Pass --package-metadata on distros with supporting linkers (starting + with Debian trixie and Ubuntu noble). + The package metadata is constructed from the environment variables + DEB_BUILD_OS_RELEASE_ID, DEB_SOURCE, DEB_VERSION and DEB_HOST_ARCH. + Setting NO_PKG_METADATA=1 disables the generation of the package metadata. + + -- Gianfranco Costamagna Tue, 30 Jul 2024 09:15:47 +0200 + +llvm-toolchain-18 (1:18.1.8-2~exp2) experimental; urgency=medium + + * Change the LLVM_HOST_TRIPLE option from i386-linux-gnu to + i386-pc-linux-gnu + and arm-linux-gnueabihf to arm-pc-linux-gnueabihf + Otherwise, it will fail with: + Cannot find builtins library for the target architecture + + -- Sylvestre Ledru Sun, 07 Jul 2024 00:38:27 +0200 + +llvm-toolchain-18 (1:18.1.8-2~exp1) experimental; urgency=medium + + [ Sylvestre Ledru ] + * Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR + to move the libraries into multi archi directories + * Bring back libLLVM to be installed in /usr/lib/llvm-18/lib/libLLVM-18.so + instead of /usr/lib/llvm-18/lib/libLLVM.so + Same for libclang (remove usr/lib/llvm-18/lib/libclang.so.1 + This should make the packages multiarch co installable again + (Closes: #1067699, #1067005) + (LP: #2063207) + * Introduce the new variable @DEB_HOST_MULTIARCH_LLVM@ in the build system + because the LLVM triple is different than Debian + x86_64-pc-linux-gnu instead of x86_64-linux-gnu + * autopkgtest: only run libllvmlibc test on supported archs + + [ John Paul Adrian Glaubitz ] + * Don't install Gold plugin on sparc64 + * Disable LLVM testsuite on x32 + * Install liborc_rt-x86_64.a on x32 + * Install hwasan_symbolize on x32 + + [ Norbert Lange ] + * build lldb with Intel PT support on x86, amd64 + + [ Aurelien Jarno ] + * Enable lldb on riscv64. + + [ Zixing Liu ] + * d/p/clang-record-gcc-switches-by-default.patch: add a patch to force clang + record gcc switches by default + + [ Gianfranco Costamagna ] + * Rename check-libcxxabi in check-cxxabi. + * Rename check-libcxx in check-cxx + * Drop removed check-sanitizer (Closes: #1073201) + + -- Sylvestre Ledru Mon, 01 Jul 2024 22:27:25 +0200 + +llvm-toolchain-18 (1:18.1.8-1) unstable; urgency=medium + + * New upstream release + + -- Sylvestre Ledru Fri, 21 Jun 2024 22:00:49 +0200 + +llvm-toolchain-18 (1:18.1.7-1) unstable; urgency=medium + + * New upstream release + + -- Sylvestre Ledru Fri, 14 Jun 2024 10:14:20 +0200 + +llvm-toolchain-18 (1:18.1.7~++20240605091817+7e6ece9b4f2d-1~exp1) UNRELEASED; urgency=medium + + * experimental New snapshot release + + -- Sylvestre Ledru Wed, 05 Jun 2024 09:18:34 +0200 + +llvm-toolchain-18 (1:18.1.6-1) unstable; urgency=medium + + * New upstream release + * Don't install gold on mips64el armel loong64 + * Unbreak autopkgtest + + -- Sylvestre Ledru Sun, 19 May 2024 09:27:44 +0200 + +llvm-toolchain-18 (1:18.1.5-3) unstable; urgency=medium + + * Do not try to install gold on riscv64 (Closes: #1070909) + Thanks to Aurelien Jarno for the fix + * Disable --as-needed on armel (Closes: #1070811) + + -- Sylvestre Ledru Sun, 12 May 2024 09:03:09 +0200 + +llvm-toolchain-18 (1:18.1.5-2) unstable; urgency=medium + + * Add oracular as supported release + + -- Gianfranco Costamagna Sat, 04 May 2024 07:32:59 +0200 + +llvm-toolchain-18 (1:18.1.5-1) unstable; urgency=medium + + * New upstream release + * Be explicit with what ships in llvm-18-linker-tools + to make sure we always ships gold. + Will avoid issues like: + https://github.com/llvm/llvm-project/issues/87553 + Might break the build on some Debian archs. + + -- Sylvestre Ledru Fri, 03 May 2024 11:18:56 +0200 + +llvm-toolchain-18 (1:18.1.5~++20240430100627+f341c76b9461-1~exp1) UNRELEASED; urgency=medium + + * experimental New snapshot release + + -- Sylvestre Ledru Tue, 30 Apr 2024 10:06:39 +0200 + +llvm-toolchain-18 (1:18.1.4-1) unstable; urgency=medium + + * New upstream release + + -- Sylvestre Ledru Thu, 18 Apr 2024 11:45:22 +0200 + +llvm-toolchain-18 (1:18.1.3-1) unstable; urgency=medium + + * New upstream release + * Only install mold when used + but disabled for now because of https://github.com/rui314/mold/issues/1224 + + -- Sylvestre Ledru Thu, 04 Apr 2024 07:57:13 +0200 + +llvm-toolchain-18 (1:18.1.2-1) unstable; urgency=medium + + [ Matthias Klose ] + * Build-depend on llvm-spirv-18 instead of llvm-spirv-17. + * Add a stage1 profile to disable curl, grpc and spirv. + * Build with --as-needed. + + [ Sylvestre Ledru ] + * New upstream release + * Build using mold as a linker + + -- Sylvestre Ledru Fri, 22 Mar 2024 21:24:08 +0100 + +llvm-toolchain-18 (1:18.1.1-1) unstable; urgency=medium + [ Matthias Klose ] + * Fix sanitizer build on 32bit time_t64 architectures. + * Enable compiler-rt runtime again for 32bit time_t64 architectures. + * Revert: mark profile and xray include files as optional on armel and armhf. + + [ Sylvestre Ledru ] + * Disable libc on bionic for apt.llvm.org + * Try to address a link issue with libclang-cpp.so.18 (GH: #83986) + + -- Sylvestre Ledru Fri, 08 Mar 2024 20:27:05 +0100 + +llvm-toolchain-18 (1:18.1.0-2) unstable; urgency=medium + + * Uncomment wrong removal of rm code from last upload. + - this should fix the current FTBFS + + -- Gianfranco Costamagna Wed, 06 Mar 2024 21:49:10 +0100 + +llvm-toolchain-18 (1:18.1.0-1) unstable; urgency=medium + + * New stable release + * Add a test to verify C++ modules tests + + -- Sylvestre Ledru Wed, 06 Mar 2024 11:29:56 +0100 + +llvm-toolchain-18 (1:18.1.0~rc4-2) unstable; urgency=medium + + [ Sylvestre Ledru ] + * Disable libllvmlibc-18-dev on armhf (Closes: #1065503) + * Adjust some symlinks with the rc4 changes + + [ Matthias Klose ] + * Make libclang-common-18-dev architecture dependent, mark profile and xray + include files as optional on armel and armhf. + + [ Gianfranco Costamagna ] + * Simplify rules file now that time64_t is default. + * Use mxgot on mips64el + * Disable tests on mips64el, they do timeout + + -- Sylvestre Ledru Wed, 06 Mar 2024 09:21:57 +0100 + +llvm-toolchain-18 (1:18.1.0~rc4-1) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * Install *clang_rt* on sparc and sparc64 + * Run chrpath for libclang on sparc and sparc64 + + [ Sylvestre Ledru ] + * New snapshot release + * add -DLIBCXX_INSTALL_MODULES=ON to install libc++ C++-20 modules + see https://discourse.llvm.org/t/libc-c-23-module-installation-support/77061/1 + * Add a new package libllvmlibc-18-dev to ship LLVM libc (experimental for now) + (amd64, arm64 and armhf) + + -- Sylvestre Ledru Wed, 28 Feb 2024 11:08:41 +0100 + +llvm-toolchain-18 (1:18.1.0~rc2-4) unstable; urgency=medium + + * Fix 32bit builds, exclude i386, don't build clang-rt there + * Revert gold linker on mips64el + * Disable stack protector on mips64el + + -- Gianfranco Costamagna Thu, 22 Feb 2024 17:58:05 +0100 + +llvm-toolchain-18 (1:18.1.0~rc2-3) unstable; urgency=medium + + * Add abi=+time64,+lfs only on 64bits system + + -- Sylvestre Ledru Sun, 11 Feb 2024 14:29:31 +0100 + +llvm-toolchain-18 (1:18.1.0~rc2-2) unstable; urgency=medium + + [ Gianfranco Costamagna ] + * Try gold linker on mips64el + * Add also lfs on top of time64, to fix FTBFS on 32bit + + [ Sylvestre Ledru ] + * add new symbols in libomp5 + + -- Gianfranco Costamagna Thu, 08 Feb 2024 16:38:35 +0100 + +llvm-toolchain-18 (1:18.1.0~rc2-1) unstable; urgency=medium + + * New snapshot release + + -- Sylvestre Ledru Wed, 07 Feb 2024 21:15:53 +0100 + +llvm-toolchain-18 (1:18.1.0~rc1-3) unstable; urgency=medium + + * Fix previus upload, time64 is effective only in one specific place of + rules file + * Fix some test using still clang-17 + * Switch testing to 18 line + * Fix an underlinking on qualify-clang.sh + + -- Gianfranco Costamagna Wed, 07 Feb 2024 15:05:08 +0100 + +llvm-toolchain-18 (1:18.1.0~rc1-2) unstable; urgency=medium + + [ Steve Langasek ] + * Use ABI time64 to avoid a transition for a new package + + -- Gianfranco Costamagna Mon, 05 Feb 2024 08:26:26 +0100 + +llvm-toolchain-18 (1:18.1.0~rc1-1) unstable; urgency=medium + + [ Samuel Thibault ] + * control: Avoid hello build-dep getting pulled in on buildds. + + [ Gianfranco Costamagna ] + * Fixup rc versioning, and go for sid + + [ Sylvestre Ledru ] + * hwasan_symbolize is now built also on i386 + + -- Gianfranco Costamagna Wed, 31 Jan 2024 10:36:07 +0100 + +llvm-toolchain-18 (1:18.1.0-rc1-1~exp1) experimental; urgency=medium + + * First RC + + -- Sylvestre Ledru Tue, 30 Jan 2024 09:01:06 +0100 + +llvm-toolchain-18 (1:18.1.0~++20240126095841+0991d3c7b53d-1~exp1) experimental; urgency=medium + + * Branching of 18 + note that it is normal that the versionning starts from 18.1 + See https://discourse.llvm.org/t/rfc-name-the-first-release-from-a-branch-n-1-0-instead-of-n-0-0/75384 + * refresh libomp5 symbol list + * For the usage of -DLIBCXXABI_USE_LLVM_UNWINDER=OFF when we don't build unwind + https://github.com/llvm/llvm-project/issues/77846 + * remove the unconditionnaly defined -DLIBUNWIND_USE_COMPILER_RT=ON + * Also pass -DLIBCXXABI_USE_LLVM_UNWINDER:BOOL=OFF to libcxx-wasm32-wasi builds + + -- Sylvestre Ledru Fri, 26 Jan 2024 09:44:56 +0100 + +llvm-toolchain-snapshot (1:18~++20231211102647+75193b192ad9-1~exp1) experimental; urgency=medium + + [ Matthias Klose ] + * Set the cpu defaults for the ARM32 architectures: + - armel: arm926ej-s. Addresses: #1056115. + - armhf: cortex-a8. + Thanks to Arnd Bergmann and Ard Biesheuvel for the fixes. + * Apply the proposed fix for D158491, build failure on mips64el, still + unreviewed upstream. Addresses: #1056116. + + [ Sylvestre Ledru ] + * New snapshot release + * Fix a libc++ conflicts (Closes: #1057899) + + -- Sylvestre Ledru Mon, 11 Dec 2023 10:26:59 +0100 + +llvm-toolchain-snapshot (1:18~++20231203063627+9f78edbd20ed-1~exp1) experimental; urgency=medium + + [ Sylvestre Ledru ] + * replace python3-recommonmark by myst-parser + to follow upstream change b7ff03206d668cd5a620a9d4e1b22ea112ed56e3 + And disable generation of the doc on old distro + * Ship tblgen-to-irdl as part of mlir-tools + * Rename lldb-vscode => lldb-dap + * Ship tblgen-to-irdl as part of mlir-tools + * Remove __tgt_rtl_deinit_plugin & __tgt_rtl_deinit_device symbols from + openmp https://github.com/llvm/llvm-project/pull/73557 + + [ Matthias Klose ] + * Limit the number of parallel processes based on the available memory + and the packages to be built (flang has some memory hogs). + * Also install liborc_rt*.a on ppc64 and ppc64el. + * Fix stripping build flags on Ubuntu/ppc64el. + * libclang1-18: Only encode the major version in the soname. See #1056126. + * Restore the patch for D148945, searching /usr/lib/llvm-18/lib by default. + Addresses: #1056580. + * Also use the free swap to determine the number of parallel processes. + * Set the cpu defaults for the ARM32 architectures: + - armel: arm9e. Closes: #1056115. + - armhf: cortex-a7. + + [ John Paul Adrian Glaubitz ] + * Don't install *clang_rt* on sparc and sparc64 + + -- Sylvestre Ledru Sun, 03 Dec 2023 18:38:51 +0100 + +llvm-toolchain-17 (1:17.0.3-1~exp1) experimental; urgency=medium + + [ Matthias Klose ] + * Consolidate the build flags for the wasm builds. + * Disable the clc and wasm builds when not building binary indep packages. + * Limit the parallel links to 2 on riscv64. + * d/rules: Be less noisy when building without grpc. + * Build-depend on libncurses-dev instead of libncurses5-dev. + * Use a stamps subdirectory for all build stamps. + * Factor-out the calls to dh_listpackages. + * d/rules/preconfigure: Print info about build environment. + + -- Matthias Klose Sun, 08 Oct 2023 08:10:51 +0200 + +llvm-toolchain-snapshot (1:18~++20230818040015+c931f2e6fd0c-1~exp2) UNRELEASED; urgency=medium + + [ John Paul Adrian Glaubitz ] + * Disable wasm support on powerpc and powerpcspe + * Remove powerpc from BINUTILS_GOLD_ARCHS again + + -- John Paul Adrian Glaubitz Wed, 30 Aug 2023 11:49:01 +0200 + +llvm-toolchain-snapshot (1:18~++20230818040015+c931f2e6fd0c-1~exp1) experimental; urgency=medium + + * snapshot is now 18 + * Remove llvm-remark-size-diff & llvm-tapi-diff from llvm-X.Y-dev + * Remove lldb-disable-swig-error.diff - no longer necessary + + -- Sylvestre Ledru Fri, 18 Aug 2023 16:00:36 +0200 + +llvm-toolchain-snapshot (1:18~++20230725115106+b6847edfc235-1~exp1) experimental; urgency=medium + + * snapshot is now 18 + + -- Sylvestre Ledru Tue, 25 Jul 2023 23:52:42 +0200 llvm-toolchain-17 (1:17.0.6-12) unstable; urgency=medium @@ -168,35 +639,6 @@ llvm-toolchain-17 (1:17.0.5-1) unstable; urgency=medium -- Sylvestre Ledru Tue, 14 Nov 2023 11:27:22 +0100 -llvm-toolchain-17 (1:17.0.4-1) unstable; urgency=medium - - [ Matthias Klose ] - * Limit the number of parallel processes based on the available memory - and the packages to be built (flang has some memory hogs). - - [ Sylvestre Ledru ] - * New supstream release - * Upload to unstable - - -- Sylvestre Ledru Tue, 31 Oct 2023 11:39:22 +0100 - -llvm-toolchain-17 (1:17.0.3-1~exp1) experimental; urgency=medium - - [ Matthias Klose ] - * Consolidate the build flags for the wasm builds. - * Disable the clc and wasm builds when not building binary indep packages. - * Limit the parallel links to 2 on riscv64. - * d/rules: Be less noisy when building without grpc. - * Build-depend on libncurses-dev instead of libncurses5-dev. - * Use a stamps subdirectory for all build stamps. - * Factor-out the calls to dh_listpackages. - * d/rules/preconfigure: Print info about build environment. - - [ Sylvestre Ledru ] - * New upstream release - - -- Sylvestre Ledru Tue, 17 Oct 2023 08:44:01 +0200 - llvm-toolchain-17 (1:17.0.2-1~exp1) experimental; urgency=medium * New upstream release diff --git a/debian/clang-tools-X.Y.install.in b/debian/clang-tools-X.Y.install.in index d69cd402..3b829b49 100644 --- a/debian/clang-tools-X.Y.install.in +++ b/debian/clang-tools-X.Y.install.in @@ -62,7 +62,7 @@ usr/lib/llvm-@LLVM_VERSION@/libexec/intercept-c++ usr/lib/llvm-@LLVM_VERSION@/libexec/intercept-cc # See compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake / HWASAN_SUPPORTED_ARCH -[amd64 arm64 riscv64] usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@/bin/hwasan_symbolize +[amd64 arm64 riscv64 i386 x32] usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@/bin/hwasan_symbolize clang/tools/scan-build-@LLVM_VERSION@ usr/share/clang/ clang/tools/scan-view-@LLVM_VERSION@ usr/share/clang/ diff --git a/debian/control b/debian/control index 7b4546b4..39e332b5 100644 --- a/debian/control +++ b/debian/control @@ -1,4 +1,4 @@ -Source: llvm-toolchain-17 +Source: llvm-toolchain-18 Section: devel Priority: optional Rules-Requires-Root: no @@ -13,46 +13,48 @@ Build-Depends: debhelper (>= 10.0), cmake, ninja-build, binutils-dev, libxml2-dev, libjsoncpp-dev, pkg-config, + libipt-dev [amd64 i386], lcov, procps, help2man, zlib1g-dev, libzstd-dev, - g++-multilib [amd64 i386 kfreebsd-amd64 mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32], - libjs-mathjax, python3-recommonmark, + g++-multilib [amd64 i386 kfreebsd-amd64 mips64 mips64el mipsel powerpc ppc64 sparc sparc64 x32], + libjs-mathjax, python3-myst-parser | python3-recommonmark, doxygen, - ocaml-base [amd64 arm64 armhf ppc64el riscv64 s390x] | ocaml-nox [amd64 arm64 armhf ppc64el riscv64 s390x], - ocaml-findlib [amd64 arm64 armhf ppc64el riscv64 s390x], - libctypes-ocaml-dev [amd64 arm64 armhf ppc64el riscv64 s390x], - dh-exec, dh-ocaml [amd64 arm64 armhf ppc64el riscv64 s390x], + ocaml-base [amd64 arm64 ppc64el riscv64 s390x] | ocaml-nox [amd64 arm64 ppc64el riscv64 s390x], + ocaml-findlib [amd64 arm64 ppc64el riscv64 s390x], + libctypes-ocaml-dev [amd64 arm64 ppc64el riscv64 s390x], + dh-exec, dh-ocaml [amd64 arm64 ppc64el riscv64 s390x], libpfm4-dev [linux-any], python3-setuptools, libz3-dev, -# llvm-spirv-17 [amd64 arm64 armel armhf i386 mips64el ppc64 ppc64el riscv64 s390x] | hello [!i386], - llvm-spirv-17 [amd64 arm64 armhf i386 ppc64 ppc64el riscv64 s390x] | hello, - spirv-tools [linux-any] | hello [!i386], +# "| hello" is for older buster/bionic distros without spirv support +# We need to keep the constraints coherent between the two alternatives, otherwise +# hello would get installed unexpectedly and prevent e.g. wasi-libc from getting pulled + llvm-spirv-18 [amd64 arm64 armhf i386 ppc64el mips64el riscv64 s390x ppc64 hurd-i386 loong64 sparc64 x32] | hello [amd64 arm64 armhf i386 ppc64el mips64el riscv64 s390x ppc64 hurd-i386 loong64 sparc64 x32] , + spirv-tools [linux-any] | hello [linux-any], wasi-libc | hello, libcurl4-openssl-dev | libcurl-dev , libgrpc++-dev [amd64 arm64 armel armhf mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x] , protobuf-compiler-grpc [amd64 arm64 armel armhf mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x] , libprotobuf-dev [amd64 arm64 armel armhf mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x] , protobuf-compiler [amd64 arm64 armel armhf mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x] , -# "| hello" is for older buster/bionic distros without spirv support Build-Conflicts: oprofile Standards-Version: 4.6.2 Homepage: https://www.llvm.org/ -Vcs-Git: https://salsa.debian.org/pkg-llvm-team/llvm-toolchain.git -b 17 -Vcs-Browser: https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/tree/17 +Vcs-Git: https://salsa.debian.org/pkg-llvm-team/llvm-toolchain.git -b 18 +Vcs-Browser: https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/tree/18 # ------------- clang ------------- -Package: clang-17 +Package: clang-18 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, ${dep:devlibs-objc}, - libllvm17 (= ${binary:Version}), - libclang-common-17-dev (= ${binary:Version}), - llvm-17-linker-tools (= ${binary:Version}), - libclang1-17 (= ${binary:Version}), libc6-dev, binutils + libllvm18 (= ${binary:Version}), + libclang-common-18-dev (= ${binary:Version}), + llvm-18-linker-tools (= ${binary:Version}), + libclang1-18 (= ${binary:Version}), libc6-dev, binutils Provides: c-compiler, objc-compiler, c++-compiler -Recommends: llvm-17-dev, python3 -# libomp-17-dev -Suggests: clang-17-doc, wasi-libc +Recommends: llvm-18-dev, python3 +# libomp-18-dev +Suggests: clang-18-doc, wasi-libc Description: C, C++ and Objective-C compiler Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the @@ -61,9 +63,9 @@ Description: C, C++ and Objective-C compiler Clang implements all of the ISO C++ 1998, 11, 14 and 17 standards and also provides most of the support of C++20. -Package: clang-tools-17 +Package: clang-tools-18 Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, clang-17 (= ${binary:Version}), +Depends: ${shlibs:Depends}, ${misc:Depends}, clang-18 (= ${binary:Version}), python3 Description: clang-based tools for C/C++ developments Clang project is a C, C++, Objective C and Objective C++ front-end @@ -75,10 +77,10 @@ Description: clang-based tools for C/C++ developments . This package contains some clang-based tools like scan-build, clang-cl, etc. -Package: clang-format-17 +Package: clang-format-18 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, python3, - libllvm17 (= ${binary:Version}) + libllvm18 (= ${binary:Version}) Description: Tool to format C/C++/Obj-C code Clang-format is both a library and a stand-alone tool with the goal of automatically reformatting C++ sources files according to configurable @@ -91,23 +93,23 @@ Description: Tool to format C/C++/Obj-C code . This package also provides vim and emacs plugins. -Package: clang-tidy-17 +Package: clang-tidy-18 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, python3, - libllvm17 (= ${binary:Version}), - libclang-common-17-dev (= ${binary:Version}), - clang-tools-17, python3-yaml + libllvm18 (= ${binary:Version}), + libclang-common-18-dev (= ${binary:Version}), + clang-tools-18, python3-yaml Description: clang-based C++ linter tool Provide an extensible framework for diagnosing and fixing typical programming errors, like style violations, interface misuse, or bugs that can be deduced via static analysis. clang-tidy is modular and provides a convenient interface for writing new checks. -Package: clangd-17 +Package: clangd-18 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, - libllvm17 (= ${binary:Version}), - libclang-common-17-dev (= ${binary:Version}), + libllvm18 (= ${binary:Version}), + libclang-common-18-dev (= ${binary:Version}), Description: Language server that provides IDE-like features to editors clangd understands your C++ code and adds smart features to your editor: - code completion @@ -118,7 +120,7 @@ Description: Language server that provides IDE-like features to editors clangd is a language server that implements the Language Server Protocol; it can work with many editors through a plugin. -Package: clang-17-doc +Package: clang-18-doc Architecture: all Multi-Arch: foreign Section: doc @@ -133,7 +135,8 @@ Description: C, C++ and Objective-C compiler - Documentation . This package contains the documentation. -Package: libclang1-17 +Package: libclang1-18 +Provides: ${t64:Provides} Section: libs Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} @@ -154,12 +157,12 @@ Description: C interface to the Clang library locations with elements within the AST, and other facilities that support Clang-based development tools. -Package: libclang-17-dev +Package: libclang-18-dev Architecture: any Section: libdevel Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, - ${dep:devlibs-objc}, libclang1-17 (= ${binary:Version}), - libclang-common-17-dev (= ${binary:Version}) + ${dep:devlibs-objc}, libclang1-18 (= ${binary:Version}), + libclang-common-18-dev (= ${binary:Version}) Description: Clang library - Development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the @@ -169,14 +172,14 @@ Description: Clang library - Development package provides most of the support of C++20. . This package contains the Clang headers to develop extensions over - libclang1-17. + libclang1-18. -Package: libclang-common-17-dev +Package: libclang-common-18-dev Architecture: any Multi-Arch: same Section: libdevel Depends: ${shlibs:Depends}, ${misc:Depends}, -Recommends: libclang-rt-17-dev (>= 1:16~++20230115053056+df5fc4504b86-1~exp1) +Recommends: libclang-rt-18-dev Description: Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the @@ -189,7 +192,7 @@ Description: Clang library - Common development package # ------------- compiler-rt ------------- -Package: libclang-rt-17-dev +Package: libclang-rt-18-dev Architecture: any Multi-Arch: same Section: libdevel @@ -205,7 +208,7 @@ Description: Compiler-rt - development package DataFlowSanitizer, etc * profile - Library which is used to collect coverage information. -Package: libclang-rt-17-dev-wasm32 +Package: libclang-rt-18-dev-wasm32 Architecture: all Multi-Arch: foreign Section: libdevel @@ -213,7 +216,7 @@ Depends: ${shlibs:Depends}, ${misc:Depends} Description: Compiler-rt - wasm32 builtins Provides the compiler-rt builtins for WebAssembly 32 bits -Package: libclang-rt-17-dev-wasm64 +Package: libclang-rt-18-dev-wasm64 Architecture: all Multi-Arch: foreign Section: libdevel @@ -223,7 +226,7 @@ Description: Compiler-rt - wasm64 builtins # ------------- polly ------------- -Package: libpolly-17-dev +Package: libpolly-18-dev Architecture: any Multi-Arch: same Section: libdevel @@ -234,10 +237,11 @@ Description: High-level loop and data-locality optimizer # ------------- clang libraries ------------- -Package: libclang-cpp17 +Package: libclang-cpp18 +Provides: ${t64:Provides} Section: libs Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm17 (= ${binary:Version}) +Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm18 (= ${binary:Version}) Pre-Depends: ${misc:Pre-Depends} Description: C++ interface to the Clang library Clang project is a C, C++, Objective C and Objective C++ front-end @@ -255,12 +259,12 @@ Description: C++ interface to the Clang library locations with elements within the AST, and other facilities that support Clang-based development tools. -Package: libclang-cpp17-dev +Package: libclang-cpp18-dev Architecture: any Section: libdevel Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, - libclang-cpp17 (= ${binary:Version}) -# Move of libclang-cpp.so into libclang-cpp17.dev + libclang-cpp18 (= ${binary:Version}) +# Move of libclang-cpp.so into libclang-cpp18.dev Description: C++ interface to the Clang library Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the @@ -281,10 +285,10 @@ Description: C++ interface to the Clang library linker at build time. -Package: libfuzzer-17-dev +Package: libfuzzer-18-dev Architecture: linux-any Section: libdevel -Depends: ${shlibs:Depends}, ${misc:Depends}, clang-17 (= ${binary:Version}) +Depends: ${shlibs:Depends}, ${misc:Depends}, clang-18 (= ${binary:Version}) Description: Library for coverage-guided fuzz testing LibFuzzer is a library for in-process, coverage-guided, evolutionary fuzzing of other libraries. @@ -302,10 +306,10 @@ Description: Library for coverage-guided fuzz testing instrumentation. -Package: python3-clang-17 +Package: python3-clang-18 Section: python Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, python3, libclang-17-dev +Depends: ${shlibs:Depends}, ${misc:Depends}, python3, libclang-18-dev Replaces: python-clang-x.y, Conflicts: python-clang-x.y Provides: python-clang-x.y @@ -319,7 +323,7 @@ Description: Clang Python Bindings . This binding package provides access to the Clang compiler and libraries. -Package: clang-17-examples +Package: clang-18-examples Architecture: all Multi-Arch: foreign Section: doc @@ -336,12 +340,15 @@ Description: Clang examples # ------------- LLVM ------------- -Package: libllvm17 +Package: libllvm18 +Provides: ${t64:Provides} Architecture: any Section: libs Depends: ${shlibs:Depends}, ${misc:Depends} Pre-Depends: ${misc:Pre-Depends} Multi-Arch: same +Breaks: llvm-18-dev (<< 1:18.1.8-8) +Replaces: llvm-18-dev (<< 1:18.1.8-8) Description: Modular compiler and toolchain technologies, runtime library LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other @@ -349,7 +356,7 @@ Description: Modular compiler and toolchain technologies, runtime library . This package contains the LLVM runtime library. -Package: llvm-17-linker-tools +Package: llvm-18-linker-tools Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: Modular compiler and toolchain technologies - Plugins @@ -359,13 +366,13 @@ Description: Modular compiler and toolchain technologies - Plugins . This package contains the LLVMgold and LLVMPolly linker plugins. -Package: llvm-17 +Package: llvm-18 Architecture: any -Suggests: llvm-17-doc -Depends: llvm-17-runtime (= ${binary:Version}), - llvm-17-linker-tools (= ${binary:Version}), +Suggests: llvm-18-doc +Depends: llvm-18-runtime (= ${binary:Version}), + llvm-18-linker-tools (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} -Recommends: llvm-17-dev +Recommends: llvm-18-dev Description: Modular compiler and toolchain technologies LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other @@ -389,7 +396,7 @@ Description: Modular compiler and toolchain technologies a young scheme front-end, and Java support is in development. LLVM can generate code for X96, SparcV10, PowerPC or many other architectures. -Package: llvm-17-runtime +Package: llvm-18-runtime Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Recommends: binfmt-support | systemd @@ -409,12 +416,14 @@ Description: Modular compiler and toolchain technologies, IR interpreter This package provides the minimal required to execute programs in LLVM format. -Package: llvm-17-dev +Package: llvm-18-dev Architecture: any Depends: ${shlibs:Depends}, libffi-dev, ${misc:Depends}, - llvm-17 (= ${binary:Version}), libllvm17 (= ${binary:Version}), libncurses-dev, - llvm-17-tools (= ${binary:Version}), libclang-cpp17 (= ${binary:Version}), + llvm-18 (= ${binary:Version}), libllvm18 (= ${binary:Version}), libncurses-dev, + llvm-18-tools (= ${binary:Version}), libclang-cpp18 (= ${binary:Version}), libz3-dev, libxml2-dev +Breaks: libllvm18 (<< 1:18.1.8-9) +Replaces: libllvm18 (<< 1:18.1.8-9) Description: Modular compiler and toolchain technologies, libraries and headers LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other @@ -431,7 +440,7 @@ Description: Modular compiler and toolchain technologies, libraries and headers This package provides the libraries and headers to develop applications using llvm. -Package: llvm-17-tools +Package: llvm-18-tools Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, python3, python3-pygments, python3-yaml, @@ -451,11 +460,11 @@ Description: Modular compiler and toolchain technologies, tools . This package provides tools for testing. -Package: libllvm-17-ocaml-dev +Package: libllvm-18-ocaml-dev Section: ocaml -Architecture: amd64 arm64 armhf ppc64el s390x riscv64 -Suggests: llvm-17-doc -Depends: ${shlibs:Depends}, ${misc:Depends}, ${ocaml:Depends}, llvm-17-dev (= ${binary:Version}) +Architecture: amd64 arm64 ppc64el s390x riscv64 +Suggests: llvm-18-doc +Depends: ${shlibs:Depends}, ${misc:Depends}, ${ocaml:Depends}, llvm-18-dev (= ${binary:Version}) Replaces: libllvm-x.y-ocaml-dev Conflicts: libllvm-x.y-ocaml-dev Provides: ${ocaml:Provides}, libllvm-x.y-ocaml-dev @@ -474,7 +483,7 @@ Description: Modular compiler and toolchain technologies, OCaml bindings . This package provides the OCaml bindings to develop applications using llvm. -Package: llvm-17-doc +Package: llvm-18-doc Section: doc Architecture: all Multi-Arch: foreign @@ -494,10 +503,10 @@ Description: Modular compiler and toolchain technologies, documentation . This package contains all documentation (extensive). -Package: llvm-17-examples +Package: llvm-18-examples Section: doc Architecture: all -Depends: ${misc:Depends}, llvm-17-dev (>= ${source:Version}), llvm-17-dev (<< ${source:Version}+c~) +Depends: ${misc:Depends}, llvm-18-dev (>= ${source:Version}), llvm-18-dev (<< ${source:Version}+c~) Description: Modular compiler and toolchain technologies, examples LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other @@ -517,20 +526,20 @@ Description: Modular compiler and toolchain technologies, examples # ------------- lld ------------- -Package: lld-17 +Package: lld-18 Architecture: amd64 arm64 armel armhf i386 mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32 riscv64 loong64 # ia64 hurd powerpc have been removed -Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm17 (= ${binary:Version}) +Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm18 (= ${binary:Version}) Pre-Depends: ${misc:Pre-Depends} Description: LLVM-based linker LLD is a new, high-performance linker. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project. -Package: liblld-17 +Package: liblld-18 Architecture: amd64 arm64 armel armhf i386 mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32 riscv64 loong64 # ia64 hurd powerpc have been removed -Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm17 (= ${binary:Version}) +Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm18 (= ${binary:Version}) Pre-Depends: ${misc:Pre-Depends} Section: libs Description: LLVM-based linker, library @@ -540,12 +549,12 @@ Description: LLVM-based linker, library . This package contains the LLD runtime library. -Package: liblld-17-dev +Package: liblld-18-dev Section: libdevel Architecture: amd64 arm64 armel armhf i386 mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32 riscv64 loong64 # ia64 hurd powerpc have been removed -Depends: ${shlibs:Depends}, ${misc:Depends}, lld-17 (= ${binary:Version}), - liblld-17 (= ${binary:Version}), libzstd-dev, zlib1g-dev +Depends: ${shlibs:Depends}, ${misc:Depends}, lld-18 (= ${binary:Version}), + liblld-18 (= ${binary:Version}), libzstd-dev, zlib1g-dev Pre-Depends: ${misc:Pre-Depends} Description: LLVM-based linker, header files LLD is a new, high-performance linker. It is built as a set of reusable @@ -557,21 +566,22 @@ Description: LLVM-based linker, header files # ------------- lldb ------------- -Package: lldb-17 -Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 -# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed -Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm17 (= ${binary:Version}), - python3-lldb-17 +Package: lldb-18 +Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 riscv64 +# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 mipsel mips64el have been removed +Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm18 (= ${binary:Version}), + python3-lldb-18 Pre-Depends: ${misc:Pre-Depends} Description: Next generation, high-performance debugger LLDB is a next generation, high-performance debugger. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project, such as the Clang expression parser and LLVM disassembler. -Package: liblldb-17 -Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 -# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed -Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm17 (= ${binary:Version}) +Package: liblldb-18 +Provides: ${t64:Provides} +Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 riscv64 +# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 mipsel mips64el have been removed +Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm18 (= ${binary:Version}) Pre-Depends: ${misc:Pre-Depends} Section: libs Description: Next generation, high-performance debugger, library @@ -581,11 +591,11 @@ Description: Next generation, high-performance debugger, library . This package contains the LLDB runtime library. -Package: python3-lldb-17 +Package: python3-lldb-18 Section: python -Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 -# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed -Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends}, liblldb-17 (= ${binary:Version}) +Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 riscv64 +# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 mipsel mips64el have been removed +Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends}, liblldb-18 (= ${binary:Version}) Conflicts: python3-lldb-x.y Replaces: python3-lldb-x.y Provides: python3-lldb-x.y @@ -597,11 +607,11 @@ Description: Next generation, high-performance debugger, python3 lib . This binding package provides access to lldb. -Package: liblldb-17-dev +Package: liblldb-18-dev Section: libdevel -Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 -# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed -Depends: ${shlibs:Depends}, ${misc:Depends}, lldb-17 (= ${binary:Version}) +Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 riscv64 +# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 mipsel mips64el have been removed +Depends: ${shlibs:Depends}, ${misc:Depends}, lldb-18 (= ${binary:Version}) Pre-Depends: ${misc:Pre-Depends} Description: Next generation, high-performance debugger, header files LLDB is a next generation, high-performance debugger. It is built as a set of @@ -615,12 +625,12 @@ Description: Next generation, high-performance debugger, header files # 44 because it was the first version in which openmp & libc++ have been # managed in llvm-defaults -Package: libomp-17-dev +Package: libomp-18-dev Section: libdevel Architecture: amd64 arm64 armhf i386 loong64 mips64el ppc64el ppc64 riscv64 -Depends: libomp5-17 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} -Suggests: libomp-17-doc -Breaks: libiomp-dev (<< 3.7-1), libomp-dev (<< 44) +Depends: libomp5-18 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} +Suggests: libomp-18-doc +Breaks: libiomp-dev (<< 3.7-1) Provides: libomp-x.y-dev Conflicts: libomp-x.y-dev Replaces: libomp-x.y-dev @@ -629,12 +639,11 @@ Description: LLVM OpenMP runtime - dev package linked against, and that manages the multiple threads in an OpenMP program while it is executing. -Package: libomp5-17 +Package: libomp5-18 Multi-Arch: same Architecture: amd64 arm64 armhf i386 loong64 mips64el ppc64el ppc64 riscv64 Depends: ${shlibs:Depends}, ${misc:Depends} -Breaks: libomp5 (<< 44) -Provides: libomp-x.y +Provides: ${t64:Provides}, libomp-x.y Conflicts: libomp-x.y Replaces: libomp-x.y Description: LLVM OpenMP runtime @@ -642,7 +651,7 @@ Description: LLVM OpenMP runtime linked against, and that manages the multiple threads in an OpenMP program while it is executing. -Package: libomp-17-doc +Package: libomp-18-doc Section: doc Architecture: all Multi-Arch: foreign @@ -658,15 +667,14 @@ Description: LLVM OpenMP runtime - Documentation # ------------- libcxx ------------- -Package: libc++1-17 +Package: libc++1-18 Section: libs Architecture: any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends} Suggests: clang -Breaks: libc++1 (<< 44) -Provides: libc++-x.y +Provides: ${t64:Provides}, libc++-x.y Conflicts: libc++-x.y Replaces: libc++-x.y Description: LLVM C++ Standard library @@ -682,17 +690,16 @@ Description: LLVM C++ Standard library as exception objects, rtti and memory allocation. * Extensive unit tests. -Package: libc++-17-dev +Package: libc++-18-dev Section: libdevel Architecture: any Multi-Arch: same -Depends: libc++1-17 (= ${binary:Version}), ${misc:Depends}, - libc++abi-17-dev (= ${binary:Version}), - libunwind-17-dev [amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64] -Breaks: libc++-dev (<< 44), libc++abi-17-dev (<< 1:17.0.6-2) +Depends: libc++1-18 (= ${binary:Version}), ${misc:Depends}, + libc++abi-18-dev (= ${binary:Version}), + libunwind-18-dev [amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64] Provides: libc++-x.y-dev Conflicts: libc++-x.y-dev -Replaces: libc++-x.y-dev, libc++abi-17-dev (<< 1:17.0.6-2) +Replaces: libc++-x.y-dev Description: LLVM C++ Standard library (development files) libc++ is another implementation of the C++ standard library . @@ -706,11 +713,11 @@ Description: LLVM C++ Standard library (development files) as exception objects, rtti and memory allocation. * Extensive unit tests. -Package: libc++-17-dev-wasm32 +Package: libc++-18-dev-wasm32 Section: libdevel Architecture: all Multi-Arch: foreign -Depends: wasi-libc, libc++abi-17-dev-wasm32, ${misc:Depends} +Depends: wasi-libc, libc++abi-18-dev-wasm32, ${misc:Depends} Provides: libc++-x.y-dev-wasm32 Conflicts: libc++-x.y-dev-wasm32 Replaces: libc++-x.y-dev-wasm32 @@ -731,14 +738,13 @@ Description: LLVM C++ Standard library (WASI) # ------------- libcxxabi ------------- -Package: libc++abi1-17 +Package: libc++abi1-18 Section: libs Architecture: any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends} -Breaks: libc++abi1 (<< 44) -Provides: libc++abi-x.y +Provides: ${t64:Provides}, libc++abi-x.y Conflicts: libc++abi-x.y Replaces: libc++abi-x.y Description: LLVM low level support for a standard C++ library @@ -750,11 +756,11 @@ Description: LLVM low level support for a standard C++ library * Correctness as defined by the C++ standards. * Provide a portable sublayer to ease the porting of libc++ -Package: libc++abi-17-dev +Package: libc++abi-18-dev Section: libdevel Architecture: any Multi-Arch: same -Depends: libc++abi1-17 (= ${binary:Version}), ${misc:Depends} +Depends: libc++abi1-18 (= ${binary:Version}), ${misc:Depends} Breaks: libc++abi-dev (<= 44) Provides: libc++abi-x.y-dev Conflicts: libc++abi-x.y-dev @@ -768,7 +774,7 @@ Description: LLVM low level support for a standard C++ library (development file * Correctness as defined by the C++ standards. * Provide a portable sublayer to ease the porting of libc++ -Package: libc++abi-17-dev-wasm32 +Package: libc++abi-18-dev-wasm32 Section: libdevel Architecture: all Multi-Arch: foreign @@ -789,14 +795,14 @@ Description: LLVM low level support for a standard C++ library (WASI) # ------------- libclc ------------- -Package: libclc-17 +Package: libclc-18 Section: libs Architecture: all Multi-Arch: foreign Depends: ${misc:Depends}, - libclc-17-dev (= ${binary:Version}), - libclang-common-17-dev, + libclc-18-dev (= ${binary:Version}), + libclang-common-18-dev, Breaks: libclc-amdgcn, libclc-ptx, libclc-r600 Provides: libclc-x.y Conflicts: libclc-x.y @@ -808,7 +814,7 @@ Description: OpenCL C language implementation - platform support This package contains support for the amdgcn (AMD GPU), PTX and r600 platforms. -Package: libclc-17-dev +Package: libclc-18-dev Section: libdevel Architecture: all Multi-Arch: foreign @@ -826,13 +832,13 @@ Description: OpenCL C language implementation - development files # ------------- libunwind ------------- -Package: libunwind-17 +Package: libunwind-18 Section: libs Architecture: amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64 Multi-Arch: same Depends: ${shlibs:Depends}, ${misc:Depends} -Provides: libunwind-x.y +Provides: ${t64:Provides}, libunwind-x.y Conflicts: libunwind-x.y Replaces: libunwind-x.y Description: production-quality unwinder @@ -843,13 +849,13 @@ Description: production-quality unwinder or to operate on another process (aka remote), but only the local path has been implemented. Remote unwinding remains as future work. -Package: libunwind-17-dev +Package: libunwind-18-dev Section: libdevel Architecture: amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64 Multi-Arch: same Depends: ${misc:Depends}, - libunwind-17 (= ${binary:Version}) + libunwind-18 (= ${binary:Version}) Provides: libunwind-dev, libunwind-x.y-dev Conflicts: libunwind-dev, libunwind-x.y-dev Replaces: libunwind-dev, libunwind-x.y-dev @@ -863,7 +869,7 @@ Description: production-quality unwinder # ------------- mlir ------------- -Package: mlir-17-tools +Package: mlir-18-tools Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: Multi-Level Intermediate Representation tools @@ -874,13 +880,13 @@ Description: Multi-Level Intermediate Representation tools . This package provides tools. -Package: libmlir-17 +Package: libmlir-18 Section: libs Architecture: any Multi-Arch: same Depends: ${shlibs:Depends}, ${misc:Depends} -Provides: libmlir-x.y +Provides: ${t64:Provides}, libmlir-x.y Conflicts: libmlir-x.y Replaces: libmlir-x.y Description: Multi-Level Intermediate Representation library @@ -890,13 +896,13 @@ Description: Multi-Level Intermediate Representation library specific compilers, and aid in connecting existing compilers together. -Package: libmlir-17-dev +Package: libmlir-18-dev Section: libdevel Architecture: any Multi-Arch: same Depends: ${misc:Depends}, - libmlir-17 (= ${binary:Version}) + libmlir-18 (= ${binary:Version}) Breaks: libmlir-dev Provides: libmlir-x.y-dev Conflicts: libmlir-x.y-dev @@ -910,19 +916,17 @@ Description: Multi-Level Intermediate Representation library # ------------- bolt ------------- -Package: bolt-17 -Architecture: amd64 -# Disable on arm64 because libbolt_rt_hugify.a isn't generated -Depends: ${shlibs:Depends}, ${misc:Depends}, libbolt-17-dev (= ${binary:Version}), +Package: bolt-18 +Architecture: amd64 arm64 +Depends: ${shlibs:Depends}, ${misc:Depends}, libbolt-18-dev (= ${binary:Version}), Pre-Depends: ${misc:Pre-Depends} Description: Post-link optimizer It achieves the improvements by optimizing application's code layout based on execution profile gathered by sampling profiler. -Package: libbolt-17-dev +Package: libbolt-18-dev Section: libdevel -Architecture: amd64 -#arm64 +Architecture: amd64 arm64 Depends: ${shlibs:Depends}, ${misc:Depends} Description: Post-link optimizer It achieves the improvements by optimizing application's code layout based on @@ -930,11 +934,11 @@ Description: Post-link optimizer # ------------- flang ------------- -Package: flang-17 +Package: flang-18 # no 32bit support # https://github.com/llvm/llvm-project/issues/59845 Architecture: amd64 arm64 mips64el ppc64el kfreebsd-amd64 ppc64 sparc64 riscv64 loong64 -Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, libflang-17-dev (= ${binary:Version}), +Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, libflang-18-dev (= ${binary:Version}), Provides: fortran-compiler, gfortran-mod-15 Description: Fortran compiler Ground-up implementation of a Fortran front end written in @@ -943,7 +947,7 @@ Description: Fortran compiler While it is capable of generating executables for a number of examples, some functionalities are still missing. -Package: libflang-17-dev +Package: libflang-18-dev Architecture: amd64 arm64 mips64el ppc64el kfreebsd-amd64 ppc64 sparc64 riscv64 loong64 Section: libdevel Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, @@ -955,3 +959,13 @@ Description: Flang library - Development package of examples, some functionalities are still missing. . This package contains the flang libraries and headers. + +# ------------- LLVM libc ------------- + +Package: libllvmlibc-18-dev +Section: libdevel +Architecture: amd64 arm64 +Description: LLVM C Library - dev package + Implementation of the C standard library targeting C17 and above. + . + This is an experimental project. Don't use in production. diff --git a/debian/control.in b/debian/control.in index 2e4b4610..b4cabfbf 100644 --- a/debian/control.in +++ b/debian/control.in @@ -13,26 +13,28 @@ Build-Depends: debhelper (>= 10.0), cmake, ninja-build, binutils-dev, libxml2-dev, libjsoncpp-dev, pkg-config, + libipt-dev [amd64 i386], lcov, procps, help2man, zlib1g-dev, libzstd-dev, - g++-multilib [amd64 i386 kfreebsd-amd64 mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32], - libjs-mathjax, python3-recommonmark, + g++-multilib [amd64 i386 kfreebsd-amd64 mips64 mips64el mipsel powerpc ppc64 sparc sparc64 x32], + libjs-mathjax, python3-myst-parser | python3-recommonmark, doxygen, - ocaml-base [amd64 arm64 armhf ppc64el riscv64 s390x] | ocaml-nox [amd64 arm64 armhf ppc64el riscv64 s390x], - ocaml-findlib [amd64 arm64 armhf ppc64el riscv64 s390x], - libctypes-ocaml-dev [amd64 arm64 armhf ppc64el riscv64 s390x], - dh-exec, dh-ocaml [amd64 arm64 armhf ppc64el riscv64 s390x], + ocaml-base [amd64 arm64 ppc64el riscv64 s390x] | ocaml-nox [amd64 arm64 ppc64el riscv64 s390x], + ocaml-findlib [amd64 arm64 ppc64el riscv64 s390x], + libctypes-ocaml-dev [amd64 arm64 ppc64el riscv64 s390x], + dh-exec, dh-ocaml [amd64 arm64 ppc64el riscv64 s390x], libpfm4-dev [linux-any], python3-setuptools, libz3-dev, -# llvm-spirv-17 [amd64 arm64 armel armhf i386 mips64el ppc64 ppc64el riscv64 s390x] | hello [!i386], - llvm-spirv-17 [amd64 arm64 armhf i386 ppc64 ppc64el riscv64 s390x] | hello, - spirv-tools [linux-any] | hello [!i386], +# "| hello" is for older buster/bionic distros without spirv support +# We need to keep the constraints coherent between the two alternatives, otherwise +# hello would get installed unexpectedly and prevent e.g. wasi-libc from getting pulled + llvm-spirv-18 [amd64 arm64 armhf i386 ppc64el mips64el riscv64 s390x ppc64 hurd-i386 loong64 sparc64 x32] | hello [amd64 arm64 armhf i386 ppc64el mips64el riscv64 s390x ppc64 hurd-i386 loong64 sparc64 x32] , + spirv-tools [linux-any] | hello [linux-any], wasi-libc | hello, libcurl4-openssl-dev | libcurl-dev , libgrpc++-dev [amd64 arm64 armel armhf mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x] , protobuf-compiler-grpc [amd64 arm64 armel armhf mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x] , libprotobuf-dev [amd64 arm64 armel armhf mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x] , protobuf-compiler [amd64 arm64 armel armhf mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x] , -# "| hello" is for older buster/bionic distros without spirv support Build-Conflicts: oprofile Standards-Version: 4.6.2 Homepage: https://www.llvm.org/ @@ -134,6 +136,7 @@ Description: C, C++ and Objective-C compiler - Documentation This package contains the documentation. Package: libclang1-@LLVM_VERSION@ +Provides: ${t64:Provides} Section: libs Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} @@ -176,7 +179,7 @@ Architecture: any Multi-Arch: same Section: libdevel Depends: ${shlibs:Depends}, ${misc:Depends}, -Recommends: libclang-rt-@LLVM_VERSION@-dev (>= 1:16~++20230115053056+df5fc4504b86-1~exp1) +Recommends: libclang-rt-@LLVM_VERSION@-dev Description: Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the @@ -235,6 +238,7 @@ Description: High-level loop and data-locality optimizer # ------------- clang libraries ------------- Package: libclang-cpp@LLVM_VERSION@ +Provides: ${t64:Provides} Section: libs Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm@LLVM_VERSION@ (= ${binary:Version}) @@ -337,11 +341,14 @@ Description: Clang examples # ------------- LLVM ------------- Package: libllvm@LLVM_VERSION@ +Provides: ${t64:Provides} Architecture: any Section: libs Depends: ${shlibs:Depends}, ${misc:Depends} Pre-Depends: ${misc:Pre-Depends} Multi-Arch: same +Breaks: llvm-@LLVM_VERSION@-dev (<< 1:18.1.8-8) +Replaces: llvm-@LLVM_VERSION@-dev (<< 1:18.1.8-8) Description: Modular compiler and toolchain technologies, runtime library LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other @@ -415,6 +422,8 @@ Depends: ${shlibs:Depends}, libffi-dev, ${misc:Depends}, llvm-@LLVM_VERSION@ (= ${binary:Version}), libllvm@LLVM_VERSION@ (= ${binary:Version}), libncurses-dev, llvm-@LLVM_VERSION@-tools (= ${binary:Version}), libclang-cpp@LLVM_VERSION@ (= ${binary:Version}), libz3-dev, libxml2-dev +Breaks: libllvm@LLVM_VERSION@ (<< 1:18.1.8-9) +Replaces: libllvm@LLVM_VERSION@ (<< 1:18.1.8-9) Description: Modular compiler and toolchain technologies, libraries and headers LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other @@ -453,7 +462,7 @@ Description: Modular compiler and toolchain technologies, tools Package: libllvm-@LLVM_VERSION@-ocaml-dev Section: ocaml -Architecture: amd64 arm64 armhf ppc64el s390x riscv64 +Architecture: amd64 arm64 ppc64el s390x riscv64 Suggests: llvm-@LLVM_VERSION@-doc Depends: ${shlibs:Depends}, ${misc:Depends}, ${ocaml:Depends}, llvm-@LLVM_VERSION@-dev (= ${binary:Version}) Replaces: libllvm-x.y-ocaml-dev @@ -558,8 +567,8 @@ Description: LLVM-based linker, header files # ------------- lldb ------------- Package: lldb-@LLVM_VERSION@ -Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 -# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed +Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 riscv64 +# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 mipsel mips64el have been removed Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm@LLVM_VERSION@ (= ${binary:Version}), python3-lldb-@LLVM_VERSION@ Pre-Depends: ${misc:Pre-Depends} @@ -569,8 +578,9 @@ Description: Next generation, high-performance debugger Project, such as the Clang expression parser and LLVM disassembler. Package: liblldb-@LLVM_VERSION@ -Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 -# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed +Provides: ${t64:Provides} +Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 riscv64 +# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 mipsel mips64el have been removed Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm@LLVM_VERSION@ (= ${binary:Version}) Pre-Depends: ${misc:Pre-Depends} Section: libs @@ -583,8 +593,8 @@ Description: Next generation, high-performance debugger, library Package: python3-lldb-@LLVM_VERSION@ Section: python -Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 -# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed +Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 riscv64 +# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 mipsel mips64el have been removed Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends}, liblldb-@LLVM_VERSION@ (= ${binary:Version}) Conflicts: python3-lldb-x.y Replaces: python3-lldb-x.y @@ -599,8 +609,8 @@ Description: Next generation, high-performance debugger, python3 lib Package: liblldb-@LLVM_VERSION@-dev Section: libdevel -Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 -# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed +Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64 riscv64 +# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 mipsel mips64el have been removed Depends: ${shlibs:Depends}, ${misc:Depends}, lldb-@LLVM_VERSION@ (= ${binary:Version}) Pre-Depends: ${misc:Pre-Depends} Description: Next generation, high-performance debugger, header files @@ -620,7 +630,7 @@ Section: libdevel Architecture: amd64 arm64 armhf i386 loong64 mips64el ppc64el ppc64 riscv64 Depends: libomp5-@LLVM_VERSION@ (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} Suggests: libomp-@LLVM_VERSION@-doc -Breaks: libiomp-dev (<< 3.7-1), libomp-dev (<< 44) +Breaks: libiomp-dev (<< 3.7-1) Provides: libomp-x.y-dev Conflicts: libomp-x.y-dev Replaces: libomp-x.y-dev @@ -633,8 +643,7 @@ Package: libomp5-@LLVM_VERSION@ Multi-Arch: same Architecture: amd64 arm64 armhf i386 loong64 mips64el ppc64el ppc64 riscv64 Depends: ${shlibs:Depends}, ${misc:Depends} -Breaks: libomp5 (<< 44) -Provides: libomp-x.y +Provides: ${t64:Provides}, libomp-x.y Conflicts: libomp-x.y Replaces: libomp-x.y Description: LLVM OpenMP runtime @@ -665,8 +674,7 @@ Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends} Suggests: clang -Breaks: libc++1 (<< 44) -Provides: libc++-x.y +Provides: ${t64:Provides}, libc++-x.y Conflicts: libc++-x.y Replaces: libc++-x.y Description: LLVM C++ Standard library @@ -689,10 +697,9 @@ Multi-Arch: same Depends: libc++1-@LLVM_VERSION@ (= ${binary:Version}), ${misc:Depends}, libc++abi-@LLVM_VERSION@-dev (= ${binary:Version}), libunwind-@LLVM_VERSION@-dev [amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64] -Breaks: libc++-dev (<< 44), libc++abi-@LLVM_VERSION@-dev (<< 1:17.0.6-2) Provides: libc++-x.y-dev Conflicts: libc++-x.y-dev -Replaces: libc++-x.y-dev, libc++abi-@LLVM_VERSION@-dev (<< 1:17.0.6-2) +Replaces: libc++-x.y-dev Description: LLVM C++ Standard library (development files) libc++ is another implementation of the C++ standard library . @@ -737,8 +744,7 @@ Architecture: any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends} -Breaks: libc++abi1 (<< 44) -Provides: libc++abi-x.y +Provides: ${t64:Provides}, libc++abi-x.y Conflicts: libc++abi-x.y Replaces: libc++abi-x.y Description: LLVM low level support for a standard C++ library @@ -832,7 +838,7 @@ Architecture: amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64 Multi-Arch: same Depends: ${shlibs:Depends}, ${misc:Depends} -Provides: libunwind-x.y +Provides: ${t64:Provides}, libunwind-x.y Conflicts: libunwind-x.y Replaces: libunwind-x.y Description: production-quality unwinder @@ -880,7 +886,7 @@ Architecture: any Multi-Arch: same Depends: ${shlibs:Depends}, ${misc:Depends} -Provides: libmlir-x.y +Provides: ${t64:Provides}, libmlir-x.y Conflicts: libmlir-x.y Replaces: libmlir-x.y Description: Multi-Level Intermediate Representation library @@ -911,8 +917,7 @@ Description: Multi-Level Intermediate Representation library # ------------- bolt ------------- Package: bolt-@LLVM_VERSION@ -Architecture: amd64 -# Disable on arm64 because libbolt_rt_hugify.a isn't generated +Architecture: amd64 arm64 Depends: ${shlibs:Depends}, ${misc:Depends}, libbolt-@LLVM_VERSION@-dev (= ${binary:Version}), Pre-Depends: ${misc:Pre-Depends} Description: Post-link optimizer @@ -921,8 +926,7 @@ Description: Post-link optimizer Package: libbolt-@LLVM_VERSION@-dev Section: libdevel -Architecture: amd64 -#arm64 +Architecture: amd64 arm64 Depends: ${shlibs:Depends}, ${misc:Depends} Description: Post-link optimizer It achieves the improvements by optimizing application's code layout based on @@ -955,3 +959,13 @@ Description: Flang library - Development package of examples, some functionalities are still missing. . This package contains the flang libraries and headers. + +# ------------- LLVM libc ------------- + +Package: libllvmlibc-@LLVM_VERSION@-dev +Section: libdevel +Architecture: amd64 arm64 +Description: LLVM C Library - dev package + Implementation of the C standard library targeting C17 and above. + . + This is an experimental project. Don't use in production. diff --git a/debian/libbolt-X.Y-dev.install.in b/debian/libbolt-X.Y-dev.install.in index 5e75263f..f4ce706d 100644 --- a/debian/libbolt-X.Y-dev.install.in +++ b/debian/libbolt-X.Y-dev.install.in @@ -1,4 +1,4 @@ #!/usr/bin/dh-exec -[amd64] /usr/lib/llvm-@LLVM_VERSION@/lib/libbolt_rt_hugify.a -[amd64] /usr/lib/llvm-@LLVM_VERSION@/lib/libbolt_rt_instr.a +[amd64 arm64] /usr/lib/llvm-@LLVM_VERSION@/lib/libbolt_rt_hugify.a +[amd64 arm64] /usr/lib/llvm-@LLVM_VERSION@/lib/libbolt_rt_instr.a diff --git a/debian/libc++-X.Y-dev.install.in b/debian/libc++-X.Y-dev.install.in index b3ac19c1..1a4d26ee 100644 --- a/debian/libc++-X.Y-dev.install.in +++ b/debian/libc++-X.Y-dev.install.in @@ -3,3 +3,9 @@ usr/lib/llvm-@LLVM_VERSION@/lib/libc++.a usr/lib/llvm-@LLVM_VERSION@/include/c++/ usr/lib/llvm-@LLVM_VERSION@/include/c++/v1/ usr/lib/llvm-@LLVM_VERSION@/lib/libc++experimental.a + +# C++ modules +usr/lib/llvm-@LLVM_VERSION@/lib/libc++.modules.json +usr/lib/llvm-@LLVM_VERSION@/share/libc++/v1/std.compat/*.inc +usr/lib/llvm-@LLVM_VERSION@/share/libc++/v1/*.cppm +usr/lib/llvm-@LLVM_VERSION@/share/libc++/v1/std/*.inc diff --git a/debian/libc++1-X.Y.links.in b/debian/libc++1-X.Y.links.in index 4d1955c5..a12b1707 100644 --- a/debian/libc++1-X.Y.links.in +++ b/debian/libc++1-X.Y.links.in @@ -1,2 +1,4 @@ usr/lib/llvm-@LLVM_VERSION@/lib/libc++.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++.so.1.0 +# when LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON: +#usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libc++.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++.so.1 diff --git a/debian/libc++abi1-X.Y.links.in b/debian/libc++abi1-X.Y.links.in index a57ef065..b054e34b 100644 --- a/debian/libc++abi1-X.Y.links.in +++ b/debian/libc++abi1-X.Y.links.in @@ -1,2 +1,4 @@ usr/lib/llvm-@LLVM_VERSION@/lib/libc++abi.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++abi.so.1.0 +# when LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON: +usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libc++abi.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++abi.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++abi.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++abi.so.1 diff --git a/debian/libclang-common-X.Y-dev.install.in b/debian/libclang-common-X.Y-dev.install.in index 89cfed01..b059a8ed 100644 --- a/debian/libclang-common-X.Y-dev.install.in +++ b/debian/libclang-common-X.Y-dev.install.in @@ -1,3 +1,5 @@ +#!/usr/bin/dh-exec + usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/include/*.h usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/include/module.modulemap usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/include/xray/ diff --git a/debian/libclang-cppX.Y.install.in b/debian/libclang-cppX.Y.install.in index b0d88e0e..88ea883a 100644 --- a/debian/libclang-cppX.Y.install.in +++ b/debian/libclang-cppX.Y.install.in @@ -1 +1 @@ -usr/lib/llvm-@LLVM_VERSION@/lib/libclang-cpp.so.@LLVM_VERSION@ +usr/lib/llvm-@LLVM_VERSION@/lib/libclang-cpp.so.@LLVM_VERSION@.1 diff --git a/debian/libclang-cppX.Y.links.in b/debian/libclang-cppX.Y.links.in index ee382f6d..e76b5b28 100644 --- a/debian/libclang-cppX.Y.links.in +++ b/debian/libclang-cppX.Y.links.in @@ -1 +1,2 @@ -usr/lib/llvm-@LLVM_VERSION@/lib/libclang-cpp.so.@LLVM_VERSION@ /usr/lib/@DEB_HOST_MULTIARCH@/libclang-cpp.so.@LLVM_VERSION@ +usr/lib/llvm-@LLVM_VERSION@/lib/libclang-cpp.so.@LLVM_VERSION@.1 /usr/lib/@DEB_HOST_MULTIARCH@/libclang-cpp.so.@LLVM_VERSION@ +usr/lib/llvm-@LLVM_VERSION@/lib/libclang-cpp.so.@LLVM_VERSION@.1 /usr/lib/@DEB_HOST_MULTIARCH@/libclang-cpp.so.@LLVM_VERSION@.1 diff --git a/debian/libclang-rt-X.Y-dev.install.in b/debian/libclang-rt-X.Y-dev.install.in index be3689b8..670f2c60 100644 --- a/debian/libclang-rt-X.Y-dev.install.in +++ b/debian/libclang-rt-X.Y-dev.install.in @@ -2,9 +2,9 @@ usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/share/*.txt usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/include/sanitizer/ -[!sparc !sparc64] usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/lib/*/*clang_rt* +usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/lib/*/*clang_rt* usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/README.txt usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/include/fuzzer/ usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/include/orc/c_api.h # See compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake / ALL_ORC_SUPPORTED_ARCH -[amd64 arm64 armhf armel] usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/lib/linux/liborc_rt* +[amd64 arm64 armhf armel i386 ppc64 ppc64el x32] usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION@*/lib/*/liborc_rt* diff --git a/debian/libclang1-X.Y.links.in b/debian/libclang1-X.Y.links.in index 5c1051d0..db39da7a 100644 --- a/debian/libclang1-X.Y.links.in +++ b/debian/libclang1-X.Y.links.in @@ -2,4 +2,3 @@ usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so.@LLVM_VERSION@ usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so.@LLVM_VERSION@ usr/lib/llvm-@LLVM_VERSION@/lib/libclang-@LLVM_VERSION@.so.@LLVM_VERSION@ usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so.@LLVM_VERSION@ usr/lib/llvm-@LLVM_VERSION@/lib/libclang-@LLVM_VERSION@.so.1 -usr/lib/llvm-@LLVM_VERSION@/lib/libclang-@LLVM_VERSION@.so.@LLVM_VERSION@ usr/lib/llvm-@LLVM_VERSION@/lib/libclang.so.1 diff --git a/debian/libclang1-X.Y.symbols.in b/debian/libclang1-X.Y.symbols.in index 2f07205d..bcf0dc83 100644 --- a/debian/libclang1-X.Y.symbols.in +++ b/debian/libclang1-X.Y.symbols.in @@ -1,7 +1,7 @@ libclang-@LLVM_VERSION@.so.@LLVM_VERSION@ libclang1-@LLVM_VERSION@ #MINVER# - (optional)LLVM_13@LLVM_13 1:15.0.7-3 - (optional)LLVM_16@LLVM_16 1:16.0.2-1 - (optional)LLVM_17@LLVM_17 1:17.0.1-1 + LLVM_13@LLVM_13 1:18 + LLVM_16@LLVM_16 1:18 + LLVM_17@LLVM_17 1:18 clang_BlockCommandComment_getArgText@LLVM_13 1:5.0~svn298832-1~ clang_BlockCommandComment_getCommandName@LLVM_13 1:5.0~svn298832-1~ clang_BlockCommandComment_getNumArgs@LLVM_13 1:5.0~svn298832-1~ diff --git a/debian/libllvmX.Y.install.in b/debian/libllvmX.Y.install.in index f8d968f8..80d9fdbf 100644 --- a/debian/libllvmX.Y.install.in +++ b/debian/libllvmX.Y.install.in @@ -1 +1,2 @@ -usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.@LLVM_VERSION@.1 diff --git a/debian/libllvmX.Y.links.in b/debian/libllvmX.Y.links.in index 067b0884..8a0572be 100644 --- a/debian/libllvmX.Y.links.in +++ b/debian/libllvmX.Y.links.in @@ -1,4 +1,8 @@ # Should be uncommented for @LLVM_VERSION@.1 and other # usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION_FULL@.so.1 +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM.so.@LLVM_VERSION@.1 + +# Should be in llvm-X.Y-dev but as it has been this way for a long time... +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so diff --git a/debian/libllvmlibc-X.Y-dev.install.in b/debian/libllvmlibc-X.Y-dev.install.in new file mode 100644 index 00000000..cd6c1add --- /dev/null +++ b/debian/libllvmlibc-X.Y-dev.install.in @@ -0,0 +1 @@ +usr/lib/llvm-@LLVM_VERSION@/lib/libllvmlibc.a diff --git a/debian/libomp5-X.Y.install.in b/debian/libomp5-X.Y.install.in index 8204faac..3657fa80 100644 --- a/debian/libomp5-X.Y.install.in +++ b/debian/libomp5-X.Y.install.in @@ -1,4 +1,4 @@ #!/usr/bin/dh-exec usr/lib/llvm-@LLVM_VERSION@/lib/libomp*.so.5 -[amd64 arm64 mips64el ppc64el ppc64 riscv64 loong64] usr/lib/llvm-@LLVM_VERSION@/lib/libomptarget*.so.@LLVM_VERSION@ +[amd64 arm64 mips64el ppc64el ppc64 riscv64 loong64] usr/lib/llvm-@LLVM_VERSION@/lib/libomptarget*.so.@LLVM_VERSION@.1 diff --git a/debian/libomp5-X.Y.symbols.in b/debian/libomp5-X.Y.symbols.in index d3ee61ae..6930ffc2 100644 --- a/debian/libomp5-X.Y.symbols.in +++ b/debian/libomp5-X.Y.symbols.in @@ -1,11 +1,11 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# - GOMP_1.0@GOMP_1.0 0.20131209 - GOMP_2.0@GOMP_2.0 0.20131209 - GOMP_3.0@GOMP_3.0 0.20131209 - GOMP_4.0@GOMP_4.0 0.20131209 - GOMP_4.5@GOMP_4.5 7 - GOMP_5.0.1@GOMP_5.0.1 14 - GOMP_5.0@GOMP_5.0 11 + GOMP_1.0@GOMP_1.0 18 + GOMP_2.0@GOMP_2.0 18 + GOMP_3.0@GOMP_3.0 18 + GOMP_4.0@GOMP_4.0 18 + GOMP_4.5@GOMP_4.5 18 + GOMP_5.0.1@GOMP_5.0.1 18 + GOMP_5.0@GOMP_5.0 18 GOMP_alloc@GOMP_5.0.1 14 GOMP_alloc@VERSION 14 GOMP_atomic_end@GOMP_1.0 0.20131209 @@ -262,14 +262,14 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# GOMP_teams_reg@VERSION 12 GOMP_workshare_task_reduction_unregister@GOMP_5.0 13 GOMP_workshare_task_reduction_unregister@VERSION 13 - OMP_1.0@OMP_1.0 0.20131209 - OMP_2.0@OMP_2.0 0.20131209 - OMP_3.0@OMP_3.0 0.20131209 - OMP_3.1@OMP_3.1 0.20131209 - OMP_4.0@OMP_4.0 0.20131209 - OMP_4.5@OMP_4.5 7 - OMP_5.0@OMP_5.0 13 - VERSION@VERSION 0.20130412 + OMP_1.0@OMP_1.0 18 + OMP_2.0@OMP_2.0 18 + OMP_3.0@OMP_3.0 18 + OMP_3.1@OMP_3.1 18 + OMP_4.0@OMP_4.0 18 + OMP_4.5@OMP_4.5 18 + OMP_5.0@OMP_5.0 18 + VERSION@VERSION 18 ___kmp_allocate@VERSION 0.20130412 ___kmp_free@VERSION 0.20130412 __kmp_acquire_drdpa_lock@VERSION 0.20130715 @@ -327,21 +327,6 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_cmplx10_sub_rev@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_cmplx10_swp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_cmplx10_wr@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_cmplx16_add@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_cmplx16_div@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_cmplx16_mul@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_rd@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_cmplx16_sub@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_swp@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_cmplx16_wr@VERSION 0.20130412 __kmpc_atomic_cmplx4_add@VERSION 0.20130412 __kmpc_atomic_cmplx4_add_cmplx8@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_cmplx4_add_cpt@VERSION 0.20130412 @@ -379,21 +364,15 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_end@VERSION 0.20130412 (arch=!ppc64 !ppc64el)__kmpc_atomic_fixed1_add@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed1_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_fixed1_add_fp@VERSION 0.20130412 __kmpc_atomic_fixed1_andb@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_andb_cpt@VERSION 0.20130412 __kmpc_atomic_fixed1_andl@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_andl_cpt@VERSION 0.20130412 __kmpc_atomic_fixed1_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1_div_cpt_rev_fp@VERSION 4.0 __kmpc_atomic_fixed1_div_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed1_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1_div_rev_fp@VERSION 4.0 __kmpc_atomic_fixed1_eqv@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_eqv_cpt@VERSION 0.20130412 __kmpc_atomic_fixed1_max@VERSION 0.20130412 @@ -402,9 +381,7 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_min_cpt@VERSION 0.20130412 __kmpc_atomic_fixed1_mul@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed1_mul_cpt_fp@VERSION 4.0 __kmpc_atomic_fixed1_mul_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_fixed1_mul_fp@VERSION 0.20130412 __kmpc_atomic_fixed1_neqv@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_neqv_cpt@VERSION 0.20130412 __kmpc_atomic_fixed1_orb@VERSION 0.20130412 @@ -422,53 +399,31 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1_shr_rev@VERSION 0.20130412 __kmpc_atomic_fixed1_sub@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1_sub_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed1_sub_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1_sub_rev_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1_swp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_wr@VERSION 0.20130412 __kmpc_atomic_fixed1_xor@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1_xor_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed1u_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !loong64)__kmpc_atomic_fixed1u_add_fp@VERSION 4.0 __kmpc_atomic_fixed1u_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1u_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1u_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1u_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1u_div_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed1u_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1u_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1u_div_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1u_mul_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)__kmpc_atomic_fixed1u_mul_fp@VERSION 4.0 __kmpc_atomic_fixed1u_shr@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed1u_shr_cpt@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1u_shr_cpt_rev@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed1u_shr_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1u_sub_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed1u_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)__kmpc_atomic_fixed1u_sub_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !arm64)__kmpc_atomic_fixed1u_sub_rev_fp@VERSION 5.0 __kmpc_atomic_fixed2_add@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed2_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_fixed2_add_fp@VERSION 0.20130412 __kmpc_atomic_fixed2_andb@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_andb_cpt@VERSION 0.20130412 __kmpc_atomic_fixed2_andl@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_andl_cpt@VERSION 0.20130412 __kmpc_atomic_fixed2_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2_div_cpt_rev_fp@VERSION 4.0 __kmpc_atomic_fixed2_div_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed2_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2_div_rev_fp@VERSION 4.0 __kmpc_atomic_fixed2_eqv@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_eqv_cpt@VERSION 0.20130412 __kmpc_atomic_fixed2_max@VERSION 0.20130412 @@ -477,9 +432,7 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_min_cpt@VERSION 0.20130412 __kmpc_atomic_fixed2_mul@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed2_mul_cpt_fp@VERSION 4.0 __kmpc_atomic_fixed2_mul_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_fixed2_mul_fp@VERSION 0.20130412 __kmpc_atomic_fixed2_neqv@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_neqv_cpt@VERSION 0.20130412 __kmpc_atomic_fixed2_orb@VERSION 0.20130412 @@ -497,53 +450,31 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2_shr_rev@VERSION 0.20130412 __kmpc_atomic_fixed2_sub@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2_sub_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed2_sub_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2_sub_rev_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2_swp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_wr@VERSION 0.20130412 __kmpc_atomic_fixed2_xor@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2_xor_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed2u_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !loong64)__kmpc_atomic_fixed2u_add_fp@VERSION 4.0 __kmpc_atomic_fixed2u_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2u_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2u_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2u_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2u_div_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed2u_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2u_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2u_div_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2u_mul_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)__kmpc_atomic_fixed2u_mul_fp@VERSION 4.0 __kmpc_atomic_fixed2u_shr@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed2u_shr_cpt@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2u_shr_cpt_rev@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed2u_shr_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2u_sub_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed2u_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)__kmpc_atomic_fixed2u_sub_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !arm64)__kmpc_atomic_fixed2u_sub_rev_fp@VERSION 5.0 __kmpc_atomic_fixed4_add@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed4_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_fixed4_add_fp@VERSION 0.20130412 __kmpc_atomic_fixed4_andb@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_andb_cpt@VERSION 0.20130412 __kmpc_atomic_fixed4_andl@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_andl_cpt@VERSION 0.20130412 __kmpc_atomic_fixed4_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4_div_cpt_rev_fp@VERSION 4.0 __kmpc_atomic_fixed4_div_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed4_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4_div_rev_fp@VERSION 4.0 __kmpc_atomic_fixed4_eqv@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_eqv_cpt@VERSION 0.20130412 __kmpc_atomic_fixed4_max@VERSION 0.20130412 @@ -552,9 +483,7 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_min_cpt@VERSION 0.20130412 __kmpc_atomic_fixed4_mul@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed4_mul_cpt_fp@VERSION 4.0 __kmpc_atomic_fixed4_mul_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_fixed4_mul_fp@VERSION 0.20130412 __kmpc_atomic_fixed4_neqv@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_neqv_cpt@VERSION 0.20130412 __kmpc_atomic_fixed4_orb@VERSION 0.20130412 @@ -572,53 +501,31 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4_shr_rev@VERSION 0.20130412 __kmpc_atomic_fixed4_sub@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4_sub_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed4_sub_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4_sub_rev_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4_swp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_wr@VERSION 0.20130412 __kmpc_atomic_fixed4_xor@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4_xor_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed4u_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !loong64)__kmpc_atomic_fixed4u_add_fp@VERSION 4.0 (arch=!ppc64 !ppc64el)__kmpc_atomic_fixed4u_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4u_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4u_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4u_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4u_div_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed4u_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4u_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4u_div_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4u_mul_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)__kmpc_atomic_fixed4u_mul_fp@VERSION 4.0 __kmpc_atomic_fixed4u_shr@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed4u_shr_cpt@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4u_shr_cpt_rev@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed4u_shr_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4u_sub_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed4u_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)__kmpc_atomic_fixed4u_sub_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !arm64)__kmpc_atomic_fixed4u_sub_rev_fp@VERSION 5.0 (arch=!ppc64 !ppc64el)__kmpc_atomic_fixed8_add@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed8_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_fixed8_add_fp@VERSION 0.20130412 __kmpc_atomic_fixed8_andb@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_andb_cpt@VERSION 0.20130412 __kmpc_atomic_fixed8_andl@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_andl_cpt@VERSION 0.20130412 __kmpc_atomic_fixed8_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8_div_cpt_rev_fp@VERSION 4.0 __kmpc_atomic_fixed8_div_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed8_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8_div_rev_fp@VERSION 4.0 __kmpc_atomic_fixed8_eqv@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_eqv_cpt@VERSION 0.20130412 __kmpc_atomic_fixed8_max@VERSION 0.20130412 @@ -627,9 +534,7 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_min_cpt@VERSION 0.20130412 __kmpc_atomic_fixed8_mul@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed8_mul_cpt_fp@VERSION 4.0 __kmpc_atomic_fixed8_mul_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_fixed8_mul_fp@VERSION 0.20130412 __kmpc_atomic_fixed8_neqv@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_neqv_cpt@VERSION 0.20130412 __kmpc_atomic_fixed8_orb@VERSION 0.20130412 @@ -647,150 +552,79 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8_shr_rev@VERSION 0.20130412 __kmpc_atomic_fixed8_sub@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8_sub_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed8_sub_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8_sub_rev_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8_swp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_wr@VERSION 0.20130412 __kmpc_atomic_fixed8_xor@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8_xor_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_fixed8u_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !loong64)__kmpc_atomic_fixed8u_add_fp@VERSION 4.0 __kmpc_atomic_fixed8u_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8u_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8u_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8u_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8u_div_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_fixed8u_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8u_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8u_div_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8u_mul_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)__kmpc_atomic_fixed8u_mul_fp@VERSION 4.0 __kmpc_atomic_fixed8u_shr@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_fixed8u_shr_cpt@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8u_shr_cpt_rev@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_fixed8u_shr_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8u_sub_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_fixed8u_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)__kmpc_atomic_fixed8u_sub_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !arm64)__kmpc_atomic_fixed8u_sub_rev_fp@VERSION 5.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_add@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float10_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float10_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_float10_add_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float10_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float10_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float10_div_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_float10_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float10_div_rev_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_max@VERSION 14 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float10_max_cpt@VERSION 14 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_min@VERSION 14 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float10_min_cpt@VERSION 14 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_mul@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float10_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float10_mul_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float10_mul_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float10_rd@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_sub@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float10_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float10_sub_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float10_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_float10_sub_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float10_sub_rev_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float10_swp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float10_wr@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float16_add@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float16_div@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float16_max@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_max_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float16_min@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_min_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float16_mul@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_rd@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float16_sub@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_swp@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float16_wr@VERSION 0.20130412 __kmpc_atomic_float4_add@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float4_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float4_add_cpt_fp@VERSION 4.0 (arch=!ppc64 !ppc64el)__kmpc_atomic_float4_add_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float4_add_fp@VERSION 0.20130412 __kmpc_atomic_float4_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float4_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float4_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float4_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float4_div_cpt_rev_fp@VERSION 4.0 __kmpc_atomic_float4_div_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_float4_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float4_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float4_div_rev_fp@VERSION 4.0 __kmpc_atomic_float4_max@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float4_max_cpt@VERSION 0.20130412 __kmpc_atomic_float4_min@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float4_min_cpt@VERSION 0.20130412 __kmpc_atomic_float4_mul@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float4_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float4_mul_cpt_fp@VERSION 4.0 __kmpc_atomic_float4_mul_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float4_mul_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float4_rd@VERSION 0.20130412 __kmpc_atomic_float4_sub@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float4_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float4_sub_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float4_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float4_sub_cpt_rev_fp@VERSION 4.0 __kmpc_atomic_float4_sub_float8@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_float4_sub_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float4_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float4_sub_rev_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float4_swp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float4_wr@VERSION 0.20130412 __kmpc_atomic_float8_add@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float8_add_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float8_add_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float8_add_fp@VERSION 0.20130412 __kmpc_atomic_float8_div@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float8_div_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float8_div_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float8_div_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float8_div_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_float8_div_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float8_div_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float8_div_rev_fp@VERSION 4.0 __kmpc_atomic_float8_max@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float8_max_cpt@VERSION 0.20130412 __kmpc_atomic_float8_min@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float8_min_cpt@VERSION 0.20130412 __kmpc_atomic_float8_mul@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float8_mul_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)__kmpc_atomic_float8_mul_cpt_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf !loong64)__kmpc_atomic_float8_mul_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float8_rd@VERSION 0.20130412 __kmpc_atomic_float8_sub@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float8_sub_cpt@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float8_sub_cpt_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float8_sub_cpt_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float8_sub_cpt_rev_fp@VERSION 4.0 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !armel !armhf)__kmpc_atomic_float8_sub_fp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float8_sub_rev@VERSION 0.20130412 -#MISSING: 7# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf)__kmpc_atomic_float8_sub_rev_fp@VERSION 4.0 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64 !loong64)__kmpc_atomic_float8_swp@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_float8_wr@VERSION 0.20130412 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !riscv64)__kmpc_atomic_start@VERSION 0.20130412 @@ -919,8 +753,11 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# __kmpc_set_default_allocator@VERSION 8 __kmpc_set_lock@VERSION 0.20130412 __kmpc_set_nest_lock@VERSION 0.20130412 + __kmpc_set_thread_limit@VERSION 18 __kmpc_single@VERSION 0.20130412 __kmpc_task_allow_completion_event@VERSION 9 + __kmpc_task_get_depnode@VERSION 18 + __kmpc_task_get_successors@VERSION 18 __kmpc_task_reduction_get_th_data@VERSION 5.0 __kmpc_task_reduction_init@VERSION 5.0 __kmpc_task_reduction_modifier_fini@VERSION 9 @@ -1028,7 +865,6 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# kmpc_set_stacksize@VERSION 0.20130412 kmpc_set_stacksize_s@VERSION 0.20130412 kmpc_unset_affinity_mask_proc@VERSION 0.20130412 -#MISSING: 14# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf !loong64)libomp_start_tool@VERSION 14 omp_aligned_alloc@VERSION 14 omp_aligned_calloc@VERSION 14 omp_alloc@VERSION 8 @@ -1306,7 +1142,6 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# omp_set_schedule_@VERSION 0.20130412 omp_set_teams_thread_limit@VERSION 13 omp_set_teams_thread_limit_@VERSION 13 -#MISSING: 8# (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !arm64 !armel !armhf !loong64)omp_state_info@VERSION 6.0 omp_test_lock@OMP_1.0 0.20131209 omp_test_lock@OMP_3.0 0.20131209 omp_test_lock@VERSION 0.20130412 @@ -1345,182 +1180,190 @@ libomp.so.5 libomp5-@LLVM_VERSION@ #MINVER# ompc_set_schedule@VERSION 0.20130412 ompt_libomp_connect@VERSION 17 (arch=!mips !mipsel !ppc64 !ppc64el !mips64 !mips64el !armel !armhf)ompt_start_tool@VERSION 6.0 -libomptarget.rtl.amdgpu.so.@LLVM_VERSION@ libomp5-@LLVM_VERSION@t64 #MINVER# - VERS1.0@VERS1.0 17 - __tgt_rtl_create_event@VERS1.0 17 - __tgt_rtl_data_alloc@VERS1.0 17 - __tgt_rtl_data_delete@VERS1.0 17 - __tgt_rtl_data_exchange@VERS1.0 17 - __tgt_rtl_data_exchange_async@VERS1.0 17 - __tgt_rtl_data_lock@VERS1.0 17 - __tgt_rtl_data_notify_mapped@VERS1.0 17 - __tgt_rtl_data_notify_unmapped@VERS1.0 17 - __tgt_rtl_data_retrieve@VERS1.0 17 - __tgt_rtl_data_retrieve_async@VERS1.0 17 - __tgt_rtl_data_submit@VERS1.0 17 - __tgt_rtl_data_submit_async@VERS1.0 17 - __tgt_rtl_data_unlock@VERS1.0 17 - __tgt_rtl_deinit_device@VERS1.0 17 - __tgt_rtl_deinit_plugin@VERS1.0 17 - __tgt_rtl_destroy_event@VERS1.0 17 - __tgt_rtl_init_async_info@VERS1.0 17 - __tgt_rtl_init_device@VERS1.0 17 - __tgt_rtl_init_device_info@VERS1.0 17 - __tgt_rtl_init_plugin@VERS1.0 17 - __tgt_rtl_init_requires@VERS1.0 17 - __tgt_rtl_is_data_exchangable@VERS1.0 17 - __tgt_rtl_is_valid_binary@VERS1.0 17 - __tgt_rtl_is_valid_binary_info@VERS1.0 17 - __tgt_rtl_launch_kernel@VERS1.0 17 - __tgt_rtl_load_binary@VERS1.0 17 - __tgt_rtl_number_of_devices@VERS1.0 17 - __tgt_rtl_print_device_info@VERS1.0 17 - __tgt_rtl_query_async@VERS1.0 17 - __tgt_rtl_record_event@VERS1.0 17 - __tgt_rtl_set_info_flag@VERS1.0 17 - __tgt_rtl_supports_empty_images@VERS1.0 17 - __tgt_rtl_sync_event@VERS1.0 17 - __tgt_rtl_synchronize@VERS1.0 17 - __tgt_rtl_wait_event@VERS1.0 17 -libomptarget.rtl.cuda.so.@LLVM_VERSION@ libomp5-@LLVM_VERSION@t64 #MINVER# - VERS1.0@VERS1.0 17 - __tgt_rtl_create_event@VERS1.0 17 - __tgt_rtl_data_alloc@VERS1.0 17 - __tgt_rtl_data_delete@VERS1.0 17 - __tgt_rtl_data_exchange@VERS1.0 17 - __tgt_rtl_data_exchange_async@VERS1.0 17 - __tgt_rtl_data_lock@VERS1.0 17 - __tgt_rtl_data_notify_mapped@VERS1.0 17 - __tgt_rtl_data_notify_unmapped@VERS1.0 17 - __tgt_rtl_data_retrieve@VERS1.0 17 - __tgt_rtl_data_retrieve_async@VERS1.0 17 - __tgt_rtl_data_submit@VERS1.0 17 - __tgt_rtl_data_submit_async@VERS1.0 17 - __tgt_rtl_data_unlock@VERS1.0 17 - __tgt_rtl_deinit_device@VERS1.0 17 - __tgt_rtl_deinit_plugin@VERS1.0 17 - __tgt_rtl_destroy_event@VERS1.0 17 - __tgt_rtl_init_async_info@VERS1.0 17 - __tgt_rtl_init_device@VERS1.0 17 - __tgt_rtl_init_device_info@VERS1.0 17 - __tgt_rtl_init_plugin@VERS1.0 17 - __tgt_rtl_init_requires@VERS1.0 17 - __tgt_rtl_is_data_exchangable@VERS1.0 17 - __tgt_rtl_is_valid_binary@VERS1.0 17 - __tgt_rtl_is_valid_binary_info@VERS1.0 17 - __tgt_rtl_launch_kernel@VERS1.0 17 - __tgt_rtl_load_binary@VERS1.0 17 - __tgt_rtl_number_of_devices@VERS1.0 17 - __tgt_rtl_print_device_info@VERS1.0 17 - __tgt_rtl_query_async@VERS1.0 17 - __tgt_rtl_record_event@VERS1.0 17 - __tgt_rtl_set_info_flag@VERS1.0 17 - __tgt_rtl_supports_empty_images@VERS1.0 17 - __tgt_rtl_sync_event@VERS1.0 17 - __tgt_rtl_synchronize@VERS1.0 17 - __tgt_rtl_wait_event@VERS1.0 17 -libomptarget.rtl.x86_64.so.@LLVM_VERSION@ libomp5-@LLVM_VERSION@t64 #MINVER# - VERS1.0@VERS1.0 17 - __tgt_rtl_create_event@VERS1.0 1:17.0.1-1 - __tgt_rtl_data_alloc@VERS1.0 17 - __tgt_rtl_data_delete@VERS1.0 17 - __tgt_rtl_data_exchange@VERS1.0 17 - __tgt_rtl_data_exchange_async@VERS1.0 17 - __tgt_rtl_data_lock@VERS1.0 17 - __tgt_rtl_data_notify_mapped@VERS1.0 17 - __tgt_rtl_data_notify_unmapped@VERS1.0 17 - __tgt_rtl_data_retrieve@VERS1.0 17 - __tgt_rtl_data_retrieve_async@VERS1.0 17 - __tgt_rtl_data_submit@VERS1.0 17 - __tgt_rtl_data_submit_async@VERS1.0 17 - __tgt_rtl_data_unlock@VERS1.0 17 - __tgt_rtl_deinit_device@VERS1.0 17 - __tgt_rtl_deinit_plugin@VERS1.0 17 - __tgt_rtl_destroy_event@VERS1.0 17 - __tgt_rtl_init_async_info@VERS1.0 17 - __tgt_rtl_init_device@VERS1.0 17 - __tgt_rtl_init_device_info@VERS1.0 17 - __tgt_rtl_init_plugin@VERS1.0 17 - __tgt_rtl_init_requires@VERS1.0 17 - __tgt_rtl_is_data_exchangable@VERS1.0 17 - __tgt_rtl_is_valid_binary@VERS1.0 17 - __tgt_rtl_is_valid_binary_info@VERS1.0 17 - __tgt_rtl_launch_kernel@VERS1.0 17 - __tgt_rtl_load_binary@VERS1.0 17 - __tgt_rtl_number_of_devices@VERS1.0 17 - __tgt_rtl_print_device_info@VERS1.0 17 - __tgt_rtl_query_async@VERS1.0 17 - __tgt_rtl_record_event@VERS1.0 17 - __tgt_rtl_set_info_flag@VERS1.0 17 - __tgt_rtl_supports_empty_images@VERS1.0 17 - __tgt_rtl_sync_event@VERS1.0 17 - __tgt_rtl_synchronize@VERS1.0 17 - __tgt_rtl_wait_event@VERS1.0 17 -libomptarget.so.@LLVM_VERSION@ libomp5-@LLVM_VERSION@t64 #MINVER# - VERS1.0@VERS1.0 17 - __kmpc_push_target_tripcount@VERS1.0 17 - __kmpc_push_target_tripcount_mapper@VERS1.0 17 - __tgt_init_all_rtls@VERS1.0 17 - __tgt_interop_destroy@VERS1.0 17 - __tgt_interop_init@VERS1.0 17 - __tgt_interop_use@VERS1.0 17 - __tgt_mapper_num_components@VERS1.0 17 - __tgt_print_device_info@VERS1.0 17 - __tgt_push_mapper_component@VERS1.0 17 - __tgt_register_lib@VERS1.0 17 - __tgt_register_requires@VERS1.0 17 - __tgt_set_info_flag@VERS1.0 17 - __tgt_target@VERS1.0 17 - __tgt_target_data_begin@VERS1.0 17 - __tgt_target_data_begin_mapper@VERS1.0 17 - __tgt_target_data_begin_nowait@VERS1.0 17 - __tgt_target_data_begin_nowait_mapper@VERS1.0 17 - __tgt_target_data_end@VERS1.0 17 - __tgt_target_data_end_mapper@VERS1.0 17 - __tgt_target_data_end_nowait@VERS1.0 17 - __tgt_target_data_end_nowait_mapper@VERS1.0 17 - __tgt_target_data_update@VERS1.0 17 - __tgt_target_data_update_mapper@VERS1.0 17 - __tgt_target_data_update_nowait@VERS1.0 17 - __tgt_target_data_update_nowait_mapper@VERS1.0 17 - __tgt_target_kernel@VERS1.0 17 - __tgt_target_kernel_nowait@VERS1.0 17 - __tgt_target_kernel_replay@VERS1.0 17 - __tgt_target_mapper@VERS1.0 17 - __tgt_target_nowait@VERS1.0 17 - __tgt_target_nowait_mapper@VERS1.0 17 - __tgt_target_nowait_query@VERS1.0 17 - __tgt_target_teams@VERS1.0 17 - __tgt_target_teams_mapper@VERS1.0 17 - __tgt_target_teams_nowait@VERS1.0 17 - __tgt_target_teams_nowait_mapper@VERS1.0 17 - __tgt_unregister_lib@VERS1.0 17 - llvm_omp_target_alloc_device@VERS1.0 17 - llvm_omp_target_alloc_host@VERS1.0 17 - llvm_omp_target_alloc_shared@VERS1.0 17 - llvm_omp_target_dynamic_shared_alloc@VERS1.0 17 - llvm_omp_target_free_device@VERS1.0 17 - llvm_omp_target_free_host@VERS1.0 17 - llvm_omp_target_free_shared@VERS1.0 17 - llvm_omp_target_lock_mem@VERS1.0 17 - llvm_omp_target_unlock_mem@VERS1.0 17 - omp_get_device_num@VERS1.0 17 - omp_get_initial_device@VERS1.0 17 - omp_get_interop_int@VERS1.0 17 - omp_get_interop_name@VERS1.0 17 - omp_get_interop_ptr@VERS1.0 17 - omp_get_interop_str@VERS1.0 17 - omp_get_interop_type_desc@VERS1.0 17 - omp_get_mapped_ptr@VERS1.0 17 - omp_get_num_devices@VERS1.0 17 - omp_target_alloc@VERS1.0 17 - omp_target_associate_ptr@VERS1.0 17 - omp_target_disassociate_ptr@VERS1.0 17 - omp_target_free@VERS1.0 17 - omp_target_is_present@VERS1.0 17 - omp_target_memcpy@VERS1.0 17 - omp_target_memcpy_async@VERS1.0 17 - omp_target_memcpy_rect@VERS1.0 17 - omp_target_memcpy_rect_async@VERS1.0 17 - ompt_libomptarget_connect@VERS1.0 17 - +libomptarget.rtl.amdgpu.so.@LLVM_VERSION@.1 libomp5-@LLVM_VERSION@ #MINVER# + VERS1.0@VERS1.0 18 + __tgt_rtl_create_event@VERS1.0 18 + __tgt_rtl_data_alloc@VERS1.0 18 + __tgt_rtl_data_delete@VERS1.0 18 + __tgt_rtl_data_exchange@VERS1.0 18 + __tgt_rtl_data_exchange_async@VERS1.0 18 + __tgt_rtl_data_lock@VERS1.0 18 + __tgt_rtl_data_notify_mapped@VERS1.0 18 + __tgt_rtl_data_notify_unmapped@VERS1.0 18 + __tgt_rtl_data_retrieve@VERS1.0 18 + __tgt_rtl_data_retrieve_async@VERS1.0 18 + __tgt_rtl_data_submit@VERS1.0 18 + __tgt_rtl_data_submit_async@VERS1.0 18 + __tgt_rtl_data_unlock@VERS1.0 18 + __tgt_rtl_destroy_event@VERS1.0 18 + __tgt_rtl_get_function@VERS1.0 18 + __tgt_rtl_get_global@VERS1.0 18 + __tgt_rtl_init_async_info@VERS1.0 18 + __tgt_rtl_init_device@VERS1.0 18 + __tgt_rtl_init_device_info@VERS1.0 18 + __tgt_rtl_init_plugin@VERS1.0 18 + __tgt_rtl_init_requires@VERS1.0 18 + __tgt_rtl_initialize_record_replay@VERS1.0 18 + __tgt_rtl_is_data_exchangable@VERS1.0 18 + __tgt_rtl_is_valid_binary@VERS1.0 18 + __tgt_rtl_launch_kernel@VERS1.0 18 + __tgt_rtl_load_binary@VERS1.0 18 + __tgt_rtl_number_of_devices@VERS1.0 18 + __tgt_rtl_print_device_info@VERS1.0 18 + __tgt_rtl_query_async@VERS1.0 18 + __tgt_rtl_record_event@VERS1.0 18 + __tgt_rtl_set_device_offset@VERS1.0 18 + __tgt_rtl_set_info_flag@VERS1.0 18 + __tgt_rtl_supports_empty_images@VERS1.0 18 + __tgt_rtl_sync_event@VERS1.0 18 + __tgt_rtl_synchronize@VERS1.0 18 + __tgt_rtl_use_auto_zero_copy@VERS1.0 18 + __tgt_rtl_wait_event@VERS1.0 18 +libomptarget.rtl.cuda.so.@LLVM_VERSION@.1 libomp5-@LLVM_VERSION@ #MINVER# + VERS1.0@VERS1.0 18 + __tgt_rtl_create_event@VERS1.0 18 + __tgt_rtl_data_alloc@VERS1.0 18 + __tgt_rtl_data_delete@VERS1.0 18 + __tgt_rtl_data_exchange@VERS1.0 18 + __tgt_rtl_data_exchange_async@VERS1.0 18 + __tgt_rtl_data_lock@VERS1.0 18 + __tgt_rtl_data_notify_mapped@VERS1.0 18 + __tgt_rtl_data_notify_unmapped@VERS1.0 18 + __tgt_rtl_data_retrieve@VERS1.0 18 + __tgt_rtl_data_retrieve_async@VERS1.0 18 + __tgt_rtl_data_submit@VERS1.0 18 + __tgt_rtl_data_submit_async@VERS1.0 18 + __tgt_rtl_data_unlock@VERS1.0 18 + __tgt_rtl_destroy_event@VERS1.0 18 + __tgt_rtl_get_function@VERS1.0 18 + __tgt_rtl_get_global@VERS1.0 18 + __tgt_rtl_init_async_info@VERS1.0 18 + __tgt_rtl_init_device@VERS1.0 18 + __tgt_rtl_init_device_info@VERS1.0 18 + __tgt_rtl_init_plugin@VERS1.0 18 + __tgt_rtl_init_requires@VERS1.0 18 + __tgt_rtl_initialize_record_replay@VERS1.0 18 + __tgt_rtl_is_data_exchangable@VERS1.0 18 + __tgt_rtl_is_valid_binary@VERS1.0 18 + __tgt_rtl_launch_kernel@VERS1.0 18 + __tgt_rtl_load_binary@VERS1.0 18 + __tgt_rtl_number_of_devices@VERS1.0 18 + __tgt_rtl_print_device_info@VERS1.0 18 + __tgt_rtl_query_async@VERS1.0 18 + __tgt_rtl_record_event@VERS1.0 18 + __tgt_rtl_set_device_offset@VERS1.0 18 + __tgt_rtl_set_info_flag@VERS1.0 18 + __tgt_rtl_supports_empty_images@VERS1.0 18 + __tgt_rtl_sync_event@VERS1.0 18 + __tgt_rtl_synchronize@VERS1.0 18 + __tgt_rtl_use_auto_zero_copy@VERS1.0 18 + __tgt_rtl_wait_event@VERS1.0 18 +libomptarget.rtl.x86_64.so.@LLVM_VERSION@.1 libomp5-@LLVM_VERSION@ #MINVER# + VERS1.0@VERS1.0 18 + __tgt_rtl_create_event@VERS1.0 18 + __tgt_rtl_data_alloc@VERS1.0 18 + __tgt_rtl_data_delete@VERS1.0 18 + __tgt_rtl_data_exchange@VERS1.0 18 + __tgt_rtl_data_exchange_async@VERS1.0 18 + __tgt_rtl_data_lock@VERS1.0 18 + __tgt_rtl_data_notify_mapped@VERS1.0 18 + __tgt_rtl_data_notify_unmapped@VERS1.0 18 + __tgt_rtl_data_retrieve@VERS1.0 18 + __tgt_rtl_data_retrieve_async@VERS1.0 18 + __tgt_rtl_data_submit@VERS1.0 18 + __tgt_rtl_data_submit_async@VERS1.0 18 + __tgt_rtl_data_unlock@VERS1.0 18 + __tgt_rtl_destroy_event@VERS1.0 18 + __tgt_rtl_get_function@VERS1.0 18 + __tgt_rtl_get_global@VERS1.0 18 + __tgt_rtl_init_async_info@VERS1.0 18 + __tgt_rtl_init_device@VERS1.0 18 + __tgt_rtl_init_device_info@VERS1.0 18 + __tgt_rtl_init_plugin@VERS1.0 18 + __tgt_rtl_init_requires@VERS1.0 18 + __tgt_rtl_initialize_record_replay@VERS1.0 18 + __tgt_rtl_is_data_exchangable@VERS1.0 18 + __tgt_rtl_is_valid_binary@VERS1.0 18 + __tgt_rtl_launch_kernel@VERS1.0 18 + __tgt_rtl_load_binary@VERS1.0 18 + __tgt_rtl_number_of_devices@VERS1.0 18 + __tgt_rtl_print_device_info@VERS1.0 18 + __tgt_rtl_query_async@VERS1.0 18 + __tgt_rtl_record_event@VERS1.0 18 + __tgt_rtl_set_device_offset@VERS1.0 18 + __tgt_rtl_set_info_flag@VERS1.0 18 + __tgt_rtl_supports_empty_images@VERS1.0 18 + __tgt_rtl_sync_event@VERS1.0 18 + __tgt_rtl_synchronize@VERS1.0 18 + __tgt_rtl_use_auto_zero_copy@VERS1.0 18 + __tgt_rtl_wait_event@VERS1.0 18 +libomptarget.so.@LLVM_VERSION@.1 libomp5-@LLVM_VERSION@ #MINVER# + VERS1.0@VERS1.0 18 + __kmpc_push_target_tripcount@VERS1.0 18 + __kmpc_push_target_tripcount_mapper@VERS1.0 18 + __tgt_activate_record_replay@VERS1.0 18 + __tgt_init_all_rtls@VERS1.0 18 + __tgt_interop_destroy@VERS1.0 18 + __tgt_interop_init@VERS1.0 18 + __tgt_interop_use@VERS1.0 18 + __tgt_mapper_num_components@VERS1.0 18 + __tgt_print_device_info@VERS1.0 18 + __tgt_push_mapper_component@VERS1.0 18 + __tgt_register_lib@VERS1.0 18 + __tgt_register_requires@VERS1.0 18 + __tgt_set_info_flag@VERS1.0 18 + __tgt_target@VERS1.0 18 + __tgt_target_data_begin@VERS1.0 18 + __tgt_target_data_begin_mapper@VERS1.0 18 + __tgt_target_data_begin_nowait@VERS1.0 18 + __tgt_target_data_begin_nowait_mapper@VERS1.0 18 + __tgt_target_data_end@VERS1.0 18 + __tgt_target_data_end_mapper@VERS1.0 18 + __tgt_target_data_end_nowait@VERS1.0 18 + __tgt_target_data_end_nowait_mapper@VERS1.0 18 + __tgt_target_data_update@VERS1.0 18 + __tgt_target_data_update_mapper@VERS1.0 18 + __tgt_target_data_update_nowait@VERS1.0 18 + __tgt_target_data_update_nowait_mapper@VERS1.0 18 + __tgt_target_kernel@VERS1.0 18 + __tgt_target_kernel_nowait@VERS1.0 18 + __tgt_target_kernel_replay@VERS1.0 18 + __tgt_target_mapper@VERS1.0 18 + __tgt_target_nowait@VERS1.0 18 + __tgt_target_nowait_mapper@VERS1.0 18 + __tgt_target_nowait_query@VERS1.0 18 + __tgt_target_teams@VERS1.0 18 + __tgt_target_teams_mapper@VERS1.0 18 + __tgt_target_teams_nowait@VERS1.0 18 + __tgt_target_teams_nowait_mapper@VERS1.0 18 + __tgt_unregister_lib@VERS1.0 18 + llvm_omp_target_alloc_device@VERS1.0 18 + llvm_omp_target_alloc_host@VERS1.0 18 + llvm_omp_target_alloc_shared@VERS1.0 18 + llvm_omp_target_dynamic_shared_alloc@VERS1.0 18 + llvm_omp_target_free_device@VERS1.0 18 + llvm_omp_target_free_host@VERS1.0 18 + llvm_omp_target_free_shared@VERS1.0 18 + llvm_omp_target_lock_mem@VERS1.0 18 + llvm_omp_target_unlock_mem@VERS1.0 18 + omp_get_device_num@VERS1.0 18 + omp_get_initial_device@VERS1.0 18 + omp_get_interop_int@VERS1.0 18 + omp_get_interop_name@VERS1.0 18 + omp_get_interop_ptr@VERS1.0 18 + omp_get_interop_str@VERS1.0 18 + omp_get_interop_type_desc@VERS1.0 18 + omp_get_mapped_ptr@VERS1.0 18 + omp_get_num_devices@VERS1.0 18 + omp_target_alloc@VERS1.0 18 + omp_target_associate_ptr@VERS1.0 18 + omp_target_disassociate_ptr@VERS1.0 18 + omp_target_free@VERS1.0 18 + omp_target_is_present@VERS1.0 18 + omp_target_memcpy@VERS1.0 18 + omp_target_memcpy_async@VERS1.0 18 + omp_target_memcpy_rect@VERS1.0 18 + omp_target_memcpy_rect_async@VERS1.0 18 + omp_target_memset@VERS1.0 18 + omp_target_memset_async@VERS1.0 18 + ompt_libomptarget_connect@VERS1.0 18 diff --git a/debian/libunwind-X.Y-dev.links.in b/debian/libunwind-X.Y-dev.links.in index d6d6103a..ea1b58ac 100644 --- a/debian/libunwind-X.Y-dev.links.in +++ b/debian/libunwind-X.Y-dev.links.in @@ -1,2 +1,5 @@ usr/lib/llvm-@LLVM_VERSION@/lib/libunwind.so /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so usr/lib/llvm-@LLVM_VERSION@/lib/libunwind.a /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.a +# when LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON: +#usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libunwind.so /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so +#usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libunwind.a /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.a diff --git a/debian/libunwind-X.Y.links.in b/debian/libunwind-X.Y.links.in index 2c8a964b..db1c89c3 100644 --- a/debian/libunwind-X.Y.links.in +++ b/debian/libunwind-X.Y.links.in @@ -1,2 +1,4 @@ usr/lib/llvm-@LLVM_VERSION@/lib/libunwind.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so.1.0 +# when LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON: +#usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libunwind.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so.1.0 usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so.1 diff --git a/debian/lldb-X.Y.install.in b/debian/lldb-X.Y.install.in index 118022f5..2a8b415e 100644 --- a/debian/lldb-X.Y.install.in +++ b/debian/lldb-X.Y.install.in @@ -5,5 +5,5 @@ usr/lib/llvm-@LLVM_VERSION@/bin/lldb-argdumper usr/bin/lldb-@LLVM_VERSION@* usr/bin/lldb-server-@LLVM_VERSION@* usr/bin/lldb-argdumper-@LLVM_VERSION@ -usr/bin/lldb-vscode-@LLVM_VERSION@ +usr/bin/lldb-dap-@LLVM_VERSION@ usr/bin/lldb-instr-@LLVM_VERSION@ diff --git a/debian/llvm-X.Y-dev.install.in b/debian/llvm-X.Y-dev.install.in index d5c7a3c2..1728cc90 100644 --- a/debian/llvm-X.Y-dev.install.in +++ b/debian/llvm-X.Y-dev.install.in @@ -2,8 +2,8 @@ usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM*.a #usr/lib/llvm-@LLVM_VERSION@/lib/libllvm*.a -usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM.so usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@*.so +usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@*.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLTO.so usr/lib/llvm-@LLVM_VERSION@/lib/libRemarks.* usr/lib/llvm-@LLVM_VERSION@/include/llvm/ usr/include/llvm-@LLVM_VERSION@/ diff --git a/debian/llvm-X.Y-dev.links.in b/debian/llvm-X.Y-dev.links.in index b3a2a2ae..a182df53 100644 --- a/debian/llvm-X.Y-dev.links.in +++ b/debian/llvm-X.Y-dev.links.in @@ -1,8 +1,4 @@ -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so.1 -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION_FULL@.so.1 -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION_FULL@.so -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION_FULL@.so.1 +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION_FULL@.so usr/include/llvm-c-@LLVM_VERSION@/llvm-c usr/lib/llvm-@LLVM_VERSION@/include/llvm-c usr/include/llvm-@LLVM_VERSION@/llvm usr/lib/llvm-@LLVM_VERSION@/include/llvm diff --git a/debian/llvm-X.Y-linker-tools.install.in b/debian/llvm-X.Y-linker-tools.install.in index 3aeaab5c..2f300a0d 100644 --- a/debian/llvm-X.Y-linker-tools.install.in +++ b/debian/llvm-X.Y-linker-tools.install.in @@ -1,4 +1,5 @@ #!/usr/bin/dh-exec -usr/lib/llvm-@LLVM_VERSION@/lib/libLTO.so.@LLVM_VERSION@ -[!powerpc !powerpcspe] usr/lib/llvm-@LLVM_VERSION@/lib/LLVM*.so +usr/lib/llvm-@LLVM_VERSION@/lib/libLTO.so.@LLVM_VERSION@.1 +[!powerpc !powerpcspe] usr/lib/llvm-@LLVM_VERSION@/lib/LLVMPolly.so +[!powerpc !powerpcspe !riscv64 !mips64el !armel !loong64 !sparc64] usr/lib/llvm-@LLVM_VERSION@/lib/LLVMgold.so diff --git a/debian/llvm-X.Y-linker-tools.links.in b/debian/llvm-X.Y-linker-tools.links.in index cbafb159..7a4a8d65 100644 --- a/debian/llvm-X.Y-linker-tools.links.in +++ b/debian/llvm-X.Y-linker-tools.links.in @@ -1,3 +1,3 @@ #!/usr/bin/dh-exec -[!powerpc !powerpcspe] usr/lib/llvm-@LLVM_VERSION@/lib/LLVMgold.so usr/lib/bfd-plugins/LLVMgold-@LLVM_VERSION@.so +[!powerpc !powerpcspe !riscv64] usr/lib/llvm-@LLVM_VERSION@/lib/LLVMgold.so usr/lib/bfd-plugins/LLVMgold-@LLVM_VERSION@.so diff --git a/debian/llvm-X.Y.install.in b/debian/llvm-X.Y.install.in index 98cc13e3..bf15d2e1 100644 --- a/debian/llvm-X.Y.install.in +++ b/debian/llvm-X.Y.install.in @@ -49,7 +49,6 @@ usr/lib/llvm-@LLVM_VERSION@/bin/llvm-split usr/lib/llvm-@LLVM_VERSION@/bin/llvm-stress usr/lib/llvm-@LLVM_VERSION@/bin/llvm-strings usr/lib/llvm-@LLVM_VERSION@/bin/llvm-symbolizer -usr/lib/llvm-@LLVM_VERSION@/bin/llvm-tapi-diff usr/lib/llvm-@LLVM_VERSION@/bin/llvm-tblgen usr/lib/llvm-@LLVM_VERSION@/bin/llvm-undname usr/lib/llvm-@LLVM_VERSION@/bin/llvm-xray @@ -79,9 +78,9 @@ usr/lib/llvm-@LLVM_VERSION@/bin/sanstats usr/lib/llvm-@LLVM_VERSION@/bin/dsymutil usr/lib/llvm-@LLVM_VERSION@/bin/llvm-debuginfod-find usr/lib/llvm-@LLVM_VERSION@/bin/llvm-debuginfod -usr/lib/llvm-@LLVM_VERSION@/bin/llvm-remark-size-diff usr/lib/llvm-@LLVM_VERSION@/bin/llvm-remarkutil usr/lib/llvm-@LLVM_VERSION@/bin/llvm-debuginfo-analyzer +usr/lib/llvm-@LLVM_VERSION@/bin/llvm-readtapi usr/bin/llvm-PerfectShuffle-@LLVM_VERSION@ usr/bin/llvm-addr2line-@LLVM_VERSION@ @@ -144,7 +143,7 @@ usr/bin/llvm-stress-@LLVM_VERSION@ usr/bin/llvm-strings-@LLVM_VERSION@ usr/bin/llvm-strip-@LLVM_VERSION@ usr/bin/llvm-symbolizer-@LLVM_VERSION@ -usr/bin/llvm-tapi-diff-@LLVM_VERSION@ +usr/bin/llvm-readtapi-@LLVM_VERSION@ usr/bin/llvm-tblgen-@LLVM_VERSION@ usr/bin/llvm-undname-@LLVM_VERSION@ usr/bin/llvm-windres-@LLVM_VERSION@ @@ -160,5 +159,4 @@ usr/bin/sanstats-* usr/bin/dsymutil-* usr/bin/llvm-debuginfod-find-* usr/bin/llvm-debuginfod-@LLVM_VERSION@ -usr/bin/llvm-remark-size-diff-* usr/bin/llvm-debuginfo-analyzer-@LLVM_VERSION@ diff --git a/debian/llvm-compile-lto-elf.sh b/debian/llvm-compile-lto-elf.sh index d0ae0ca3..63a19e29 100644 --- a/debian/llvm-compile-lto-elf.sh +++ b/debian/llvm-compile-lto-elf.sh @@ -25,18 +25,25 @@ NCPUS=$NJOBS check_convert_bitcode () { local file_name=$(realpath ${1}) local file_type=$(file ${file_name}) + shift CLANG_FLAGS="$@" if [[ "${file_type}" == *"LLVM IR bitcode"* ]]; then - # check for an indication that the bitcode was - # compiled with -flto - ${P_TO_LLVM}/debian/tmp/usr/bin/llvm-bcanalyzer-${VERSION} -dump ${file_name} | grep -xP '.*\-flto((?!-fno-lto).)*' 2>&1 > /dev/null - if [ $? -eq 0 ]; then - echo "Compiling LLVM bitcode file ${file_name}." - ${P_TO_LLVM}/debian/tmp/usr/bin/clang-${VERSION} -fno-lto -opaque-pointers -Wno-unused-command-line-argument \ - -x ir ${file_name} -c -o ${file_name} - fi + # Check the output of llvm-strings for the command line, which is in the LLVM bitcode because + # we pass -frecord-gcc-switches. + # Check for a line that has "-flto" after (or without) "-fno-lto". + llvm-strings ${file_name} | while read line ; do + flto=$(echo $line | grep -o -b -e -flto | tail -n 1 | cut -d : -f 1) + fnolto=$(echo $line | grep -o -b -e -fno-lto | tail -n 1 | cut -d : -f 1) + + if test -n "$flto" && { test -z "$fnolto" || test "$flto" -gt "$fnolto"; } ; then + echo "Compiling LLVM bitcode file ${file_name}." + clang ${CLANG_FLAGS} -fno-lto -Wno-unused-command-line-argument \ + -x ir ${file_name} -c -o ${file_name} + break + fi + done elif [[ "${file_type}" == *"current ar archive"* ]]; then echo "Unpacking ar archive ${file_name} to check for LLVM bitcode components." # create archive stage for objects @@ -47,7 +54,7 @@ check_convert_bitcode () { for archived_file in $(find -not -type d); do check_convert_bitcode ${archived_file} ${CLANG_FLAGS} echo "Repacking ${archived_file} into ${archive}." - ${P_TO_LLVM}/debian/tmp/usr/bin/llvm-ar-${VERSION} r ${archive} ${archived_file} + ar r ${archive} ${archived_file} done popd fi @@ -55,5 +62,7 @@ check_convert_bitcode () { echo "Checking for LLVM bitcode artifacts" export -f check_convert_bitcode -find "$P_TO_LLVM/debian/" -type f -name "*.[ao]" -print0 | \ - xargs -0 -r -n1 -P$NCPUS bash -c "check_convert_bitcode \$@ $CLANG_FLAGS" ARG0 +# Deduplicate by device:inode to avoid processing hardlinks in parallel. +find "$P_TO_LLVM/debian/" -type f -name "*.[ao]" -printf "%D:%i %p\n" | \ + awk '!seen[$1]++' | cut -d" " -f2- | \ + xargs -d"\n" -r -n1 -P$NCPUS bash -c "check_convert_bitcode \$@ $CLANG_FLAGS" ARG0 diff --git a/debian/mlir-X.Y-tools.install.in b/debian/mlir-X.Y-tools.install.in index 4fb7ce21..497246fa 100644 --- a/debian/mlir-X.Y-tools.install.in +++ b/debian/mlir-X.Y-tools.install.in @@ -1,5 +1,7 @@ usr/bin/mlir-* usr/bin/tblgen-lsp-server-@LLVM_VERSION@ +usr/bin/tblgen-to-irdl-@LLVM_VERSION@ usr/lib/llvm-@LLVM_VERSION@/bin/mlir-* usr/lib/llvm-@LLVM_VERSION@/bin/tblgen-lsp-server +usr/lib/llvm-@LLVM_VERSION@/bin/tblgen-to-irdl diff --git a/debian/patches/0044-soname.diff b/debian/patches/0044-soname.diff index ea0313c7..8eb73bba 100644 --- a/debian/patches/0044-soname.diff +++ b/debian/patches/0044-soname.diff @@ -3,11 +3,11 @@ tools/llvm-shlib/CMakeLists.txt | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) -Index: llvm-toolchain-17_17.0.6~++20231127102111+f6c231c15ec8/clang/tools/libclang/CMakeLists.txt +Index: llvm-toolchain-18_18.1.2/clang/tools/libclang/CMakeLists.txt =================================================================== ---- llvm-toolchain-17_17.0.6~++20231127102111+f6c231c15ec8.orig/clang/tools/libclang/CMakeLists.txt -+++ llvm-toolchain-17_17.0.6~++20231127102111+f6c231c15ec8/clang/tools/libclang/CMakeLists.txt -@@ -134,7 +134,7 @@ if (UNIX AND ${CMAKE_SYSTEM_NAME} MATCHE +--- llvm-toolchain-18_18.1.2.orig/clang/tools/libclang/CMakeLists.txt ++++ llvm-toolchain-18_18.1.2/clang/tools/libclang/CMakeLists.txt +@@ -135,7 +135,7 @@ if (UNIX AND ${CMAKE_SYSTEM_NAME} MATCHE remove_definitions("-D_XOPEN_SOURCE=700") endif() @@ -16,16 +16,16 @@ Index: llvm-toolchain-17_17.0.6~++20231127102111+f6c231c15ec8/clang/tools/libcla OUTPUT_NAME ${output_name} ${SOURCES} -Index: llvm-toolchain-17_17.0.6~++20231127102111+f6c231c15ec8/llvm/tools/llvm-shlib/CMakeLists.txt +Index: llvm-toolchain-18_18.1.2/llvm/tools/llvm-shlib/CMakeLists.txt =================================================================== ---- llvm-toolchain-17_17.0.6~++20231127102111+f6c231c15ec8.orig/llvm/tools/llvm-shlib/CMakeLists.txt -+++ llvm-toolchain-17_17.0.6~++20231127102111+f6c231c15ec8/llvm/tools/llvm-shlib/CMakeLists.txt -@@ -32,6 +32,8 @@ if(LLVM_BUILD_LLVM_DYLIB) +--- llvm-toolchain-18_18.1.2.orig/llvm/tools/llvm-shlib/CMakeLists.txt ++++ llvm-toolchain-18_18.1.2/llvm/tools/llvm-shlib/CMakeLists.txt +@@ -41,6 +41,8 @@ if(LLVM_BUILD_LLVM_DYLIB) + llvm_install_library_symlink(LLVM-${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX} $ SHARED FULL_DEST COMPONENT LLVM) endif() - add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${INSTALL_WITH_TOOLCHAIN} ${SOURCES}) + set_property(TARGET LLVM PROPERTY VERSION "1") # Append .1 to SONAME + list(REMOVE_DUPLICATES LIB_NAMES) - if((MINGW) OR (HAIKU) - OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") + if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin") + set(LIB_NAMES -Wl,-all_load ${LIB_NAMES}) diff --git a/debian/patches/0049-Use-Debian-provided-MathJax-everywhere.patch b/debian/patches/0049-Use-Debian-provided-MathJax-everywhere.patch index 39c2ff05..ce62e29c 100644 --- a/debian/patches/0049-Use-Debian-provided-MathJax-everywhere.patch +++ b/debian/patches/0049-Use-Debian-provided-MathJax-everywhere.patch @@ -13,10 +13,10 @@ Subject: Use Debian-provided MathJax everywhere. polly/docs/doxygen.cfg.in | 2 +- 8 files changed, 14 insertions(+), 5 deletions(-) -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang-tools-extra/docs/conf.py +Index: llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang-tools-extra/docs/conf.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/clang-tools-extra/docs/conf.py -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang-tools-extra/docs/conf.py +--- llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c.orig/clang-tools-extra/docs/conf.py ++++ llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang-tools-extra/docs/conf.py @@ -119,6 +119,9 @@ html_theme = "haiku" # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ["_static"] @@ -27,10 +27,10 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang-tools-extr # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. # html_last_updated_fmt = '%b %d, %Y' -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang-tools-extra/docs/doxygen.cfg.in +Index: llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang-tools-extra/docs/doxygen.cfg.in =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/clang-tools-extra/docs/doxygen.cfg.in -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang-tools-extra/docs/doxygen.cfg.in +--- llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c.orig/clang-tools-extra/docs/doxygen.cfg.in ++++ llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang-tools-extra/docs/doxygen.cfg.in @@ -1443,7 +1443,7 @@ MATHJAX_FORMAT = HTML-CSS # The default value is: http://cdn.mathjax.org/mathjax/latest. # This tag requires that the tag USE_MATHJAX is set to YES. @@ -40,10 +40,10 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang-tools-extr # The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax # extension names that should be enabled during MathJax rendering. For example -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/analyzer/conf.py +Index: llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang/docs/analyzer/conf.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/clang/docs/analyzer/conf.py -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/analyzer/conf.py +--- llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c.orig/clang/docs/analyzer/conf.py ++++ llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang/docs/analyzer/conf.py @@ -120,6 +120,9 @@ html_theme = "haiku" # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] @@ -54,11 +54,11 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/analy # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. # html_last_updated_fmt = '%b %d, %Y' -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/conf.py +Index: llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang/docs/conf.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/clang/docs/conf.py -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/conf.py -@@ -135,6 +135,9 @@ html_theme = "haiku" +--- llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c.orig/clang/docs/conf.py ++++ llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang/docs/conf.py +@@ -120,6 +120,9 @@ html_theme = "haiku" # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] @@ -68,10 +68,10 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/conf. # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. # html_last_updated_fmt = '%b %d, %Y' -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/doxygen.cfg.in +Index: llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang/docs/doxygen.cfg.in =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/clang/docs/doxygen.cfg.in -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/doxygen.cfg.in +--- llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c.orig/clang/docs/doxygen.cfg.in ++++ llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/clang/docs/doxygen.cfg.in @@ -1432,7 +1432,7 @@ MATHJAX_FORMAT = HTML-CSS # The default value is: http://cdn.mathjax.org/mathjax/latest. # This tag requires that the tag USE_MATHJAX is set to YES. @@ -81,10 +81,10 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/docs/doxyg # The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax # extension names that should be enabled during MathJax rendering. For example -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/llvm/docs/doxygen.cfg.in +Index: llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/llvm/docs/doxygen.cfg.in =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/llvm/docs/doxygen.cfg.in -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/llvm/docs/doxygen.cfg.in +--- llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c.orig/llvm/docs/doxygen.cfg.in ++++ llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/llvm/docs/doxygen.cfg.in @@ -1433,7 +1433,7 @@ MATHJAX_FORMAT = HTML-CSS # The default value is: http://cdn.mathjax.org/mathjax/latest. # This tag requires that the tag USE_MATHJAX is set to YES. @@ -94,10 +94,10 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/llvm/docs/doxyge # The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax # extension names that should be enabled during MathJax rendering. For example -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/polly/docs/doxygen.cfg.in +Index: llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/polly/docs/doxygen.cfg.in =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/polly/docs/doxygen.cfg.in -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/polly/docs/doxygen.cfg.in +--- llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c.orig/polly/docs/doxygen.cfg.in ++++ llvm-toolchain-18_18.1.5~++20240423100144+a981a4f7653c/polly/docs/doxygen.cfg.in @@ -1433,7 +1433,7 @@ MATHJAX_FORMAT = HTML-CSS # The default value is: http://cdn.mathjax.org/mathjax/latest. # This tag requires that the tag USE_MATHJAX is set to YES. diff --git a/debian/patches/23-strlcpy_strlcat_warning_removed.diff b/debian/patches/23-strlcpy_strlcat_warning_removed.diff index 4e95100f..be74dd9e 100644 --- a/debian/patches/23-strlcpy_strlcat_warning_removed.diff +++ b/debian/patches/23-strlcpy_strlcat_warning_removed.diff @@ -7,10 +7,10 @@ clang/test/Sema/warn-strlcpycat-size.c | 55 -------------- 6 files changed, 25 insertions(+), 78 deletions(-) -Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/include/clang/Basic/Builtins.def +Index: llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/include/clang/Basic/Builtins.def =================================================================== ---- llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde.orig/clang/include/clang/Basic/Builtins.def -+++ llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/include/clang/Basic/Builtins.def +--- llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f.orig/clang/include/clang/Basic/Builtins.def ++++ llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/include/clang/Basic/Builtins.def @@ -645,8 +645,8 @@ BUILTIN(__builtin___memset_chk, "v*v*izz BUILTIN(__builtin___stpcpy_chk, "c*c*cC*z", "nF") BUILTIN(__builtin___strcat_chk, "c*c*cC*z", "nF") @@ -22,7 +22,7 @@ Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/include/cl BUILTIN(__builtin___strncat_chk, "c*c*cC*zz", "nF") BUILTIN(__builtin___strncpy_chk, "c*c*cC*zz", "nF") BUILTIN(__builtin___stpncpy_chk, "c*c*cC*zz", "nF") -@@ -1179,8 +1179,8 @@ LIBBUILTIN(getcontext, "iK*", "fjT", +@@ -1182,8 +1182,8 @@ LIBBUILTIN(getcontext, "iK*", "fjT", LIBBUILTIN(_longjmp, "vJi", "frT", SETJMP_H, ALL_GNU_LANGUAGES) LIBBUILTIN(siglongjmp, "vSJi", "frT", SETJMP_H, ALL_GNU_LANGUAGES) // non-standard but very common @@ -33,11 +33,11 @@ Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/include/cl // id objc_msgSend(id, SEL, ...) LIBBUILTIN(objc_msgSend, "GGH.", "f", OBJC_MESSAGE_H, OBJC_LANG) // long double objc_msgSend_fpret(id self, SEL op, ...) -Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/AST/Decl.cpp +Index: llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/lib/AST/Decl.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde.orig/clang/lib/AST/Decl.cpp -+++ llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/AST/Decl.cpp -@@ -4274,13 +4274,13 @@ unsigned FunctionDecl::getMemoryFunction +--- llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f.orig/clang/lib/AST/Decl.cpp ++++ llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/lib/AST/Decl.cpp +@@ -4310,13 +4310,13 @@ unsigned FunctionDecl::getMemoryFunction case Builtin::BImemmove: return Builtin::BImemmove; @@ -57,11 +57,11 @@ Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/AST/De case Builtin::BI__builtin_memcmp: case Builtin::BImemcmp: -Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/Sema/SemaChecking.cpp +Index: llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/lib/Sema/SemaChecking.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde.orig/clang/lib/Sema/SemaChecking.cpp -+++ llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/Sema/SemaChecking.cpp -@@ -1265,8 +1265,8 @@ void Sema::checkFortifiedBuiltinMemoryFu +--- llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f.orig/clang/lib/Sema/SemaChecking.cpp ++++ llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/lib/Sema/SemaChecking.cpp +@@ -1263,8 +1263,8 @@ void Sema::checkFortifiedBuiltinMemoryFu case Builtin::BI__builtin___memcpy_chk: case Builtin::BI__builtin___memmove_chk: case Builtin::BI__builtin___memset_chk: @@ -72,7 +72,7 @@ Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/Sema/S case Builtin::BI__builtin___strncat_chk: case Builtin::BI__builtin___strncpy_chk: case Builtin::BI__builtin___stpncpy_chk: -@@ -6744,10 +6744,10 @@ bool Sema::CheckFunctionCall(FunctionDec +@@ -6964,10 +6964,10 @@ bool Sema::CheckFunctionCall(FunctionDec switch (CMId) { case 0: return false; @@ -85,10 +85,10 @@ Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/Sema/S case Builtin::BIstrncat: CheckStrncatArguments(TheCall, FnInfo); break; -Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp +Index: llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde.orig/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp -+++ llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp +--- llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f.orig/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp ++++ llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp @@ -717,10 +717,10 @@ void GenericTaintChecker::initTaintRules {{CDF_MaybeBuiltin, {BI.getName(Builtin::BIstrncat)}}, @@ -102,11 +102,11 @@ Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/lib/Static {{CDF_MaybeBuiltin, {{"snprintf"}}}, TR::Prop({{1}, 3}, {{0, ReturnValueIndex}})}, {{CDF_MaybeBuiltin, {{"sprintf"}}}, -Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/test/Sema/builtins.c +Index: llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/test/Sema/builtins.c =================================================================== ---- llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde.orig/clang/test/Sema/builtins.c -+++ llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/test/Sema/builtins.c -@@ -197,12 +197,10 @@ void test18(void) { +--- llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f.orig/clang/test/Sema/builtins.c ++++ llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/test/Sema/builtins.c +@@ -195,12 +195,10 @@ void test18(void) { void *ptr; ptr = __builtin___memccpy_chk(dst, src, '\037', sizeof(src), sizeof(dst)); @@ -119,26 +119,28 @@ Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/test/Sema/ } void no_ms_builtins(void) { -@@ -216,6 +214,7 @@ void unavailable(void) { +@@ -214,7 +212,8 @@ void unavailable(void) { __builtin_operator_delete(0); // expected-error {{'__builtin_operator_delete' is only available in C++}} } +-size_t strlcpy(char * restrict dst, const char * restrict src, size_t size); +/* - // rdar://18259539 - size_t strlcpy(char * restrict dst, const char * restrict src, size_t size); ++ size_t strlcpy(char * restrict dst, const char * restrict src, size_t size); size_t strlcat(char * restrict dst, const char * restrict src, size_t size); -@@ -238,6 +237,7 @@ void Test19(void) + + void Test19(void) +@@ -235,6 +234,7 @@ void Test19(void) // expected-note {{change size argument to be the size of the destination}} \ // expected-warning {{'strlcat' will always overflow; destination buffer has size 20, but size argument is 40}} } +*/ - // rdar://11076881 char * Test20(char *p, const char *in, unsigned n) -Index: llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/test/Sema/warn-strlcpycat-size.c + { +Index: llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/test/Sema/warn-strlcpycat-size.c =================================================================== ---- llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde.orig/clang/test/Sema/warn-strlcpycat-size.c -+++ llvm-toolchain-snapshot_17~++20230718090722+aa9a10ac1dde/clang/test/Sema/warn-strlcpycat-size.c +--- llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f.orig/clang/test/Sema/warn-strlcpycat-size.c ++++ llvm-toolchain-snapshot_18~++20230828063023+b4b42bd6522f/clang/test/Sema/warn-strlcpycat-size.c @@ -1,55 +0,0 @@ -// RUN: %clang_cc1 -Wstrlcpy-strlcat-size -verify -fsyntax-only %s - diff --git a/debian/patches/D148945-revert.diff b/debian/patches/D148945-revert.diff index 73426bdb..d5f2d952 100644 --- a/debian/patches/D148945-revert.diff +++ b/debian/patches/D148945-revert.diff @@ -3,9 +3,11 @@ Restore that for now, we're not GenToo ... https://reviews.llvm.org/D148945 https://reviews.llvm.org/D122444 ---- a/clang/lib/Driver/ToolChains/Linux.cpp -+++ b/clang/lib/Driver/ToolChains/Linux.cpp -@@ -333,6 +333,13 @@ Linux::Linux(const Driver &D, const llvm +Index: llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/Linux.cpp +=================================================================== +--- llvm-toolchain-18_18.1.2.orig/clang/lib/Driver/ToolChains/Linux.cpp ++++ llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/Linux.cpp +@@ -337,6 +337,13 @@ Linux::Linux(const Driver &D, const llvm Generic_GCC::AddMultiarchPaths(D, SysRoot, OSLibDir, Paths); diff --git a/debian/patches/D154931-revert-loong64.patch b/debian/patches/D154931-revert-loong64.patch deleted file mode 100644 index 91d7b35b..00000000 --- a/debian/patches/D154931-revert-loong64.patch +++ /dev/null @@ -1,468 +0,0 @@ -From 7236a15338bafc4bb4c6e61d4b151e0b9cc85448 Mon Sep 17 00:00:00 2001 -From: chenli -Date: Mon, 18 Mar 2024 15:16:34 +0800 -Subject: [PATCH] Revert "[LoongArch] Support InlineAsm for LSX and LASX" - -This reverts commit d25c79dc70008b835312e5cc7ef48b199fda3165. - -D154931[1] needs to be reverted on LLVM17. As Loongson SIMD Extension(LSX) and -Loongson Advanced SIMD Extension(LASX) are not fully supported on LLVM17, -InlineAsm for LSX and LASX should not be supported as well. Otherwise it leads -to the following issue[2]: -''' -LLVM ERROR: Cannot select: 0x7ffea41a3650: ch = store<(store (s128) into %ir.mask -store52)> 0x7ffea41a35e0, 0x7ffea4196a30, FrameIndex:i64<6>, undef:i64 -''' - -LSX and LASX are fully supported on LLVM18 and are not supported on LLVM16, -thus only LLVM17 has the problem. - -[1] https://reviews.llvm.org/D154931 -[2] https://buildd.debian.org/status/fetch.php?pkg=qtdeclarative-opensource-src&arch=loong64&ver=5.15.10%2Bdfsg-2%2Bb1&stamp=1710571569&raw=0 - -Change-Id: I2bd74a71fe5f0bcadeb04ecf1d63d9f97765e8b5 ---- - clang/lib/Basic/Targets/LoongArch.cpp | 12 +--- - .../lasx/inline-asm-gcc-regs-error.c | 10 ---- - .../LoongArch/lasx/inline-asm-gcc-regs.c | 36 ------------ - .../lasx/inline-asm-operand-modifier.c | 15 ----- - .../LoongArch/lsx/inline-asm-gcc-regs-error.c | 10 ---- - .../LoongArch/lsx/inline-asm-gcc-regs.c | 36 ------------ - .../lsx/inline-asm-operand-modifier.c | 15 ----- - .../Target/LoongArch/LoongArchAsmPrinter.cpp | 14 ----- - .../LoongArch/LoongArchISelLowering.cpp | 17 +----- - .../lasx/inline-asm-operand-modifier.ll | 14 ----- - .../LoongArch/lasx/inline-asm-reg-names.ll | 58 ------------------- - .../lsx/inline-asm-operand-modifier.ll | 14 ----- - .../LoongArch/lsx/inline-asm-reg-names.ll | 58 ------------------- - 13 files changed, 2 insertions(+), 307 deletions(-) - delete mode 100644 clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs-error.c - delete mode 100644 clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs.c - delete mode 100644 clang/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.c - delete mode 100644 clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs-error.c - delete mode 100644 clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs.c - delete mode 100644 clang/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.c - delete mode 100644 llvm/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.ll - delete mode 100644 llvm/test/CodeGen/LoongArch/lasx/inline-asm-reg-names.ll - delete mode 100644 llvm/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.ll - delete mode 100644 llvm/test/CodeGen/LoongArch/lsx/inline-asm-reg-names.ll - -diff --git a/clang/lib/Basic/Targets/LoongArch.cpp b/clang/lib/Basic/Targets/LoongArch.cpp -index 4448a2ae10a1..96ef29620eb6 100644 ---- a/clang/lib/Basic/Targets/LoongArch.cpp -+++ b/clang/lib/Basic/Targets/LoongArch.cpp -@@ -33,17 +33,7 @@ ArrayRef LoongArchTargetInfo::getGCCRegNames() const { - "$f19", "$f20", "$f21", "$f22", "$f23", "$f24", "$f25", "$f26", "$f27", - "$f28", "$f29", "$f30", "$f31", - // Condition flag registers. -- "$fcc0", "$fcc1", "$fcc2", "$fcc3", "$fcc4", "$fcc5", "$fcc6", "$fcc7", -- // 128-bit vector registers. -- "$vr0", "$vr1", "$vr2", "$vr3", "$vr4", "$vr5", "$vr6", "$vr7", "$vr8", -- "$vr9", "$vr10", "$vr11", "$vr12", "$vr13", "$vr14", "$vr15", "$vr16", -- "$vr17", "$vr18", "$vr19", "$vr20", "$vr21", "$vr22", "$vr23", "$vr24", -- "$vr25", "$vr26", "$vr27", "$vr28", "$vr29", "$vr30", "$vr31", -- // 256-bit vector registers. -- "$xr0", "$xr1", "$xr2", "$xr3", "$xr4", "$xr5", "$xr6", "$xr7", "$xr8", -- "$xr9", "$xr10", "$xr11", "$xr12", "$xr13", "$xr14", "$xr15", "$xr16", -- "$xr17", "$xr18", "$xr19", "$xr20", "$xr21", "$xr22", "$xr23", "$xr24", -- "$xr25", "$xr26", "$xr27", "$xr28", "$xr29", "$xr30", "$xr31"}; -+ "$fcc0", "$fcc1", "$fcc2", "$fcc3", "$fcc4", "$fcc5", "$fcc6", "$fcc7"}; - return llvm::ArrayRef(GCCRegNames); - } - -diff --git a/clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs-error.c b/clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs-error.c -deleted file mode 100644 -index 1fd602574b8e..000000000000 ---- a/clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs-error.c -+++ /dev/null -@@ -1,10 +0,0 @@ --// RUN: not %clang_cc1 -triple loongarch64 -emit-llvm -O2 %s 2>&1 -o - | FileCheck %s -- --typedef signed char v32i8 __attribute__((vector_size(32), aligned(32))); -- --void test() { --// CHECK: :[[#@LINE+1]]:28: error: unknown register name 'xr0' in asm -- register v32i8 p0 asm ("xr0"); --// CHECK: :[[#@LINE+1]]:29: error: unknown register name '$xr32' in asm -- register v32i8 p32 asm ("$xr32"); --} -diff --git a/clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs.c b/clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs.c -deleted file mode 100644 -index ed1a9660a06c..000000000000 ---- a/clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs.c -+++ /dev/null -@@ -1,36 +0,0 @@ --// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --filter "^define |tail call" --// RUN: %clang_cc1 -triple loongarch64 -emit-llvm -O2 %s -o - | FileCheck %s -- --typedef signed char v32i8 __attribute__((vector_size(32), aligned(32))); -- --// CHECK-LABEL: @test_xr0( --// CHECK: tail call void asm sideeffect "", "{$xr0}"(<32 x i8> undef) #[[ATTR1:[0-9]+]], !srcloc !2 --// --void test_xr0() { -- register v32i8 a asm ("$xr0"); -- asm ("" :: "f"(a)); --} -- --// CHECK-LABEL: @test_xr7( --// CHECK: tail call void asm sideeffect "", "{$xr7}"(<32 x i8> undef) #[[ATTR1]], !srcloc !3 --// --void test_xr7() { -- register v32i8 a asm ("$xr7"); -- asm ("" :: "f"(a)); --} -- --// CHECK-LABEL: @test_xr15( --// CHECK: tail call void asm sideeffect "", "{$xr15}"(<32 x i8> undef) #[[ATTR1]], !srcloc !4 --// --void test_xr15() { -- register v32i8 a asm ("$xr15"); -- asm ("" :: "f"(a)); --} -- --// CHECK-LABEL: @test_xr31( --// CHECK: tail call void asm sideeffect "", "{$xr31}"(<32 x i8> undef) #[[ATTR1]], !srcloc !5 --// --void test_xr31() { -- register v32i8 a asm ("$xr31"); -- asm ("" :: "f"(a)); --} -diff --git a/clang/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.c b/clang/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.c -deleted file mode 100644 -index a5cc8798fd66..000000000000 ---- a/clang/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.c -+++ /dev/null -@@ -1,15 +0,0 @@ --// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --version 2 --// RUN: %clang_cc1 -triple loongarch64 -emit-llvm -O2 %s -o - | FileCheck %s -- --typedef long long v4i64 __attribute__ ((vector_size(32), aligned(32))); -- --// CHECK-LABEL: define dso_local void @test_u --// CHECK-SAME: () local_unnamed_addr #[[ATTR0:[0-9]+]] { --// CHECK-NEXT: entry: --// CHECK-NEXT: [[TMP0:%.*]] = tail call <4 x i64> asm sideeffect "xvldi ${0:u}, 1", "=f"() #[[ATTR1:[0-9]+]], !srcloc !2 --// CHECK-NEXT: ret void --// --void test_u() { -- v4i64 v4i64_r; -- asm volatile ("xvldi %u0, 1" : "=f" (v4i64_r)); --} -diff --git a/clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs-error.c b/clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs-error.c -deleted file mode 100644 -index 54132307e93f..000000000000 ---- a/clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs-error.c -+++ /dev/null -@@ -1,10 +0,0 @@ --// RUN: not %clang_cc1 -triple loongarch64 -emit-llvm -O2 %s 2>&1 -o - | FileCheck %s -- --typedef signed char v16i8 __attribute__((vector_size(16), aligned(16))); -- --void test() { --// CHECK: :[[#@LINE+1]]:28: error: unknown register name 'vr0' in asm -- register v16i8 p0 asm ("vr0"); --// CHECK: :[[#@LINE+1]]:29: error: unknown register name '$vr32' in asm -- register v16i8 p32 asm ("$vr32"); --} -diff --git a/clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs.c b/clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs.c -deleted file mode 100644 -index b05b1c8c15fa..000000000000 ---- a/clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs.c -+++ /dev/null -@@ -1,36 +0,0 @@ --// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --filter "^define |tail call" --// RUN: %clang_cc1 -triple loongarch64 -emit-llvm -O2 %s -o - | FileCheck %s -- --typedef signed char v16i8 __attribute__((vector_size(16), aligned(16))); -- --// CHECK-LABEL: @test_vr0( --// CHECK: tail call void asm sideeffect "", "{$vr0}"(<16 x i8> undef) #[[ATTR1:[0-9]+]], !srcloc !2 --// --void test_vr0() { -- register v16i8 a asm ("$vr0"); -- asm ("" :: "f"(a)); --} -- --// CHECK-LABEL: @test_vr7( --// CHECK: tail call void asm sideeffect "", "{$vr7}"(<16 x i8> undef) #[[ATTR1]], !srcloc !3 --// --void test_vr7() { -- register v16i8 a asm ("$vr7"); -- asm ("" :: "f"(a)); --} -- --// CHECK-LABEL: @test_vr15( --// CHECK: tail call void asm sideeffect "", "{$vr15}"(<16 x i8> undef) #[[ATTR1]], !srcloc !4 --// --void test_vr15() { -- register v16i8 a asm ("$vr15"); -- asm ("" :: "f"(a)); --} -- --// CHECK-LABEL: @test_vr31( --// CHECK: tail call void asm sideeffect "", "{$vr31}"(<16 x i8> undef) #[[ATTR1]], !srcloc !5 --// --void test_vr31() { -- register v16i8 a asm ("$vr31"); -- asm ("" :: "f"(a)); --} -diff --git a/clang/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.c b/clang/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.c -deleted file mode 100644 -index 5e0fae984134..000000000000 ---- a/clang/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.c -+++ /dev/null -@@ -1,15 +0,0 @@ --// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --version 2 --// RUN: %clang_cc1 -triple loongarch64 -emit-llvm -O2 %s -o - | FileCheck %s -- --typedef long long v2i64 __attribute__ ((vector_size(16), aligned(16))); -- --// CHECK-LABEL: define dso_local void @test_w --// CHECK-SAME: () local_unnamed_addr #[[ATTR0:[0-9]+]] { --// CHECK-NEXT: entry: --// CHECK-NEXT: [[TMP0:%.*]] = tail call <2 x i64> asm sideeffect "vldi ${0:w}, 1", "=f"() #[[ATTR1:[0-9]+]], !srcloc !2 --// CHECK-NEXT: ret void --// --void test_w() { -- v2i64 v2i64_r; -- asm volatile ("vldi %w0, 1" : "=f" (v2i64_r)); --} -diff --git a/llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp b/llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp -index 27979a830b10..5cf0673df69a 100644 ---- a/llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp -+++ b/llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp -@@ -75,20 +75,6 @@ bool LoongArchAsmPrinter::PrintAsmOperand(const MachineInstr *MI, unsigned OpNo, - return false; - } - break; -- case 'w': // Print LSX registers. -- if (MO.getReg().id() >= LoongArch::VR0 && -- MO.getReg().id() <= LoongArch::VR31) -- break; -- // The modifier is 'w' but the operand is not an LSX register; Report an -- // unknown operand error. -- return true; -- case 'u': // Print LASX registers. -- if (MO.getReg().id() >= LoongArch::XR0 && -- MO.getReg().id() <= LoongArch::XR31) -- break; -- // The modifier is 'u' but the operand is not an LASX register; Report an -- // unknown operand error. -- return true; - // TODO: handle other extra codes if any. - } - } -diff --git a/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp b/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp -index db5961fc501a..488e1c7f3a76 100644 ---- a/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp -+++ b/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp -@@ -53,14 +53,6 @@ LoongArchTargetLowering::LoongArchTargetLowering(const TargetMachine &TM, - addRegisterClass(MVT::f32, &LoongArch::FPR32RegClass); - if (Subtarget.hasBasicD()) - addRegisterClass(MVT::f64, &LoongArch::FPR64RegClass); -- if (Subtarget.hasExtLSX()) -- for (auto VT : {MVT::v4f32, MVT::v2f64, MVT::v16i8, MVT::v8i16, MVT::v4i32, -- MVT::v2i64}) -- addRegisterClass(VT, &LoongArch::LSX128RegClass); -- if (Subtarget.hasExtLASX()) -- for (auto VT : {MVT::v8f32, MVT::v4f64, MVT::v32i8, MVT::v16i16, MVT::v8i32, -- MVT::v4i64}) -- addRegisterClass(VT, &LoongArch::LASX256RegClass); - - setLoadExtAction({ISD::EXTLOAD, ISD::SEXTLOAD, ISD::ZEXTLOAD}, GRLenVT, - MVT::i1, Promote); -@@ -3056,12 +3048,6 @@ LoongArchTargetLowering::getRegForInlineAsmConstraint( - return std::make_pair(0U, &LoongArch::FPR32RegClass); - if (Subtarget.hasBasicD() && VT == MVT::f64) - return std::make_pair(0U, &LoongArch::FPR64RegClass); -- if (Subtarget.hasExtLSX() && -- TRI->isTypeLegalForClass(LoongArch::LSX128RegClass, VT)) -- return std::make_pair(0U, &LoongArch::LSX128RegClass); -- if (Subtarget.hasExtLASX() && -- TRI->isTypeLegalForClass(LoongArch::LASX256RegClass, VT)) -- return std::make_pair(0U, &LoongArch::LASX256RegClass); - break; - default: - break; -@@ -3079,8 +3065,7 @@ LoongArchTargetLowering::getRegForInlineAsmConstraint( - // decode the usage of register name aliases into their official names. And - // AFAIK, the not yet upstreamed `rustc` for LoongArch will always use - // official register names. -- if (Constraint.startswith("{$r") || Constraint.startswith("{$f") || -- Constraint.startswith("{$vr") || Constraint.startswith("{$xr")) { -+ if (Constraint.startswith("{$r") || Constraint.startswith("{$f")) { - bool IsFP = Constraint[2] == 'f'; - std::pair Temp = Constraint.split('$'); - std::pair R; -diff --git a/llvm/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.ll b/llvm/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.ll -deleted file mode 100644 -index 201e34c8b5ae..000000000000 ---- a/llvm/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.ll -+++ /dev/null -@@ -1,14 +0,0 @@ --; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 2 --; RUN: llc --mtriple=loongarch64 --mattr=+lasx < %s | FileCheck %s -- --define void @test_u() nounwind { --; CHECK-LABEL: test_u: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: #APP --; CHECK-NEXT: xvldi $xr0, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: ret --entry: -- %0 = tail call <4 x i64> asm sideeffect "xvldi ${0:u}, 1", "=f"() -- ret void --} -diff --git a/llvm/test/CodeGen/LoongArch/lasx/inline-asm-reg-names.ll b/llvm/test/CodeGen/LoongArch/lasx/inline-asm-reg-names.ll -deleted file mode 100644 -index dd400ecfcf91..000000000000 ---- a/llvm/test/CodeGen/LoongArch/lasx/inline-asm-reg-names.ll -+++ /dev/null -@@ -1,58 +0,0 @@ --; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 2 --; RUN: llc --mtriple=loongarch64 --mattr=+lasx < %s | FileCheck %s -- --define void @register_xr1() nounwind { --; CHECK-LABEL: register_xr1: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: #APP --; CHECK-NEXT: xvldi $xr1, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: ret --entry: -- %0 = tail call <4 x i64> asm sideeffect "xvldi ${0:u}, 1", "={$xr1}"() -- ret void --} -- --define void @register_xr7() nounwind { --; CHECK-LABEL: register_xr7: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: #APP --; CHECK-NEXT: xvldi $xr7, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: ret --entry: -- %0 = tail call <4 x i64> asm sideeffect "xvldi ${0:u}, 1", "={$xr7}"() -- ret void --} -- --define void @register_xr23() nounwind { --; CHECK-LABEL: register_xr23: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: #APP --; CHECK-NEXT: xvldi $xr23, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: ret --entry: -- %0 = tail call <4 x i64> asm sideeffect "xvldi ${0:u}, 1", "={$xr23}"() -- ret void --} -- --;; The lower 64-bit of the vector register '$xr31' is overlapped with --;; the floating-point register '$f31' ('$fs7'). And '$f31' ('$fs7') --;; is a callee-saved register which is preserved across calls. --;; That's why the fst.d and fld.d instructions are emitted. --define void @register_xr31() nounwind { --; CHECK-LABEL: register_xr31: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: addi.d $sp, $sp, -16 --; CHECK-NEXT: fst.d $fs7, $sp, 8 # 8-byte Folded Spill --; CHECK-NEXT: #APP --; CHECK-NEXT: xvldi $xr31, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: fld.d $fs7, $sp, 8 # 8-byte Folded Reload --; CHECK-NEXT: addi.d $sp, $sp, 16 --; CHECK-NEXT: ret --entry: -- %0 = tail call <4 x i64> asm sideeffect "xvldi ${0:u}, 1", "={$xr31}"() -- ret void --} -diff --git a/llvm/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.ll b/llvm/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.ll -deleted file mode 100644 -index c46e624ddaa8..000000000000 ---- a/llvm/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.ll -+++ /dev/null -@@ -1,14 +0,0 @@ --; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 2 --; RUN: llc --mtriple=loongarch64 --mattr=+lsx < %s | FileCheck %s -- --define void @test_w() nounwind { --; CHECK-LABEL: test_w: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: #APP --; CHECK-NEXT: vldi $vr0, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: ret --entry: -- %0 = tail call <2 x i64> asm sideeffect "vldi ${0:w}, 1", "=f"() -- ret void --} -diff --git a/llvm/test/CodeGen/LoongArch/lsx/inline-asm-reg-names.ll b/llvm/test/CodeGen/LoongArch/lsx/inline-asm-reg-names.ll -deleted file mode 100644 -index ceea3621be2f..000000000000 ---- a/llvm/test/CodeGen/LoongArch/lsx/inline-asm-reg-names.ll -+++ /dev/null -@@ -1,58 +0,0 @@ --; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 2 --; RUN: llc --mtriple=loongarch64 --mattr=+lsx < %s | FileCheck %s -- --define void @register_vr1() nounwind { --; CHECK-LABEL: register_vr1: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: #APP --; CHECK-NEXT: vldi $vr1, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: ret --entry: -- %0 = tail call <2 x i64> asm sideeffect "vldi ${0:w}, 1", "={$vr1}"() -- ret void --} -- --define void @register_vr7() nounwind { --; CHECK-LABEL: register_vr7: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: #APP --; CHECK-NEXT: vldi $vr7, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: ret --entry: -- %0 = tail call <2 x i64> asm sideeffect "vldi ${0:w}, 1", "={$vr7}"() -- ret void --} -- --define void @register_vr23() nounwind { --; CHECK-LABEL: register_vr23: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: #APP --; CHECK-NEXT: vldi $vr23, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: ret --entry: -- %0 = tail call <2 x i64> asm sideeffect "vldi ${0:w}, 1", "={$vr23}"() -- ret void --} -- --;; The lower half of the vector register '$vr31' is overlapped with --;; the floating-point register '$f31'. And '$f31' is a callee-saved --;; register which is preserved across calls. That's why the --;; fst.d and fld.d instructions are emitted. --define void @register_vr31() nounwind { --; CHECK-LABEL: register_vr31: --; CHECK: # %bb.0: # %entry --; CHECK-NEXT: addi.d $sp, $sp, -16 --; CHECK-NEXT: fst.d $fs7, $sp, 8 # 8-byte Folded Spill --; CHECK-NEXT: #APP --; CHECK-NEXT: vldi $vr31, 1 --; CHECK-NEXT: #NO_APP --; CHECK-NEXT: fld.d $fs7, $sp, 8 # 8-byte Folded Reload --; CHECK-NEXT: addi.d $sp, $sp, 16 --; CHECK-NEXT: ret --entry: -- %0 = tail call <2 x i64> asm sideeffect "vldi ${0:w}, 1", "={$vr31}"() -- ret void --} --- -2.20.1 - diff --git a/debian/patches/D158066-simd-ppc64el.patch b/debian/patches/D158066-simd-ppc64el.patch deleted file mode 100644 index 8db4a92f..00000000 --- a/debian/patches/D158066-simd-ppc64el.patch +++ /dev/null @@ -1,355 +0,0 @@ -Description: Fix SIMD compatibility headers on ppc64el -Origin/Author: https://reviews.llvm.org/D158066 -Bug-Debian: https://bugs.debian.org/1049362 - -diff --git a/clang/include/clang/Basic/BuiltinsPPC.def b/clang/include/clang/Basic/BuiltinsPPC.def ---- a/clang/include/clang/Basic/BuiltinsPPC.def -+++ b/clang/include/clang/Basic/BuiltinsPPC.def -@@ -151,8 +151,10 @@ - TARGET_BUILTIN(__builtin_ppc_extract_sig, "ULLid", "", "power9-vector") - BUILTIN(__builtin_ppc_mtfsb0, "vUIi", "") - BUILTIN(__builtin_ppc_mtfsb1, "vUIi", "") -+BUILTIN(__builtin_ppc_mffs, "d", "") - BUILTIN(__builtin_ppc_mtfsf, "vUIiUi", "") - BUILTIN(__builtin_ppc_mtfsfi, "vUIiUIi", "") -+BUILTIN(__builtin_ppc_set_fpscr_rn, "di", "") - TARGET_BUILTIN(__builtin_ppc_insert_exp, "ddULLi", "", "power9-vector") - BUILTIN(__builtin_ppc_fmsub, "dddd", "") - BUILTIN(__builtin_ppc_fmsubs, "ffff", "") -diff --git a/clang/lib/Basic/Targets/PPC.cpp b/clang/lib/Basic/Targets/PPC.cpp ---- a/clang/lib/Basic/Targets/PPC.cpp -+++ b/clang/lib/Basic/Targets/PPC.cpp -@@ -262,6 +262,10 @@ - Builder.defineMacro("__builtin_minfe", "__builtin_ppc_minfe"); - Builder.defineMacro("__builtin_minfl", "__builtin_ppc_minfl"); - Builder.defineMacro("__builtin_minfs", "__builtin_ppc_minfs"); -+ Builder.defineMacro("__builtin_mffs", "__builtin_ppc_mffs"); -+ Builder.defineMacro("__builtin_mffsl", "__builtin_ppc_mffsl"); -+ Builder.defineMacro("__builtin_mtfsf", "__builtin_ppc_mtfsf"); -+ Builder.defineMacro("__builtin_set_fpscr_rn", "__builtin_ppc_set_fpscr_rn"); - } - - /// PPCTargetInfo::getTargetDefines - Return a set of the PowerPC-specific -diff --git a/clang/lib/CodeGen/CGBuiltin.cpp b/clang/lib/CodeGen/CGBuiltin.cpp ---- a/clang/lib/CodeGen/CGBuiltin.cpp -+++ b/clang/lib/CodeGen/CGBuiltin.cpp -@@ -17062,6 +17062,11 @@ - Value *Op1 = EmitScalarExpr(E->getArg(1)); - return Builder.CreateFDiv(Op0, Op1, "swdiv"); - } -+ case PPC::BI__builtin_ppc_set_fpscr_rn: -+ return Builder.CreateCall(CGM.getIntrinsic(Intrinsic::ppc_setrnd), -+ {EmitScalarExpr(E->getArg(0))}); -+ case PPC::BI__builtin_ppc_mffs: -+ return Builder.CreateCall(CGM.getIntrinsic(Intrinsic::ppc_readflm)); - } - } - -diff --git a/clang/lib/Headers/ppc_wrappers/smmintrin.h b/clang/lib/Headers/ppc_wrappers/smmintrin.h ---- a/clang/lib/Headers/ppc_wrappers/smmintrin.h -+++ b/clang/lib/Headers/ppc_wrappers/smmintrin.h -@@ -14,7 +14,7 @@ - - #ifndef NO_WARN_X86_INTRINSICS - /* This header is distributed to simplify porting x86_64 code that -- makes explicit use of Intel intrinsics to powerp64/powerpc64le. -+ makes explicit use of Intel intrinsics to powerpc64/powerpc64le. - - It is the user's responsibility to determine if the results are - acceptable and make additional changes as necessary. -@@ -68,10 +68,10 @@ - __asm__("mffsce %0" : "=f"(__fpscr_save.__fr)); - __enables_save.__fpscr = __fpscr_save.__fpscr & 0xf8; - #else -- __fpscr_save.__fr = __builtin_mffs(); -+ __fpscr_save.__fr = __builtin_ppc_mffs(); - __enables_save.__fpscr = __fpscr_save.__fpscr & 0xf8; - __fpscr_save.__fpscr &= ~0xf8; -- __builtin_mtfsf(0b00000011, __fpscr_save.__fr); -+ __builtin_ppc_mtfsf(0b00000011, __fpscr_save.__fr); - #endif - /* Insert an artificial "read/write" reference to the variable - read below, to ensure the compiler does not schedule -@@ -83,10 +83,15 @@ - - switch (__rounding) { - case _MM_FROUND_TO_NEAREST_INT: -- __fpscr_save.__fr = __builtin_mffsl(); -+#ifdef _ARCH_PWR9 -+ __fpscr_save.__fr = __builtin_ppc_mffsl(); -+#else -+ __fpscr_save.__fr = __builtin_ppc_mffs(); -+ __fpscr_save.__fpscr &= 0x70007f0ffL; -+#endif - __attribute__((fallthrough)); - case _MM_FROUND_TO_NEAREST_INT | _MM_FROUND_NO_EXC: -- __builtin_set_fpscr_rn(0b00); -+ __builtin_ppc_set_fpscr_rn(0b00); - /* Insert an artificial "read/write" reference to the variable - read below, to ensure the compiler does not schedule - a read/use of the variable before the FPSCR is modified, above. -@@ -102,7 +107,7 @@ - This can be removed if and when GCC PR102783 is fixed. - */ - __asm__("" : : "wa"(__r)); -- __builtin_set_fpscr_rn(__fpscr_save.__fpscr); -+ __builtin_ppc_set_fpscr_rn(__fpscr_save.__fpscr); - break; - case _MM_FROUND_TO_NEG_INF: - case _MM_FROUND_TO_NEG_INF | _MM_FROUND_NO_EXC: -@@ -128,9 +133,14 @@ - */ - __asm__("" : : "wa"(__r)); - /* Restore enabled exceptions. */ -- __fpscr_save.__fr = __builtin_mffsl(); -+#ifdef _ARCH_PWR9 -+ __fpscr_save.__fr = __builtin_ppc_mffsl(); -+#else -+ __fpscr_save.__fr = __builtin_ppc_mffs(); -+ __fpscr_save.__fpscr &= 0x70007f0ffL; -+#endif - __fpscr_save.__fpscr |= __enables_save.__fpscr; -- __builtin_mtfsf(0b00000011, __fpscr_save.__fr); -+ __builtin_ppc_mtfsf(0b00000011, __fpscr_save.__fr); - } - return (__m128d)__r; - } -@@ -159,10 +169,10 @@ - __asm__("mffsce %0" : "=f"(__fpscr_save.__fr)); - __enables_save.__fpscr = __fpscr_save.__fpscr & 0xf8; - #else -- __fpscr_save.__fr = __builtin_mffs(); -+ __fpscr_save.__fr = __builtin_ppc_mffs(); - __enables_save.__fpscr = __fpscr_save.__fpscr & 0xf8; - __fpscr_save.__fpscr &= ~0xf8; -- __builtin_mtfsf(0b00000011, __fpscr_save.__fr); -+ __builtin_ppc_mtfsf(0b00000011, __fpscr_save.__fr); - #endif - /* Insert an artificial "read/write" reference to the variable - read below, to ensure the compiler does not schedule -@@ -174,10 +184,15 @@ - - switch (__rounding) { - case _MM_FROUND_TO_NEAREST_INT: -- __fpscr_save.__fr = __builtin_mffsl(); -+#ifdef _ARCH_PWR9 -+ __fpscr_save.__fr = __builtin_ppc_mffsl(); -+#else -+ __fpscr_save.__fr = __builtin_ppc_mffs(); -+ __fpscr_save.__fpscr &= 0x70007f0ffL; -+#endif - __attribute__((fallthrough)); - case _MM_FROUND_TO_NEAREST_INT | _MM_FROUND_NO_EXC: -- __builtin_set_fpscr_rn(0b00); -+ __builtin_ppc_set_fpscr_rn(0b00); - /* Insert an artificial "read/write" reference to the variable - read below, to ensure the compiler does not schedule - a read/use of the variable before the FPSCR is modified, above. -@@ -193,7 +208,7 @@ - This can be removed if and when GCC PR102783 is fixed. - */ - __asm__("" : : "wa"(__r)); -- __builtin_set_fpscr_rn(__fpscr_save.__fpscr); -+ __builtin_ppc_set_fpscr_rn(__fpscr_save.__fpscr); - break; - case _MM_FROUND_TO_NEG_INF: - case _MM_FROUND_TO_NEG_INF | _MM_FROUND_NO_EXC: -@@ -219,9 +234,14 @@ - */ - __asm__("" : : "wa"(__r)); - /* Restore enabled exceptions. */ -- __fpscr_save.__fr = __builtin_mffsl(); -+#ifdef _ARCH_PWR9 -+ __fpscr_save.__fr = __builtin_ppc_mffsl(); -+#else -+ __fpscr_save.__fr = __builtin_ppc_mffs(); -+ __fpscr_save.__fpscr &= 0x70007f0ffL; -+#endif - __fpscr_save.__fpscr |= __enables_save.__fpscr; -- __builtin_mtfsf(0b00000011, __fpscr_save.__fr); -+ __builtin_ppc_mtfsf(0b00000011, __fpscr_save.__fr); - } - return (__m128)__r; - } -diff --git a/clang/test/CodeGen/PowerPC/builtins-ppc.c b/clang/test/CodeGen/PowerPC/builtins-ppc.c ---- a/clang/test/CodeGen/PowerPC/builtins-ppc.c -+++ b/clang/test/CodeGen/PowerPC/builtins-ppc.c -@@ -1,5 +1,8 @@ - // REQUIRES: powerpc-registered-target --// RUN: %clang_cc1 -triple powerpc-unknown-unknown -emit-llvm %s -o - | FileCheck %s -+// RUN: %clang_cc1 -triple powerpc-unknown-unknown -emit-llvm %s -o - \ -+// RUN: | FileCheck %s -+// RUN: %clang_cc1 -triple powerpc-unknown-unknown -emit-llvm %s -o - \ -+// RUN: -target-cpu pwr9 | FileCheck %s --check-prefixes=P9,CHECK - - void test_eh_return_data_regno() - { -@@ -26,6 +29,9 @@ - - // CHECK: call double @llvm.ppc.setrnd(i32 %2) - res = __builtin_setrnd(x); -+ -+ // CHECK: call double @llvm.ppc.setrnd(i32 %4) -+ res = __builtin_ppc_set_fpscr_rn(x); - } - - void test_builtin_ppc_flm() { -@@ -33,7 +39,10 @@ - // CHECK: call double @llvm.ppc.readflm() - res = __builtin_readflm(); - -- // CHECK: call double @llvm.ppc.setflm(double %1) -+ // CHECK: call double @llvm.ppc.readflm() -+ res = __builtin_ppc_mffs(); -+ -+ // CHECK: call double @llvm.ppc.setflm(double %2) - res = __builtin_setflm(res); - } - -diff --git a/clang/test/CodeGen/PowerPC/ppc-emmintrin.c b/clang/test/CodeGen/PowerPC/ppc-emmintrin.c ---- a/clang/test/CodeGen/PowerPC/ppc-emmintrin.c -+++ b/clang/test/CodeGen/PowerPC/ppc-emmintrin.c -@@ -8,6 +8,11 @@ - // RUN: %clang -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr10 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -ffp-contract=off -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n | FileCheck %s --check-prefixes=CHECK-P10 - -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr8 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -ffp-contract=off -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr10 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -ffp-contract=off -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+ - // RUN: %clang -S -emit-llvm -target powerpc64-ibm-aix -mcpu=pwr8 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -ffp-contract=off -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n | FileCheck %s --check-prefixes=CHECK,CHECK-BE - // RUN: %clang -S -emit-llvm -target powerpc64-ibm-aix -mcpu=pwr10 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -diff --git a/clang/test/CodeGen/PowerPC/ppc-mmintrin.c b/clang/test/CodeGen/PowerPC/ppc-mmintrin.c ---- a/clang/test/CodeGen/PowerPC/ppc-mmintrin.c -+++ b/clang/test/CodeGen/PowerPC/ppc-mmintrin.c -@@ -9,6 +9,11 @@ - // RUN: %clang -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr9 -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n| FileCheck %s --check-prefixes=CHECK-P9,CHECK,CHECK-LE - -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr8 -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr9 -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+ - // RUN: %clang -S -emit-llvm -target powerpc64-unknown-freebsd13.0 -mcpu=pwr8 -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n | FileCheck %s --check-prefixes=CHECK-P8,CHECK,CHECK-BE - // RUN: %clang -S -emit-llvm -target powerpc64le-unknown-freebsd13.0 -mcpu=pwr8 -DNO_WARN_X86_INTRINSICS %s \ -diff --git a/clang/test/CodeGen/PowerPC/ppc-pmmintrin.c b/clang/test/CodeGen/PowerPC/ppc-pmmintrin.c ---- a/clang/test/CodeGen/PowerPC/ppc-pmmintrin.c -+++ b/clang/test/CodeGen/PowerPC/ppc-pmmintrin.c -@@ -13,6 +13,9 @@ - // RUN: %clang -S -emit-llvm -target powerpc64-ibm-aix -mcpu=pwr8 -DNO_MM_MALLOC -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n | FileCheck %s - -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-gnu-linux -mcpu=pwr8 -DNO_MM_MALLOC -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+ - #include - - __m128d resd, md1, md2; -diff --git a/clang/test/CodeGen/PowerPC/ppc-smmintrin.c b/clang/test/CodeGen/PowerPC/ppc-smmintrin.c ---- a/clang/test/CodeGen/PowerPC/ppc-smmintrin.c -+++ b/clang/test/CodeGen/PowerPC/ppc-smmintrin.c -@@ -15,6 +15,11 @@ - // RUN: %clang -S -emit-llvm -target powerpc64-unknown-linux-gnu -mcpu=pwr10 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n | FileCheck %s --check-prefix=P10 - -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr8 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr10 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+ - // RUN: %clang -S -emit-llvm -target powerpc64le-unknown-freebsd13.0 -mcpu=pwr8 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n | FileCheck %s - // RUN: %clang -S -emit-llvm -target powerpc64-unknown-freebsd13.0 -mcpu=pwr8 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -@@ -239,44 +244,48 @@ - // CHECK-LABEL: @test_round - - // CHECK-LABEL: define available_externally <4 x float> @_mm_round_ps(<4 x float> noundef %{{[0-9a-zA-Z_.]+}}, i32 noundef signext %{{[0-9a-zA-Z_.]+}}) --// CHECK: call signext i32 @__builtin_mffs() --// CHECK: call signext i32 @__builtin_mtfsf(i32 noundef signext 3, double noundef %{{[0-9a-zA-Z_.]+}}) -+// CHECK: call double @llvm.ppc.readflm() -+// CHECK: call void @llvm.ppc.mtfsf(i32 3, double %{{[0-9a-zA-Z_.]+}}) - // CHECK: %{{[0-9a-zA-Z_.]+}} = call <4 x float> asm "", "=^wa,0" --// CHECK: call signext i32 @__builtin_mffsl() --// CHECK: call signext i32 @__builtin_set_fpscr_rn(i32 noundef signext 0) -+// CHECK: call double @llvm.ppc.readflm() -+// P10: call double @llvm.ppc.mffsl() -+// CHECK: call double @llvm.ppc.setrnd(i32 0) - // CHECK: %{{[0-9a-zA-Z_.]+}} = call <4 x float> asm "", "=^wa,0" - // CHECK: call <4 x float> @vec_rint(float vector[4]) - // CHECK: call void asm sideeffect "", "^wa" --// CHECK: call signext i32 @__builtin_set_fpscr_rn(i64 noundef %{{[0-9a-zA-Z_.]+}}) -+// CHECK: call double @llvm.ppc.setrnd(i32 %{{[0-9a-zA-Z_.]+}}) - // CHECK: call <4 x float> @vec_floor(float vector[4]) - // CHECK: call <4 x float> @vec_ceil(float vector[4]) - // CHECK: call <4 x float> @vec_trunc(float vector[4]) - // CHECK: call <4 x float> @vec_rint(float vector[4]) - // CHECK: call void asm sideeffect "", "^wa" --// CHECK: call signext i32 @__builtin_mffsl() --// CHECK: call signext i32 @__builtin_mtfsf(i32 noundef signext 3, double noundef %{{[0-9a-zA-Z_.]+}}) -+// CHECK: call double @llvm.ppc.readflm() -+// P10: call double @llvm.ppc.mffsl() -+// CHECK: call void @llvm.ppc.mtfsf(i32 3, double %{{[0-9a-zA-Z_.]+}}) - - // CHECK-LABEL: define available_externally <4 x float> @_mm_round_ss(<4 x float> noundef %{{[0-9a-zA-Z_.]+}}, <4 x float> noundef %{{[0-9a-zA-Z_.]+}}, i32 noundef signext %{{[0-9a-zA-Z_.]+}}) - // CHECK: call <4 x float> @_mm_round_ps(<4 x float> noundef %{{[0-9a-zA-Z_.]+}}, i32 noundef signext %{{[0-9a-zA-Z_.]+}}) - // CHECK: extractelement <4 x float> %{{[0-9a-zA-Z_.]+}}, i32 0 - - // CHECK-LABEL: define available_externally <2 x double> @_mm_round_pd(<2 x double> noundef %{{[0-9a-zA-Z_.]+}}, i32 noundef signext %{{[0-9a-zA-Z_.]+}}) --// CHECK: call signext i32 @__builtin_mffs() --// CHECK: call signext i32 @__builtin_mtfsf(i32 noundef signext 3, double noundef %{{[0-9a-zA-Z_.]+}}) -+// CHECK: call double @llvm.ppc.readflm() -+// CHECK: call void @llvm.ppc.mtfsf(i32 3, double %{{[0-9a-zA-Z_.]+}}) - // CHECK: %{{[0-9a-zA-Z_.]+}} = call <2 x double> asm "", "=^wa,0" --// CHECK: call signext i32 @__builtin_mffsl() --// CHECK: call signext i32 @__builtin_set_fpscr_rn(i32 noundef signext 0) -+// CHECK: call double @llvm.ppc.readflm() -+// P10: call double @llvm.ppc.mffsl() -+// CHECK: call double @llvm.ppc.setrnd(i32 0) - // CHECK: %{{[0-9a-zA-Z_.]+}} = call <2 x double> asm "", "=^wa,0" - // CHECK: call <2 x double> @vec_rint(double vector[2]) - // CHECK: call void asm sideeffect "", "^wa" --// CHECK: call signext i32 @__builtin_set_fpscr_rn(i64 noundef %{{[0-9a-zA-Z_.]+}}) -+// CHECK: call double @llvm.ppc.setrnd(i32 %{{[0-9a-zA-Z_.]+}}) - // CHECK: call <2 x double> @vec_floor(double vector[2]) - // CHECK: call <2 x double> @vec_ceil(double vector[2]) - // CHECK: call <2 x double> @vec_trunc(double vector[2]) - // CHECK: call <2 x double> @vec_rint(double vector[2]) - // CHECK: call void asm sideeffect "", "^wa" --// CHECK: call signext i32 @__builtin_mffsl() --// CHECK: call signext i32 @__builtin_mtfsf(i32 noundef signext 3, double noundef %{{[0-9a-zA-Z_.]+}}) -+// CHECK: call double @llvm.ppc.readflm() -+// P10: call double @llvm.ppc.mffsl() -+// CHECK: call void @llvm.ppc.mtfsf(i32 3, double %{{[0-9a-zA-Z_.]+}}) - - // CHECK-LABEL: define available_externally <2 x double> @_mm_round_sd(<2 x double> noundef %{{[0-9a-zA-Z_.]+}}, <2 x double> noundef %{{[0-9a-zA-Z_.]+}}, i32 noundef signext %{{[0-9a-zA-Z_.]+}}) - // CHECK: call <2 x double> @_mm_round_pd(<2 x double> noundef %{{[0-9a-zA-Z_.]+}}, i32 noundef signext %{{[0-9a-zA-Z_.]+}}) -diff --git a/clang/test/CodeGen/PowerPC/ppc-tmmintrin.c b/clang/test/CodeGen/PowerPC/ppc-tmmintrin.c ---- a/clang/test/CodeGen/PowerPC/ppc-tmmintrin.c -+++ b/clang/test/CodeGen/PowerPC/ppc-tmmintrin.c -@@ -13,6 +13,9 @@ - // RUN: %clang -S -emit-llvm -target powerpc64-ibm-aix -mcpu=pwr8 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n | FileCheck %s --check-prefixes=CHECK,CHECK-BE - -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-gnu-linux -mcpu=pwr8 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+ - #include - - __m64 res, m1, m2; -diff --git a/clang/test/CodeGen/PowerPC/ppc-x86gprintrin.c b/clang/test/CodeGen/PowerPC/ppc-x86gprintrin.c ---- a/clang/test/CodeGen/PowerPC/ppc-x86gprintrin.c -+++ b/clang/test/CodeGen/PowerPC/ppc-x86gprintrin.c -@@ -12,6 +12,9 @@ - // RUN: %clang -S -emit-llvm -target powerpc64-ibm-aix -mcpu=pwr7 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ - // RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -o - | llvm-cxxfilt -n | FileCheck %s - -+// RUN: %clang -x c++ -S -emit-llvm -target powerpc64le-unknown-linux-gnu -mcpu=pwr7 -ffreestanding -DNO_WARN_X86_INTRINSICS %s \ -+// RUN: -fno-discard-value-names -mllvm -disable-llvm-optzns -fsyntax-only -+ - #include - - unsigned short us; diff --git a/debian/patches/arm32-defaults.diff b/debian/patches/arm32-defaults.diff index 4a392854..05c879cb 100644 --- a/debian/patches/arm32-defaults.diff +++ b/debian/patches/arm32-defaults.diff @@ -1,6 +1,8 @@ ---- a/llvm/lib/TargetParser/ARMTargetParser.cpp -+++ b/llvm/lib/TargetParser/ARMTargetParser.cpp -@@ -590,9 +590,9 @@ StringRef ARM::getARMCPUForArch(const ll +Index: llvm-toolchain-18_18.1.2/llvm/lib/TargetParser/ARMTargetParser.cpp +=================================================================== +--- llvm-toolchain-18_18.1.2.orig/llvm/lib/TargetParser/ARMTargetParser.cpp ++++ llvm-toolchain-18_18.1.2/llvm/lib/TargetParser/ARMTargetParser.cpp +@@ -636,9 +636,9 @@ StringRef ARM::getARMCPUForArch(const ll case llvm::Triple::EABIHF: case llvm::Triple::GNUEABIHF: case llvm::Triple::MuslEABIHF: diff --git a/debian/patches/clang-analyzer-force-version.diff b/debian/patches/clang-analyzer-force-version.diff index f364728c..72b34451 100644 --- a/debian/patches/clang-analyzer-force-version.diff +++ b/debian/patches/clang-analyzer-force-version.diff @@ -10,7 +10,7 @@ Index: llvm-toolchain-snapshot_17~++20211117120952+5b4bfd8c2417/clang/tools/scan $Clang = $ENV{'CLANG_CXX'}; - if (!defined $Clang || ! -x $Clang) { $Clang = 'clang++'; } -+ if (!defined $Clang || ! -x $Clang) { $Clang = 'clang++-17'; } ++ if (!defined $Clang || ! -x $Clang) { $Clang = 'clang++-18'; } $IsCXX = 1 } @@ -19,7 +19,7 @@ Index: llvm-toolchain-snapshot_17~++20211117120952+5b4bfd8c2417/clang/tools/scan $Clang = $ENV{'CLANG'}; - if (!defined $Clang || ! -x $Clang) { $Clang = 'clang'; } -+ if (!defined $Clang || ! -x $Clang) { $Clang = 'clang-17'; } ++ if (!defined $Clang || ! -x $Clang) { $Clang = 'clang-18'; } $IsCXX = 0 } diff --git a/debian/patches/clang-format-version.diff b/debian/patches/clang-format-version.diff index f2719282..5e00d38c 100644 --- a/debian/patches/clang-format-version.diff +++ b/debian/patches/clang-format-version.diff @@ -13,7 +13,7 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/tools/clan parser.add_argument( "-binary", - default="clang-format", -+ default="clang-format-17", ++ default="clang-format-18", help="location of binary to use for clang-format", ) args = parser.parse_args() @@ -26,7 +26,7 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/tools/clan (defcustom clang-format-executable - (or (executable-find "clang-format") -+ (or (executable-find "clang-format-17") ++ (or (executable-find "clang-format-18") "clang-format") "Location of the clang-format executable. @@ -39,7 +39,7 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/tools/clan # set g:clang_format_path to the path to clang-format if it is not on the path # Change this to the full path if clang-format is not on the path. -binary = "clang-format" -+binary = "clang-format-17" ++binary = "clang-format-18" if vim.eval('exists("g:clang_format_path")') == "1": binary = vim.eval("g:clang_format_path") diff --git a/debian/patches/clang-record-gcc-switches-by-default.patch b/debian/patches/clang-record-gcc-switches-by-default.patch new file mode 100644 index 00000000..84715c4d --- /dev/null +++ b/debian/patches/clang-record-gcc-switches-by-default.patch @@ -0,0 +1,22 @@ +Description: Record GCC-style command-line switches by default + This makes Clang default behaviour more like GCC where if debug + symbol generation is enabled, the command-line switches data + will be stored inside the debug symbols. +Author: Zixing Liu +Forwarded: https://github.com/llvm/llvm-project/issues/94690 +Last-Update: 2024-06-04 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: llvm-toolchain-18-18.1.6/clang/lib/Driver/ToolChains/Clang.cpp +=================================================================== +--- llvm-toolchain-18-18.1.6.orig/clang/lib/Driver/ToolChains/Clang.cpp ++++ llvm-toolchain-18-18.1.6/clang/lib/Driver/ToolChains/Clang.cpp +@@ -7390,7 +7390,7 @@ void Clang::ConstructJob(Compilation &C, + // By default, -gno-record-gcc-switches is set on and no recording. + auto GRecordSwitches = + Args.hasFlag(options::OPT_grecord_command_line, +- options::OPT_gno_record_command_line, false); ++ options::OPT_gno_record_command_line, true); + auto FRecordSwitches = + Args.hasFlag(options::OPT_frecord_command_line, + options::OPT_fno_record_command_line, false); diff --git a/debian/patches/clang-tidy-run-bin.diff b/debian/patches/clang-tidy-run-bin.diff index ed7637a4..4f61f44f 100644 --- a/debian/patches/clang-tidy-run-bin.diff +++ b/debian/patches/clang-tidy-run-bin.diff @@ -1,19 +1,19 @@ -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py +Index: llvm-toolchain-snapshot_18~++20231101090856+e144ae54dcb9/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py -@@ -256,10 +256,13 @@ def main(): - help="allow alpha checkers from " "clang-analyzer.", +--- llvm-toolchain-snapshot_18~++20231101090856+e144ae54dcb9.orig/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py ++++ llvm-toolchain-snapshot_18~++20231101090856+e144ae54dcb9/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py +@@ -260,10 +260,13 @@ def main(): + help="allow alpha checkers from clang-analyzer.", ) parser.add_argument( - "-clang-tidy-binary", metavar="PATH", help="path to clang-tidy binary" + "-clang-tidy-binary", metavar="PATH", -+ default='clang-tidy-17', ++ default='clang-tidy-18', + help="path to clang-tidy binary" ) parser.add_argument( "-clang-apply-replacements-binary", -+ default='clang-apply-replacements-17', ++ default='clang-apply-replacements-18', metavar="PATH", help="path to clang-apply-replacements binary", ) diff --git a/debian/patches/env-lld-package-metadata.diff b/debian/patches/env-lld-package-metadata.diff new file mode 100644 index 00000000..2eb1e0b1 --- /dev/null +++ b/debian/patches/env-lld-package-metadata.diff @@ -0,0 +1,16 @@ +--- a/lld/ELF/Driver.cpp ++++ b/lld/ELF/Driver.cpp +@@ -1335,6 +1335,13 @@ static void readConfigs(opt::InputArgLis + config->orphanHandling = getOrphanHandling(args); + config->outputFile = args.getLastArgValue(OPT_o); + config->packageMetadata = args.getLastArgValue(OPT_package_metadata); ++ // No package-metadata option, fall-back to env ELF_PACKAGE_METADATA ++ if (config->packageMetadata.empty()) { ++ const char *env_package_metadata = getenv("ELF_PACKAGE_METADATA"); ++ if (env_package_metadata && strcmp(env_package_metadata, "") != 0) { ++ config->packageMetadata = StringRef(env_package_metadata); ++ } ++ } + config->pie = args.hasFlag(OPT_pie, OPT_no_pie, false); + config->printIcfSections = + args.hasFlag(OPT_print_icf_sections, OPT_no_print_icf_sections, false); diff --git a/debian/patches/fix-scan-view-path.diff b/debian/patches/fix-scan-view-path.diff index ee310efe..c371314d 100644 --- a/debian/patches/fix-scan-view-path.diff +++ b/debian/patches/fix-scan-view-path.diff @@ -6,7 +6,7 @@ Index: llvm-toolchain-snapshot_17~++20200326172000+4673699a470/clang/tools/scan- kMaxPortsToTry = 100 ### -+BASE_DIR = '/usr/share/clang/scan-view-17' ++BASE_DIR = '/usr/share/clang/scan-view-18' def url_is_up(url): diff --git a/debian/patches/force-sse2-compiler-rt.diff b/debian/patches/force-sse2-compiler-rt.diff index 53968f12..31c54a7a 100644 --- a/debian/patches/force-sse2-compiler-rt.diff +++ b/debian/patches/force-sse2-compiler-rt.diff @@ -1,8 +1,8 @@ -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/compiler-rt/lib/builtins/CMakeLists.txt +Index: llvm-toolchain-18_18.1.2/compiler-rt/lib/builtins/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/compiler-rt/lib/builtins/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/compiler-rt/lib/builtins/CMakeLists.txt -@@ -765,6 +765,12 @@ else () +--- llvm-toolchain-18_18.1.2.orig/compiler-rt/lib/builtins/CMakeLists.txt ++++ llvm-toolchain-18_18.1.2/compiler-rt/lib/builtins/CMakeLists.txt +@@ -772,6 +772,12 @@ else () append_list_if(COMPILER_RT_ENABLE_CET -fcf-protection=full BUILTIN_CFLAGS) endif() @@ -13,5 +13,5 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/compiler-rt/lib/ + endif() + append_list_if(COMPILER_RT_HAS_STD_C11_FLAG -std=c11 BUILTIN_CFLAGS) + append_list_if(COMPILER_RT_HAS_WBUILTIN_DECLARATION_MISMATCH_FLAG -Werror=builtin-declaration-mismatch BUILTIN_CFLAGS) - # These flags would normally be added to CMAKE_C_FLAGS by the llvm diff --git a/debian/patches/hurd/hurd-pathmax.diff b/debian/patches/hurd/hurd-pathmax.diff index c8939dd8..fcf3bde4 100644 --- a/debian/patches/hurd/hurd-pathmax.diff +++ b/debian/patches/hurd/hurd-pathmax.diff @@ -1,8 +1,8 @@ -Index: llvm-toolchain-snapshot_17~++20230309125305+68367141dd91/clang/lib/Basic/FileManager.cpp +Index: llvm-toolchain-snapshot_18~++20230928085653+a7f962c00745/clang/lib/Basic/FileManager.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230309125305+68367141dd91.orig/clang/lib/Basic/FileManager.cpp -+++ llvm-toolchain-snapshot_17~++20230309125305+68367141dd91/clang/lib/Basic/FileManager.cpp -@@ -610,6 +610,12 @@ FileManager::getNoncachedStatValue(Strin +--- llvm-toolchain-snapshot_18~++20230928085653+a7f962c00745.orig/clang/lib/Basic/FileManager.cpp ++++ llvm-toolchain-snapshot_18~++20230928085653+a7f962c00745/clang/lib/Basic/FileManager.cpp +@@ -611,6 +611,12 @@ FileManager::getNoncachedStatValue(Strin return std::error_code(); } @@ -13,12 +13,12 @@ Index: llvm-toolchain-snapshot_17~++20230309125305+68367141dd91/clang/lib/Basic/ + + void FileManager::GetUniqueIDMapping( - SmallVectorImpl &UIDToFiles) const { + SmallVectorImpl &UIDToFiles) const { UIDToFiles.clear(); -Index: llvm-toolchain-snapshot_17~++20230309125305+68367141dd91/lldb/include/lldb/lldb-defines.h +Index: llvm-toolchain-snapshot_18~++20230928085653+a7f962c00745/lldb/include/lldb/lldb-defines.h =================================================================== ---- llvm-toolchain-snapshot_17~++20230309125305+68367141dd91.orig/lldb/include/lldb/lldb-defines.h -+++ llvm-toolchain-snapshot_17~++20230309125305+68367141dd91/lldb/include/lldb/lldb-defines.h +--- llvm-toolchain-snapshot_18~++20230928085653+a7f962c00745.orig/lldb/include/lldb/lldb-defines.h ++++ llvm-toolchain-snapshot_18~++20230928085653+a7f962c00745/lldb/include/lldb/lldb-defines.h @@ -15,6 +15,11 @@ #define INT32_MAX 2147483647 #endif diff --git a/debian/patches/libclang-major-version-only.diff b/debian/patches/libclang-major-version-only.diff index 36800f38..64486cc3 100644 --- a/debian/patches/libclang-major-version-only.diff +++ b/debian/patches/libclang-major-version-only.diff @@ -1,6 +1,8 @@ ---- a/clang/tools/libclang/CMakeLists.txt -+++ b/clang/tools/libclang/CMakeLists.txt -@@ -196,7 +196,7 @@ +Index: llvm-toolchain-18_18.1.2/clang/tools/libclang/CMakeLists.txt +=================================================================== +--- llvm-toolchain-18_18.1.2.orig/clang/tools/libclang/CMakeLists.txt ++++ llvm-toolchain-18_18.1.2/clang/tools/libclang/CMakeLists.txt +@@ -208,7 +208,7 @@ if(ENABLE_SHARED) OBJECT_DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libclang.map) set_target_properties(libclang PROPERTIES diff --git a/debian/patches/libcxx/libcxx-armhf-ftbfs.diff b/debian/patches/libcxx/libcxx-armhf-ftbfs.diff index 46d63e30..8d2e078e 100644 --- a/debian/patches/libcxx/libcxx-armhf-ftbfs.diff +++ b/debian/patches/libcxx/libcxx-armhf-ftbfs.diff @@ -1,15 +1,19 @@ -Index: llvm-toolchain-snapshot_17~++20230222041723+465ee9bfb26d/libcxx/include/__atomic/aliases.h +Index: llvm-toolchain-snapshot_18~++20231122103518+575c9bf940e5/libcxx/include/__atomic/aliases.h =================================================================== ---- llvm-toolchain-snapshot_17~++20230222041723+465ee9bfb26d.orig/libcxx/include/__atomic/aliases.h -+++ llvm-toolchain-snapshot_17~++20230222041723+465ee9bfb26d/libcxx/include/__atomic/aliases.h -@@ -107,9 +107,12 @@ using __libcpp_unsigned_lock_free = __co - #endif +--- llvm-toolchain-snapshot_18~++20231122103518+575c9bf940e5.orig/libcxx/include/__atomic/aliases.h ++++ llvm-toolchain-snapshot_18~++20231122103518+575c9bf940e5/libcxx/include/__atomic/aliases.h +@@ -96,6 +96,7 @@ using __largest_lock_free_type = char; + # endif - #if !defined(_LIBCPP_NO_LOCK_FREE_TYPES) + # ifndef _LIBCPP_NO_LOCK_FREE_TYPES +#ifndef NO_LOCK_FREE - using atomic_signed_lock_free = atomic<__libcpp_signed_lock_free>; - using atomic_unsigned_lock_free = atomic<__libcpp_unsigned_lock_free>; - #endif + using __contention_t_or_largest = + __conditional_t<__libcpp_is_always_lock_free<__cxx_contention_t>::__value, + __cxx_contention_t, +@@ -105,6 +106,8 @@ using atomic_signed_lock_free = atomic + using atomic_unsigned_lock_free = atomic>; + # endif // !_LIBCPP_NO_LOCK_FREE_TYPES + #endif // C++20 +#endif +#undef NO_LOCK_FREE diff --git a/debian/patches/libcxx/libcxx-libatomic-only-with-gcc-rtlib.diff b/debian/patches/libcxx/libcxx-libatomic-only-with-gcc-rtlib.diff index 8020fdef..b750c4f0 100644 --- a/debian/patches/libcxx/libcxx-libatomic-only-with-gcc-rtlib.diff +++ b/debian/patches/libcxx/libcxx-libatomic-only-with-gcc-rtlib.diff @@ -1,19 +1,20 @@ if libatomic is found only link it if libgcc is the rtlib -Index: llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d/libcxx/CMakeLists.txt +Index: llvm-toolchain-snapshot_18~++20231213094656+c02d07fdf007/libcxx/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d.orig/libcxx/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d/libcxx/CMakeLists.txt -@@ -707,12 +707,14 @@ function(cxx_link_system_libraries targe +--- llvm-toolchain-snapshot_18~++20231213094656+c02d07fdf007.orig/libcxx/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20231213094656+c02d07fdf007/libcxx/CMakeLists.txt +@@ -685,13 +685,16 @@ function(cxx_link_system_libraries targe + endif() + elseif (LIBCXX_HAS_GCC_LIB) + target_link_libraries(${target} PRIVATE gcc) ++ if (LIBCXX_HAS_ATOMIC_LIB) ++ target_link_libraries(${target} PRIVATE atomic) ++ endif() + elseif (LIBCXX_HAS_GCC_S_LIB) + target_link_libraries(${target} PRIVATE gcc_s) endif() - elseif (LIBCXX_HAS_GCC_LIB) - target_link_libraries(${target} PRIVATE gcc) -+ if (LIBCXX_HAS_ATOMIC_LIB) -+ target_link_libraries(${target} PRIVATE atomic) -+ endif() - elseif (LIBCXX_HAS_GCC_S_LIB) - target_link_libraries(${target} PRIVATE gcc_s) - endif() -- + - if (LIBCXX_HAS_ATOMIC_LIB) - target_link_libraries(${target} PRIVATE atomic) + if (LIBCXX_HAS_ATOMIC_LIB) diff --git a/debian/patches/libcxx/libcxx-silent-failure-arm64.diff b/debian/patches/libcxx/libcxx-silent-failure-arm64.diff index 5a596877..8095c353 100644 --- a/debian/patches/libcxx/libcxx-silent-failure-arm64.diff +++ b/debian/patches/libcxx/libcxx-silent-failure-arm64.diff @@ -1,7 +1,7 @@ -Index: llvm-toolchain-snapshot_17~++20230328075740+568be31c9e50/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp +Index: llvm-toolchain-snapshot_18~++20231102103655+18839aec4ed1/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230328075740+568be31c9e50.orig/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp -+++ llvm-toolchain-snapshot_17~++20230328075740+568be31c9e50/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp +--- llvm-toolchain-snapshot_18~++20231102103655+18839aec4ed1.orig/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp ++++ llvm-toolchain-snapshot_18~++20231102103655+18839aec4ed1/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp @@ -8,6 +8,7 @@ // // UNSUPPORTED: no-threads @@ -10,16 +10,16 @@ Index: llvm-toolchain-snapshot_17~++20230328075740+568be31c9e50/libcxx/test/std/ // -Index: llvm-toolchain-snapshot_17~++20230328075740+568be31c9e50/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp +Index: llvm-toolchain-snapshot_18~++20231102103655+18839aec4ed1/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230328075740+568be31c9e50.orig/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp -+++ llvm-toolchain-snapshot_17~++20230328075740+568be31c9e50/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp -@@ -10,7 +10,7 @@ +--- llvm-toolchain-snapshot_18~++20231102103655+18839aec4ed1.orig/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp ++++ llvm-toolchain-snapshot_18~++20231102103655+18839aec4ed1/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp +@@ -10,6 +10,8 @@ // UNSUPPORTED: c++03, c++11 // ALLOW_RETRIES: 2 --// XFAIL: availability-shared_mutex-missing +// XFAIL: * - ++ // + // template class shared_lock; diff --git a/debian/patches/libcxx/libcxx-silent-test-libcxx.diff b/debian/patches/libcxx/libcxx-silent-test-libcxx.diff index e6a642b0..15c3595f 100644 --- a/debian/patches/libcxx/libcxx-silent-test-libcxx.diff +++ b/debian/patches/libcxx/libcxx-silent-test-libcxx.diff @@ -1,7 +1,7 @@ -Index: llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxx/test/std/numerics/rand/rand.util/rand.util.canonical/generate_canonical.pass.cpp +Index: llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396/libcxx/test/std/numerics/rand/rand.util/rand.util.canonical/generate_canonical.pass.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83.orig/libcxx/test/std/numerics/rand/rand.util/rand.util.canonical/generate_canonical.pass.cpp -+++ llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxx/test/std/numerics/rand/rand.util/rand.util.canonical/generate_canonical.pass.cpp +--- llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396.orig/libcxx/test/std/numerics/rand/rand.util/rand.util.canonical/generate_canonical.pass.cpp ++++ llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396/libcxx/test/std/numerics/rand/rand.util/rand.util.canonical/generate_canonical.pass.cpp @@ -11,6 +11,8 @@ // template // RealType generate_canonical(URNG& g); @@ -11,10 +11,10 @@ Index: llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxx/test/std/ #include #include -Index: llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxx/test/std/re/re.traits/isctype.pass.cpp +Index: llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396/libcxx/test/std/re/re.traits/isctype.pass.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83.orig/libcxx/test/std/re/re.traits/isctype.pass.cpp -+++ llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxx/test/std/re/re.traits/isctype.pass.cpp +--- llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396.orig/libcxx/test/std/re/re.traits/isctype.pass.cpp ++++ llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396/libcxx/test/std/re/re.traits/isctype.pass.cpp @@ -12,6 +12,7 @@ // bool isctype(charT c, char_class_type f) const; @@ -23,23 +23,23 @@ Index: llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxx/test/std/ #include #include -Index: llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxxabi/test/catch_multi_level_pointer.pass.cpp +Index: llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396/libcxxabi/test/catch_multi_level_pointer.pass.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83.orig/libcxxabi/test/catch_multi_level_pointer.pass.cpp -+++ llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxxabi/test/catch_multi_level_pointer.pass.cpp -@@ -11,6 +11,8 @@ - // 1b00fc5d8133 made it in the dylib in macOS 10.11 - // XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10}} +--- llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396.orig/libcxxabi/test/catch_multi_level_pointer.pass.cpp ++++ llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396/libcxxabi/test/catch_multi_level_pointer.pass.cpp +@@ -15,6 +15,8 @@ + // memory and this test requires almost 5 MB + // UNSUPPORTED: LIBCXX-PICOLIBC-FIXME +// XFAIL: * + #include #include #include -Index: llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp +Index: llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83.orig/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp -+++ llvm-toolchain-snapshot_17~++20230330020402+b0c892296b83/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp +--- llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396.orig/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp ++++ llvm-toolchain-snapshot_18~++20231218053220+7b1e4239b396/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp @@ -15,6 +15,8 @@ // template void construct(T* p, Args&&... args); diff --git a/debian/patches/link-with-package-metadata.diff b/debian/patches/link-with-package-metadata.diff new file mode 100644 index 00000000..1f413758 --- /dev/null +++ b/debian/patches/link-with-package-metadata.diff @@ -0,0 +1,24 @@ +--- a/clang/lib/Driver/ToolChains/Linux.cpp ++++ b/clang/lib/Driver/ToolChains/Linux.cpp +@@ -287,6 +287,21 @@ Linux::Linux(const Driver &D, const llvm + ExtraOpts.push_back("--build-id"); + #endif + ++ if (Distro.IsDebian() && Distro >= Distro::DebianTrixie ++ || Distro.IsUbuntu() && Distro >= Distro::UbuntuNoble) ++ { ++ const char *pkg_metadata = getenv ("ELF_PACKAGE_METADATA"); ++ const char *no_pkg_metadata = getenv ("NO_PKG_METADATA"); ++ ++ if (no_pkg_metadata) { ++ // don't issue --package-metadata option ++ } else if (!pkg_metadata) { ++ // no environment set for package metadata ++ } else { ++ ExtraOpts.push_back(std::string("--package-metadata=") + pkg_metadata); ++ } ++ } ++ + // The selection of paths to try here is designed to match the patterns which + // the GCC driver itself uses, as this is part of the GCC-compatible driver. + // This was determined by running GCC in a fake filesystem, creating all diff --git a/debian/patches/lldb/lldb-disable-swig-error.diff b/debian/patches/lldb/lldb-disable-swig-error.diff deleted file mode 100644 index 8d9d97fa..00000000 --- a/debian/patches/lldb/lldb-disable-swig-error.diff +++ /dev/null @@ -1,13 +0,0 @@ -Index: llvm-toolchain-snapshot_14~++20211114120952+5b4bfd8c2415/lldb/bindings/python/python.swig -=================================================================== ---- llvm-toolchain-snapshot_14~++20211114120952+5b4bfd8c2415.orig/lldb/bindings/python/python.swig -+++ llvm-toolchain-snapshot_14~++20211114120952+5b4bfd8c2415/lldb/bindings/python/python.swig -@@ -54,7 +54,7 @@ except ImportError: - %enddef - // These versions will not generate working python modules, so error out early. - #if SWIG_VERSION >= 0x030009 && SWIG_VERSION < 0x030011 --#error Swig versions 3.0.9 and 3.0.10 are incompatible with lldb. -+#warning Swig versions 3.0.9 and 3.0.10 are incompatible with lldb. - #endif - - // The name of the module to be created. diff --git a/debian/patches/lldb/print-lldb-path.patch b/debian/patches/lldb/print-lldb-path.patch index b9bb3b79..f325acd4 100644 --- a/debian/patches/lldb/print-lldb-path.patch +++ b/debian/patches/lldb/print-lldb-path.patch @@ -1,19 +1,19 @@ Author: Gianfranco Costamagna Last-Update: 2023-01-19 -Index: llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d/lldb/bindings/python/get-python-config.py +Index: llvm-toolchain-snapshot_18~++20230912011735+4793c2c3de79/lldb/bindings/python/get-python-config.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d.orig/lldb/bindings/python/get-python-config.py -+++ llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d/lldb/bindings/python/get-python-config.py -@@ -15,6 +15,7 @@ def relpath_nodots(path, base): - return rel +--- llvm-toolchain-snapshot_18~++20230912011735+4793c2c3de79.orig/lldb/bindings/python/get-python-config.py ++++ llvm-toolchain-snapshot_18~++20230912011735+4793c2c3de79/lldb/bindings/python/get-python-config.py +@@ -16,6 +16,7 @@ def relpath_nodots(path, base): + def main(): + import sysconfig parser = argparse.ArgumentParser(description="extract cmake variables from python") parser.add_argument("variable_name") args = parser.parse_args() -@@ -31,7 +32,19 @@ def main(): +@@ -32,7 +33,19 @@ def main(): # If not, you'll have to use lldb -P or lldb -print-script-interpreter-info # to figure out where it is. try: @@ -34,10 +34,10 @@ Index: llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d/lldb/bindings/py except ValueError: # Try to fall back to something reasonable if sysconfig's platlib # is outside of sys.prefix -Index: llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp +Index: llvm-toolchain-snapshot_18~++20230912011735+4793c2c3de79/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp =================================================================== ---- llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d.orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp -+++ llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp +--- llvm-toolchain-snapshot_18~++20230912011735+4793c2c3de79.orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp ++++ llvm-toolchain-snapshot_18~++20230912011735+4793c2c3de79/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp @@ -240,6 +240,7 @@ void ScriptInterpreterPython::ComputePyt // the real python interpreter uses. (e.g. lib for most, lib64 on RHEL // x86_64, or bin on Windows). diff --git a/debian/patches/llvm-toolchain-17-sve-types-aux-target.diff b/debian/patches/llvm-toolchain-17-sve-types-aux-target.diff new file mode 100644 index 00000000..64445558 --- /dev/null +++ b/debian/patches/llvm-toolchain-17-sve-types-aux-target.diff @@ -0,0 +1,50 @@ +From: Emanuele Rocca +Date: Fri, 19 Jul 2024 09:25:38 +0200 +Subject: [PATCH] [Clang] make SVE types known to device targets too (#99446) + +For the purpose of preprocessing and declarations in header files, +ensure clang accepts SVE types for both device and host targets. + +Co-authored-by: Sander De Smalen +--- + clang/lib/AST/ASTContext.cpp | 3 ++- + clang/lib/Sema/Sema.cpp | 4 +++- + clang/test/PCH/aarch64-sve-types.c | 2 ++ + 3 files changed, 7 insertions(+), 2 deletions(-) + +--- a/clang/lib/AST/ASTContext.cpp ++++ b/clang/lib/AST/ASTContext.cpp +@@ -1353,7 +1353,8 @@ + #include "clang/Basic/OpenCLExtensionTypes.def" + } + +- if (Target.hasAArch64SVETypes()) { ++ if (Target.hasAArch64SVETypes() || ++ (AuxTarget && AuxTarget->hasAArch64SVETypes())) { + #define SVE_TYPE(Name, Id, SingletonId) \ + InitBuiltinType(SingletonId, BuiltinType::Id); + #include "clang/Basic/AArch64SVEACLETypes.def" +--- a/clang/lib/Sema/Sema.cpp ++++ b/clang/lib/Sema/Sema.cpp +@@ -424,7 +424,9 @@ + #include "clang/Basic/OpenCLExtensionTypes.def" + } + +- if (Context.getTargetInfo().hasAArch64SVETypes()) { ++ if (Context.getTargetInfo().hasAArch64SVETypes() || ++ (Context.getAuxTargetInfo() && ++ Context.getAuxTargetInfo()->hasAArch64SVETypes())) { + #define SVE_TYPE(Name, Id, SingletonId) \ + addImplicitTypedef(Name, Context.SingletonId); + #include "clang/Basic/AArch64SVEACLETypes.def" +--- a/clang/test/PCH/aarch64-sve-types.c ++++ b/clang/test/PCH/aarch64-sve-types.c +@@ -1,6 +1,8 @@ + // RUN: %clang_cc1 -triple aarch64-linux-gnu -emit-pch -o %t %s + // RUN: %clang_cc1 -triple aarch64-linux-gnu -include-pch %t \ + // RUN: -fsyntax-only -verify %s ++// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -aux-triple aarch64-linux-gnu \ ++// RUN: -x hip-cpp-output -emit-pch -o %t %s + + // expected-no-diagnostics + diff --git a/debian/patches/mips/D154390-pre-R6.diff b/debian/patches/mips/D154390-pre-R6.diff deleted file mode 100644 index 1ce768e1..00000000 --- a/debian/patches/mips/D154390-pre-R6.diff +++ /dev/null @@ -1,53 +0,0 @@ -see https://reviews.llvm.org/D158491, still unreviewed upstream - ---- a/compiler-rt/lib/interception/interception.h -+++ b/compiler-rt/lib/interception/interception.h -@@ -199,8 +199,9 @@ - ".type " SANITIZER_STRINGIFY(TRAMPOLINE(func)) ", %function\n" \ - SANITIZER_STRINGIFY(TRAMPOLINE(func)) ":\n" \ - SANITIZER_STRINGIFY(CFI_STARTPROC) "\n" \ -- SANITIZER_STRINGIFY(ASM_TAIL_CALL) " __interceptor_" \ -- SANITIZER_STRINGIFY(ASM_PREEMPTIBLE_SYM(func)) "\n" \ -+ C_ASM_TAIL_CALL(SANITIZER_STRINGIFY(TRAMPOLINE(func)), \ -+ "__interceptor_" \ -+ SANITIZER_STRINGIFY(ASM_PREEMPTIBLE_SYM(func))) "\n" \ - SANITIZER_STRINGIFY(CFI_ENDPROC) "\n" \ - ".size " SANITIZER_STRINGIFY(TRAMPOLINE(func)) ", " \ - ".-" SANITIZER_STRINGIFY(TRAMPOLINE(func)) "\n" \ ---- a/compiler-rt/lib/sanitizer_common/sanitizer_asm.h -+++ b/compiler-rt/lib/sanitizer_common/sanitizer_asm.h -@@ -44,6 +44,8 @@ - - #if defined(__x86_64__) || defined(__i386__) || defined(__sparc__) - # define ASM_TAIL_CALL jmp -+#elif defined(__mips__) && __mips_isa_rev >= 6 -+# define ASM_TAIL_CALL bc - #elif defined(__arm__) || defined(__aarch64__) || defined(__mips__) || \ - defined(__powerpc__) || defined(__loongarch_lp64) - # define ASM_TAIL_CALL b -@@ -53,6 +55,25 @@ - # define ASM_TAIL_CALL tail - #endif - -+#if defined(__mips64) && __mips_isa_rev < 6 -+# define C_ASM_TAIL_CALL(tfunc, ifunc) \ -+ "lui $t8, %hi(%neg(%gp_rel(" tfunc ")))\n" \ -+ "daddu $t8, $t8, $t9\n" \ -+ "daddu $t8, $t8, %lo(%neg(%gp_rel(" tfunc ")))\n" \ -+ "ld $t9, %got_disp(" ifunc ")($t8)\n" \ -+ "jr $t9\n" -+#elif defined(__mips__) && __mips_isa_rev < 6 -+# define C_ASM_TAIL_CALL(tfunc, ifunc) \ -+ ".set noreorder\n" \ -+ ".cpload $t9\n" \ -+ ".set reorder\n" \ -+ "lw $t9, %got(" ifunc ")($gp)\n" \ -+ "jr $t9\n" -+#elif defined(ASM_TAIL_CALL) -+# define C_ASM_TAIL_CALL(tfunc, ifunc) \ -+ SANITIZER_STRINGIFY(ASM_TAIL_CALL) " " ifunc -+#endif -+ - #if defined(__ELF__) && defined(__x86_64__) || defined(__i386__) || \ - defined(__riscv) - # define ASM_PREEMPTIBLE_SYM(sym) sym@plt diff --git a/debian/patches/openmp-fix-runtimes-build.diff b/debian/patches/openmp-fix-runtimes-build.diff index 1d6caad4..1c44298e 100644 --- a/debian/patches/openmp-fix-runtimes-build.diff +++ b/debian/patches/openmp-fix-runtimes-build.diff @@ -2,11 +2,11 @@ include required runtimes as dependencies to openmp targets to make sure they are built first when included as part of a runtimes build since openmp can depend on them <<<<<<< Updated upstream -Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/llvm/runtimes/CMakeLists.txt +Index: llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/llvm/runtimes/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61.orig/llvm/runtimes/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/llvm/runtimes/CMakeLists.txt -@@ -236,6 +236,7 @@ function(runtime_default_target) +--- llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee.orig/llvm/runtimes/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/llvm/runtimes/CMakeLists.txt +@@ -247,6 +247,7 @@ function(runtime_default_target) -DLLVM_ENABLE_PROJECTS_USED=${LLVM_ENABLE_PROJECTS_USED} -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=${LLVM_ENABLE_PER_TARGET_RUNTIME_DIR} -DLLVM_BUILD_TOOLS=${LLVM_BUILD_TOOLS} @@ -14,7 +14,7 @@ Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/llvm/runtimes/CM -DCMAKE_C_COMPILER_WORKS=ON -DCMAKE_CXX_COMPILER_WORKS=ON -DCMAKE_ASM_COMPILER_WORKS=ON -@@ -496,7 +497,7 @@ if(runtimes) +@@ -513,7 +514,7 @@ if(runtimes) # build directory cannot find the C++ headers in certain configurations. # I need to build a mechanism for runtime projects to provide CMake code # that executes at LLVM configuration time to handle this case. @@ -23,11 +23,11 @@ Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/llvm/runtimes/CM # We need to add the runtimes as a dependency because compiler-rt can be # built as part of runtimes and we need the profile runtime for PGO add_dependencies(clang-bootstrap-deps runtimes) -Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/CMakeLists.txt +Index: llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61.orig/openmp/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/CMakeLists.txt -@@ -94,6 +94,28 @@ else() +--- llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee.orig/openmp/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/CMakeLists.txt +@@ -111,6 +111,28 @@ else() get_clang_resource_dir(LIBOMP_HEADERS_INSTALL_PATH SUBDIR include) endif() @@ -56,24 +56,24 @@ Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/CMakeList # Build host runtime library, after LIBOMPTARGET variables are set since they are needed # to enable time profiling support in the OpenMP runtime. add_subdirectory(runtime) -Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/libomptarget/plugins-nextgen/CMakeLists.txt +Index: llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/libomptarget/plugins-nextgen/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61.orig/openmp/libomptarget/plugins-nextgen/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/libomptarget/plugins-nextgen/CMakeLists.txt -@@ -62,6 +62,8 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "${tma - "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../exports") - endif() +--- llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee.orig/openmp/libomptarget/plugins-nextgen/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/libomptarget/plugins-nextgen/CMakeLists.txt +@@ -71,6 +71,8 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "${tma + "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../exports") + endif() + add_runtimes_build_depends_if_needed("omptarget.rtl.${tmachine_libname}") + - # Install plugin under the lib destination folder. - install(TARGETS "omptarget.rtl.${tmachine_libname}" - LIBRARY DESTINATION "${OPENMP_INSTALL_LIBDIR}") -Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt + # Install plugin under the lib destination folder. + install(TARGETS "omptarget.rtl.${tmachine_libname}" + LIBRARY DESTINATION "${OPENMP_INSTALL_LIBDIR}") +Index: llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61.orig/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt -@@ -84,6 +84,8 @@ else() +--- llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee.orig/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt +@@ -80,6 +80,8 @@ else() " Use 'LIBOMPTARGET_FORCE_NVIDIA_TESTS' to override.") endif() @@ -82,11 +82,11 @@ Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/libomptar # Install plugin under the lib destination folder. install(TARGETS omptarget.rtl.cuda LIBRARY DESTINATION "${OPENMP_INSTALL_LIBDIR}") set_target_properties(omptarget.rtl.cuda PROPERTIES -Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/libomptarget/src/CMakeLists.txt +Index: llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/libomptarget/src/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61.orig/openmp/libomptarget/src/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/libomptarget/src/CMakeLists.txt -@@ -36,7 +36,9 @@ add_llvm_library(omptarget +--- llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee.orig/openmp/libomptarget/src/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/libomptarget/src/CMakeLists.txt +@@ -41,7 +41,9 @@ add_llvm_library(omptarget omp NO_INSTALL_RPATH @@ -97,11 +97,11 @@ Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/libomptar target_include_directories(omptarget PRIVATE ${LIBOMPTARGET_INCLUDE_DIR}) if (LIBOMP_HAVE_VERSION_SCRIPT_FLAG) -Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/runtime/CMakeLists.txt +Index: llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/runtime/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61.orig/openmp/runtime/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/runtime/CMakeLists.txt -@@ -292,6 +292,10 @@ if(LIBOMP_STATS) +--- llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee.orig/openmp/runtime/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/runtime/CMakeLists.txt +@@ -318,6 +318,10 @@ if(LIBOMP_STATS) set(LIBOMP_USE_STDCPPLIB TRUE) endif() @@ -112,11 +112,11 @@ Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/runtime/C # Shared library can be switched to a static library set(LIBOMP_ENABLE_SHARED TRUE CACHE BOOL "Shared library instead of static library?") -Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/runtime/src/CMakeLists.txt +Index: llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/runtime/src/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61.orig/openmp/runtime/src/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/runtime/src/CMakeLists.txt -@@ -139,6 +139,7 @@ set_source_files_properties(${LIBOMP_ASM +--- llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee.orig/openmp/runtime/src/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/runtime/src/CMakeLists.txt +@@ -144,6 +144,7 @@ set_source_files_properties(${LIBOMP_ASM if(NOT ${LIBOMP_USE_STDCPPLIB}) set(LIBOMP_LINKER_LANGUAGE C) set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES) @@ -124,7 +124,7 @@ Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/runtime/s else() set(LIBOMP_LINKER_LANGUAGE CXX) endif() -@@ -200,6 +201,8 @@ else() +@@ -205,6 +206,8 @@ else() ) endif() @@ -133,10 +133,10 @@ Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/runtime/s # Get the library's location within the build tree for the unit tester if(NOT WIN32) get_target_property(LIBOMP_LIBRARY_DIR omp LIBRARY_OUTPUT_DIRECTORY) -Index: llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/tools/archer/CMakeLists.txt +Index: llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/tools/archer/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61.orig/openmp/tools/archer/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230707101520+336d7281ad61/openmp/tools/archer/CMakeLists.txt +--- llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee.orig/openmp/tools/archer/CMakeLists.txt ++++ llvm-toolchain-snapshot_18~++20240109113757+a7262d2d9bee/openmp/tools/archer/CMakeLists.txt @@ -15,6 +15,9 @@ if(LIBOMP_OMPT_SUPPORT AND LIBOMP_ARCHER target_link_libraries(archer ${CMAKE_DL_LIBS}) add_library(archer_static STATIC ompt-tsan.cpp) diff --git a/debian/patches/python-clangpath.diff b/debian/patches/python-clangpath.diff index ce679260..7efb1df0 100644 --- a/debian/patches/python-clangpath.diff +++ b/debian/patches/python-clangpath.diff @@ -11,7 +11,7 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/bindings/p file = "libclang.dll" else: - file = "libclang.so" -+ file = "libclang-17.so" ++ file = "libclang-18.so" if Config.library_path: file = Config.library_path + "/" + file diff --git a/debian/patches/python3-shebang.patch b/debian/patches/python3-shebang.patch index a57c8f7b..3e4d77f1 100644 --- a/debian/patches/python3-shebang.patch +++ b/debian/patches/python3-shebang.patch @@ -1,779 +1,769 @@ Description: change all shebangs to Python3 find . -name "*.py" -exec sed "s|\!/usr/bin/env python$|\!/usr/bin/env python3|g" -i {} \; -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # # =- run-find-all-symbols.py - Parallel find-all-symbols runner -*- python -*-=# # -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/bindings/python/examples/cindex/cindex-dump.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/bindings/python/examples/cindex/cindex-dump.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/bindings/python/examples/cindex/cindex-dump.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/bindings/python/examples/cindex/cindex-dump.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/bindings/python/examples/cindex/cindex-dump.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/bindings/python/examples/cindex/cindex-dump.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # ===- cindex-dump.py - cindex/Python Source Dump -------------*- python -*--===# # -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/bindings/python/examples/cindex/cindex-includes.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/bindings/python/examples/cindex/cindex-includes.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/bindings/python/examples/cindex/cindex-includes.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/bindings/python/examples/cindex/cindex-includes.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/bindings/python/examples/cindex/cindex-includes.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/bindings/python/examples/cindex/cindex-includes.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # ===- cindex-includes.py - cindex/Python Inclusion Graph -----*- python -*--===# # -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/tools/scan-view/bin/scan-view +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/tools/scan-view/bin/scan-view =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/tools/scan-view/bin/scan-view -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/tools/scan-view/bin/scan-view +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/tools/scan-view/bin/scan-view ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/tools/scan-view/bin/scan-view @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/tools/scan-view/share/startfile.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/tools/scan-view/share/startfile.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/tools/scan-view/share/startfile.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/tools/scan-view/share/startfile.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/tools/scan-view/share/startfile.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/tools/scan-view/share/startfile.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # -*- coding: utf-8 -*- """Utility for opening a file using the default application in a cross-platform -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/ABITest/ABITestGen.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/ABITest/ABITestGen.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/ABITest/ABITestGen.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/ABITest/ABITestGen.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/ABITest/ABITestGen.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/ABITest/ABITestGen.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import absolute_import, division, print_function from pprint import pprint -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/CIndex/completion_logger_server.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/CIndex/completion_logger_server.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/CIndex/completion_logger_server.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/CIndex/completion_logger_server.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/CIndex/completion_logger_server.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/CIndex/completion_logger_server.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import absolute_import, division, print_function import sys from socket import * -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/CaptureCmd +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/CaptureCmd =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/CaptureCmd -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/CaptureCmd +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/CaptureCmd ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/CaptureCmd @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """CaptureCmd - A generic tool for capturing information about the invocations of another program. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/CmpDriver +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/CmpDriver =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/CmpDriver -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/CmpDriver +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/CmpDriver ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/CmpDriver @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ A simple utility that compares tool invocations and exit codes issued by -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/FindSpecRefs +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/FindSpecRefs =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/FindSpecRefs -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/FindSpecRefs +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/FindSpecRefs ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/FindSpecRefs @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import os import re -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/FuzzTest +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/FuzzTest =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/FuzzTest -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/FuzzTest +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/FuzzTest ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/FuzzTest @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ This is a generic fuzz testing tool, see --help for more information. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/TestUtils/deep-stack.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/TestUtils/deep-stack.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/TestUtils/deep-stack.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/TestUtils/deep-stack.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/TestUtils/deep-stack.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/TestUtils/deep-stack.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import absolute_import, division, print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/CmpRuns.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/CmpRuns.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/analyzer/CmpRuns.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/CmpRuns.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/analyzer/CmpRuns.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/CmpRuns.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ CmpRuns - A simple tool for comparing two static analyzer runs to determine -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/SATestAdd.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/SATestAdd.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/analyzer/SATestAdd.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/SATestAdd.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/analyzer/SATestAdd.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/SATestAdd.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ Static Analyzer qualification infrastructure: adding a new project to -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/SATestBuild.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/SATestBuild.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/analyzer/SATestBuild.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/SATestBuild.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/analyzer/SATestBuild.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/SATestBuild.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ Static Analyzer qualification infrastructure. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/SATestUpdateDiffs.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/SATestUpdateDiffs.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/analyzer/SATestUpdateDiffs.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/SATestUpdateDiffs.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/analyzer/SATestUpdateDiffs.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/SATestUpdateDiffs.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ Update reference results for static analyzer. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/SumTimerInfo.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/SumTimerInfo.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/analyzer/SumTimerInfo.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/SumTimerInfo.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/analyzer/SumTimerInfo.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/SumTimerInfo.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ Script to Summarize statistics in the scan-build output. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/exploded-graph-rewriter.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/exploded-graph-rewriter.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/analyzer/exploded-graph-rewriter.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/analyzer/exploded-graph-rewriter.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/analyzer/exploded-graph-rewriter.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/analyzer/exploded-graph-rewriter.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # # ===- exploded-graph-rewriter.py - ExplodedGraph dump tool -----*- python -*--# # -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/check_cfc/check_cfc.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/check_cfc/check_cfc.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/check_cfc/check_cfc.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/check_cfc/check_cfc.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/check_cfc/check_cfc.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/check_cfc/check_cfc.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """Check CFC - Check Compile Flow Consistency -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/check_cfc/obj_diff.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/check_cfc/obj_diff.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/check_cfc/obj_diff.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/check_cfc/obj_diff.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/check_cfc/obj_diff.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/check_cfc/obj_diff.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import absolute_import, division, print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/check_cfc/test_check_cfc.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/check_cfc/test_check_cfc.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/check_cfc/test_check_cfc.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/check_cfc/test_check_cfc.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/check_cfc/test_check_cfc.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/check_cfc/test_check_cfc.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """Test internal functions within check_cfc.py.""" -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/modfuzz.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/modfuzz.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/modfuzz.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/modfuzz.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/modfuzz.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/modfuzz.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # To use: # 1) Update the 'decls' list below with your fuzzing configuration. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/token-delta.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/token-delta.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/clang/utils/token-delta.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/clang/utils/token-delta.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/clang/utils/token-delta.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/clang/utils/token-delta.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import absolute_import, division, print_function import os -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/compiler-rt/lib/asan/scripts/asan_symbolize.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/compiler-rt/lib/asan/scripts/asan_symbolize.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/compiler-rt/lib/asan/scripts/asan_symbolize.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/compiler-rt/lib/asan/scripts/asan_symbolize.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/compiler-rt/lib/asan/scripts/asan_symbolize.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/compiler-rt/lib/asan/scripts/asan_symbolize.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # ===- lib/asan/scripts/asan_symbolize.py -----------------------------------===# # # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # ===- lib/fuzzer/scripts/unbalanced_allocs.py ------------------------------===# # # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # ===- lib/sanitizer_common/scripts/gen_dynamic_list.py ---------------------===# # # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/compiler-rt/lib/sanitizer_common/scripts/sancov.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/compiler-rt/lib/sanitizer_common/scripts/sancov.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/compiler-rt/lib/sanitizer_common/scripts/sancov.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/compiler-rt/lib/sanitizer_common/scripts/sancov.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/compiler-rt/lib/sanitizer_common/scripts/sancov.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/compiler-rt/lib/sanitizer_common/scripts/sancov.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # Merge or print the coverage data collected by asan's coverage. # Input files are sequences of 4-byte integers. # We need to merge these integers into a set and then -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/libcxx/utils/cat_files.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/libcxx/utils/cat_files.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/libcxx/utils/cat_files.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/libcxx/utils/cat_files.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/libcxx/utils/cat_files.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/libcxx/utils/cat_files.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # ===----------------------------------------------------------------------===## # # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/libcxx/utils/generate_feature_test_macro_components.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/libcxx/utils/generate_feature_test_macro_components.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/libcxx/utils/generate_feature_test_macro_components.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/libcxx/utils/generate_feature_test_macro_components.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/libcxx/utils/generate_feature_test_macro_components.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/libcxx/utils/generate_feature_test_macro_components.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import os from builtins import range -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lld/utils/benchmark.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lld/utils/benchmark.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lld/utils/benchmark.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lld/utils/benchmark.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/lld/utils/benchmark.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lld/utils/benchmark.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. # See https://llvm.org/LICENSE.txt for license information. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/examples/python/file_extract.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/examples/python/file_extract.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lldb/examples/python/file_extract.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/examples/python/file_extract.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/lldb/examples/python/file_extract.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/examples/python/file_extract.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import string import struct -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/packages/Python/lldbsuite/test/bench.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/packages/Python/lldbsuite/test/bench.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lldb/packages/Python/lldbsuite/test/bench.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/packages/Python/lldbsuite/test/bench.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/lldb/packages/Python/lldbsuite/test/bench.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/packages/Python/lldbsuite/test/bench.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ A simple bench runner which delegates to the ./dotest.py test driver to run the -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/scripts/analyze-project-deps.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py -@@ -1,4 +1,4 @@ --#!/usr/bin/env python -+#!/usr/bin/env python3 - - import binascii - import json -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/scripts/analyze-project-deps.py -=================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lldb/scripts/analyze-project-deps.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/scripts/analyze-project-deps.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/lldb/scripts/analyze-project-deps.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/scripts/analyze-project-deps.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import argparse import itertools -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/scripts/verify_api.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/scripts/verify_api.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lldb/scripts/verify_api.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/scripts/verify_api.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/lldb/scripts/verify_api.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/scripts/verify_api.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import subprocess import optparse -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/third_party/Python/module/pexpect-4.6/pexpect/FSM.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/third_party/Python/module/pexpect-4.6/pexpect/FSM.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lldb/third_party/Python/module/pexpect-4.6/pexpect/FSM.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/third_party/Python/module/pexpect-4.6/pexpect/FSM.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/lldb/third_party/Python/module/pexpect-4.6/pexpect/FSM.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/third_party/Python/module/pexpect-4.6/pexpect/FSM.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 '''This module implements a Finite State Machine (FSM). In addition to state this FSM also maintains a user defined "memory". So this FSM can be used as a -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/utils/lui/lui.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/utils/lui/lui.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lldb/utils/lui/lui.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/utils/lui/lui.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/lldb/utils/lui/lui.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/utils/lui/lui.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 ##===-- lui.py -----------------------------------------------*- Python -*-===## ## # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/utils/lui/sandbox.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/utils/lui/sandbox.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/lldb/utils/lui/sandbox.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/lldb/utils/lui/sandbox.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/lldb/utils/lui/sandbox.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/lldb/utils/lui/sandbox.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 ##===-- sandbox.py -------------------------------------------*- Python -*-===## ## # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/cached/genk-timing.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/cached/genk-timing.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/examples/Kaleidoscope/MCJIT/cached/genk-timing.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/cached/genk-timing.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/examples/Kaleidoscope/MCJIT/cached/genk-timing.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/cached/genk-timing.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/cached/split-lib.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/cached/split-lib.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/examples/Kaleidoscope/MCJIT/cached/split-lib.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/cached/split-lib.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/examples/Kaleidoscope/MCJIT/cached/split-lib.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/cached/split-lib.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/complete/genk-timing.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/complete/genk-timing.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/examples/Kaleidoscope/MCJIT/complete/genk-timing.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/complete/genk-timing.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/examples/Kaleidoscope/MCJIT/complete/genk-timing.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/complete/genk-timing.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/complete/split-lib.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/complete/split-lib.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/examples/Kaleidoscope/MCJIT/complete/split-lib.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/complete/split-lib.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/examples/Kaleidoscope/MCJIT/complete/split-lib.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/complete/split-lib.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/lazy/genk-timing.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/lazy/genk-timing.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/examples/Kaleidoscope/MCJIT/lazy/genk-timing.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/examples/Kaleidoscope/MCJIT/lazy/genk-timing.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/examples/Kaleidoscope/MCJIT/lazy/genk-timing.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/examples/Kaleidoscope/MCJIT/lazy/genk-timing.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/test/BugPoint/compile-custom.ll.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/test/BugPoint/compile-custom.ll.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/test/BugPoint/compile-custom.ll.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/test/BugPoint/compile-custom.ll.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/test/BugPoint/compile-custom.ll.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/test/BugPoint/compile-custom.ll.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/test/Other/opt-bisect-helper.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/test/Other/opt-bisect-helper.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/test/Other/opt-bisect-helper.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/test/Other/opt-bisect-helper.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/test/Other/opt-bisect-helper.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/test/Other/opt-bisect-helper.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/test/TableGen/JSON-check.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/test/TableGen/JSON-check.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/test/TableGen/JSON-check.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/test/TableGen/JSON-check.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/test/TableGen/JSON-check.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/test/TableGen/JSON-check.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import sys import subprocess -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/tools/opt-viewer/opt-diff.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/tools/opt-viewer/opt-diff.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/tools/opt-viewer/opt-diff.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/tools/opt-viewer/opt-diff.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/tools/opt-viewer/opt-diff.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/tools/opt-viewer/opt-diff.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/tools/opt-viewer/opt-stats.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/tools/opt-viewer/opt-stats.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/tools/opt-viewer/opt-stats.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/tools/opt-viewer/opt-stats.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/tools/opt-viewer/opt-stats.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/tools/opt-viewer/opt-stats.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/tools/opt-viewer/opt-viewer.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/tools/opt-viewer/opt-viewer.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/tools/opt-viewer/opt-viewer.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/tools/opt-viewer/opt-viewer.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/tools/opt-viewer/opt-viewer.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/tools/opt-viewer/opt-viewer.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/tools/opt-viewer/optrecord.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/tools/opt-viewer/optrecord.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/tools/opt-viewer/optrecord.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/tools/opt-viewer/optrecord.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/tools/opt-viewer/optrecord.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/tools/opt-viewer/optrecord.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/Misc/zkill +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/Misc/zkill =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/Misc/zkill -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/Misc/zkill +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/Misc/zkill ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/Misc/zkill @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import os import re -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/abtest.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/abtest.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/abtest.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/abtest.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/abtest.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/abtest.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # # Given a previous good compile narrow down miscompiles. # Expects two directories named "before" and "after" each containing a set of -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/bisect +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/bisect =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/bisect -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/bisect +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/bisect ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/bisect @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # # The way you use this is you create a script that takes in as its first # argument a count. The script passes into LLVM the count via a command -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/bisect-skip-count +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/bisect-skip-count =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/bisect-skip-count -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/bisect-skip-count +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/bisect-skip-count ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/bisect-skip-count @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # This script is used to bisect skip and count arguments for --debug-counter. # It is similar to bisect, except it understands how to increase skip and decrease count # -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/bugpoint_gisel_reducer.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/bugpoint_gisel_reducer.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/bugpoint_gisel_reducer.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/bugpoint_gisel_reducer.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/bugpoint_gisel_reducer.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/bugpoint_gisel_reducer.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """Reduces GlobalISel failures. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/clang-parse-diagnostics-file +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/clang-parse-diagnostics-file =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/clang-parse-diagnostics-file -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/clang-parse-diagnostics-file +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/clang-parse-diagnostics-file ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/clang-parse-diagnostics-file @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import os import plistlib -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/create_ladder_graph.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/create_ladder_graph.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/create_ladder_graph.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/create_ladder_graph.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/create_ladder_graph.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/create_ladder_graph.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """A ladder graph creation program. This is a python program that creates c source code that will generate -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/extract_symbols.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/extract_symbols.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/extract_symbols.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/extract_symbols.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/extract_symbols.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/extract_symbols.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """A tool for extracting a list of symbols to export -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/extract_vplan.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/extract_vplan.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/extract_vplan.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/extract_vplan.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/extract_vplan.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/extract_vplan.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # This script extracts the VPlan digraphs from the vectoriser debug messages # and saves them in individual dot files (one for each plan). Optionally, and -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/indirect_calls.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/indirect_calls.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/indirect_calls.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/indirect_calls.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/indirect_calls.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/indirect_calls.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """A tool for looking for indirect jumps and calls in x86 binaries. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/lit/ProgressBar.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/lit/ProgressBar.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/lit/ProgressBar.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/lit/ProgressBar.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/lit/ProgressBar.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/lit/ProgressBar.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # Source: http://code.activestate.com/recipes/475116/, with # modifications by Daniel Dunbar. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import os import sys -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/googletest-timeout/DummySubDir/OneTest.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/googletest-timeout/DummySubDir/OneTest.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/tests/Inputs/googletest-timeout/DummySubDir/OneTest.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/googletest-timeout/DummySubDir/OneTest.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/tests/Inputs/googletest-timeout/DummySubDir/OneTest.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/googletest-timeout/DummySubDir/OneTest.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import os import sys -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-env/print_environment.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-env/print_environment.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/tests/Inputs/shtest-env/print_environment.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-env/print_environment.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/tests/Inputs/shtest-env/print_environment.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-env/print_environment.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function import os -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-bad-encoding.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-bad-encoding.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-bad-encoding.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-bad-encoding.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-bad-encoding.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-bad-encoding.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import sys -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-shell/check_args.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-shell/check_args.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/tests/Inputs/shtest-shell/check_args.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-shell/check_args.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/tests/Inputs/shtest-shell/check_args.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-shell/check_args.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import argparse import platform -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stderr.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stderr.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stderr.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stderr.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stderr.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stderr.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import sys -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stdout-and-stderr.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stdout-and-stderr.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stdout-and-stderr.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stdout-and-stderr.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stdout-and-stderr.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/lit/tests/Inputs/shtest-shell/write-to-stdout-and-stderr.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import sys -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/llvm-gisel-cov.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/llvm-gisel-cov.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/llvm-gisel-cov.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/llvm-gisel-cov.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/llvm-gisel-cov.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/llvm-gisel-cov.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ Summarize the information in the given coverage files. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/prepare-code-coverage-artifact.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/prepare-code-coverage-artifact.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/prepare-code-coverage-artifact.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/prepare-code-coverage-artifact.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/prepare-code-coverage-artifact.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/prepare-code-coverage-artifact.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/release/findRegressions-nightly.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/release/findRegressions-nightly.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/release/findRegressions-nightly.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/release/findRegressions-nightly.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/release/findRegressions-nightly.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/release/findRegressions-nightly.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function import re, string, sys, os, time -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/release/findRegressions-simple.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/release/findRegressions-simple.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/release/findRegressions-simple.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/release/findRegressions-simple.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/release/findRegressions-simple.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/release/findRegressions-simple.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function import re, string, sys, os, time, math -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/shuffle_fuzz.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/shuffle_fuzz.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/shuffle_fuzz.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/shuffle_fuzz.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/shuffle_fuzz.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/shuffle_fuzz.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """A shuffle vector fuzz tester. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/shuffle_select_fuzz_tester.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/shuffle_select_fuzz_tester.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/shuffle_select_fuzz_tester.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/shuffle_select_fuzz_tester.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/shuffle_select_fuzz_tester.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/shuffle_select_fuzz_tester.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """A shuffle-select vector fuzz tester. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/sort_includes.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/sort_includes.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/sort_includes.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/sort_includes.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/sort_includes.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/sort_includes.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """Script to sort the top-most block of #include lines. -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/unicode-case-fold.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/unicode-case-fold.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/unicode-case-fold.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/unicode-case-fold.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/unicode-case-fold.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/unicode-case-fold.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ Unicode case folding database conversion utility -Index: llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/wciia.py +Index: llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/wciia.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb.orig/llvm/utils/wciia.py -+++ llvm-toolchain-snapshot_17~++20230723074821+3ebe606592fb/llvm/utils/wciia.py +--- llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560.orig/llvm/utils/wciia.py ++++ llvm-toolchain-snapshot_18~++20231020082810+f24d9490e560/llvm/utils/wciia.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 diff --git a/debian/patches/rename-libllvm.diff b/debian/patches/rename-libllvm.diff new file mode 100644 index 00000000..f1b6cb5e --- /dev/null +++ b/debian/patches/rename-libllvm.diff @@ -0,0 +1,16 @@ +Index: llvm-toolchain-18-18.1.8/llvm/tools/llvm-shlib/CMakeLists.txt +=================================================================== +--- llvm-toolchain-18-18.1.8.orig/llvm/tools/llvm-shlib/CMakeLists.txt ++++ llvm-toolchain-18-18.1.8/llvm/tools/llvm-shlib/CMakeLists.txt +@@ -36,8 +36,10 @@ if(LLVM_BUILD_LLVM_DYLIB) + if (WIN32) + add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${INSTALL_WITH_TOOLCHAIN} ${SOURCES}) + else() +- add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB OUTPUT_NAME LLVM ${INSTALL_WITH_TOOLCHAIN} ${SOURCES}) ++ message(STATUS "lib name = LLVM-${LLVM_VERSION_MAJOR}") ++ add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB OUTPUT_NAME LLVM-${LLVM_VERSION_MAJOR} ${INSTALL_WITH_TOOLCHAIN} ${SOURCES}) + # Add symlink for backwards compatibility with old library name ++ message(STATUS "foo = $(LLVM-${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}") + llvm_install_library_symlink(LLVM-${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX} $ SHARED FULL_DEST COMPONENT LLVM) + endif() + diff --git a/debian/patches/revert-update-doc.diff b/debian/patches/revert-update-doc.diff index 78cb249f..9f0c2392 100644 --- a/debian/patches/revert-update-doc.diff +++ b/debian/patches/revert-update-doc.diff @@ -15,10 +15,10 @@ Date: Tue Feb 1 23:13:01 2022 -0800 Differential Revision: https://reviews.llvm.org/D112181 -Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/clang-tools-extra/docs/conf.py +Index: llvm-toolchain-18_18.1.2/clang-tools-extra/docs/conf.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e.orig/clang-tools-extra/docs/conf.py -+++ llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/clang-tools-extra/docs/conf.py +--- llvm-toolchain-18_18.1.2.orig/clang-tools-extra/docs/conf.py ++++ llvm-toolchain-18_18.1.2/clang-tools-extra/docs/conf.py @@ -44,6 +44,15 @@ master_doc = "index" project = "Extra Clang Tools" copyright = "2007-%d, The Clang Team" % date.today().year @@ -47,11 +47,11 @@ Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/clang-tools-extr # -- Options for HTML output --------------------------------------------------- -Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/clang/docs/conf.py +Index: llvm-toolchain-18_18.1.2/clang/docs/conf.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e.orig/clang/docs/conf.py -+++ llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/clang/docs/conf.py -@@ -63,6 +63,15 @@ master_doc = "index" +--- llvm-toolchain-18_18.1.2.orig/clang/docs/conf.py ++++ llvm-toolchain-18_18.1.2/clang/docs/conf.py +@@ -48,6 +48,15 @@ master_doc = "index" project = "Clang" copyright = "2007-%d, The Clang Team" % date.today().year @@ -67,7 +67,7 @@ Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/clang/docs/conf. # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. # language = None -@@ -94,11 +103,6 @@ exclude_patterns = ["_build"] +@@ -79,11 +88,6 @@ exclude_patterns = ["_build"] # The name of the Pygments (syntax highlighting) style to use. pygments_style = "friendly" @@ -79,10 +79,10 @@ Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/clang/docs/conf. # -- Options for HTML output --------------------------------------------------- -Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/lld/docs/conf.py +Index: llvm-toolchain-18_18.1.2/lld/docs/conf.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e.orig/lld/docs/conf.py -+++ llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/lld/docs/conf.py +--- llvm-toolchain-18_18.1.2.orig/lld/docs/conf.py ++++ llvm-toolchain-18_18.1.2/lld/docs/conf.py @@ -43,6 +43,15 @@ master_doc = "index" project = "lld" copyright = "2011-%d, LLVM Project" % date.today().year @@ -99,10 +99,10 @@ Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/lld/docs/conf.py # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. # language = None -Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/llvm/cmake/modules/AddSphinxTarget.cmake +Index: llvm-toolchain-18_18.1.2/llvm/cmake/modules/AddSphinxTarget.cmake =================================================================== ---- llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e.orig/llvm/cmake/modules/AddSphinxTarget.cmake -+++ llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/llvm/cmake/modules/AddSphinxTarget.cmake +--- llvm-toolchain-18_18.1.2.orig/llvm/cmake/modules/AddSphinxTarget.cmake ++++ llvm-toolchain-18_18.1.2/llvm/cmake/modules/AddSphinxTarget.cmake @@ -39,10 +39,6 @@ function (add_sphinx_target builder proj set(ARG_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}") endif() @@ -124,11 +124,11 @@ Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/llvm/cmake/modul ${SPHINX_WARNINGS_AS_ERRORS_FLAG} # Treat warnings as errors if requested "${ARG_SOURCE_DIR}" # Source "${SPHINX_BUILD_DIR}" # Output -Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/llvm/docs/conf.py +Index: llvm-toolchain-18_18.1.2/llvm/docs/conf.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e.orig/llvm/docs/conf.py -+++ llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/llvm/docs/conf.py -@@ -62,6 +62,15 @@ master_doc = "index" +--- llvm-toolchain-18_18.1.2.orig/llvm/docs/conf.py ++++ llvm-toolchain-18_18.1.2/llvm/docs/conf.py +@@ -52,6 +52,15 @@ master_doc = "index" project = "LLVM" copyright = "2003-%d, LLVM Project" % date.today().year @@ -144,10 +144,10 @@ Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/llvm/docs/conf.p # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. # language = None -Index: llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/polly/docs/conf.py +Index: llvm-toolchain-18_18.1.2/polly/docs/conf.py =================================================================== ---- llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e.orig/polly/docs/conf.py -+++ llvm-toolchain-snapshot_17~++20230526082102+a22ef958cb7e/polly/docs/conf.py +--- llvm-toolchain-18_18.1.2.orig/polly/docs/conf.py ++++ llvm-toolchain-18_18.1.2/polly/docs/conf.py @@ -44,6 +44,15 @@ master_doc = "index" project = "Polly" copyright = "2010-%d, The Polly Team" % date.today().year diff --git a/debian/patches/rv64-fix-PCREL_HI20-issue.diff b/debian/patches/rv64-fix-PCREL_HI20-issue.diff new file mode 100644 index 00000000..bbb10de6 --- /dev/null +++ b/debian/patches/rv64-fix-PCREL_HI20-issue.diff @@ -0,0 +1,104 @@ +From 78f39dc70c1feaea5130b90ea3fb7b3ddd62446b Mon Sep 17 00:00:00 2001 +From: Jonas Hahnfeld +Date: Mon, 12 Feb 2024 19:45:52 +0100 +Subject: [PATCH] [JITLink][RISCV] Use hashmap to find PCREL_HI20 edge (#78849) + +As noted in issues #68594 and #73935, `JITLink/RISCV/ELF_ehframe.s` +fails with libstdc++'s expensive checks because `getRISCVPCRelHi20` +calls `std::equal_range` on the edges which may not be ordered by their +offset. Instead let `ELFJITLinker_riscv` build a hashmap of all edges +with type `R_RISCV_PCREL_HI20` that can be looked up in constant time. + +Bugs: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1080435 + +Closes #73935 +--- + .../lib/ExecutionEngine/JITLink/ELF_riscv.cpp | 68 ++++++++++--------- + 1 file changed, 35 insertions(+), 33 deletions(-) + +--- a/llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp ++++ b/llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp +@@ -133,38 +133,6 @@ + namespace llvm { + namespace jitlink { + +-static Expected getRISCVPCRelHi20(const Edge &E) { +- using namespace riscv; +- assert((E.getKind() == R_RISCV_PCREL_LO12_I || +- E.getKind() == R_RISCV_PCREL_LO12_S) && +- "Can only have high relocation for R_RISCV_PCREL_LO12_I or " +- "R_RISCV_PCREL_LO12_S"); +- +- const Symbol &Sym = E.getTarget(); +- const Block &B = Sym.getBlock(); +- orc::ExecutorAddrDiff Offset = Sym.getOffset(); +- +- struct Comp { +- bool operator()(const Edge &Lhs, orc::ExecutorAddrDiff Offset) { +- return Lhs.getOffset() < Offset; +- } +- bool operator()(orc::ExecutorAddrDiff Offset, const Edge &Rhs) { +- return Offset < Rhs.getOffset(); +- } +- }; +- +- auto Bound = +- std::equal_range(B.edges().begin(), B.edges().end(), Offset, Comp{}); +- +- for (auto It = Bound.first; It != Bound.second; ++It) { +- if (It->getKind() == R_RISCV_PCREL_HI20) +- return *It; +- } +- +- return make_error( +- "No HI20 PCREL relocation type be found for LO12 PCREL relocation type"); +-} +- + static uint32_t extractBits(uint32_t Num, unsigned Low, unsigned Size) { + return (Num & (((1ULL << Size) - 1) << Low)) >> Low; + } +@@ -184,9 +152,43 @@ + public: + ELFJITLinker_riscv(std::unique_ptr Ctx, + std::unique_ptr G, PassConfiguration PassConfig) +- : JITLinker(std::move(Ctx), std::move(G), std::move(PassConfig)) {} ++ : JITLinker(std::move(Ctx), std::move(G), std::move(PassConfig)) { ++ JITLinkerBase::getPassConfig().PostAllocationPasses.push_back( ++ [this](LinkGraph &G) { return gatherRISCVPCRelHi20(G); }); ++ } + + private: ++ DenseMap, const Edge *> ++ RelHi20; ++ ++ Error gatherRISCVPCRelHi20(LinkGraph &G) { ++ for (Block *B : G.blocks()) ++ for (Edge &E : B->edges()) ++ if (E.getKind() == R_RISCV_PCREL_HI20) ++ RelHi20[{B, E.getOffset()}] = &E; ++ ++ return Error::success(); ++ } ++ ++ Expected getRISCVPCRelHi20(const Edge &E) const { ++ using namespace riscv; ++ assert((E.getKind() == R_RISCV_PCREL_LO12_I || ++ E.getKind() == R_RISCV_PCREL_LO12_S) && ++ "Can only have high relocation for R_RISCV_PCREL_LO12_I or " ++ "R_RISCV_PCREL_LO12_S"); ++ ++ const Symbol &Sym = E.getTarget(); ++ const Block &B = Sym.getBlock(); ++ orc::ExecutorAddrDiff Offset = Sym.getOffset(); ++ ++ auto It = RelHi20.find({&B, Offset}); ++ if (It != RelHi20.end()) ++ return *It->second; ++ ++ return make_error("No HI20 PCREL relocation type be found " ++ "for LO12 PCREL relocation type"); ++ } ++ + Error applyFixup(LinkGraph &G, Block &B, const Edge &E) const { + using namespace riscv; + using namespace llvm::support; diff --git a/debian/patches/rv64-fix-mm-leak.diff b/debian/patches/rv64-fix-mm-leak.diff new file mode 100644 index 00000000..9442b74f --- /dev/null +++ b/debian/patches/rv64-fix-mm-leak.diff @@ -0,0 +1,33 @@ +From 3d67cf681a728e4cf0ab9947c0dd07539dda8b74 Mon Sep 17 00:00:00 2001 +From: Min-Yih Hsu +Date: Fri, 16 Feb 2024 16:19:56 -0800 +Subject: [PATCH] [JITLink] Always unmap standard segments in + InProcessMemoryManager::deallocate (#81943) + +Right now InProcessMemoryManager only releases a standard segment (via +sys::Memory::releaseMappedMemory) in `deallocate` when there is a +DeallocAction associated, leaving residual memory pages in the process +until termination. +Despite being a de facto memory leak, it won't cause a major issue if +users only create a single LLJIT instance per process, which is the most +common use cases. It will, however, drain virtual memory pages if we +create thousands of ephemeral LLJIT instances in the same process. + +This patch fixes this issue by releasing every standard segments +regardless of the attached DeallocAction. +--- + llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +--- a/llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp ++++ b/llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp +@@ -449,8 +449,7 @@ + for (auto &Alloc : Allocs) { + auto *FA = Alloc.release().toPtr(); + StandardSegmentsList.push_back(std::move(FA->StandardSegments)); +- if (!FA->DeallocActions.empty()) +- DeallocActionsList.push_back(std::move(FA->DeallocActions)); ++ DeallocActionsList.push_back(std::move(FA->DeallocActions)); + FA->~FinalizedAllocInfo(); + FinalizedAllocInfos.Deallocate(FA); + } diff --git a/debian/patches/scan-build-clang-path.diff b/debian/patches/scan-build-clang-path.diff index cbc11e45..1876f348 100644 --- a/debian/patches/scan-build-clang-path.diff +++ b/debian/patches/scan-build-clang-path.diff @@ -11,7 +11,7 @@ Index: llvm-toolchain-snapshot_17~++20230517015648+0b6264738f3d/clang/tools/scan $Clang = Cwd::realpath("$RealBin/bin/clang") if (-f "$RealBin/bin/clang"); if (!defined $Clang || ! -x $Clang) { - $Clang = Cwd::realpath("$RealBin/clang") if (-f "$RealBin/clang"); -+ $Clang = Cwd::realpath("/usr/lib/llvm-17/bin/clang"); ++ $Clang = Cwd::realpath("/usr/lib/llvm-18/bin/clang"); if (!defined $Clang || ! -x $Clang) { # When an Xcode toolchain is present, look for a clang in the sibling bin # of the parent of the bin directory. So if scan-build is at diff --git a/debian/patches/scan-build-py-fix-default-bin.diff b/debian/patches/scan-build-py-fix-default-bin.diff index d2a3742d..0f194578 100644 --- a/debian/patches/scan-build-py-fix-default-bin.diff +++ b/debian/patches/scan-build-py-fix-default-bin.diff @@ -7,7 +7,7 @@ Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/clang/tools/scan metavar="", dest="clang", - default="clang", -+ default="clang-17", ++ default="clang-18", help="""'%(prog)s' uses the 'clang' executable relative to itself for static analysis. One can override this behavior with this option by using the 'clang' packaged with Xcode (on OS X) or from the PATH.""", diff --git a/debian/patches/series b/debian/patches/series index 257a14a1..9752a177 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -35,7 +35,6 @@ silent-more-tests.diff silent-MCJIIT-tests.diff silent-gold-utils.diff silent-test-failing-codeverage.diff -silent-amd-tet.diff silent-test-macho.diff silent-llvm-isel-fuzzer.diff remove-test-freezing.diff @@ -53,7 +52,6 @@ fix-scan-view-path.diff # lldb lldb/lldb-addversion-suffix-to-llvm-server-exec.patch lldb/lldb-missing-install.diff -lldb/lldb-disable-swig-error.diff # Fix arch issue disable-error-xray.diff @@ -136,6 +134,7 @@ protobuf_3.21.patch compiler-rt/compilerrt-builtins-arch-fix-armhf.diff compiler-rt/compilerrt-build-scudo-standalone-option.diff + # wasm patches wasm/wasm-ld-path.diff wasm/wasm-compiler-rt-default.diff @@ -146,11 +145,16 @@ unwind-force-pthread-dl.diff force-sse2-compiler-rt.diff bolt-disable-emit-relocs.patch link-grpc.diff -D158066-simd-ppc64el.patch -ubuntu-releases.patch libclang-major-version-only.diff D148945-revert.diff arm32-defaults.diff -mips/D154390-pre-R6.diff libsanitizer-timebits.diff -D154931-revert-loong64.patch +ubuntu-releases.patch +clang-record-gcc-switches-by-default.patch +rename-libllvm.diff +link-with-package-metadata.diff +llvm-toolchain-17-sve-types-aux-target.diff +env-lld-package-metadata.diff + +rv64-fix-PCREL_HI20-issue.diff +rv64-fix-mm-leak.diff diff --git a/debian/patches/silent-amd-tet.diff b/debian/patches/silent-amd-tet.diff deleted file mode 100644 index d9584a85..00000000 --- a/debian/patches/silent-amd-tet.diff +++ /dev/null @@ -1,11 +0,0 @@ -Index: llvm-toolchain-snapshot_15~++20220407011631+46f0e2ceb487/llvm/test/MC/AMDGPU/hsa.s -=================================================================== ---- llvm-toolchain-snapshot_15~++20220407011631+46f0e2ceb487.orig/llvm/test/MC/AMDGPU/hsa.s -+++ llvm-toolchain-snapshot_15~++20220407011631+46f0e2ceb487/llvm/test/MC/AMDGPU/hsa.s -@@ -1,5 +1,6 @@ - // RUN: llvm-mc -triple amdgcn--amdhsa -mcpu=kaveri --amdhsa-code-object-version=2 -show-encoding %s | FileCheck %s --check-prefix=ASM - // RUN: llvm-mc -filetype=obj -triple amdgcn--amdhsa -mcpu=kaveri --amdhsa-code-object-version=2 -show-encoding %s | llvm-readobj --symbols -S --sd - | FileCheck %s --check-prefix=ELF -+// XFAIL: * - - // ELF: Section { - // ELF: Name: .text diff --git a/debian/patches/ubuntu-releases.patch b/debian/patches/ubuntu-releases.patch index 60d21fe7..5763c481 100644 --- a/debian/patches/ubuntu-releases.patch +++ b/debian/patches/ubuntu-releases.patch @@ -1,47 +1,3 @@ -From 6266b964202336a02f40007928719e060bc81694 Mon Sep 17 00:00:00 2001 -From: Graham Inggs -Date: Wed, 1 Nov 2023 20:59:53 +0100 -Subject: [PATCH] Add support of the next Ubuntu (Ubuntu 24.04 - Noble Numbat) - -Co-authored-by: Sylvestre Ledru ---- - clang/include/clang/Driver/Distro.h | 3 ++- - clang/lib/Driver/Distro.cpp | 1 + - 2 files changed, 3 insertions(+), 1 deletion(-) - -diff --git a/clang/include/clang/Driver/Distro.h b/clang/include/clang/Driver/Distro.h -index 8291f6575a7114..a8de94163e8b0b 100644 ---- a/clang/include/clang/Driver/Distro.h -+++ b/clang/include/clang/Driver/Distro.h -@@ -78,6 +78,7 @@ class Distro { - UbuntuKinetic, - UbuntuLunar, - UbuntuMantic, -+ UbuntuNoble, - UnknownDistro - }; - -@@ -129,7 +130,7 @@ class Distro { - } - - bool IsUbuntu() const { -- return DistroVal >= UbuntuHardy && DistroVal <= UbuntuMantic; -+ return DistroVal >= UbuntuHardy && DistroVal <= UbuntuNoble; - } - - bool IsAlpineLinux() const { return DistroVal == AlpineLinux; } -diff --git a/clang/lib/Driver/Distro.cpp b/clang/lib/Driver/Distro.cpp -index 005c31bd38893c..36f828f8cae26d 100644 ---- a/clang/lib/Driver/Distro.cpp -+++ b/clang/lib/Driver/Distro.cpp -@@ -94,6 +94,7 @@ static Distro::DistroType DetectLsbRelease(llvm::vfs::FileSystem &VFS) { - .Case("kinetic", Distro::UbuntuKinetic) - .Case("lunar", Distro::UbuntuLunar) - .Case("mantic", Distro::UbuntuMantic) -+ .Case("noble", Distro::UbuntuNoble) - .Default(Distro::UnknownDistro); - return Version; - } From 90bd7234e36e5b3d63155f481b739ea463985631 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Thu, 2 May 2024 22:54:08 +0200 diff --git a/debian/patches/unwind-force-pthread-dl.diff b/debian/patches/unwind-force-pthread-dl.diff index 08111df4..4b2fdeaa 100644 --- a/debian/patches/unwind-force-pthread-dl.diff +++ b/debian/patches/unwind-force-pthread-dl.diff @@ -1,8 +1,8 @@ -Index: llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/libunwind/CMakeLists.txt +Index: llvm-toolchain-18_18.1.2/libunwind/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79.orig/libunwind/CMakeLists.txt -+++ llvm-toolchain-snapshot_17~++20230523093327+96a003b9bf79/libunwind/CMakeLists.txt -@@ -277,14 +277,17 @@ if (MSVC) +--- llvm-toolchain-18_18.1.2.orig/libunwind/CMakeLists.txt ++++ llvm-toolchain-18_18.1.2/libunwind/CMakeLists.txt +@@ -301,14 +301,17 @@ if (MSVC) add_definitions(-D_CRT_SECURE_NO_WARNINGS) endif() diff --git a/debian/patches/wasm/wasm-compiler-rt-default.diff b/debian/patches/wasm/wasm-compiler-rt-default.diff index 351fcc79..ec3fc0c9 100644 --- a/debian/patches/wasm/wasm-compiler-rt-default.diff +++ b/debian/patches/wasm/wasm-compiler-rt-default.diff @@ -1,6 +1,8 @@ ---- a/clang/lib/Driver/ToolChains/WebAssembly.cpp -+++ b/clang/lib/Driver/ToolChains/WebAssembly.cpp -@@ -369,6 +369,18 @@ ToolChain::RuntimeLibType WebAssembly::G +Index: llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/WebAssembly.cpp +=================================================================== +--- llvm-toolchain-18_18.1.2.orig/clang/lib/Driver/ToolChains/WebAssembly.cpp ++++ llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/WebAssembly.cpp +@@ -421,6 +421,18 @@ ToolChain::RuntimeLibType WebAssembly::G return ToolChain::RLT_CompilerRT; } @@ -19,9 +21,11 @@ ToolChain::CXXStdlibType WebAssembly::GetCXXStdlibType(const ArgList &Args) const { if (Arg *A = Args.getLastArg(options::OPT_stdlib_EQ)) { ---- a/clang/lib/Driver/ToolChains/WebAssembly.h -+++ b/clang/lib/Driver/ToolChains/WebAssembly.h -@@ -61,6 +61,7 @@ private: +Index: llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/WebAssembly.h +=================================================================== +--- llvm-toolchain-18_18.1.2.orig/clang/lib/Driver/ToolChains/WebAssembly.h ++++ llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/WebAssembly.h +@@ -56,6 +56,7 @@ private: llvm::opt::ArgStringList &CC1Args, Action::OffloadKind DeviceOffloadKind) const override; RuntimeLibType GetDefaultRuntimeLibType() const override; diff --git a/debian/patches/wasm/wasm-ld-path.diff b/debian/patches/wasm/wasm-ld-path.diff index 41789182..4a192d0d 100644 --- a/debian/patches/wasm/wasm-ld-path.diff +++ b/debian/patches/wasm/wasm-ld-path.diff @@ -1,27 +1,25 @@ -Index: llvm-toolchain-snapshot_15~++20220724113059+7feab85df8e8/clang/lib/Driver/ToolChains/WebAssembly.h +Index: llvm-toolchain-snapshot_19~++20240319094628+703920d4138d/clang/lib/Driver/ToolChains/WebAssembly.cpp =================================================================== ---- llvm-toolchain-snapshot_15~++20220724113059+7feab85df8e8.orig/clang/lib/Driver/ToolChains/WebAssembly.h -+++ llvm-toolchain-snapshot_15~++20220724113059+7feab85df8e8/clang/lib/Driver/ToolChains/WebAssembly.h -@@ -10,9 +10,13 @@ - #define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_WEBASSEMBLY_H +--- llvm-toolchain-snapshot_19~++20240319094628+703920d4138d.orig/clang/lib/Driver/ToolChains/WebAssembly.cpp ++++ llvm-toolchain-snapshot_19~++20240319094628+703920d4138d/clang/lib/Driver/ToolChains/WebAssembly.cpp +@@ -20,6 +20,11 @@ + #include "llvm/Support/Path.h" + #include "llvm/Support/VirtualFileSystem.h" - #include "Gnu.h" +#include "llvm/Config/llvm-config.h" // for LLVM_VERSION_MAJOR - #include "clang/Driver/Tool.h" - #include "clang/Driver/ToolChain.h" - ++ +#define TOSTR2(X) #X +#define TOSTR(X) TOSTR2(X) + - namespace clang { - namespace driver { - namespace tools { -@@ -68,7 +72,7 @@ private: - llvm::opt::ArgStringList &CmdArgs) const override; - SanitizerMask getSupportedSanitizers() const override; + using namespace clang::driver; + using namespace clang::driver::tools; + using namespace clang::driver::toolchains; +@@ -241,7 +246,7 @@ WebAssembly::WebAssembly(const Driver &D + const char *WebAssembly::getDefaultLinker() const { + if (getOS() == "wasip2") + return "wasm-component-ld"; +- return "wasm-ld"; ++ return "wasm-ld-" TOSTR(LLVM_VERSION_MAJOR); + } -- const char *getDefaultLinker() const override { return "wasm-ld"; } -+ const char *getDefaultLinker() const override { return "wasm-ld-" TOSTR(LLVM_VERSION_MAJOR); } - - CXXStdlibType GetDefaultCXXStdlibType() const override { - return ToolChain::CST_Libcxx; + bool WebAssembly::IsMathErrnoDefault() const { return false; } diff --git a/debian/patches/wasm/wasm-sysroot-usr.diff b/debian/patches/wasm/wasm-sysroot-usr.diff index b3bbf565..480b7443 100644 --- a/debian/patches/wasm/wasm-sysroot-usr.diff +++ b/debian/patches/wasm/wasm-sysroot-usr.diff @@ -1,8 +1,8 @@ -Index: llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.cpp +Index: llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/WebAssembly.cpp =================================================================== ---- llvm-toolchain-16-16.0.6.orig/clang/lib/Driver/ToolChains/WebAssembly.cpp -+++ llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.cpp -@@ -174,7 +174,7 @@ WebAssembly::WebAssembly(const Driver &D +--- llvm-toolchain-18_18.1.2.orig/clang/lib/Driver/ToolChains/WebAssembly.cpp ++++ llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/WebAssembly.cpp +@@ -222,7 +222,7 @@ WebAssembly::WebAssembly(const Driver &D getProgramPaths().push_back(getDriver().getInstalledDir()); @@ -11,7 +11,7 @@ Index: llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.cpp if (getTriple().getOS() == llvm::Triple::UnknownOS) { // Theoretically an "unknown" OS should mean no standard libraries, however // it could also mean that a custom set of libraries is in use, so just add -@@ -402,6 +402,7 @@ void WebAssembly::AddClangSystemIncludeA +@@ -454,6 +454,7 @@ void WebAssembly::AddClangSystemIncludeA return; const Driver &D = getDriver(); @@ -19,7 +19,7 @@ Index: llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.cpp if (!DriverArgs.hasArg(options::OPT_nobuiltininc)) { SmallString<128> P(D.ResourceDir); -@@ -425,12 +426,20 @@ void WebAssembly::AddClangSystemIncludeA +@@ -477,12 +478,20 @@ void WebAssembly::AddClangSystemIncludeA return; } @@ -43,7 +43,7 @@ Index: llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.cpp } void WebAssembly::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, -@@ -478,6 +487,17 @@ Tool *WebAssembly::buildLinker() const { +@@ -533,6 +542,17 @@ Tool *WebAssembly::buildLinker() const { return new tools::wasm::Linker(*this); } @@ -61,7 +61,7 @@ Index: llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.cpp void WebAssembly::addLibCxxIncludePaths( const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const { -@@ -488,18 +508,22 @@ void WebAssembly::addLibCxxIncludePaths( +@@ -543,18 +563,22 @@ void WebAssembly::addLibCxxIncludePaths( getMultiarchTriple(D, getTriple(), SysRoot); bool IsKnownOs = (getTriple().getOS() != llvm::Triple::UnknownOS); @@ -91,7 +91,7 @@ Index: llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.cpp } void WebAssembly::addLibStdCXXIncludePaths( -@@ -546,8 +570,11 @@ void WebAssembly::addLibStdCXXIncludePat +@@ -601,8 +625,11 @@ void WebAssembly::addLibStdCXXIncludePat addSystemInclude(DriverArgs, CC1Args, TargetDir); } @@ -107,11 +107,11 @@ Index: llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.cpp + addSystemInclude(DriverArgs, CC1Args, LibPath + "/c++/" + Version + "/backward"); + } } -Index: llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.h +Index: llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/WebAssembly.h =================================================================== ---- llvm-toolchain-16-16.0.6.orig/clang/lib/Driver/ToolChains/WebAssembly.h -+++ llvm-toolchain-16-16.0.6/clang/lib/Driver/ToolChains/WebAssembly.h -@@ -89,6 +89,8 @@ private: +--- llvm-toolchain-18_18.1.2.orig/clang/lib/Driver/ToolChains/WebAssembly.h ++++ llvm-toolchain-18_18.1.2/clang/lib/Driver/ToolChains/WebAssembly.h +@@ -84,6 +84,8 @@ private: llvm::opt::ArgStringList &CC1Args) const; void addLibStdCXXIncludePaths(const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const; diff --git a/debian/prepare-new-release.sh b/debian/prepare-new-release.sh index 69dcd4c8..7b0b464e 100644 --- a/debian/prepare-new-release.sh +++ b/debian/prepare-new-release.sh @@ -1,10 +1,10 @@ #!/bin/sh -ORIG_VERSION=16 -TARGET_VERSION=17 -ORIG_VERSION_2=16_0 -TARGET_VERSION_2=17_0 -ORIG_VERSION_3=160 -TARGET_VERSION_3=170 +ORIG_VERSION=18 +TARGET_VERSION=19 +ORIG_VERSION_2=18_0 +TARGET_VERSION_2=19_0 +ORIG_VERSION_3=180 +TARGET_VERSION_3=190 LIST=`ls debian/control debian/orig-tar.sh debian/rules debian/patches/clang-analyzer-force-version.diff debian/patches/clang-format-version.diff debian/patches/python-clangpath.diff debian/patches/scan-build-clang-path.diff debian/patches/lldb-libname.diff debian/patches/fix-scan-view-path.diff debian/patches/lldb/lldb-addversion-suffix-to-llvm-server-exec.patch debian/patches/clang-tidy-run-bin.diff debian/patches/fix-scan-view-path.diff debian/README debian/patches/clang-analyzer-force-version.diff debian/patches/clang-tidy-run-bin.diff debian/tests/control debian/tests/integration-test-suite-test debian/unpack.sh debian/tests/cmake-test debian/patches/scan-build-py-fix-default-bin.diff` for F in $LIST; do diff --git a/debian/qualify-clang.sh b/debian/qualify-clang.sh index 9d2e4197..642792a3 100755 --- a/debian/qualify-clang.sh +++ b/debian/qualify-clang.sh @@ -9,7 +9,7 @@ VERSION=$(dpkg-parsechangelog | sed -rne "s,^Version: 1:([0-9]+).*,\1,p") DETAILED_VERSION=$(dpkg-parsechangelog | sed -rne "s,^Version: 1:([0-9.]+)(~|-)(.*),\1\2\3,p") DEB_HOST_ARCH=$(dpkg-architecture -qDEB_HOST_ARCH) -LIST="libomp5-${VERSION}_${DETAILED_VERSION}_amd64.deb libomp-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb python3-lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb python3-clang-${VERSION}_${DETAILED_VERSION}_amd64.deb libllvm${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang1-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-common-${VERSION}-dev_${DETAILED_VERSION}_all.deb llvm-${VERSION}_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-runtime_${DETAILED_VERSION}_amd64.deb lld-${VERSION}_${DETAILED_VERSION}_amd64.deb libfuzzer-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++abi-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++1-${VERSION}_${DETAILED_VERSION}_amd64.deb libc++abi1-${VERSION}_${DETAILED_VERSION}_amd64.deb clang-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-tools_${DETAILED_VERSION}_amd64.deb clang-tools-${VERSION}_${DETAILED_VERSION}_amd64.deb clangd-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-cpp${VERSION}_${DETAILED_VERSION}_amd64.deb clang-tidy-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-cpp${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclc-${VERSION}_${DETAILED_VERSION}_all.deb libclc-${VERSION}-dev_${DETAILED_VERSION}_all.deb llvm-${VERSION}-linker-tools_${DETAILED_VERSION}_amd64.deb libunwind-${VERSION}_${DETAILED_VERSION}_amd64.deb libunwind-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libmlir-${VERSION}_${DETAILED_VERSION}_amd64.deb libmlir-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-rt-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-rt-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libclang-rt-${VERSION}-dev-wasm64_${DETAILED_VERSION}_all.deb libc++abi-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libc++-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libpolly-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb bolt-${VERSION}_${DETAILED_VERSION}_amd64.deb libbolt-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb flang-${VERSION}_${DETAILED_VERSION}_amd64.deb libflang-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb" +LIST="libomp5-${VERSION}_${DETAILED_VERSION}_amd64.deb libomp-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb python3-lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb python3-clang-${VERSION}_${DETAILED_VERSION}_amd64.deb libllvm${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang1-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-common-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-runtime_${DETAILED_VERSION}_amd64.deb lld-${VERSION}_${DETAILED_VERSION}_amd64.deb libfuzzer-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++abi-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++1-${VERSION}_${DETAILED_VERSION}_amd64.deb libc++abi1-${VERSION}_${DETAILED_VERSION}_amd64.deb clang-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-tools_${DETAILED_VERSION}_amd64.deb clang-tools-${VERSION}_${DETAILED_VERSION}_amd64.deb clangd-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-cpp${VERSION}_${DETAILED_VERSION}_amd64.deb clang-tidy-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-cpp${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclc-${VERSION}_${DETAILED_VERSION}_all.deb libclc-${VERSION}-dev_${DETAILED_VERSION}_all.deb llvm-${VERSION}-linker-tools_${DETAILED_VERSION}_amd64.deb libunwind-${VERSION}_${DETAILED_VERSION}_amd64.deb libunwind-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libmlir-${VERSION}_${DETAILED_VERSION}_amd64.deb libmlir-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-rt-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-rt-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libclang-rt-${VERSION}-dev-wasm64_${DETAILED_VERSION}_all.deb libc++abi-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libc++-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libpolly-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb bolt-${VERSION}_${DETAILED_VERSION}_amd64.deb libbolt-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb flang-${VERSION}_${DETAILED_VERSION}_amd64.deb libflang-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libllvmlibc-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb " echo "To install everything:" echo "sudo apt --purge remove 'libomp5-*' 'libc++*dev' 'libc++*' 'python3-lldb-*' 'libunwind-*' 'libclc-*' 'libclc-*dev' 'libmlir-*'" @@ -25,11 +25,29 @@ if test ! -f /usr/bin/llvm-config-$VERSION; then echo "Install llvm-$VERSION & llvm-$VERSION-dev" exit 1 fi -if test ! -f /usr/lib/llvm-$VERSION/lib/libLLVM-$VERSION.so; then +if test ! -e /usr/lib/llvm-$VERSION/lib/libLLVMObject.a; then echo "Install llvm-$VERSION-dev" exit 1 fi +# allow usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@*.so +# as it is in llvm-X.Y-dev +NBLINES=$(ls -1 /usr/lib/llvm-$VERSION/lib/libLLVM*.so*|wc -l) +if test $NBLINES -ne 2; then + echo "Found some libLLVM into /usr/lib/llvm-$VERSION/lib/" + echo "See:" + ls -al /usr/lib/llvm-$VERSION/lib/libLLVM*.so* + echo "Break the build as it breaks the coinstalability" + echo "we should have only two for llvm-X.Y-dev" + exit 1 +fi + +NBLINES=$(dpkg -L libllvm$VERSION|grep libLLVM.so.$VERSION.1|wc -l) +if test $NBLINES -eq 0; then + echo "libLLVM.so.$VERSION.1 should exist. Could not find it in libllvm$VERSION" + exit 1 +fi + echo "Testing llvm-$VERSION and llvm-$VERSION-dev ..." llvm-config-$VERSION --link-shared --libs &> /dev/null @@ -279,6 +297,7 @@ rm -rf cmaketest echo "Testing clang-$VERSION ..." +ARCH=$(clang-$VERSION -dumpmachine) rm -f foo.log echo 'int main() {return 0;}' > foo.c @@ -468,6 +487,12 @@ echo '#include int main() { }' > foo.cpp clang++-$VERSION -std=c++11 foo.cpp +if test -f /usr/lib/llvm-$VERSION/lib/libclang.so.1; then + echo "/usr/lib/llvm-$VERSION/lib/libclang.so.1 found." + echo "Break the build as it breaks the coinstalability" + exit 1 +fi + echo "Testing linking clang-cpp ..." clang-$VERSION -lclang-cpp$VERSION -v foo.cpp -o o &> /dev/null || true @@ -486,7 +511,7 @@ check_symlink() { fi } -check_symlink "libclang-cpp.so.$VERSION" +check_symlink "libclang-cpp.so" check_symlink "libclang-$VERSION.so" check_symlink "libclang.so" @@ -1015,15 +1040,74 @@ rm -f plugin.so echo '#include int main() {}' | clang++-$VERSION -std=c++1z -x c++ -stdlib=libc++ - +# testing C++ libc++ modules +cat << EOF > foo.cpp +import std; +import std.compat; + +int main() { + std::cout << "Hello modular world\n"; + ::printf("Hello compat modular world\n"); +} +EOF + +# Builds the std module +clang++-$VERSION -std=c++20 \ + -nostdinc++ \ + -isystem /usr/lib/llvm-$VERSION/include/c++/v1/ \ + -Wno-reserved-module-identifier -Wno-reserved-user-defined-literal \ + --precompile -o std.pcm \ + -c /usr/lib/llvm-$VERSION/share/libc++/v1/std.cppm + +# Builds the std.compat module +clang++-$VERSION -std=c++20 \ + -nostdinc++ \ + -isystem /usr/lib/llvm-$VERSION/include/c++/v1/ \ + -Wno-reserved-module-identifier -Wno-reserved-user-defined-literal \ + --precompile -o std.compat.pcm \ + -fmodule-file=std=std.pcm \ + -c /usr/lib/llvm-$VERSION/share/libc++/v1/std.compat.cppm + +# Builds the test application +clang++-$VERSION -std=c++20 \ + -nostdinc++ \ + -isystem /usr/lib/llvm-$VERSION/include/c++/v1/ \ + -L /usr/lib/llvm-$VERSION/lib \ + -fmodule-file=std=std.pcm \ + -fmodule-file=std.compat=std.compat.pcm \ + std.pcm \ + std.compat.pcm \ + -lc++ \ + foo.cpp + +# Runs the test application +# The output should be +# Hello modular world +# Hello compat modular world +./a.out > foo.log + +if ! grep -q -E "Hello modular world" foo.log 2>&1; then + echo "c++ modules didn't work" + exit 1 +fi +if ! grep -q -E "Hello compat modular world" foo.log 2>&1; then + echo "c++ modules didn't work" + exit 1 +fi + if test ! -f /usr/lib/llvm-$VERSION/include/cxxabi.h; then echo "Install libc++abi-$VERSION-dev"; exit -1; fi +# Recreate a C++ without modules +echo '#include +int main() { }' > foo.cpp + # Force the usage of libc++abi clang++-$VERSION -stdlib=libc++ -lc++abi foo.cpp -o o ./o > /dev/null -if ! ldd o 2>&1|grep -q libc++abi.so.1; then +if ! ldd o 2>&1|grep -q libc++abi.so.1; then echo "not linked against libc++abi.so.1" exit -1 fi @@ -1092,6 +1176,59 @@ g++ -nostdinc++ -I/usr/lib/llvm-$VERSION/bin/../include/c++/v1/ -L/usr/lib/llvm- ./o > /dev/null fi +# Test C++ modules with the libc++ +cat << EOF > foo.cpp +import std; // When importing std.compat it's not needed to import std. +import std.compat; + +int main() { + std::cout << "Hello modular world\n"; + ::printf("Hello compat modular world\n"); +} +EOF + +# Builds the std module +clang-$VERSION -std=c++20 \ + -nostdinc++ \ + -isystem /usr/lib/llvm-$VERSION/include/c++/v1/ \ + -Wno-reserved-module-identifier -Wno-reserved-user-defined-literal \ + --precompile -o std.pcm \ + -c /usr/lib/llvm-$VERSION/share/libc++/v1/std.cppm + +# Builds the std.compat module +clang-$VERSION -std=c++20 \ + -nostdinc++ \ + -isystem /usr/lib/llvm-$VERSION/include/c++/v1/ \ + -Wno-reserved-module-identifier -Wno-reserved-user-defined-literal \ + --precompile -o std.compat.pcm \ + -fmodule-file=std=std.pcm \ + -c /usr/lib/llvm-$VERSION/share/libc++/v1/std.compat.cppm + +# Builds the test application +clang-$VERSION -std=c++20 \ + -nostdinc++ \ + -isystem /usr/lib/llvm-$VERSION/include/c++/v1/ \ + -L /usr/lib/llvm-$VERSION/lib \ + -fmodule-file=std=std.pcm \ + -fmodule-file=std.compat=std.compat.pcm \ + std.pcm \ + std.compat.pcm \ + -lc++ \ + foo.cpp + +# Runs the test application +# The output should be +# Hello modular world +# Hello compat modular world +./a.out > foo.log +if ! grep -q -E "Hello modular world" foo.log 2>&1; then + echo "c++ modules didn't work" + exit 1 +fi +if ! grep -q -E "Hello compat modular world" foo.log 2>&1; then + echo "c++ modules didn't work" + exit 1 +fi if dpkg -l|grep -q flang-$VERSION; then echo "Testing flang-$VERSION (Fortran) ..." @@ -1135,10 +1272,31 @@ end program main' > foo.f90 fi rm -f foo.log foo.f90 foo libflib.so else - echo "Skipping esting flang-$VERSION (Fortran) ..." + echo "Skipping testing flang-$VERSION (Fortran) ..." echo "doesn't exist on this arch" fi +# libc +if dpkg -l|grep -q libllvmlibc-$VERSION-dev; then +echo "Testing libllvmlibc-$VERSION-dev ..." +echo ' +#include +int main(void) +{ + double f = 2.0; + if (isnan(f)) + return 1; + return 0; +}' > main.c +clang-$VERSION -static -nostdlib -nolibc -L/usr/lib/llvm-$VERSION/lib/ -lllvmlibc main.c -o foo +if ! ldd foo 2>&1|grep -qv libc.; then + echo "linked against regular libc" + exit -1 +fi + +# segfault for now +./foo || true + # libclc echo "Testing libclc-$VERSION-dev ..." @@ -1155,6 +1313,10 @@ fi BINDIR=$(llvm-config-$VERSION --bindir) /usr/lib/llvm-$VERSION/share/libclc/check_external_calls.sh /usr/lib/clc/amdgcn--amdhsa.bc $BINDIR > /dev/null +else + echo "Skipping testing libllvmlibc-$VERSION-dev ..." + echo "doesn't exist on this arch" +fi # libunwind echo "Testing libunwind-$VERSION-dev ..." @@ -1395,7 +1557,7 @@ int main() { EmitBackendOutput(*diags, *hsOpts, *cgOpts, *tOpts, *lOpts, *tDesc, m, *action, VFS, std::move(AsmOutStream)); } EOF -clang++-$VERSION foo.cpp -o test -lclangBasic -lclangCodeGen -lclangDriver -lclangFrontend -lclangFrontendTool -lclangCodeGen -lclangRewriteFrontend -lclangARCMigrate -lclangStaticAnalyzerFrontend -lclangStaticAnalyzerCheckers -lclangStaticAnalyzerCore -lclangCrossTU -lclangIndex -lclangFrontend -lclangDriver -lclangParse -lclangSerialization -lclangSema -lclangAnalysis -lclangEdit -lclangFormat -lclangToolingInclusions -lclangToolingCore -lclangRewrite -lclangASTMatchers -lclangAST -lclangLex -lclangBasic -ldl /usr/lib/llvm-$VERSION/lib/libLLVM-$VERSION.so -lclangCodeGen -lclangDriver -lclangFrontend -lclangFrontendTool -lclangRewriteFrontend -lclangARCMigrate -lclangStaticAnalyzerFrontend -lclangStaticAnalyzerCheckers -lclangStaticAnalyzerCore -lclangCrossTU -lclangIndex -lclangParse -lclangSerialization -lclangSema -lclangAnalysis -lclangEdit -lclangFormat -lclangToolingInclusions -lclangToolingCore -lclangRewrite -lclangASTMatchers -lclangAST -lclangLex -ldl -I /usr/lib/llvm-$VERSION/include/ -L/usr/lib/llvm-$VERSION/lib/ -lPolly -lPollyISL +clang++-$VERSION foo.cpp -o test -lclangCodeGen -lclangDriver -lclangFrontend -lclangFrontendTool -lclangCodeGen -lclangRewriteFrontend -lclangARCMigrate -lclangStaticAnalyzerFrontend -lclangStaticAnalyzerCheckers -lclangStaticAnalyzerCore -lclangCrossTU -lclangIndex -lclangFrontend -lclangDriver -lclangParse -lclangSerialization -lclangSema -lclangAnalysis -lclangEdit -lclangFormat -lclangToolingInclusions -lclangToolingCore -lclangRewrite -lclangASTMatchers -lclangAST -lclangLex -lclangAPINotes -lclangSupport -lclangBasic -ldl /usr/lib/llvm-$VERSION/lib/libLLVM-$VERSION.so -lclangCodeGen -lclangDriver -lclangFrontend -lclangFrontendTool -lclangRewriteFrontend -lclangARCMigrate -lclangStaticAnalyzerFrontend -lclangStaticAnalyzerCheckers -lclangStaticAnalyzerCore -lclangCrossTU -lclangIndex -lclangParse -lclangSerialization -lclangSema -lclangAnalysis -lclangEdit -lclangFormat -lclangToolingInclusions -lclangToolingCore -lclangRewrite -lclangASTMatchers -lclangAST -lclangLex -ldl -I /usr/lib/llvm-$VERSION/include/ -L/usr/lib/llvm-$VERSION/lib/ -lPolly -lPollyISL if test ! -f /usr/bin/lldb-$VERSION; then echo "Install lldb-$VERSION"; @@ -1521,7 +1683,7 @@ rm -rf cmaketest && mkdir cmaketest cat > cmaketest/CMakeLists.txt < $$f2; \ done @@ -630,6 +668,7 @@ stamps/preconfigure: chmod +x \ debian/clang-tools-$(LLVM_VERSION).install \ debian/libclang-$(LLVM_VERSION)-dev.install \ + debian/libclang-common-$(LLVM_VERSION)-dev.install \ debian/libclang-rt-$(LLVM_VERSION)-dev.install \ debian/libpolly-$(LLVM_VERSION)-dev.install \ debian/libomp-$(LLVM_VERSION)-dev.install \ @@ -639,11 +678,14 @@ stamps/preconfigure: debian/llvm-$(LLVM_VERSION)-linker-tools.links \ debian/libbolt-$(LLVM_VERSION)-dev.install - # workaround the breaks/replaces/conflicts introduced with the libc++ move + # workaround the breaks/replaces/conflicts introduced with the libllvm move # we update the version to make it work with apt.llvm.org # Yeah, this is ugly but I don't know how to do better - if test "$(LLVM_VERSION)" = "17"; then \ - sed -i -e "s|(<< 1:17.0.6-2)|(<< 1:17.0.6~++20231206041259)|g" debian/control; \ + if test "$(LLVM_VERSION)" = "18"; then \ + if echo $(LLVM_VERSION_SNAPSHOT)| grep -q "~++"; then \ + sed -i -e "s| (<< 1:18.1.8-9)|(<< 1:18.1.8~++20240830304741)|g" debian/control; \ + sed -i -e "s| (<< 1:18.1.8-9)|(<< 1:18.1.8~++20240830304741)|g" debian/control; \ + fi; \ fi # llvm-spirv was found, so we can enable *.spv files. Debian @@ -738,7 +780,7 @@ ifneq (,$(filter $(DEB_HOST_ARCH),i386 amd64)) SCCACHE_LOG=sccache=debug SCCACHE_ERROR_LOG=$(SCCACHE_PATH)/sccache.log SCCACHE_GCS_KEY_PATH=$(SCCACHE_PATH)/secret-gcp-storage.json SCCACHE_GCS_BUCKET=apt-llvm-org-sccache SCCACHE_GCS_RW_MODE=READ_WRITE $(SCCACHE_CMD) --start-server else # on s390x machine, use a local cache - SCCACHE_CACHE_SIZE=20G SCCACHE_LOG=sccache=debug SCCACHE_ERROR_LOG=$(SCCACHE_PATH)/sccache.log SCCACHE_DIR=/opt/sccache/cache/ SCCACHE_DIRECT=true SCCACHE_CACHE_SIZE="20G" $(SCCACHE_CMD) --start-server + SCCACHE_CACHE_SIZE=20G SCCACHE_LOG=sccache=debug SCCACHE_ERROR_LOG=$(SCCACHE_PATH)/sccache.log SCCACHE_DIR=/opt/sccache/cache/ SCCACHE_DIRECT=true $(SCCACHE_CMD) --start-server endif endif echo "Running tests: $(RUN_TEST)" @@ -776,8 +818,6 @@ endif -DCOMPILER_RT_INCLUDE_TESTS=OFF \ -DCOMPILER_RT_USE_LIBCXX=OFF \ -DCOMPILER_RT_USE_BUILTINS_LIBRARY=$(COMPILER_RT_USE_BUILTINS_LIBRARY) \ - -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON \ - -DLIBUNWIND_USE_COMPILER_RT=ON \ -DLIBUNWIND_INSTALL_LIBRARY=OFF \ -DLIBCXXABI_ENABLE_EXCEPTIONS=$(LIBCXX_EXCEPTIONS) \ -DLIBCXXABI_USE_COMPILER_RT=$(LIBCXX_USE_COMPILER_RT) \ @@ -788,18 +828,19 @@ endif -DLIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY=ON \ -DLIBCXX_STATICALLY_LINK_ABI_IN_SHARED_LIBRARY=OFF \ -DLIBCXX_INSTALL_LIBRARY=OFF \ + -DLIBCXX_INSTALL_MODULES=ON \ + -DBOOTSTRAP_LIBCXX_INSTALL_MODULES=ON \ -DOPENMP_ENABLE_LIBOMP_PROFILING=OFF \ -DOPENMP_ENABLE_LIBOMPTARGET_PROFILING=OFF \ -DLIBOMP_ENABLE_RTTI=OFF \ -DLIBOMP_OMPT_SUPPORT=OFF \ -DCLANG_FORCE_MATCHING_LIBCLANG_SOVERSION=ON \ - -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=$(EXPERIMENTAL_TARGETS) \ $(CMAKE_EXTRA) \ -DBUILTINS_CMAKE_ARGS="-DCMAKE_C_FLAGS=$(STAGE_1_CFLAGS);-DCMAKE_CXX_FLAGS=$(STAGE_1_CXXFLAGS);-DCMAKE_EXE_LINKER_FLAGS=$(STAGE_1_LDFLAGS);-DCMAKE_SHARED_LINKER_FLAGS=$(STAGE_1_LDFLAGS);-DCMAKE_MODULE_LINKER_FLAGS=$(STAGE_1_LDFLAGS);-DCMAKE_BUILD_TYPE=Release;-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF" \ -DRUNTIMES_CMAKE_ARGS="-DCMAKE_C_FLAGS=$(STAGE_1_CFLAGS);-DCMAKE_CXX_FLAGS=$(STAGE_1_CXXFLAGS);-DCMAKE_EXE_LINKER_FLAGS=$(STAGE_1_LDFLAGS);-DCMAKE_SHARED_LINKER_FLAGS=$(STAGE_1_LDFLAGS);-DCMAKE_MODULE_LINKER_FLAGS=$(STAGE_1_LDFLAGS);-DCMAKE_BUILD_TYPE=Release;-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF" \ -DCLANG_ENABLE_BOOTSTRAP=ON \ -DCLANG_BOOTSTRAP_TARGETS="$(ENABLED_STAGE2_CMAKE_BUILD_TARGETS)" \ - -DCLANG_BOOTSTRAP_PASSTHROUGH="CMAKE_INSTALL_PREFIX;CMAKE_SUPPRESS_REGENERATION;ENABLE_LINKER_BUILD_ID;LLVM_ENABLE_PIC;LLVM_ENABLE_RTTI;LLVM_INCLUDE_GO_TESTS;LLVM_USE_RELATIVE_PATHS_IN_FILES;CLANG_DEFAULT_LINKER;CLANG_DEFAULT_CXX_STDLIB;CLANG_DEFAULT_RTLIB;COMPILER_RT_USE_LIBCXX;COMPILER_RT_USE_BUILTINS_LIBRARY;COMPILER_RT_DEFAULT_TARGET_ONLY;COMPILER_RT_INCLUDE_TESTS;LIBUNWIND_USE_COMPILER_RT;LIBCXXABI_ENABLE_EXCEPTIONS;LIBCXXABI_USE_COMPILER_RT;LIBCXX_USE_COMPILER_RT;LIBCXX_ENABLE_EXCEPTIONS;LIBCXX_ENABLE_STATIC_ABI_LIBRARY;LIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY;LIBCXX_STATICALLY_LINK_ABI_IN_SHARED_LIBRARY;LIBOMP_ENABLE_RTTI;LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN;CLANG_FORCE_MATCHING_LIBCLANG_SOVERSION;CMAKE_C_COMPILER_LAUNCHER;CMAKE_CXX_COMPILER_LAUNCHER" \ + -DCLANG_BOOTSTRAP_PASSTHROUGH="CMAKE_INSTALL_PREFIX;CMAKE_SUPPRESS_REGENERATION;ENABLE_LINKER_BUILD_ID;LLVM_ENABLE_PIC;LLVM_ENABLE_RTTI;LLVM_INCLUDE_GO_TESTS;LLVM_USE_RELATIVE_PATHS_IN_FILES;CLANG_DEFAULT_LINKER;CLANG_DEFAULT_CXX_STDLIB;CLANG_DEFAULT_RTLIB;COMPILER_RT_USE_LIBCXX;COMPILER_RT_USE_BUILTINS_LIBRARY;COMPILER_RT_DEFAULT_TARGET_ONLY;COMPILER_RT_INCLUDE_TESTS;LIBUNWIND_USE_COMPILER_RT;LIBCXXABI_ENABLE_EXCEPTIONS;LIBCXXABI_USE_COMPILER_RT;LIBCXX_USE_COMPILER_RT;LIBCXX_ENABLE_EXCEPTIONS;LIBCXX_ENABLE_STATIC_ABI_LIBRARY;LIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY;LIBCXX_STATICALLY_LINK_ABI_IN_SHARED_LIBRARY;LIBOMP_ENABLE_RTTI;LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN;CLANG_FORCE_MATCHING_LIBCLANG_SOVERSION;CMAKE_C_COMPILER_LAUNCHER;CMAKE_CXX_COMPILER_LAUNCHER;LLVM_EXPERIMENTAL_TARGETS_TO_BUILD" \ -DBOOTSTRAP_CMAKE_BUILD_TYPE=RelWithDebInfo \ -DBOOTSTRAP_CMAKE_C_FLAGS_RELWITHDEBINFO="$(opt_flags)" \ -DBOOTSTRAP_CMAKE_CXX_FLAGS_RELWITHDEBINFO="$(opt_flags)" \ @@ -818,7 +859,7 @@ endif -DBOOTSTRAP_LLVM_INSTALL_UTILS=ON \ -DBOOTSTRAP_LLVM_VERSION_SUFFIX= \ -DBOOTSTRAP_LLVM_POLLY_LINK_INTO_TOOLS=ON \ - -DBOOTSTRAP_LLVM_EXPERIMENTAL_TARGETS_TO_BUILD=$(EXPERIMENTAL_TARGETS) \ + -DBOOTSTRAP_LLVM_EXPERIMENTAL_TARGETS_TO_BUILD="M68k;Xtensa" \ -DBOOTSTRAP_LLVM_LINK_LLVM_DYLIB=ON \ -DBOOTSTRAP_LLVM_ENABLE_CURL=$(if $(filter stage1, $(DEB_BUILD_PROFILES)),OFF,ON) \ -DBOOTSTRAP_CLANG_LINK_CLANG_DYLIB=ON \ @@ -835,6 +876,9 @@ endif exit 1; \ fi @mkdir -p stamps +# Detect the triple + TRIPLE=`grep ^LLVM_DEFAULT_TARGET_TRIPLE build-llvm/CMakeCache.txt|cut -d= -f2`; \ + sed -i -e "s|@DEB_HOST_MULTIARCH_LLVM@|$$TRIPLE|g" debian/*.links touch $@ VERBOSE=-v @@ -1018,7 +1062,8 @@ build-wasm/libcxx-%-wasi: build-wasm/compiler-rt-% -DLIBCXXABI_ENABLE_THREADS:BOOL=OFF \ -DLIBCXXABI_HAS_PTHREAD_API:BOOL=OFF \ -DLIBCXXABI_HAS_EXTERNAL_THREAD_API:BOOL=OFF \ - -DLIBCXXABI_BUILD_EXTERNAL_THREAD_LIBRARY:BOOL=OFF + -DLIBCXXABI_BUILD_EXTERNAL_THREAD_LIBRARY:BOOL=OFF \ + -DLIBCXXABI_USE_LLVM_UNWINDER:BOOL=OFF ninja -C "$@" -j $(NJOBS) $(VERBOSE) endif @@ -1050,6 +1095,11 @@ override_dh_auto_build: \ override_dh_prep: stamps/build_doc dh_prep +ifeq ($(DOC_GENERATION), no) +stamps/build_doc: + mkdir -p $(TARGET_BUILD)/tools/clang/stage2-bins/docs/ocamldoc/html/ + @echo "Don't build doc on this distro $(DISTRO)" +else stamps/build_doc: BUILDDIR="_build"; \ ALLSPHINXOPTS="-d $$BUILDDIR/doctrees ."; \ @@ -1111,6 +1161,7 @@ endif cd openmp/runtime/doc/doxygen/generated/html/ && rm jquery.js && ln -s /usr/share/javascript/jquery/jquery.js; \ fi touch $@ +endif override_dh_auto_install: # Clean up temporary files to make sure the install works @@ -1119,6 +1170,16 @@ override_dh_auto_install: # install/fast enables a make install without recompiling temporary files LD_LIBRARY_PATH=$(STAGE_2_LIB_DIR):$$LD_LIBRARY_PATH DESTDIR=$(DEB_INST)/ ninja -C $(TARGET_BUILD) $(VERBOSE) stage2-install + # Move libLLVM to /usr/lib/TRIPLE/libLLVM-XX.so.1 to make it multiarch ready + mkdir -p $(DEB_INST)/usr/lib/$(DEB_HOST_MULTIARCH)/; \ + mv $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION).so.1 $(DEB_INST)/usr/lib/$(DEB_HOST_MULTIARCH)/; \ + mv $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION).so.$(LLVM_VERSION).1 $(DEB_INST)/usr/lib/$(DEB_HOST_MULTIARCH)/ + + rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION).so + cd $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/; \ + ln -s ../../$(DEB_HOST_MULTIARCH)/libLLVM-$(LLVM_VERSION).so.1 libLLVM-$(LLVM_VERSION).so; \ + ln -s ../../$(DEB_HOST_MULTIARCH)/libLLVM-$(LLVM_VERSION).so.1 libLLVM-$(LLVM_VERSION).so.1 + # Not used on Linux. rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin/argdumper rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/share/clang/clang-format-bbedit.applescript @@ -1133,7 +1194,7 @@ override_dh_auto_install: # Only run on executable, not script chrpath -d `find $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin/ -type f -executable -exec file -i '{}' \; | grep 'x-executable; charset=binary'|cut -d: -f1` -ifeq (,$(filter $(DEB_HOST_ARCH), powerpc powerpcspe sparc sparc64)) +ifeq (,$(filter $(DEB_HOST_ARCH), powerpc powerpcspe)) ifneq (,$(filter $(DEB_HOST_ARCH_OS),linux)) # To fix custom-library-search-path chrpath -d $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)*/lib/linux/*.so @@ -1141,13 +1202,13 @@ endif endif if test "$(LIBUNWIND_ENABLE)" = yes; then \ - mkdir -p debian/tmp/usr/include/libunwind; \ - cp -R libunwind/include/* debian/tmp/usr/include/libunwind/; \ + mkdir -p $(DEB_INST)/usr/include/libunwind; \ + cp -R libunwind/include/* $(DEB_INST)/usr/include/libunwind/; \ fi : # libomp if test "$(OPENMP_ENABLE)" = yes; then \ - cd debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib; \ + cd $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib; \ ln -s libomp.so.$(SONAME_OPENMP) libomp.so; \ cp libomp.so.$(SONAME_OPENMP) libomp-$(LLVM_VERSION).so.$(SONAME_OPENMP); \ fi @@ -1165,6 +1226,11 @@ ifeq (${LIBFUZZER_ENABLE},yes) cp -v $(TARGET_BUILD)/libFuzzer.a $(CURDIR)/debian/libfuzzer-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/lib/ endif +# Because of hurd, we are more flexible in what we include in libclang-X.Y-rt +# but we don't want to install wasi files into libclang-rt as they have their own package +# So, we remove this directory from the package + rm -f $(CURDIR)/debian/libclang-rt-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/lib/wasi/ + # Create this fake directory to make the install libclang-common-dev happy # under the unsupported archs of compiler-rt mkdir -p $(DEB_INST)/usr/lib/clang/$(LLVM_VERSION)/lib @@ -1191,7 +1257,7 @@ endif $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/build/utils/lit/lit/*/__pycache__/ # workaround issue https://github.com/llvm/llvm-project/issues/57101 - find debian/tmp -iname 'libbolt_rt*.a' -path '*/build-llvm/*' -delete + find $(DEB_INST) -iname 'libbolt_rt*.a' -path '*/build-llvm/*' -delete # Remove an osx file rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libbolt_rt_instr_osx.a @@ -1277,9 +1343,14 @@ endif fi mkdir -p $(CURDIR)/debian/usr/share/doc/llvm-$(LLVM_VERSION)-doc/ $(CURDIR)/debian/usr/share/doc/clang-$(LLVM_VERSION)-doc/ - cp -R $(TARGET_BUILD_STAGE2)/docs/html $(CURDIR)/debian/usr/share/doc/llvm-$(LLVM_VERSION)-doc/ - cp -R $(TARGET_BUILD_STAGE2)/tools/clang/docs/html $(CURDIR)/debian/usr/share/doc/clang-$(LLVM_VERSION)-doc/ - cp -R $(TARGET_BUILD_STAGE2)/tools/clang/tools/extra/docs/html $(CURDIR)/debian/usr/share/doc/clang-$(LLVM_VERSION)-doc/clang-extra + if test "$(DOC_GENERATION)" = yes; then \ + cp -R $(TARGET_BUILD_STAGE2)/docs/html $(CURDIR)/debian/usr/share/doc/llvm-$(LLVM_VERSION)-doc/; \ + cp -R $(TARGET_BUILD_STAGE2)/tools/clang/docs/html $(CURDIR)/debian/usr/share/doc/clang-$(LLVM_VERSION)-doc/; \ + cp -R $(TARGET_BUILD_STAGE2)/tools/clang/tools/extra/docs/html $(CURDIR)/debian/usr/share/doc/clang-$(LLVM_VERSION)-doc/clang-extra; \ + else \ + mkdir -p llvm/docs/_build/html clang/docs/_build/html/ tools/clang/tools/extra/docs/html openmp/runtime/doc/doxygen/generated/html/ debian/man/ clang/docs/_build/man/ llvm/docs/_build/man/; \ + rm debian/*$(LLVM_VERSION)*manpages; \ + fi # Rename OCaml bindings if test "$(OCAML_ENABLE)" = yes; then \ @@ -1310,6 +1381,10 @@ endif if test "$(LLDB_PYTHON_ENABLE)" = no; then \ echo "" > debian/python3-lldb-$(LLVM_VERSION).install; \ fi +# if libc isn't built, remove what we want to install + if test "$(LIBC_ENABLE)" = no; then \ + echo "" > debian/libllvmlibc-$(LLVM_VERSION)-dev.install; \ + fi # Remove some mlir example rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libMyExtensionCh*.a @@ -1383,12 +1458,12 @@ ifeq (${POLLY_ENABLE},yes) ifneq (,$(filter libpolly-$(LLVM_VERSION)-dev, $(packages))) dh_install -p libpolly-$(LLVM_VERSION)-dev usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/polly/*.cmake usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/polly # On old Debian & Ubuntu, removing the files is necessary - rm -rf debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/polly/*.cmake + rm -rf $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/polly/*.cmake else - rm -rf $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/polly/*.cmake + rm -rf $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/polly/*.cmake endif endif - dh_install --fail-missing + dh_install --fail-missing ${skip_packages} # Move the libc++ abi files from libc++ to libc++-abi for the wasm32 packages # These packages are arch: all, so only do so when the packages are built ifneq (,$(filter libc++-$(LLVM_VERSION)-dev-wasm32, $(packages))) @@ -1406,7 +1481,7 @@ endif rm -fr $(CURDIR)/debian/libclang-rt-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)/lib/wasi/ stamps/repack_a_llvm_ir: -ifeq (${LTO_ENABLE},yes) +ifeq (${THINLTO_ENABLE},yes) # with LTO, .a contains llvm ir instead of native code. So, recompile them NJOBS="$(NJOBS)" P_TO_LLVM="$(CURDIR)" VERSION=$(LLVM_VERSION) bash -v debian/llvm-compile-lto-elf.sh $(CXXFLAGS_EXTRA) endif @@ -1417,7 +1492,7 @@ override_dh_installdeb: stamps/repack_a_llvm_ir # Managed by the package dh_installdeb -a - rm -f $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/python*/*-packages/lldb/__init__.pyc $(CURDIR)/debian/python*-lldb-$(LLVM_VERSION)/usr/lib/llvm-$(LLVM_VERSION)/lib/python*/*-packages/lldb/__init__.pyc + rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/python*/*-packages/lldb/__init__.pyc $(CURDIR)/debian/python*-lldb-$(LLVM_VERSION)/usr/lib/llvm-$(LLVM_VERSION)/lib/python*/*-packages/lldb/__init__.pyc rm -f $(CURDIR)/debian/clang-$(LLVM_VERSION)-examples/usr/share/doc/clang-$(LLVM_VERSION)-examples/examples/*Make* # the openmp header files moved to the same path as lib clang headers. @@ -1456,14 +1531,16 @@ ifeq (${LLD_ENABLE},yes) ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-lld || true endif -# Sanitizer - ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-sanitizer || true +# Cxx + ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-cxx || true -# Libcxx - ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-libcxx || true +# Libc +ifeq (${LIBC_ENABLE},yes) + ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-libc || true +endif -# Libcxxabi - ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-libcxxabi || true +# Cxxabi + ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-cxxabi || true # MLIR ifeq (,$(filter $(DEB_HOST_ARCH), armel armhf i386 x32)) @@ -1516,8 +1593,11 @@ override_dh_auto_test: endif +override_dh_builddeb: + dh_builddeb ${skip_packages} + override_dh_gencontrol: stamps/sccache-stats - dh_gencontrol -- $(control_vars) + dh_gencontrol ${skip_packages} -- $(control_vars) override_dh_auto_clean: diff --git a/debian/tests/cmake-clang-test b/debian/tests/cmake-clang-test index 89aa8e55..4772815a 100755 --- a/debian/tests/cmake-clang-test +++ b/debian/tests/cmake-clang-test @@ -2,7 +2,7 @@ set -e -LLVM_VERSION=17 +LLVM_VERSION=18 # this is taken from libjsoncpp package # Presence of $AUTOPKGTEST_TMP implies that someone will handle cleanup for us, so we @@ -20,7 +20,7 @@ cd "$AUTOPKGTEST_TMP" cat < CMakeLists.txt cmake_minimum_required(VERSION 3.22) project(cmake-clang-test) -find_package(Clang) +find_package(Clang $LLVM_VERSION.1 REQUIRED) EOF diff --git a/debian/tests/cmake-llvm-test b/debian/tests/cmake-llvm-test index abaee6a2..28d95b32 100755 --- a/debian/tests/cmake-llvm-test +++ b/debian/tests/cmake-llvm-test @@ -2,7 +2,7 @@ set -e -LLVM_VERSION=17 +LLVM_VERSION=18 # this is taken from libjsoncpp package # Presence of $AUTOPKGTEST_TMP implies that someone will handle cleanup for us, so we @@ -20,7 +20,7 @@ cd "$AUTOPKGTEST_TMP" cat < CMakeLists.txt cmake_minimum_required(VERSION 3.22) project(cmake-llvm-test) -find_package(LLVM $LLVM_VERSION REQUIRED +find_package(LLVM $LLVM_VERSION.1 REQUIRED COMPONENTS Analysis BitReader diff --git a/debian/tests/control b/debian/tests/control index 1e3e72a6..97fdb374 100644 --- a/debian/tests/control +++ b/debian/tests/control @@ -2,7 +2,7 @@ Test-Command: bash -v ./debian/qualify-clang.sh Depends: @, cmake, make, g++, file, dpkg-dev # Comment the dbgsym package because of bug #917528 # dbgsym packages not being available in testing -# clang-17-dbgsym, libclang1-17-dbgsym +# clang-18-dbgsym, libclang1-18-dbgsym Restrictions: allow-stderr Architecture: amd64 arm64 i386 @@ -12,13 +12,13 @@ Restrictions: allow-stderr Architecture: amd64 arm64 Tests: cmake-llvm-test -Depends: gcc, build-essential, cmake, llvm-17-dev +Depends: gcc, build-essential, cmake, llvm-18-dev Tests: cmake-clang-test -Depends: gcc, build-essential, cmake, llvm-17-dev, clang-17, libclang-17-dev +Depends: gcc, build-essential, cmake, llvm-18-dev, clang-18, libclang-18-dev Test-Command: python3 -c "import lldb; print(lldb.__file__); print(lldb)" -Depends: python3-lldb-17 +Depends: python3-lldb-18 Test-Command: python3 -c "import clang; print(clang.__file__); print(clang)" -Depends: python3-clang-17 +Depends: python3-clang-18 diff --git a/debian/tests/integration-test-suite-test b/debian/tests/integration-test-suite-test index b3bd0a6e..3524400b 100755 --- a/debian/tests/integration-test-suite-test +++ b/debian/tests/integration-test-suite-test @@ -2,7 +2,7 @@ set -e -LLVM_VERSION=17 +LLVM_VERSION=18 # this is taken from libjsoncpp package # Presence of $AUTOPKGTEST_TMP implies that someone will handle cleanup for us, so we diff --git a/debian/unpack.sh b/debian/unpack.sh index 77447f06..c1b8b681 100644 --- a/debian/unpack.sh +++ b/debian/unpack.sh @@ -1,6 +1,6 @@ set -e -ORIG_VERSION=17 -MAJOR_VERSION=17.0.0 # 8.0.1 +ORIG_VERSION=18 +MAJOR_VERSION=18 # 8.0.1 REV=`ls -1 *${ORIG_VERSION}_${MAJOR_VERSION}*~+*xz | tail -1|perl -ne 'print "$1\n" if /~\+(.*)\.orig/;' | sort -ru` VERSION=$REV