]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile: fix mips zerorange implementation
authorKeith Randall <khr@golang.org>
Tue, 16 Sep 2025 02:59:22 +0000 (19:59 -0700)
committerGopher Robot <gobot@golang.org>
Tue, 16 Sep 2025 16:14:31 +0000 (09:14 -0700)
A +8 was missed when simplifying this code in CL 700936.

Fixes #75477

Change-Id: Ic7b83322dc1373432b44f0b63607141195220380
Reviewed-on: https://go-review.googlesource.com/c/go/+/703937
Reviewed-by: Keith Randall <khr@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Julian Zhu <jz531210@gmail.com>
Auto-Submit: Keith Randall <khr@google.com>
Reviewed-by: Tianon Gravi <admwiggin@gmail.com>
Reviewed-by: Michael Knyszek <mknyszek@google.com>
src/cmd/compile/internal/mips/ggen.go
src/cmd/compile/internal/mips64/ggen.go

index 023f4d958e3536f2580fd8f6100182678b5ca848..394f0155895e8d9b8d6f546c582d83efb6dcc269 100644 (file)
@@ -5,6 +5,7 @@
 package mips
 
 import (
+       "cmd/compile/internal/base"
        "cmd/compile/internal/objw"
        "cmd/compile/internal/types"
        "cmd/internal/obj"
@@ -17,7 +18,7 @@ func zerorange(pp *objw.Progs, p *obj.Prog, off, cnt int64, _ *uint32) *obj.Prog
        }
 
        for cnt != 0 {
-               p = pp.Append(p, mips.AMOVW, obj.TYPE_REG, mips.REGZERO, 0, obj.TYPE_MEM, mips.REGSP, off)
+               p = pp.Append(p, mips.AMOVW, obj.TYPE_REG, mips.REGZERO, 0, obj.TYPE_MEM, mips.REGSP, base.Ctxt.Arch.FixedFrameSize+off)
                cnt -= int64(types.PtrSize)
                off += int64(types.PtrSize)
        }
index 0740d9abe88f3eec99ffe83eb5c961dd9664021b..740d68e335b7bd6a6b684200e11285016e05884b 100644 (file)
@@ -17,7 +17,7 @@ func zerorange(pp *objw.Progs, p *obj.Prog, off, cnt int64, _ *uint32) *obj.Prog
        }
 
        for cnt != 0 {
-               p = pp.Append(p, mips.AMOVV, obj.TYPE_REG, mips.REGZERO, 0, obj.TYPE_MEM, mips.REGSP, off)
+               p = pp.Append(p, mips.AMOVV, obj.TYPE_REG, mips.REGZERO, 0, obj.TYPE_MEM, mips.REGSP, off+8)
                cnt -= int64(types.PtrSize)
                off += int64(types.PtrSize)
        }