From 9326d71874730901c159643703a16dc34646e5bd Mon Sep 17 00:00:00 2001
From: Than McIntosh
- TODO: https://golang.org/cl/231497: merge branch 'dev.link' into master +
+ This release includes substantial improvements to the Go linker, + which reduce linker resource usage (both time and memory) and + improve code robustness/maintainability. +
+ +
+ For a representative set of large Go programs, linking is 20% faster
+ and requires 30% less memory on average, for ELF
-based
+ OSes running on amd64
architectures, with more modest
+ improvements for other architecture/OS combinations.
+
+ The key contributors to better linker performance are a newly + redesigned object file format, and a revamping of internal + phases to increase concurrency (for example, applying relocations to + symbols in parallel). Object files in Go 1.15 are slightly larger + than their 1.14 equivalents. +
+ ++ These changes are part of a multi-release project + to modernize the Go + linker, meaning that there will be additional linker + improvements expected in future releases.