From 0e905b70ce95ad874c839ae5523b8fb8885e14ce Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Fri, 6 Feb 2026 14:56:49 -0500 Subject: _content/doc/go1.26: minor adjustments Move the experimental goroutine leak detector to the end of the runtime section so it isn't sandwiched between two non-experimental features. For an optimization with debugging instructions, add a note to file an issue if they are needed. Add an additional link to simd/archsimd. Change-Id: I6a6a636ce42d7da2df92b5119cb4fe0be647f9a7 Reviewed-on: https://go-review.googlesource.com/c/website/+/742880 Auto-Submit: Michael Pratt Reviewed-by: Dmitri Shuralyov Reviewed-by: Keith Randall LUCI-TryBot-Result: Go LUCI Reviewed-by: Dmitri Shuralyov --- _content/doc/go1.26.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/_content/doc/go1.26.md b/_content/doc/go1.26.md index 695d5094..20cb9009 100644 --- a/_content/doc/go1.26.md +++ b/_content/doc/go1.26.md @@ -131,6 +131,18 @@ performance or behavior, please [file an issue](/issue/new). The baseline runtime overhead of cgo calls has been reduced by ~30%. +### Heap base address randomization + + + +On 64-bit platforms, the runtime now randomizes the heap base address +at startup. +This is a security enhancement that makes it harder for attackers to +predict memory addresses and exploit vulnerabilities when using cgo. +This feature may be disabled by setting +`GOEXPERIMENT=norandomizedheapbase64` at build time. +This opt-out setting is expected to be removed in a future Go release. + ### Goroutine leak profiles {#goroutineleak-profiles} @@ -209,18 +221,6 @@ issue](/issue/74609). We aim to enable goroutine leak profiles by default in Go 1.27. -### Heap base address randomization - - - -On 64-bit platforms, the runtime now randomizes the heap base address -at startup. -This is a security enhancement that makes it harder for attackers to -predict memory addresses and exploit vulnerabilities when using cgo. -This feature may be disabled by setting -`GOEXPERIMENT=norandomizedheapbase64` at build time. -This opt-out setting is expected to be removed in a future Go release. - ## Compiler {#compiler} @@ -231,6 +231,7 @@ situations, which improves performance. If this change is causing trouble, the find the allocation causing trouble using the `-compile=variablemake` flag. All such new stack allocations can also be turned off using `-gcflags=all=-d=variablemakehash=n`. +If you encounter issues with this optimization, please [file an issue](/issue/new). ## Linker {#linker} @@ -298,8 +299,7 @@ across all architectures. Building on top of this, we plan to develop a high-level portable SIMD package in the future. -See the package documentation and the [proposal issue](/issue/73787) -for more details. +See the [package documentation](/pkg/simd/archsimd) and the [proposal issue](/issue/73787) for more details. ### New experimental runtime/secret package -- cgit v1.3