]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: fix dragonfly/amd64 assembly argument sizes
authorJosh Bleecher Snyder <josharian@gmail.com>
Thu, 21 Jul 2016 15:37:45 +0000 (08:37 -0700)
committerJosh Bleecher Snyder <josharian@gmail.com>
Tue, 16 Aug 2016 14:12:16 +0000 (14:12 +0000)
This is preliminary work to unifying the
unix amd64 assembly implementations,
which is preliminary work to making the
assembly vet-friendly.

Updates #11041

Change-Id: Ic64985124f8fb86cc08898be2ec7fca972ced4ca
Reviewed-on: https://go-review.googlesource.com/25113
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

index 004d36089a60a6ec84969c32cdd0f30e8e57b63b..6339b7ea55550943855110556fd8595ca10fdcc7 100644 (file)
@@ -2,6 +2,9 @@
 // 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"
 
@@ -14,7 +17,7 @@
 // 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-64
+TEXT   ·Syscall(SB),NOSPLIT,$0-56
        CALL    runtime·entersyscall(SB)
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
@@ -37,7 +40,7 @@ ok:
        CALL    runtime·exitsyscall(SB)
        RET
 
-TEXT   ·Syscall6(SB),NOSPLIT,$0-88
+TEXT   ·Syscall6(SB),NOSPLIT,$0-80
        CALL    runtime·entersyscall(SB)
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
@@ -60,7 +63,7 @@ ok6:
        CALL    runtime·exitsyscall(SB)
        RET
 
-TEXT   ·Syscall9(SB),NOSPLIT,$0-112
+TEXT   ·Syscall9(SB),NOSPLIT,$0-104
        CALL    runtime·entersyscall(SB)
        MOVQ    8(SP), AX
        MOVQ    16(SP), DI
@@ -93,7 +96,7 @@ ok9:
        CALL    runtime·exitsyscall(SB)
        RET
 
-TEXT ·RawSyscall(SB),NOSPLIT,$0-64
+TEXT ·RawSyscall(SB),NOSPLIT,$0-56
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX
@@ -113,7 +116,7 @@ ok1:
        MOVQ    $0, 56(SP)      // errno
        RET
 
-TEXT   ·RawSyscall6(SB),NOSPLIT,$0-88
+TEXT   ·RawSyscall6(SB),NOSPLIT,$0-80
        MOVQ    16(SP), DI
        MOVQ    24(SP), SI
        MOVQ    32(SP), DX