]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: unify unix 386 implementations
authorJosh Bleecher Snyder <josharian@gmail.com>
Thu, 21 Jul 2016 15:30:41 +0000 (08:30 -0700)
committerJosh Bleecher Snyder <josharian@gmail.com>
Tue, 16 Aug 2016 14:12:02 +0000 (14:12 +0000)
They were identical.

This will allow us to do the TODO at the top
of the file only once.

Updates #11041

Change-Id: I07aaca27ae46b66b65780082988bdc7546ed534b
Reviewed-on: https://go-review.googlesource.com/25112
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/syscall/asm_netbsd_386.s [deleted file]
src/syscall/asm_openbsd_386.s [deleted file]
src/syscall/asm_unix_386.s [moved from src/syscall/asm_freebsd_386.s with 97% similarity]

diff --git a/src/syscall/asm_netbsd_386.s b/src/syscall/asm_netbsd_386.s
deleted file mode 100644 (file)
index a8c4849..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// TODO(rsc): Rewrite all nn(SP) references into name+(nn-8)(FP)
-// so that go vet can check that they are correct.
-
-#include "textflag.h"
-#include "funcdata.h"
-
-//
-// System call support for 386, NetBSD
-//
-
-// func Syscall(trap int32, a1, a2, a3 int32) (r1, r2, err int32);
-// func Syscall6(trap int32, a1, a2, a3, a4, a5, a6 int32) (r1, r2, err int32);
-// Trap # in AX, args on stack above caller pc.
-
-TEXT   ·Syscall(SB),NOSPLIT,$0-28
-       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
-       INT     $0x80
-       JAE     ok
-       MOVL    $-1, 20(SP)     // r1
-       MOVL    $-1, 24(SP)     // r2
-       MOVL    AX, 28(SP)              // errno
-       CALL    runtime·exitsyscall(SB)
-       RET
-ok:
-       MOVL    AX, 20(SP)      // r1
-       MOVL    DX, 24(SP)      // r2
-       MOVL    $0, 28(SP)      // errno
-       CALL    runtime·exitsyscall(SB)
-       RET
-
-TEXT   ·Syscall6(SB),NOSPLIT,$0-40
-       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
-       INT     $0x80
-       JAE     ok6
-       MOVL    $-1, 32(SP)     // r1
-       MOVL    $-1, 36(SP)     // r2
-       MOVL    AX, 40(SP)              // errno
-       CALL    runtime·exitsyscall(SB)
-       RET
-ok6:
-       MOVL    AX, 32(SP)      // r1
-       MOVL    DX, 36(SP)      // r2
-       MOVL    $0, 40(SP)      // errno
-       CALL    runtime·exitsyscall(SB)
-       RET
-
-TEXT   ·Syscall9(SB),NOSPLIT,$0-52
-       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),NOSPLIT,$0-28
-       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
-       INT     $0x80
-       JAE     ok1
-       MOVL    $-1, 20(SP)     // r1
-       MOVL    $-1, 24(SP)     // r2
-       MOVL    AX, 28(SP)              // errno
-       RET
-ok1:
-       MOVL    AX, 20(SP)      // r1
-       MOVL    DX, 24(SP)      // r2
-       MOVL    $0, 28(SP)      // errno
-       RET
-
-TEXT   ·RawSyscall6(SB),NOSPLIT,$0-40
-       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
-       INT     $0x80
-       JAE     ok2
-       MOVL    $-1, 32(SP)     // r1
-       MOVL    $-1, 36(SP)     // r2
-       MOVL    AX, 40(SP)              // errno
-       RET
-ok2:
-       MOVL    AX, 32(SP)      // r1
-       MOVL    DX, 36(SP)      // r2
-       MOVL    $0, 40(SP)      // errno
-       RET
diff --git a/src/syscall/asm_openbsd_386.s b/src/syscall/asm_openbsd_386.s
deleted file mode 100644 (file)
index 6458bdf..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// TODO(rsc): Rewrite all nn(SP) references into name+(nn-8)(FP)
-// so that go vet can check that they are correct.
-
-#include "textflag.h"
-#include "funcdata.h"
-
-//
-// System call support for 386, OpenBSD
-//
-
-// func Syscall(trap int32, a1, a2, a3 int32) (r1, r2, err int32);
-// func Syscall6(trap int32, a1, a2, a3, a4, a5, a6 int32) (r1, r2, err int32);
-// Trap # in AX, args on stack above caller pc.
-
-TEXT   ·Syscall(SB),NOSPLIT,$0-28
-       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
-       INT     $0x80
-       JAE     ok
-       MOVL    $-1, 20(SP)     // r1
-       MOVL    $-1, 24(SP)     // r2
-       MOVL    AX, 28(SP)              // errno
-       CALL    runtime·exitsyscall(SB)
-       RET
-ok:
-       MOVL    AX, 20(SP)      // r1
-       MOVL    DX, 24(SP)      // r2
-       MOVL    $0, 28(SP)      // errno
-       CALL    runtime·exitsyscall(SB)
-       RET
-
-TEXT   ·Syscall6(SB),NOSPLIT,$0-40
-       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
-       INT     $0x80
-       JAE     ok6
-       MOVL    $-1, 32(SP)     // r1
-       MOVL    $-1, 36(SP)     // r2
-       MOVL    AX, 40(SP)              // errno
-       CALL    runtime·exitsyscall(SB)
-       RET
-ok6:
-       MOVL    AX, 32(SP)      // r1
-       MOVL    DX, 36(SP)      // r2
-       MOVL    $0, 40(SP)      // errno
-       CALL    runtime·exitsyscall(SB)
-       RET
-
-TEXT   ·Syscall9(SB),NOSPLIT,$0-52
-       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),NOSPLIT,$0-28
-       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
-       INT     $0x80
-       JAE     ok1
-       MOVL    $-1, 20(SP)     // r1
-       MOVL    $-1, 24(SP)     // r2
-       MOVL    AX, 28(SP)              // errno
-       RET
-ok1:
-       MOVL    AX, 20(SP)      // r1
-       MOVL    DX, 24(SP)      // r2
-       MOVL    $0, 28(SP)      // errno
-       RET
-
-TEXT   ·RawSyscall6(SB),NOSPLIT,$0-40
-       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
-       INT     $0x80
-       JAE     ok2
-       MOVL    $-1, 32(SP)     // r1
-       MOVL    $-1, 36(SP)     // r2
-       MOVL    AX, 40(SP)              // errno
-       RET
-ok2:
-       MOVL    AX, 32(SP)      // r1
-       MOVL    DX, 36(SP)      // r2
-       MOVL    $0, 40(SP)      // errno
-       RET
similarity index 97%
rename from src/syscall/asm_freebsd_386.s
rename to src/syscall/asm_unix_386.s
index 1400d5fea72445ed21cf96e792f9691eaab07709..df7a07d7321731b92800352f529ddf0ef890b71c 100644 (file)
@@ -1,3 +1,5 @@
+// +build netbsd freebsd openbsd
+
 // Copyright 2009 The Go Authors. All rights reserved.
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
@@ -9,7 +11,7 @@
 #include "funcdata.h"
 
 //
-// System call support for 386, FreeBSD
+// System call support for some 386 unixes
 //
 
 // func Syscall(trap int32, a1, a2, a3 int32) (r1, r2, err int32);