Accepting request 1236113 from devel:tools:compiler

- Update to version 2.36.0
  * The --package-metadata=<string> option has been added to embed a given string
    into the .note.package section. This option is designed for build scripts that
    generate binary packages, such as .rpm or .deb, to include package metadata in
    each executable. It simplifies the process of identifying the corresponding
    package for a given executable or core file. (7ddc8f4)
  * [ARM][PowerPC] We've improved the algorithm for creating range extension thunks
    to reduce memory usage and improve speed. For example, linking clang-19 for
    ARM64 is now ~7% faster than before. (9fc0ace)
  * [RISC-V][LoongArch] We've improved the algorithm for code-shrinking linker
    relaxation to reduce memory usage and improve speed. For example, linking
    clang-19 for RISC-V is now ~4% faster than before. (3234d88)
  * mold created a bad relocation for an IFUNC if the linker's output file type was
    a shared library and the symbol was exported. This bug could cause a
    segmentation fault of a linked program. The problem has now been fixed.
    (a297859)
  * [RISC-V] mold could produce incorrect code as a result of code-shrinking
    relaxation for the R_RISCV_HI20 relocation. That type of relocation was used
    rarely because it is not PC-relative. That being said, if your program used the
    relocation, and the relocation targets were at a low address (from 0x1f800 to
    0x20000), your program would crash at runtime due to the linker's bug. The issue
    has now been resolved. (eec3f6b)
  * [RISC-V][LoongArch] When the linker removed instructions from a function as a
    result of code-shrinking relaxation, the function symbol's size in the output
    file should be updated to reflect the result of relaxation, even though doing it
    is mostly cosmetic. mold did not do that. Now, mold sets correct sizes to output
    function symbols. (e6345d5)
  * [LoongArch] Binaries linked with mold now work on 64 KiB page systems.
    Previously, only up to 16 KiB pages were supported. (2d7b6b2)
  * [s390x] The s390x processor-specific ABI requires the linker to reserve the

OBS-URL: https://build.opensuse.org/request/show/1236113
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mold?expand=0&rev=51
This commit is contained in:
Ana Guerrero 2025-01-09 14:12:02 +00:00 committed by Git OBS Bridge
commit 9f92fbdce1
4 changed files with 43 additions and 5 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:912b90afe7fde03e53db08d85a62c7b03a57417e54afc72c08e2fa07cab421ff
size 10094602

3
mold-2.36.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3f57fe75535500ecce7a80fa1ba33675830b7d7deb1e5ee9a737e2bc43cdb1c7
size 10094759

View File

@ -1,3 +1,41 @@
-------------------------------------------------------------------
Thu Jan 9 08:02:26 UTC 2025 - Martin Liška <martin.liska@hey.com>
- Update to version 2.36.0
* The --package-metadata=<string> option has been added to embed a given string
into the .note.package section. This option is designed for build scripts that
generate binary packages, such as .rpm or .deb, to include package metadata in
each executable. It simplifies the process of identifying the corresponding
package for a given executable or core file. (7ddc8f4)
* [ARM][PowerPC] We've improved the algorithm for creating range extension thunks
to reduce memory usage and improve speed. For example, linking clang-19 for
ARM64 is now ~7% faster than before. (9fc0ace)
* [RISC-V][LoongArch] We've improved the algorithm for code-shrinking linker
relaxation to reduce memory usage and improve speed. For example, linking
clang-19 for RISC-V is now ~4% faster than before. (3234d88)
* mold created a bad relocation for an IFUNC if the linker's output file type was
a shared library and the symbol was exported. This bug could cause a
segmentation fault of a linked program. The problem has now been fixed.
(a297859)
* [RISC-V] mold could produce incorrect code as a result of code-shrinking
relaxation for the R_RISCV_HI20 relocation. That type of relocation was used
rarely because it is not PC-relative. That being said, if your program used the
relocation, and the relocation targets were at a low address (from 0x1f800 to
0x20000), your program would crash at runtime due to the linker's bug. The issue
has now been resolved. (eec3f6b)
* [RISC-V][LoongArch] When the linker removed instructions from a function as a
result of code-shrinking relaxation, the function symbol's size in the output
file should be updated to reflect the result of relaxation, even though doing it
is mostly cosmetic. mold did not do that. Now, mold sets correct sizes to output
function symbols. (e6345d5)
* [LoongArch] Binaries linked with mold now work on 64 KiB page systems.
Previously, only up to 16 KiB pages were supported. (2d7b6b2)
* [s390x] The s390x processor-specific ABI requires the linker to reserve the
first three slots of the .got section for the runtime. mold, however, reserved
only two slots and used the third for itself. Even though we did not observe
issues in the wild, it was a violation of the psABI. The problem has now been
fixed. (dfce2fc)
-------------------------------------------------------------------
Tue Dec 17 06:02:19 UTC 2024 - Martin Liška <martin.liska@hey.com>

View File

@ -1,7 +1,7 @@
#
# spec file for package mold
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -17,7 +17,7 @@
Name: mold
Version: 2.35.1
Version: 2.36.0
Release: 0
Summary: A Modern Linker (mold)
License: MIT