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
-
2
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout home:seife:Factory/mold && cd $_
- Create Badge
Refresh
Refresh
Source Files
Filename | Size | Changed |
---|---|---|
_constraints | 0000000128 128 Bytes | |
mold-1.10.0.tar.gz | 0008173315 7.79 MB | |
mold.changes | 0000025764 25.2 KB | |
mold.spec | 0000002986 2.92 KB |
Revision 28 (latest revision is 42)
Dominique Leuenberger (dimstar_suse)
accepted
request 1059957
from
Martin Liška (marxin)
(revision 28)
- Update to version 1.10.0 * mold now officially supports the --print-dependencies option to print out dependency information between input files. Here is a truncated example output when linking mold itself with the option. There are many use cases of the option; for example, if you want to eliminate the dependency to some library from your program, you can use this option to find out all the functions that use the library's function to fix them. (6fd47db) * [x86-64][s390x] mold now optimizes thread-local variable accesses in shared libraries if the library is linked with -z nodlopen. If your shared library is not intended to be used via dlopen(2) and your library frequently accesses thread-local variables, you might want to pass that option when linking your library. (25d02bb, f32ce33) * [arm64] mold is now able to optimize GOT load by rewriting an ADDR+LDR instruction pair with an ADDR+ADD if the loaded GOT value is known at link-time. (f2311b1) * mold 1.9.0 was up to 10% slower than 1.8.0 on some multicore machines. We fixed the performance regression and made it even faster than 1.8.0. (7132822) * Previously, mold failed to report an undefined symbol error if there's a weak undefined symbol of the same name. That bug resulted in producing a non-working executable instead of reporting a link failure. Now, mold correctly reports such link errors. (8936194) * mold 1.9.0 might crash with SIGSEGV if --emit-relocs is used with object files containing debug info. That bug has been fixed. (e17d7da)
Comments 0