summaryrefslogtreecommitdiff
path: root/vendor/golang.org/x/sys/unix/asm_linux_386.s
diff options
context:
space:
mode:
authorbaude <bbaude@redhat.com>2018-06-28 13:52:12 -0500
committerAtomic Bot <atomic-devel@projectatomic.io>2018-06-28 20:28:38 +0000
commit67f68626e6e5116ec088f511a0f8a17158b303db (patch)
treef95284f8e3ea61421309f2b363a0b3bca6764075 /vendor/golang.org/x/sys/unix/asm_linux_386.s
parent45c745e0b0d0fe648283e954b8e1b37a46887458 (diff)
downloadpodman-67f68626e6e5116ec088f511a0f8a17158b303db.tar.gz
podman-67f68626e6e5116ec088f511a0f8a17158b303db.tar.bz2
podman-67f68626e6e5116ec088f511a0f8a17158b303db.zip
vendor in latest golang/x/sys
Signed-off-by: baude <bbaude@redhat.com> Closes: #1022 Approved by: baude
Diffstat (limited to 'vendor/golang.org/x/sys/unix/asm_linux_386.s')
-rw-r--r--vendor/golang.org/x/sys/unix/asm_linux_386.s36
1 files changed, 33 insertions, 3 deletions
diff --git a/vendor/golang.org/x/sys/unix/asm_linux_386.s b/vendor/golang.org/x/sys/unix/asm_linux_386.s
index 4db290932..448bebbb5 100644
--- a/vendor/golang.org/x/sys/unix/asm_linux_386.s
+++ b/vendor/golang.org/x/sys/unix/asm_linux_386.s
@@ -10,21 +10,51 @@
// System calls for 386, Linux
//
+// See ../runtime/sys_linux_386.s for the reason why we always use int 0x80
+// instead of the glibc-specific "CALL 0x10(GS)".
+#define INVOKE_SYSCALL INT $0x80
+
// Just jump to package syscall's implementation for all these functions.
// The runtime may know about them.
-TEXT ·Syscall(SB),NOSPLIT,$0-28
+TEXT ·Syscall(SB),NOSPLIT,$0-28
JMP syscall·Syscall(SB)
-TEXT ·Syscall6(SB),NOSPLIT,$0-40
+TEXT ·Syscall6(SB),NOSPLIT,$0-40
JMP syscall·Syscall6(SB)
+TEXT ·SyscallNoError(SB),NOSPLIT,$0-24
+ CALL runtime·entersyscall(SB)
+ MOVL trap+0(FP), AX // syscall entry
+ MOVL a1+4(FP), BX
+ MOVL a2+8(FP), CX
+ MOVL a3+12(FP), DX
+ MOVL $0, SI
+ MOVL $0, DI
+ INVOKE_SYSCALL
+ MOVL AX, r1+16(FP)
+ MOVL DX, r2+20(FP)
+ CALL runtime·exitsyscall(SB)
+ RET
+
TEXT ·RawSyscall(SB),NOSPLIT,$0-28
JMP syscall·RawSyscall(SB)
-TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
+TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
JMP syscall·RawSyscall6(SB)
+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-24
+ MOVL trap+0(FP), AX // syscall entry
+ MOVL a1+4(FP), BX
+ MOVL a2+8(FP), CX
+ MOVL a3+12(FP), DX
+ MOVL $0, SI
+ MOVL $0, DI
+ INVOKE_SYSCALL
+ MOVL AX, r1+16(FP)
+ MOVL DX, r2+20(FP)
+ RET
+
TEXT ·socketcall(SB),NOSPLIT,$0-36
JMP syscall·socketcall(SB)