]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: use name+(NN)FP on linux/amd64
authorDavid Crawshaw <crawshaw@golang.org>
Wed, 14 Jan 2015 19:41:04 +0000 (14:41 -0500)
committerDavid Crawshaw <crawshaw@golang.org>
Wed, 21 Jan 2015 19:04:38 +0000 (19:04 +0000)
Generated from a modified go vet.

Change-Id: Ibe82941283da9bd4dbc7fa624a33ffb12424daa2
Reviewed-on: https://go-review.googlesource.com/2817
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/syscall/asm_linux_amd64.s

index b3ce2165d6fe187d6b65ca56db4a8980f9a8603d..6634875f6a1927fb48d6ec449dc3079eccc92794 100644 (file)
@@ -2,9 +2,6 @@
 // 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"
 
 
 TEXT   ·Syscall(SB),NOSPLIT,$0-56
        CALL    runtime·entersyscall(SB)
-       MOVQ    16(SP), DI
-       MOVQ    24(SP), SI
-       MOVQ    32(SP), DX
+       MOVQ    a1+8(FP), DI
+       MOVQ    a2+16(FP), SI
+       MOVQ    a3+24(FP), DX
        MOVQ    $0, R10
        MOVQ    $0, R8
        MOVQ    $0, R9
-       MOVQ    8(SP), AX       // syscall entry
+       MOVQ    trap+0(FP), AX  // syscall entry
        SYSCALL
        CMPQ    AX, $0xfffffffffffff001
        JLS     ok
-       MOVQ    $-1, 40(SP)     // r1
-       MOVQ    $0, 48(SP)      // r2
+       MOVQ    $-1, r1+32(FP)
+       MOVQ    $0, r2+40(FP)
        NEGQ    AX
-       MOVQ    AX, 56(SP)  // errno
+       MOVQ    AX, err+48(FP)
        CALL    runtime·exitsyscall(SB)
        RET
 ok:
-       MOVQ    AX, 40(SP)      // r1
-       MOVQ    DX, 48(SP)      // r2
-       MOVQ    $0, 56(SP)      // errno
+       MOVQ    AX, r1+32(FP)
+       MOVQ    DX, r2+40(FP)
+       MOVQ    $0, err+48(FP)
        CALL    runtime·exitsyscall(SB)
        RET
 
+// func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2, err uintptr)
 TEXT ·Syscall6(SB),NOSPLIT,$0-80
        CALL    runtime·entersyscall(SB)
-       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
+       MOVQ    a1+8(FP), DI
+       MOVQ    a2+16(FP), SI
+       MOVQ    a3+24(FP), DX
+       MOVQ    a4+32(FP), R10
+       MOVQ    a5+40(FP), R8
+       MOVQ    a6+48(FP), R9
+       MOVQ    trap+0(FP), AX  // syscall entry
        SYSCALL
        CMPQ    AX, $0xfffffffffffff001
        JLS     ok6
-       MOVQ    $-1, 64(SP)     // r1
-       MOVQ    $0, 72(SP)      // r2
+       MOVQ    $-1, r1+56(FP)
+       MOVQ    $0, r2+64(FP)
        NEGQ    AX
-       MOVQ    AX, 80(SP)  // errno
+       MOVQ    AX, err+72(FP)
        CALL    runtime·exitsyscall(SB)
        RET
 ok6:
-       MOVQ    AX, 64(SP)      // r1
-       MOVQ    DX, 72(SP)      // r2
-       MOVQ    $0, 80(SP)      // errno
+       MOVQ    AX, r1+56(FP)
+       MOVQ    DX, r2+64(FP)
+       MOVQ    $0, err+72(FP)
        CALL    runtime·exitsyscall(SB)
        RET
 
+// func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2, err uintptr)
 TEXT ·RawSyscall(SB),NOSPLIT,$0-56
-       MOVQ    16(SP), DI
-       MOVQ    24(SP), SI
-       MOVQ    32(SP), DX
+       MOVQ    a1+8(FP), DI
+       MOVQ    a2+16(FP), SI
+       MOVQ    a3+24(FP), DX
        MOVQ    $0, R10
        MOVQ    $0, R8
        MOVQ    $0, R9
-       MOVQ    8(SP), AX       // syscall entry
+       MOVQ    trap+0(FP), AX  // syscall entry
        SYSCALL
        CMPQ    AX, $0xfffffffffffff001
        JLS     ok1
-       MOVQ    $-1, 40(SP)     // r1
-       MOVQ    $0, 48(SP)      // r2
+       MOVQ    $-1, r1+32(FP)
+       MOVQ    $0, r2+40(FP)
        NEGQ    AX
-       MOVQ    AX, 56(SP)  // errno
+       MOVQ    AX, err+48(FP)
        RET
 ok1:
-       MOVQ    AX, 40(SP)      // r1
-       MOVQ    DX, 48(SP)      // r2
-       MOVQ    $0, 56(SP)      // errno
+       MOVQ    AX, r1+32(FP)
+       MOVQ    DX, r2+40(FP)
+       MOVQ    $0, err+48(FP)
        RET
 
+// func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2, err uintptr)
 TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
-       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
+       MOVQ    a1+8(FP), DI
+       MOVQ    a2+16(FP), SI
+       MOVQ    a3+24(FP), DX
+       MOVQ    a4+32(FP), R10
+       MOVQ    a5+40(FP), R8
+       MOVQ    a6+48(FP), R9
+       MOVQ    trap+0(FP), AX  // syscall entry
        SYSCALL
        CMPQ    AX, $0xfffffffffffff001
        JLS     ok2
-       MOVQ    $-1, 64(SP)     // r1
-       MOVQ    $0, 72(SP)      // r2
+       MOVQ    $-1, r1+56(FP)
+       MOVQ    $0, r2+64(FP)
        NEGQ    AX
-       MOVQ    AX, 80(SP)  // errno
+       MOVQ    AX, err+72(FP)
        RET
 ok2:
-       MOVQ    AX, 64(SP)      // r1
-       MOVQ    DX, 72(SP)      // r2
-       MOVQ    $0, 80(SP)      // errno
+       MOVQ    AX, r1+56(FP)
+       MOVQ    DX, r2+64(FP)
+       MOVQ    $0, err+72(FP)
        RET
 
+// func gettimeofday(tv *Timeval) (err uintptr)
 TEXT ·gettimeofday(SB),NOSPLIT,$0-16
-       MOVQ    8(SP), DI
+       MOVQ    tv+0(FP), DI
        MOVQ    $0, SI
        MOVQ    runtime·__vdso_gettimeofday_sym(SB), AX
        CALL    AX
@@ -120,8 +121,8 @@ TEXT ·gettimeofday(SB),NOSPLIT,$0-16
        CMPQ    AX, $0xfffffffffffff001
        JLS     ok7
        NEGQ    AX
-       MOVQ    AX, 16(SP)  // errno
+       MOVQ    AX, err+8(FP)
        RET
 ok7:
-       MOVQ    $0, 16(SP)  // errno
+       MOVQ    $0, err+8(FP)
        RET