1
0
mirror of https://github.com/golang/go synced 2024-11-19 17:44:43 -07:00

runtime: mark asmcgocall<>(SB) as having no arguments

It doesn't.
Fixes 386 build.

While we're here, mark runtime.asmcgocall as GO_ARGS,
so that it will work with stack copying. I don't think anything
that uses it can lead to a stack copy, but better safe than sorry.
Certainly the runtime.asmcgocall_errno variant needs
(and already has) GO_ARGS.

TBR=iant
CC=golang-codereviews
https://golang.org/cl/138400043
This commit is contained in:
Russ Cox 2014-09-14 13:57:28 -04:00
parent e3d2e5550e
commit 40dd6bf38e
3 changed files with 4 additions and 1 deletions

View File

@ -647,6 +647,7 @@ TEXT gosave<>(SB),NOSPLIT,$0
// aligned appropriately for the gcc ABI.
// See cgocall.c for more details.
TEXT runtime·asmcgocall(SB),NOSPLIT,$0-8
GO_ARGS
MOVL fn+0(FP), AX
MOVL arg+4(FP), BX
CALL asmcgocall<>(SB)
@ -660,7 +661,7 @@ TEXT runtime·asmcgocall_errno(SB),NOSPLIT,$0-12
MOVL AX, ret+8(FP)
RET
TEXT asmcgocall<>(SB),NOSPLIT,$0-12
TEXT asmcgocall<>(SB),NOSPLIT,$0-0
// fn in AX, arg in BX
MOVL SP, DX

View File

@ -624,6 +624,7 @@ TEXT gosave<>(SB),NOSPLIT,$0
// aligned appropriately for the gcc ABI.
// See cgocall.c for more details.
TEXT runtime·asmcgocall(SB),NOSPLIT,$0-16
GO_ARGS
MOVQ fn+0(FP), AX
MOVQ arg+8(FP), BX
CALL asmcgocall<>(SB)

View File

@ -481,6 +481,7 @@ TEXT gosave<>(SB),NOSPLIT,$0
// aligned appropriately for the gcc ABI.
// See cgocall.c for more details.
TEXT runtime·asmcgocall(SB),NOSPLIT,$0-8
GO_ARGS
MOVW fn+0(FP), R1
MOVW arg+4(FP), R0
BL asmcgocall<>(SB)