diff options
author | Joel Sing <joel@sing.id.au> | 2020-03-02 04:26:21 +1100 |
---|---|---|
committer | Joel Sing <joel@sing.id.au> | 2020-03-03 07:33:49 +0000 |
commit | ed91661745790f673f4adf212d0ca499f0bd5ee4 (patch) | |
tree | e12783eca1e68d6f97da2dcdea72f4d23b45f523 /src/cmd/compile/internal/riscv64 | |
parent | 5b15941c61f478b8ed08b76a27186527ba73d273 (diff) | |
download | go-ed91661745790f673f4adf212d0ca499f0bd5ee4.tar.gz go-ed91661745790f673f4adf212d0ca499f0bd5ee4.zip |
cmd/compile/internal/riscv64: correct ssa.BlockRetJmp
The obj.Prog needs to be an obj.ARET rather than an obj.AJMP, otherwise the
epilogue does not get correctly produced.
Change-Id: Ie1262f2028d3b51720eeb0364a627fbde8b14df9
Reviewed-on: https://go-review.googlesource.com/c/go/+/221683
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Diffstat (limited to 'src/cmd/compile/internal/riscv64')
-rw-r--r-- | src/cmd/compile/internal/riscv64/ssa.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cmd/compile/internal/riscv64/ssa.go b/src/cmd/compile/internal/riscv64/ssa.go index 167c9a3411..91f3164336 100644 --- a/src/cmd/compile/internal/riscv64/ssa.go +++ b/src/cmd/compile/internal/riscv64/ssa.go @@ -464,7 +464,7 @@ func ssaGenBlock(s *gc.SSAGenState, b, next *ssa.Block) { case ssa.BlockRet: s.Prog(obj.ARET) case ssa.BlockRetJmp: - p := s.Prog(obj.AJMP) + p := s.Prog(obj.ARET) p.To.Type = obj.TYPE_MEM p.To.Name = obj.NAME_EXTERN p.To.Sym = b.Aux.(*obj.LSym) |