diff options
| author | David Chase <drchase@google.com> | 2021-04-16 00:15:31 -0400 |
|---|---|---|
| committer | David Chase <drchase@google.com> | 2021-04-16 20:12:20 +0000 |
| commit | b6e1c336037e53ae095e84cfed4a312d8fd3ad45 (patch) | |
| tree | fb6a9784ec9249331e75f642bfd7d56e7ec9b266 /src/cmd/compile/internal/ssa/stackalloc.go | |
| parent | fff236e659fa819e036ab849130931dd6245c7b2 (diff) | |
| download | go-b6e1c336037e53ae095e84cfed4a312d8fd3ad45.tar.xz | |
cmd/compile: spill all the parameters around morestack
former code only spilled those parameters mentioned in code
AT THE REGISTER LEVEL, this caused problems with liveness
sometimes (which worked on whole variables including
aggregates).
Updates #40724.
Change-Id: Ib9fdc50d95d1d2b1f1e405dd370540e88582ac71
Reviewed-on: https://go-review.googlesource.com/c/go/+/310690
Trust: David Chase <drchase@google.com>
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Diffstat (limited to 'src/cmd/compile/internal/ssa/stackalloc.go')
| -rw-r--r-- | src/cmd/compile/internal/ssa/stackalloc.go | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/src/cmd/compile/internal/ssa/stackalloc.go b/src/cmd/compile/internal/ssa/stackalloc.go index 45058d4e72..8fe18e5f02 100644 --- a/src/cmd/compile/internal/ssa/stackalloc.go +++ b/src/cmd/compile/internal/ssa/stackalloc.go @@ -165,15 +165,6 @@ func (s *stackAllocState) stackalloc() { f.setHome(v, loc) continue } - - nameOff := v.Aux.(*AuxNameOffset) - loc := LocalSlot{N: nameOff.Name, Type: v.Type, Off: nameOff.Offset} - if f.pass.debug > stackDebug { - fmt.Printf("stackalloc Op%s %s to %s\n", v.Op, v, loc) - } - // register args already allocated to registers, but need to know the stack allocation for later - reg := f.getHome(v.ID).(*Register) - f.RegArgs = append(f.RegArgs, ArgPair{reg: reg, mem: loc}) } // For each type, we keep track of all the stack slots we |
