mirror of
https://github.com/golang/go.git
synced 2025-05-05 23:53:05 +00:00
runtime/cgo: use standard ABI call setg_gcc in crosscall1 on loong64
Change-Id: Ie38583d667d579751d643b2da2aa56390b69904c Reviewed-on: https://go-review.googlesource.com/c/go/+/652255 Reviewed-by: Michael Knyszek <mknyszek@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: sophie zhao <zhaoxiaolin@loongson.cn> Reviewed-by: Michael Pratt <mpratt@google.com> Reviewed-by: Meidan Li <limeidan@loongson.cn>
This commit is contained in:
parent
11c847e536
commit
01ba8bfe86
@ -656,9 +656,9 @@ TEXT runtime·setg(SB), NOSPLIT, $0-8
|
||||
JAL runtime·save_g(SB)
|
||||
RET
|
||||
|
||||
// void setg_gcc(G*); set g called from gcc with g in R19
|
||||
// void setg_gcc(G*); set g called from gcc with g in R4
|
||||
TEXT setg_gcc<>(SB),NOSPLIT,$0-0
|
||||
MOVV R19, g
|
||||
MOVV R4, g
|
||||
JAL runtime·save_g(SB)
|
||||
RET
|
||||
|
||||
|
@ -34,10 +34,11 @@ crosscall1:
|
||||
fst.d $f30, $r3, 136
|
||||
fst.d $f31, $r3, 144
|
||||
|
||||
move $r18, $r4 // save R4
|
||||
move $r19, $r6
|
||||
// r4 = *fn, r5 = *setg_gcc, r6 = *g
|
||||
move $r23, $r4 // save R4
|
||||
move $r4, $r6
|
||||
jirl $r1, $r5, 0 // call setg_gcc (clobbers R4)
|
||||
jirl $r1, $r18, 0 // call fn
|
||||
jirl $r1, $r23, 0 // call fn
|
||||
|
||||
ld.d $r23, $r3, 8
|
||||
ld.d $r24, $r3, 16
|
||||
|
Loading…
x
Reference in New Issue
Block a user