Go compiler frontend (gccgo)
Перейти к файлу
Ian Lance Taylor 3b1e46937d compiler: recognize Go 1.18 runtime/internal/atomic methods
The Go 1.18 library introduces specific types in runtime/internal/atomic.
Recognize and optimize the methods on those types, as we do with the
functions in runtime/internal/atomic.

While we're here avoid getting confused by methods in any other
package that we recognize specially.

Change-Id: I75c31f75dcf65ce13f3c69022e8ec36e05eab994
Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/383654
Trust: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Than McIntosh <thanm@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
2022-02-09 04:10:59 +00:00
go compiler: recognize Go 1.18 runtime/internal/atomic methods 2022-02-09 04:10:59 +00:00
libgo compiler, internal/abi: implement FuncPCABI0, FuncPCABIInternal 2022-02-09 04:07:25 +00:00
.gitignore gofrontend: add .clang-format to .gitignore file 2018-10-24 14:00:26 +00:00
AUTHORS README.md: convert README to markdown 2021-06-08 22:29:21 +00:00
CONTRIBUTORS README.md: convert README to markdown 2021-06-08 22:29:21 +00:00
HACKING HACKING: update links to use https:// 2020-06-25 22:37:58 +00:00
LICENSE LICENSE: separate, change PATENTS text. 2010-12-06 14:26:35 -08:00
PATENTS LICENSE: separate, change PATENTS text. 2010-12-06 14:26:35 -08:00
README.md README.md: convert README to markdown 2021-06-08 22:29:21 +00:00
codereview.cfg gofrontend: add codereview.cfg 2018-12-05 13:29:00 +00:00

README.md

A Go frontend

Ian Lance Taylor Last update 15 June 2014

This is a compiler frontend for the Go programming language. The frontend was originally developed at Google, and was released in November 2009. It was originally written by Ian Lance Taylor.

It was originally written for GCC. As of this writing it only supports GCC, but the GCC support has been separated from the rest of the frontend, so supporting another compiler is feasible.

The go subdirectory holds the frontend source code. This is mirrored to the gcc/go subdirectory in the GCC repository.

The libgo subdirectory holds the library source code. This is a copy of the main Go library with various changes appropriate for this compiler. The main Go library is hosted at http://go.googlesource.com/go, in the src directory. The libgo subdirectory is mirrored to the libgo subdirectory in the gcc repository.

To contribute patches to the files in this directory, please see Contributing to the gccgo frontend.

The master copy of these files is hosted in Gerrit (there is a mirror at Github). Changes to these files require signing a Google contributor license agreement. If you are the copyright holder, you will need to agree to the Google Individual Contributor License Agreement. This agreement can be completed online.

If your organization is the copyright holder, the organization will need to agree to the Google Software Grant and Corporate Contributor License Agreement.

If the copyright holder for your code has already completed the agreement in connection with another Google open source project, it does not need to be completed again.

The authors of these files may be found in the AUTHORS and CONTRIBUTORS files.