mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/internal/obj/riscv: fix JMP name<>(SB)
It was being rejected. Now it isn't and can be used in the runtime. Change-Id: I4626bf9fc2e0bc26fffb87d11bede459964324b3 Reviewed-on: https://go-review.googlesource.com/c/go/+/292129 Trust: Russ Cox <rsc@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
This commit is contained in:
parent
01f05d8ff1
commit
6fe8981620
1 changed files with 3 additions and 3 deletions
|
|
@ -119,7 +119,7 @@ func progedit(ctxt *obj.Link, p *obj.Prog, newprog obj.ProgAlloc) {
|
||||||
switch p.To.Name {
|
switch p.To.Name {
|
||||||
case obj.NAME_NONE:
|
case obj.NAME_NONE:
|
||||||
p.As = AJALR
|
p.As = AJALR
|
||||||
case obj.NAME_EXTERN:
|
case obj.NAME_EXTERN, obj.NAME_STATIC:
|
||||||
// Handled in preprocess.
|
// Handled in preprocess.
|
||||||
default:
|
default:
|
||||||
ctxt.Diag("unsupported name %d for %v", p.To.Name, p)
|
ctxt.Diag("unsupported name %d for %v", p.To.Name, p)
|
||||||
|
|
@ -267,7 +267,7 @@ func rewriteMOV(ctxt *obj.Link, newprog obj.ProgAlloc, p *obj.Prog) {
|
||||||
p.As = movToStore(p.As)
|
p.As = movToStore(p.As)
|
||||||
p.To.Reg = addrToReg(p.To)
|
p.To.Reg = addrToReg(p.To)
|
||||||
|
|
||||||
case obj.NAME_EXTERN:
|
case obj.NAME_EXTERN, obj.NAME_STATIC:
|
||||||
// AUIPC $off_hi, TMP
|
// AUIPC $off_hi, TMP
|
||||||
// S $off_lo, TMP, R
|
// S $off_lo, TMP, R
|
||||||
as := p.As
|
as := p.As
|
||||||
|
|
@ -666,7 +666,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym, newprog obj.ProgAlloc) {
|
||||||
switch p.To.Type {
|
switch p.To.Type {
|
||||||
case obj.TYPE_MEM:
|
case obj.TYPE_MEM:
|
||||||
switch p.To.Name {
|
switch p.To.Name {
|
||||||
case obj.NAME_EXTERN:
|
case obj.NAME_EXTERN, obj.NAME_STATIC:
|
||||||
// JMP to symbol.
|
// JMP to symbol.
|
||||||
jalrToSym(ctxt, p, newprog, REG_ZERO)
|
jalrToSym(ctxt, p, newprog, REG_ZERO)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue