]> Cypherpunks.ru repositories - gostls13.git/commit
[dev.regabi] cmd/compile, runtime: reserve R14 as g registers on AMD64
authorCherry Zhang <cherryyz@google.com>
Tue, 2 Feb 2021 23:20:16 +0000 (18:20 -0500)
committerCherry Zhang <cherryyz@google.com>
Mon, 8 Feb 2021 16:30:07 +0000 (16:30 +0000)
commit5d7dc53888c3c91ef4122d584a064bc24b6f7540
treea5b39dc4d83aa2fb9c72762968b0d0fc0bb65aea
parenta21de9ec73b8a433cafd336448dc8111a4e4571e
[dev.regabi] cmd/compile, runtime: reserve R14 as g registers on AMD64

This is a proof-of-concept change for using the g register on
AMD64. getg is now lowered to R14 in the new ABI. The g register
is not yet used in all places where it can be used (e.g. stack
bounds check, runtime assembly code).

Change-Id: I10123ddf38e31782cf58bafcdff170aee0ff0d1b
Reviewed-on: https://go-review.googlesource.com/c/go/+/289196
Trust: Cherry Zhang <cherryyz@google.com>
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Than McIntosh <thanm@google.com>
Reviewed-by: David Chase <drchase@google.com>
src/cmd/compile/internal/amd64/ssa.go
src/cmd/compile/internal/ssa/config.go
src/cmd/compile/internal/ssa/gen/AMD64.rules
src/cmd/compile/internal/ssa/gen/AMD64Ops.go
src/cmd/compile/internal/ssa/gen/rulegen.go
src/cmd/compile/internal/ssa/opGen.go
src/cmd/compile/internal/ssa/rewriteAMD64.go
src/runtime/asm_amd64.s
src/runtime/race_amd64.s
src/runtime/sys_linux_amd64.s