]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: superficial cleanup of amd64 unix assembly
authorJosh Bleecher Snyder <josharian@gmail.com>
Thu, 21 Jul 2016 15:49:07 +0000 (08:49 -0700)
committerJosh Bleecher Snyder <josharian@gmail.com>
Tue, 16 Aug 2016 14:12:29 +0000 (14:12 +0000)
This is preliminary work to unifying them.

Updates #11041

Change-Id: Ibe83da3d626f1da9e8888e26cedd3af2152b42e6
Reviewed-on: https://go-review.googlesource.com/25114
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_dragonfly_amd64.s
src/syscall/asm_freebsd_amd64.s

index 6339b7ea55550943855110556fd8595ca10fdcc7..78df9b7b3b770e93128e12f8d906ace3edfa3c4e 100644 (file)
 
 // func Syscall(trap int64, a1, a2, a3 int64) (r1, r2, err int64);
 // func Syscall6(trap int64, a1, a2, a3, a4, a5, a6 int64) (r1, r2, err int64);
-// func Syscall9(trap int64, a1, a2, a3, a4, a5, a6, a7, a8, a9 int64) (r1, r2, err int64)
+// func Syscall9(trap int64, a1, a2, a3, a4, a5, a6, a7, a8, a9 int64) (r1, r2, err int64);
 // Trap # in AX, args in DI SI DX, return in AX DX
 
 TEXT   ·Syscall(SB),NOSPLIT,$0-56
        CALL    runtime·entersyscall(SB)
+       MOVQ    8(SP), AX       // syscall entry
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
        MOVQ    $0, R10
        MOVQ    $0, R8
        MOVQ    $0, R9
-       MOVQ    8(SP), AX       // syscall entry
        SYSCALL
        JCC     ok
        MOVQ    $-1, 40(SP)     // r1
        MOVQ    $0, 48(SP)      // r2
-       MOVQ    AX, 56(SP)  // errno
+       MOVQ    AX, 56(SP)      // errno
        CALL    runtime·exitsyscall(SB)
        RET
 ok:
@@ -42,18 +42,18 @@ ok:
 
 TEXT   ·Syscall6(SB),NOSPLIT,$0-80
        CALL    runtime·entersyscall(SB)
+       MOVQ    8(SP), AX       // syscall entry
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
        MOVQ    40(SP), R10
        MOVQ    48(SP), R8
        MOVQ    56(SP), R9
-       MOVQ    8(SP), AX       // syscall entry
        SYSCALL
        JCC     ok6
        MOVQ    $-1, 64(SP)     // r1
        MOVQ    $0, 72(SP)      // r2
-       MOVQ    AX, 80(SP)  // errno
+       MOVQ    AX, 80(SP)      // errno
        CALL    runtime·exitsyscall(SB)
        RET
 ok6:
@@ -65,11 +65,11 @@ ok6:
 
 TEXT   ·Syscall9(SB),NOSPLIT,$0-104
        CALL    runtime·entersyscall(SB)
-       MOVQ    8(SP), AX
+       MOVQ    8(SP), AX       // syscall entry
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
-       MOVQ    40(SP), R10
+       MOVQ    40(SP), R10
        MOVQ    48(SP), R8
        MOVQ    56(SP), R9
 
@@ -86,7 +86,7 @@ TEXT  ·Syscall9(SB),NOSPLIT,$0-104
        JCC     ok9
        MOVQ    $-1, 88(SP)     // r1
        MOVQ    $0, 96(SP)      // r2
-       MOVQ    AX, 104(SP)  // errno
+       MOVQ    AX, 104(SP)     // errno
        CALL    runtime·exitsyscall(SB)
        RET
 ok9:
@@ -96,7 +96,7 @@ ok9:
        CALL    runtime·exitsyscall(SB)
        RET
 
-TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+TEXT   ·RawSyscall(SB),NOSPLIT,$0-56
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
@@ -108,7 +108,7 @@ TEXT ·RawSyscall(SB),NOSPLIT,$0-56
        JCC     ok1
        MOVQ    $-1, 40(SP)     // r1
        MOVQ    $0, 48(SP)      // r2
-       MOVQ    AX, 56(SP)  // errno
+       MOVQ    AX, 56(SP)      // errno
        RET
 ok1:
        MOVQ    AX, 40(SP)      // r1
