]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: freebsd/386 Syscall9 (fix build)
authorRuss Cox <rsc@golang.org>
Thu, 7 Apr 2011 19:35:04 +0000 (15:35 -0400)
committerRuss Cox <rsc@golang.org>
Thu, 7 Apr 2011 19:35:04 +0000 (15:35 -0400)
R=r
CC=golang-dev
https://golang.org/cl/4386042

src/pkg/syscall/asm_freebsd_386.s

index 80f06a726239ba7441eb295c8e15df4c6ecd95eb..f2d4438a1e87aae4e9306c557f2e0dfc80db3061 100644 (file)
@@ -61,6 +61,36 @@ ok6:
        CALL    runtime·exitsyscall(SB)
        RET
 
+TEXT   ·Syscall9(SB),7,$0
+       CALL    runtime·entersyscall(SB)
+       MOVL    4(SP), AX       // syscall entry
+       // slide args down on top of system call number
+       LEAL            8(SP), SI
+       LEAL            4(SP), DI
+       CLD
+       MOVSL
+       MOVSL
+       MOVSL
+       MOVSL
+       MOVSL
+       MOVSL
+       MOVSL
+       MOVSL
+       MOVSL
+       INT     $0x80
+       JAE     ok9
+       MOVL    $-1, 44(SP)     // r1
+       MOVL    $-1, 48(SP)     // r2
+       MOVL    AX, 52(SP)              // errno
+       CALL    runtime·exitsyscall(SB)
+       RET
+ok9:
+       MOVL    AX, 44(SP)      // r1
+       MOVL    DX, 48(SP)      // r2
+       MOVL    $0, 52(SP)      // errno
+       CALL    runtime·exitsyscall(SB)
+       RET
+
 TEXT ·RawSyscall(SB),7,$0
        MOVL    4(SP), AX       // syscall entry
        // slide args down on top of system call number