Go (Golang) Officially Expands the List of Supported Platforms
The Go (Golang) community has received an important update: the development team announced the addition of support for a new hardware platform. This step is a logical continuation of the strategy to expand the language's ecosystem, making it an even more versatile tool for developers worldwide. We are talking about the inclusion of the RISC-V platform in a 64-bit configuration (riscv64) in the list of officially supported architectures.
Previously, Go already supported major architectures (x86, x86-64, ARM, ARM64, and others), but the addition of RISC-V opens up new opportunities for embedded systems, high-performance computing, and IoT devices. Developers can now compile and run Go programs on hardware using the open RISC-V architecture without the need for third-party patches or forks.
What Does This Mean for Developers?
RISC-V support in Go is not just a formality. It implies a full cycle: from compilation to debugging. The main advantages include:
- Native compilation — binary files built for RISC-V run without additional emulators.
- Full compatibility with the toolchain — Go tests, benchmarks, and static analyzers are also available for the new platform.
- Optimization for the open architecture — the compiler uses RISC-V-specific instructions, improving performance.
This is especially relevant for startups and research groups working with custom chips based on RISC-V. Go, with its simplicity, fast compilation, and built-in garbage collection, becomes an ideal candidate for writing firmware, network services, and utilities for such devices.
How Does It Work in Practice?
To start using Go on RISC-V, simply install the current version of the compiler (Go 1.20 and newer support riscv64). Building is done with the standard command:
GOOS=linux GOARCH=riscv64 go buildGo automatically uses the necessary system calls and libraries. Developers note that for most applications, no code changes are required — just recompile the project. However, it is worth considering that some packages depending on assembly inserts or platform-specific C libraries may require adaptation.
Prospects and Impact on the Ecosystem
The addition of RISC-V is a signal that Go continues to move toward heterogeneous computing. In the future, we can expect:
- Improved support for RISC-V in Go packages for working with hardware (for example, in the
syscallandnetpackages). - Growth in the number of open-source Go projects focused on embedded systems.
- Simplified development for cloud providers that are beginning to adopt RISC-V servers.
Currently, support is at the "tier 1" stage — meaning all changes undergo full testing on real hardware. Go developers are also actively collaborating with the RISC-V community to fix potential bugs and improve performance.
If you work with IoT, robotics, or build high-load systems on non-standard processors, now is the time to try Go on RISC-V. And for those just getting acquainted with the language, this is a great reason to study