@@ -128,7 +128,7 @@ TEXT        ·RawSyscall6(SB),NOSPLIT,$0-80
        JCC     ok2
        MOVQ    $-1, 64(SP)     // r1
        MOVQ    $0, 72(SP)      // r2
-       MOVQ    AX, 80(SP)  // errno
+       MOVQ    AX, 80(SP)      // errno
        RET
 ok2:
        MOVQ    AX, 64(SP)      // r1
index c6988c94b3d5d14f5e20b7ebdd321f0bf6e53e00..51ef44ca9cad3ea5756ce8100592d6c9597fccab 100644 (file)
 
 // func Syscall(trap int64, a1, a2, a3 int64) (r1, r2, err int64);
 // func Syscall6(trap int64, a1, a2, a3, a4, a5, a6 int64) (r1, r2, err int64);
-// func Syscall9(trap int64, a1, a2, a3, a4, a5, a6, a7, a8, a9 int64) (r1, r2, err int64)
+// func Syscall9(trap int64, a1, a2, a3, a4, a5, a6, a7, a8, a9 int64) (r1, r2, err int64);
 // Trap # in AX, args in DI SI DX, return in AX DX
 
 TEXT   ·Syscall(SB),NOSPLIT,$0-56
        CALL    runtime·entersyscall(SB)
+       MOVQ    8(SP), AX       // syscall entry
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
        MOVQ    $0, R10
        MOVQ    $0, R8
        MOVQ    $0, R9
-       MOVQ    8(SP), AX       // syscall entry
        SYSCALL
        JCC     ok
        MOVQ    $-1, 40(SP)     // r1
        MOVQ    $0, 48(SP)      // r2
-       MOVQ    AX, 56(SP)  // errno
+       MOVQ    AX, 56(SP)      // errno
        CALL    runtime·exitsyscall(SB)
        RET
 ok:
@@ -42,18 +42,18 @@ ok:
 
 TEXT   ·Syscall6(SB),NOSPLIT,$0-80
        CALL    runtime·entersyscall(SB)
+       MOVQ    8(SP), AX       // syscall entry
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
        MOVQ    40(SP), R10
        MOVQ    48(SP), R8
        MOVQ    56(SP), R9
-       MOVQ    8(SP), AX       // syscall entry
        SYSCALL
        JCC     ok6
        MOVQ    $-1, 64(SP)     // r1
        MOVQ    $0, 72(SP)      // r2
-       MOVQ    AX, 80(SP)  // errno
+       MOVQ    AX, 80(SP)      // errno
        CALL    runtime·exitsyscall(SB)
        RET
 ok6:
@@ -65,11 +65,11 @@ ok6:
 
 TEXT   ·Syscall9(SB),NOSPLIT,$0-104
        CALL    runtime·entersyscall(SB)
-       MOVQ    8(SP), AX
+       MOVQ    8(SP), AX       // syscall entry
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
-       MOVQ    40(SP), R10
+       MOVQ    40(SP), R10
        MOVQ    48(SP), R8
        MOVQ    56(SP), R9
 
@@ -86,7 +86,7 @@ TEXT  ·Syscall9(SB),NOSPLIT,$0-104
        JCC     ok9
        MOVQ    $-1, 88(SP)     // r1
        MOVQ    $0, 96(SP)      // r2
-       MOVQ    AX, 104(SP)  // errno
+       MOVQ    AX, 104(SP)     // errno
        CALL    runtime·exitsyscall(SB)
        RET
 ok9:
@@ -96,7 +96,7 @@ ok9:
        CALL    runtime·exitsyscall(SB)
        RET
 
-TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+TEXT   ·RawSyscall(SB),NOSPLIT,$0-56
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
@@ -108,7 +108,7 @@ TEXT ·RawSyscall(SB),NOSPLIT,$0-56
        JCC     ok1
        MOVQ    $-1, 40(SP)     // r1
        MOVQ    $0, 48(SP)      // r2
-       MOVQ    AX, 56(SP)  // errno
+       MOVQ    AX, 56(SP)      // errno
        RET
 ok1:
        MOVQ    AX, 40(SP)      // r1
@@ -128,7 +128,7 @@ TEXT        ·RawSyscall6(SB),NOSPLIT,$0-80
        JCC     ok2
        MOVQ    $-1, 64(SP)     // r1
        MOVQ    $0, 72(SP)      // r2
-       MOVQ    AX, 80(SP)  // errno
+       MOVQ    AX, 80(SP)      // errno
        RET
 ok2:
        MOVQ    AX, 64(SP)      // r1