aboutsummaryrefslogtreecommitdiff
path: root/src/syscall/asm_linux_386.s
diff options
context:
space:
mode:
Diffstat (limited to 'src/syscall/asm_linux_386.s')
-rw-r--r--src/syscall/asm_linux_386.s14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/syscall/asm_linux_386.s b/src/syscall/asm_linux_386.s
index e86a859f4e..a8e63f7079 100644
--- a/src/syscall/asm_linux_386.s
+++ b/src/syscall/asm_linux_386.s
@@ -13,24 +13,24 @@
// instead of the glibc-specific "CALL 0x10(GS)".
#define INVOKE_SYSCALL INT $0x80
-// func rawVforkSyscall(trap, a1 uintptr) (r1, err uintptr)
-TEXT ·rawVforkSyscall(SB),NOSPLIT|NOFRAME,$0-16
+// func rawVforkSyscall(trap, a1, a2 uintptr) (r1, err uintptr)
+TEXT ·rawVforkSyscall(SB),NOSPLIT|NOFRAME,$0-20
MOVL trap+0(FP), AX // syscall entry
MOVL a1+4(FP), BX
- MOVL $0, CX
+ MOVL a2+8(FP), CX
MOVL $0, DX
POPL SI // preserve return address
INVOKE_SYSCALL
PUSHL SI
CMPL AX, $0xfffff001
JLS ok
- MOVL $-1, r1+8(FP)
+ MOVL $-1, r1+12(FP)
NEGL AX
- MOVL AX, err+12(FP)
+ MOVL AX, err+16(FP)
RET
ok:
- MOVL AX, r1+8(FP)
- MOVL $0, err+12(FP)
+ MOVL AX, r1+12(FP)
+ MOVL $0, err+16(FP)
RET
// func rawSyscallNoError(trap uintptr, a1, a2, a3 uintptr) (r1, r2 uintptr);