mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/compile: adjust stack slot alignment requirements on arm64
Currently any variable that is spilled onto the stack will occupy at least 8 bytes, because the stack offset is required to be aligned with 8 bytes on linux/arm64. This CL removes this constraint by aligning the stack slot with its actual size. Updates #42385 Change-Id: Icbd63dc70cd19852802e43f134355f19ba7e1e29 Reviewed-on: https://go-review.googlesource.com/c/go/+/267999 Trust: eric fang <eric.fang@arm.com> Reviewed-by: Cherry Zhang <cherryyz@google.com>
This commit is contained in:
parent
355c3a037e
commit
593f5bbad7
1 changed files with 1 additions and 1 deletions
|
|
@ -138,7 +138,7 @@ func (s *ssafn) AllocFrame(f *ssa.Func) {
|
|||
} else {
|
||||
lastHasPtr = false
|
||||
}
|
||||
if Arch.LinkArch.InFamily(sys.ARM, sys.ARM64, sys.PPC64) {
|
||||
if Arch.LinkArch.InFamily(sys.ARM, sys.PPC64) {
|
||||
s.stksize = types.Rnd(s.stksize, int64(types.PtrSize))
|
||||
}
|
||||
n.SetFrameOffset(-s.stksize)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue