mold: A Modern Linker
https://github.com/rui314/mold
mold is a faster drop-in replacement for existing Unix linkers.
It is several times faster than LLVM lld linker, the second-fastest
open-source linker which I originally created a few years ago.
mold is created for increasing developer productivity by reducing
build time especially in rapid debug-edit-rebuild cycles.
Here is a performance comparison of GNU gold, LLVM lld, and mold for
linking final debuginfo-enabled executables of major large programs
on a simulated 8-core 16-threads machine.
- Developed at devel:tools:compiler
- Sources inherited from project openSUSE:Factory
-
3
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout openSUSE:Leap:16.0:FactoryCandidates/mold && cd $_
- Create Badge
Refresh
Refresh
Source Files
Filename | Size | Changed |
---|---|---|
_constraints | 0000000128 128 Bytes | |
build-blake-3-as-static.patch | 0000000441 441 Bytes | |
mold-2.3.3.tar.gz | 0009965345 9.5 MB | |
mold.changes | 0000036894 36 KB | |
mold.spec | 0000003032 2.96 KB |
Revision 38 (latest revision is 48)
Ana Guerrero (anag+factory)
accepted
request 1126103
from
Martin Liška (martinliska)
(revision 38)
- Update to version 2.3.3 * --dynamic-list has different semantics for executables and DSOs. Previously, mold implemented only the semantics for executables, causing issues with libraries such as musl that used this option. mold now handles the option for DSOs correctly. (da3f5dd) * Old object files often contain .ctors and .dtors sections, which hold function pointers for initializing and finalizing processes, respectively. Their roles have been superseded by .init_array and .fini_array on most targets. mold worked functioned correctly as long as input object files consistently use the old or the new sections. However, mixing object files that contain both types of initializers/finalizers resulted in some functions not being executed. This issue has been fixed. (3f88964) * --defsym can cause the linker to crash if a given symbol is not defined. The crash bug has been fixed. (ff3d54d) * [POWER10] On rare occasions, pointers statically initialized to functions could be left as null pointers. This bug has been fixed. (31c3b53) - Remove upstreamed patch power10-fix.patch. - Add power10 fix power10-fix.patch for #1142.
Comments 0