News
Go 1.19 Adds Native Support for LoongArch
On August 2, 2022, the Golang community released Go 1.19 and announced support for the LoongArch instruction set architecture (ISA) in the release news, making LoongArch one of the architectures supported by the community alongside X86 and ARM.
Official announcement of the community
Go, or Golang, is a statically typed, compiled, and concurrent programming language that has a function of garbage collection. It was created in 2009 and now is dubbed the "C language of the 21st century". It has many advantages such as easy deployment, high concurrency, elegant language design, and good performance. Currently, the Go language enjoys high popularity among communities both inside and outside of China, with many famous open-source projects like Kubernetes, etcd, Docker, and Prometheus being developed in Go.
Native support from the Golang community implies that the LoongArch64 architecture will develop in sync with the community. The support facilitates the migration of various cloud-native projects, microservice architectures, and DevOps platforms to LoongArch. This marks a solid step forward in constructing the LoongArch ecosystem and highlights China's contribution to the innovative development of international open-source software.
In May 2021, Loongson Technology submitted a LoongArch support plan to the Golang community. In August 2021, Loongson submitted the complete source code of LoongArch to the community. Since then, the company has maintained close communication with the community and conducted detailed reviews, in-depth discussions, and multiple rounds of revisions and iterations on the source code of LoongArch64 with their developers. In May 2022, the code passed the community's technical review and entered the main development branch. As a result, LoongArch has become a new ISA natively supported by the Golang community.
In addition to the Golang compiler, significant subprojects such as net, sys, and tool within the Golang community have also added support for LoongArch (see the figure below), laying the foundation for a smooth migration of Go-developed projects from other architectures to LoongArch.
net and sys have already incorporated support for LoongArch.
Going forward, Loongson's development team will maintain close communication with the Golang community and broader developer groups to enhance the support for LoongArch. Loongson welcomes all developers to jointly build the LoongArch ecosystem and create a more vibrant and open-source world.