diff options
| author | Keith Randall <khr@golang.org> | 2026-03-07 20:17:39 -0800 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2026-03-10 20:06:30 -0700 |
| commit | a95f60871f52f3701e596c07b0e7bf8a3b1619ed (patch) | |
| tree | e8feba37b8088e385f91626982475e1d858ecd70 /src/cmd/compile/internal | |
| parent | 3694f3369276d072d3eccd03b1855b18d3ecee18 (diff) | |
| download | go-a95f60871f52f3701e596c07b0e7bf8a3b1619ed.tar.xz | |
cmd/compile: fix mips64 CALLtailinter argument count
It should be 2, not 1.
Fixes #78013
Change-Id: If1c48c84c324a3fd50e9f4b43cca2ea62a995dc5
Reviewed-on: https://go-review.googlesource.com/c/go/+/752740
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Mark Freeman <markfreeman@google.com>
Auto-Submit: Keith Randall <khr@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Diffstat (limited to 'src/cmd/compile/internal')
| -rw-r--r-- | src/cmd/compile/internal/ssa/_gen/MIPS64Ops.go | 2 | ||||
| -rw-r--r-- | src/cmd/compile/internal/ssa/opGen.go | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/cmd/compile/internal/ssa/_gen/MIPS64Ops.go b/src/cmd/compile/internal/ssa/_gen/MIPS64Ops.go index 571172d803..132d8bbd87 100644 --- a/src/cmd/compile/internal/ssa/_gen/MIPS64Ops.go +++ b/src/cmd/compile/internal/ssa/_gen/MIPS64Ops.go @@ -275,7 +275,7 @@ func init() { // function calls {name: "CALLstatic", argLength: 1, reg: regInfo{clobbers: callerSave}, aux: "CallOff", clobberFlags: true, call: true}, // call static function aux.(*obj.LSym). arg0=mem, auxint=argsize, returns mem {name: "CALLtail", argLength: 1, reg: regInfo{clobbers: callerSave}, aux: "CallOff", clobberFlags: true, call: true, tailCall: true}, // tail call static function aux.(*obj.LSym). arg0=mem, auxint=argsize, returns mem - {name: "CALLtailinter", argLength: 1, reg: regInfo{inputs: []regMask{gp}, clobbers: callerSave}, aux: "CallOff", clobberFlags: true, call: true, tailCall: true}, // tail call fn by pointer. arg0=codeptr, arg1=mem, auxint=argsize, returns mem + {name: "CALLtailinter", argLength: 2, reg: regInfo{inputs: []regMask{gp}, clobbers: callerSave}, aux: "CallOff", clobberFlags: true, call: true, tailCall: true}, // tail call fn by pointer. arg0=codeptr, arg1=mem, auxint=argsize, returns mem {name: "CALLclosure", argLength: 3, reg: regInfo{inputs: []regMask{gpsp, buildReg("R22"), 0}, clobbers: callerSave}, aux: "CallOff", clobberFlags: true, call: true}, // call function via closure. arg0=codeptr, arg1=closure, arg2=mem, auxint=argsize, returns mem {name: "CALLinter", argLength: 2, reg: regInfo{inputs: []regMask{gp}, clobbers: callerSave}, aux: "CallOff", clobberFlags: true, call: true}, // call fn by pointer. arg0=codeptr, arg1=mem, auxint=argsize, returns mem diff --git a/src/cmd/compile/internal/ssa/opGen.go b/src/cmd/compile/internal/ssa/opGen.go index 96bb288a96..2fcf8d4dcd 100644 --- a/src/cmd/compile/internal/ssa/opGen.go +++ b/src/cmd/compile/internal/ssa/opGen.go @@ -75418,7 +75418,7 @@ var opcodeTable = [...]opInfo{ { name: "CALLtailinter", auxType: auxCallOff, - argLen: 1, + argLen: 2, clobberFlags: true, call: true, tailCall: true, |
