Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package llvm15 for openSUSE:Factory checked in at 2023-03-13 12:39:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/llvm15 (Old) and /work/SRC/openSUSE:Factory/.llvm15.new.31432 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "llvm15" Mon Mar 13 12:39:55 2023 rev:8 rq:1070944 version:15.0.7 Changes: -------- --- /work/SRC/openSUSE:Factory/llvm15/llvm15.changes 2023-01-21 19:09:56.408743207 +0100 +++ /work/SRC/openSUSE:Factory/.llvm15.new.31432/llvm15.changes 2023-03-13 12:39:57.923438246 +0100 @@ -1,0 +2,14 @@ +Sat Mar 11 14:09:34 UTC 2023 - Aaron Puchert <aaronpuch...@alice-dsl.net> + +- Add llvm-suse-implicit-gnu.patch to recognize <arch>-suse-linux + as implicitly GNU. Without this we would get library calls for + fused-multiply-add even if it's available in hardware. +- Add openmp-drop-rpath.patch: backport revert of adding RUNPATH + to openmp executables. (boo#1206837) + +------------------------------------------------------------------- +Thu Mar 9 17:17:40 UTC 2023 - Dirk Müller <dmuel...@suse.com> + +- update constraints to exclude workers with very slow CPU + +------------------------------------------------------------------- New: ---- llvm-suse-implicit-gnu.patch openmp-drop-rpath.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ llvm15.spec ++++++ --- /var/tmp/diff_new_pack.dgi49l/_old 2023-03-13 12:39:59.511446521 +0100 +++ /var/tmp/diff_new_pack.dgi49l/_new 2023-03-13 12:39:59.519446562 +0100 @@ -369,6 +369,10 @@ Patch15: libcxx-test-library-path.patch # PATCH-FIX-UPSTREAM (?): Work around gh#llvm/llvm-project#28804 by hinting with __builtin_assume. Patch16: llvm-workaround-superfluous-branches.patch +# PATCH-FIX-UPSTREAM: Recognize <arch>-suse-linux as implicitly GNU. Discussion at https://reviews.llvm.org/D110900. +Patch17: llvm-suse-implicit-gnu.patch +# PATCH-FIX-UPSTREAM: Don't implicitly add RUNPATHs to openmp executable. (boo#1206837) +Patch18: openmp-drop-rpath.patch Patch20: llvm_build_tablegen_component_as_shared_library.patch Patch21: tests-use-python3.patch Patch22: llvm-better-detect-64bit-atomics-support.patch @@ -810,6 +814,7 @@ %patch13 -p1 %patch14 -p1 %patch16 -p2 +%patch17 -p2 %patch20 -p1 %patch21 -p1 %patch22 -p1 @@ -825,6 +830,7 @@ %patch4 -p1 %patch6 -p1 %patch9 -p2 +%patch18 -p2 %patch36 -p2 # We hardcode openSUSE ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.dgi49l/_old 2023-03-13 12:39:59.551446729 +0100 +++ /var/tmp/diff_new_pack.dgi49l/_new 2023-03-13 12:39:59.555446750 +0100 @@ -8,6 +8,7 @@ <size unit="M">4096</size> </memory> </hardware> + <hostlabel exclude="true">SLOW_CPU</hostlabel> <overwrite> <!-- We have disabled debuginfo on 32 bit architecture because they simply can no address enough memory to link llvm libraries with it. ++++++ llvm-suse-implicit-gnu.patch ++++++ diff --git a/llvm/include/llvm/ADT/Triple.h b/llvm/include/llvm/ADT/Triple.h index ba4584d..eec01eb 100644 --- a/llvm/include/llvm/ADT/Triple.h +++ b/llvm/include/llvm/ADT/Triple.h @@ -555,7 +555,8 @@ public: EnvironmentType Env = getEnvironment(); return Env == Triple::GNU || Env == Triple::GNUABIN32 || Env == Triple::GNUABI64 || Env == Triple::GNUEABI || - Env == Triple::GNUEABIHF || Env == Triple::GNUX32; + Env == Triple::GNUEABIHF || Env == Triple::GNUX32 || + (Env == Triple::UnknownEnvironment && getVendor() == Triple::SUSE); } bool isOSContiki() const { ++++++ openmp-drop-rpath.patch ++++++ Backport of upstream commit 555b572e3f407ac48b5f30fc06760cc4d0549977 From: Fangrui Song <i...@maskray.me> Date: Wed, 8 Mar 2023 10:18:40 -0800 Subject: [PATCH] Revert D118493 "Set rpath on openmp executables" This reverts commit 9b9d08111b618d74574ba03e5cc3d752ecc56f55. (Accepted by Jon https://reviews.llvm.org/D118493#4178250) libc++, libc++abi, libunwind, and compiler-rt don't add the extra DT_RUNPATH, it's strange for OpenMP to diverge. Some build systems want to handle DT_RUNPATH themselves (e.g. CMAKE_INSTALL_RPATH). Some distributions (e.g. Fedora) have policies against DT_RUNPATH and the default DT_RUNPATH for OpenMP is causing trouble. For users who don't want to specify rpath by themselves, https://clang.llvm.org/docs/UsersManual.html#configuration-files can be used to specify the default rpath, e.g. specify -frtlib-add-rpath or -Wl,-rpath in bin/clang.cfg --- clang/include/clang/Driver/Options.td | 6 ------ clang/lib/Driver/ToolChains/CommonArgs.cpp | 19 ------------------- clang/lib/Driver/ToolChains/CommonArgs.h | 3 --- clang/test/OpenMP/Inputs/libomp.a | 1 - 4 files changed, 29 deletions(-) delete mode 100644 clang/test/OpenMP/Inputs/libomp.a diff --git a/clang/include/clang/Driver/Options.td b/clang/include/clang/Driver/Options.td index 3cab37b..b8bc969 100644 --- a/clang/include/clang/Driver/Options.td +++ b/clang/include/clang/Driver/Options.td @@ -4112,11 +4112,6 @@ def frtlib_add_rpath: Flag<["-"], "frtlib-add-rpath">, Flags<[NoArgumentUnused]> HelpText<"Add -rpath with architecture-specific resource directory to the linker flags">; def fno_rtlib_add_rpath: Flag<["-"], "fno-rtlib-add-rpath">, Flags<[NoArgumentUnused]>, HelpText<"Do not add -rpath with architecture-specific resource directory to the linker flags">; -defm openmp_implicit_rpath: BoolFOption<"openmp-implicit-rpath", - LangOpts<"OpenMP">, - DefaultTrue, - PosFlag<SetTrue, [], "Set rpath on OpenMP executables">, - NegFlag<SetFalse>>; def r : Flag<["-"], "r">, Flags<[LinkerInput,NoArgumentUnused]>, Group<Link_Group>; def save_temps_EQ : Joined<["-", "--"], "save-temps=">, Flags<[CC1Option, FlangOption, NoXarchOption]>, diff --git a/clang/lib/Driver/ToolChains/CommonArgs.cpp b/clang/lib/Driver/ToolChains/CommonArgs.cpp index 443725f..19ac699 100644 --- a/clang/lib/Driver/ToolChains/CommonArgs.cpp +++ b/clang/lib/Driver/ToolChains/CommonArgs.cpp @@ -646,22 +646,6 @@ void tools::addLTOOptions(const ToolChain &ToolChain, const ArgList &Args, /*IsLTO=*/true); } -void tools::addOpenMPRuntimeSpecificRPath(const ToolChain &TC, - const ArgList &Args, - ArgStringList &CmdArgs) { - - if (Args.hasFlag(options::OPT_fopenmp_implicit_rpath, - options::OPT_fno_openmp_implicit_rpath, true)) { - // Default to clang lib / lib64 folder, i.e. the same location as device - // runtime - SmallString<256> DefaultLibPath = - llvm::sys::path::parent_path(TC.getDriver().Dir); - llvm::sys::path::append(DefaultLibPath, Twine("lib") + CLANG_LIBDIR_SUFFIX); - CmdArgs.push_back("-rpath"); - CmdArgs.push_back(Args.MakeArgString(DefaultLibPath)); - } -} - void tools::addOpenMPRuntimeLibraryPath(const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) { @@ -733,9 +717,6 @@ bool tools::addOpenMPRuntime(ArgStringList &CmdArgs, const ToolChain &TC, CmdArgs.push_back("-lomptarget.devicertl"); addArchSpecificRPath(TC, Args, CmdArgs); - - if (RTKind == Driver::OMPRT_OMP) - addOpenMPRuntimeSpecificRPath(TC, Args, CmdArgs); addOpenMPRuntimeLibraryPath(TC, Args, CmdArgs); return true; diff --git a/clang/lib/Driver/ToolChains/CommonArgs.h b/clang/lib/Driver/ToolChains/CommonArgs.h index d44d9214c08b..e64e9524601d 100644 --- a/clang/lib/Driver/ToolChains/CommonArgs.h +++ b/clang/lib/Driver/ToolChains/CommonArgs.h @@ -117,9 +117,6 @@ void AddAssemblerKPIC(const ToolChain &ToolChain, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs); -void addOpenMPRuntimeSpecificRPath(const ToolChain &TC, - const llvm::opt::ArgList &Args, - llvm::opt::ArgStringList &CmdArgs); void addArchSpecificRPath(const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs); void addOpenMPRuntimeLibraryPath(const ToolChain &TC, diff --git a/clang/test/OpenMP/Inputs/libomp.a b/clang/test/OpenMP/Inputs/libomp.a deleted file mode 100644 index 8b277f0dd5dc..000000000000 --- a/clang/test/OpenMP/Inputs/libomp.a +++ /dev/null @@ -1 +0,0 @@ -!<arch>