forked from pantsbuild/pants
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
go: allow use of
go_asm.h
assembly header in assembly files (pantsb…
…uild#17611) As described in pantsbuild#12943, Go assembly files expect an "assembly header" called `go_asm.h` to exist and be available for inclusion via `#include "go_asm.h"`. The assembly header contains macros generated based on constants and type metadata from the package's Go code. The Go backend currently does not request that the compiler generate this header. This PR splits the `symabis` generation step and assembly step into two different phases: - `symabis` generation continues to happen _before_ compilation of the package's Go code since it contains API metadata needed by the Go compiler about the assembly code. - The Go compiler will now generate the `go_asm.h` assembly header and make it available to Go assembly files. The assembly files are now assembled _after_ the package's Go code has been compiled so they can consume `go_asm.h` if need be. Fixes pantsbuild#12943. Note: `symabis` and `go_asm.h` serve similar purposes; they differ mainly around which part of a Go package they are metadata for.
- Loading branch information
Showing
3 changed files
with
233 additions
and
57 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.