Mold 1.1 High Performance Linker Brings Native LTO, RISC-V Support
Mold 1.0 continued with point releases through a few weeks ago while Mold 1.1 is now ready with larger feature additions. Mold 1.1 most notably now offers native Link-Time Optimization (LTO) support. Mold previously diverted to ld.bdf/ld.lld when encountering IR intended for LTO-capable linkers while now it can handle the intermediate representation itself. The LTO support is implemented with a linker plug-in interface similar to that of GNU ld and GNU gold. Mold's initial LTO support is focused on completeness and rather than performance, which for now at least means it's only "marginally faster" than the other linkers.
The other big addition of Mold 1.1 is adding RISC-V CPU architecture support, with RV64 code having been merged. This has been successfully tested for linking various programs on RISC-V 64-bit.
Other changes with Mold 1.1 include supporting -emit-relocs, the option to randomly shuffle the order of input sections for some cases like ASLR, --print-dependencies option added, and other additions along with many bug fixes and compatibility improvements. Mold 1.1 for example can now be built with Musl libc as another highlight.
The official Mold linker logo.
More details on Mold 1.1 can be found via the release announcement on GitHub.