RepoJournal
Go

@golang

Go and the standard library - backend infrastructure at scale

Keep up with Go in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

One email a day. Unsubscribe in one click.

Pick a date

Topics: Go Infrastructure Full archive →

The Wire · Showcase

ARM64 COMPILER STRIPS REDUNDANT EXTENSIONS, VULNDB ADDS 41 NEW REPORTS

By RepoJournal · Filed · About Go

Go's ARM64 compiler now eliminates dead zero-extension instructions, cutting instruction count on tight loops while the vulnerability database absorbs a major backlog of security advisories.

Egon Elbre landed a compiler optimization [1] that strips redundant byte and halfword zero-extensions on ARM64, hitting a common pattern in scanners and table lookups where narrow loads get extended multiple times. The fix targets a real performance gap: when a zero-extended narrow load has multiple consumers, late lowering was creating dead MOVDreg instructions that only got elided on single-use loads. Xiajun Ni fixed a compiler crash [2] where static initialization could send offsets larger than 1 GiB to the object writer, moving oversized values to dynamic initialization instead. Meanwhile, Dorbmon accelerated TrimSpace [3] by skipping the generic TrimFunc fallback for Unicode input and using dedicated helpers backed by a Unicode whitespace predicate. On the security front, vulndb absorbed a backlog of 41 new vulnerability reports [4], [5], [6], [7] across multiple Go packages, while also reviewing and updating existing entries [8]. VSCode-Go bumped gofumpt from v0.7.0 to v0.10.0 [9] with fallback logic for older Go versions. In the arch repo, Joel Sing fixed a goroutine deadlock in the disassembler test suite [10] and switched ARM64 objdump tests to llvm-objdump on OpenBSD [11] where GNU objdump is outdated.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] cmd/compile/internal/ssa: strip redundant byte/halfword zero-extensions on arm64 golang/go
  2. [2] cmd/compile: initialize large static offsets dynamically golang/go
  3. [3] strings, bytes: speed up TrimSpace for Unicode input golang/go
  4. [4] data/reports: add 2 reports golang/vulndb
  5. [5] data/reports: add 6 reports golang/vulndb
  6. [6] data/reports: add 28 reports golang/vulndb
  7. [7] data/reports: add 5 reports golang/vulndb
  8. [8] data/reports: review GO-2026-5617 golang/vulndb
  9. [9] src/goInstallTools: update default gofumpt version golang/vscode-go
  10. [10] all: avoid a goroutine deadlock on disassembler error golang/arch
  11. [11] arm64/arm64asm: use llvm-objdump for objdump tests on openbsd golang/arch

Quick answers

What shipped in Go on July 28, 2026?
Go's ARM64 compiler now eliminates dead zero-extension instructions, cutting instruction count on tight loops while the vulnerability database absorbs a major backlog of security advisories. In total, 20 commits landed.
Who contributed to Go on July 28, 2026?
8 developers shipped this update, including Egon Elbre, xiajun ni, dorbmon, Filippo Valsorda, Ahmed Mohamed, Ian Alexander, Chiman Jain, and Joel Sing.
What were the notable Go updates?
cmd/compile/internal/ssa: strip redundant byte/halfword zero-extensions on arm64, cmd/compile: initialize large static offsets dynamically, and strings, bytes: speed up TrimSpace for Unicode input.

More from @golang

Daily updates, in your inbox

Follow Go

Keep up with Go in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?