Path to this page:
Subject: CVS commit: pkgsrc/devel/mold
From: Frederic Cambus
Date: 2022-06-18 16:23:13
Message id: 20220618142313.C864EFB1A@cvs.NetBSD.org
Log Message:
mold: update to 1.3.0.
Pkgsrc changes:
- Remove now unneeded pkg-config from USE_TOOLS
- Use <stdlib.h> on systems where <alloca.h> doesn't exist
- Link the bundled (patched) libtbb, as per upstream recommendation
Bug fixes and compatibility improvements:
- The --icf=safe option has been supported. This option enables a feature
to find and deduplicate identical code that can be merged safely. For C++
programs, it typically reduces the output binary size by a few percent.
--icf=safe needs to be used with a compiler that supports .llvm_addrsig
section; if a compiler does not support it, --icf=safe doesn't do any harm
but cannot optimize a given program at all. That section is supported by
LLVM/Clang at the moment, and we are working on adding it to GCC.
- LTO now works reliably under a heavy load. mold used to abort occasionally
under such condition on Linux due to a spurious failure of pthread_create(2).
- mold now prints out undefined symbol errors in a format similar to LLVM lld.
- mold now prints out a better error message for the disk full situation.
- mold can now build GCC 12 with LTO.
- Fixed an LTO issue on 32-bits hosts such as i686.
- mold is now AddressSanitizer and UndefinedSanitizer clean.
- mold used to create broken debug info on 32-bits hosts. The bug has been
fixed.
- mold used to accept not only a single dash but also double dashes for
single-letter options. For example, --S was accidentally accepted as an
alias for-S. This is unconventional, and such options are no longer
accepted.
- --color-diagnostics is now an alias for --color-diagnostics=auto instead
of --color-diagnostics=always for compatibility with LLVM lld.
- pkg-config is no longer needed to build mold.
- The --package-metadata option is supported.
Removed features:
- An experimental --preload flag has been removed.
Files: