diff options
author | Cherry Zhang <cherryyz@google.com> | 2021-02-03 12:09:53 -0500 |
---|---|---|
committer | Cherry Zhang <cherryyz@google.com> | 2021-02-05 17:34:26 +0000 |
commit | 397a46a10a2cc8557e965af269915909cb5c0a80 (patch) | |
tree | 285cde51d18c540fadcec4bf13c9f28c1c6b8b09 /src/cmd/asm | |
parent | e79c2fd428372f64e6183bed9f765c1556816111 (diff) | |
download | go-397a46a10a2cc8557e965af269915909cb5c0a80.tar.gz go-397a46a10a2cc8557e965af269915909cb5c0a80.zip |
[dev.regabi] cmd/asm: define g register on AMD64
Define g register as R14 on AMD64. It is not used now, but will
be in later CLs.
The name "R14" is still recognized.
Change-Id: I9a066b15bf1051113db8c6640605e350cea397b9
Reviewed-on: https://go-review.googlesource.com/c/go/+/289195
Trust: Cherry Zhang <cherryyz@google.com>
Reviewed-by: Than McIntosh <thanm@google.com>
Diffstat (limited to 'src/cmd/asm')
-rw-r--r-- | src/cmd/asm/internal/arch/arch.go | 4 | ||||
-rw-r--r-- | src/cmd/asm/internal/asm/operand_test.go | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/cmd/asm/internal/arch/arch.go b/src/cmd/asm/internal/arch/arch.go index a62e55191e..026d8abf81 100644 --- a/src/cmd/asm/internal/arch/arch.go +++ b/src/cmd/asm/internal/arch/arch.go @@ -109,6 +109,10 @@ func archX86(linkArch *obj.LinkArch) *Arch { register["SB"] = RSB register["FP"] = RFP register["PC"] = RPC + if linkArch == &x86.Linkamd64 { + // Alias g to R14 + register["g"] = x86.REGG + } // Register prefix not used on this architecture. instructions := make(map[string]obj.As) diff --git a/src/cmd/asm/internal/asm/operand_test.go b/src/cmd/asm/internal/asm/operand_test.go index 2e83e176b2..c6def15e20 100644 --- a/src/cmd/asm/internal/asm/operand_test.go +++ b/src/cmd/asm/internal/asm/operand_test.go @@ -259,6 +259,7 @@ var amd64OperandTests = []operandTest{ {"R15", "R15"}, {"R8", "R8"}, {"R9", "R9"}, + {"g", "R14"}, {"SI", "SI"}, {"SP", "SP"}, {"X0", "X0"}, |