mirror of https://github.com/golang/go.git
runtime: add missing {TOPFRAME,NOFRAME} flag for linux/loong64
Co-authored-by: limeidan <limeidan@loongson.cn> Change-Id: I0011a10f831e6c2b0da96265682212b0747f0e2a Reviewed-on: https://go-review.googlesource.com/c/go/+/407774 Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: David Chase <drchase@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: WANG Xuerui <git@xen0n.name> Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com>
This commit is contained in:
parent
654b03167f
commit
61fc5df689
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
#define REGCTXT R29
|
||||
|
||||
TEXT runtime·rt0_go(SB),NOSPLIT,$0
|
||||
TEXT runtime·rt0_go(SB),NOSPLIT|TOPFRAME,$0
|
||||
// R3 = stack; R4 = argc; R5 = argv
|
||||
|
||||
ADDV $-24, R3
|
||||
|
|
@ -107,12 +107,16 @@ TEXT runtime·gosave(SB), NOSPLIT|NOFRAME, $0-8
|
|||
|
||||
// void gogo(Gobuf*)
|
||||
// restore state from Gobuf; longjmp
|
||||
TEXT runtime·gogo(SB), NOSPLIT, $16-8
|
||||
TEXT runtime·gogo(SB), NOSPLIT|NOFRAME, $0-8
|
||||
MOVV buf+0(FP), R4
|
||||
MOVV gobuf_g(R4), g // make sure g is not nil
|
||||
MOVV gobuf_g(R4), R5
|
||||
MOVV 0(R5), R0 // make sure g != nil
|
||||
JMP gogo<>(SB)
|
||||
|
||||
TEXT gogo<>(SB), NOSPLIT|NOFRAME, $0
|
||||
MOVV R5, g
|
||||
JAL runtime·save_g(SB)
|
||||
|
||||
MOVV 0(g), R5
|
||||
MOVV gobuf_sp(R4), R3
|
||||
MOVV gobuf_lr(R4), R1
|
||||
MOVV gobuf_ret(R4), R19
|
||||
|
|
|
|||
Loading…
Reference in New Issue