#include "zasm_GOOS_GOARCH.h"
#include "../../cmd/ld/textflag.h"
#define CLOCK_MONOTONIC $3
TEXT runtime·tfork(SB),NOSPLIT,$32
MOVQ mm+16(FP), R8
MOVQ gg+24(FP), R9
MOVQ fn+32(FP), R12
MOVQ param+0(FP), DI
MOVQ psize+8(FP), SI
MOVL $8, AX
SYSCALL
JCC 3(PC)
NEGQ AX
RET
CMPL AX, $0
JEQ 2(PC)
RET
LEAQ m_tls(R8), DI
CALL runtime·settls(SB)
get_tls(CX)
MOVQ R8, m(CX)
MOVQ R9, g(CX)
CALL runtime·stackcheck(SB)
CALL R12
MOVQ $0, DI
MOVL $302, AX
SYSCALL
JMP -3(PC)
TEXT runtime·osyield(SB),NOSPLIT,$0
MOVL $298, AX
SYSCALL
RET
TEXT runtime·thrsleep(SB),NOSPLIT,$0
MOVQ 8(SP), DI
MOVL 16(SP), SI
MOVQ 24(SP), DX
MOVQ 32(SP), R10
MOVQ 40(SP), R8
MOVL $94, AX
SYSCALL
RET
TEXT runtime·thrwakeup(SB),NOSPLIT,$0
MOVQ 8(SP), DI
MOVL 16(SP), SI
MOVL $301, AX
SYSCALL
RET
TEXT runtime·exit(SB),NOSPLIT,$-8
MOVL 8(SP), DI
MOVL $1, AX
SYSCALL
MOVL $0xf1, 0xf1
RET
TEXT runtime·exit1(SB),NOSPLIT,$-8
MOVQ $0, DI
MOVL $302, AX
SYSCALL
MOVL $0xf1, 0xf1
RET
TEXT runtime·open(SB),NOSPLIT,$-8
MOVQ 8(SP), DI
MOVL 16(SP), SI
MOVL 20(SP), DX
MOVL $5, AX
SYSCALL
RET
TEXT runtime·close(SB),NOSPLIT,$-8
MOVL 8(SP), DI
MOVL $6, AX
SYSCALL
RET
TEXT runtime·read(SB),NOSPLIT,$-8
MOVL 8(SP), DI
MOVQ 16(SP), SI
MOVL 24(SP), DX
MOVL $3, AX
SYSCALL
RET
TEXT runtime·write(SB),NOSPLIT,$-8
MOVL 8(SP), DI
MOVQ 16(SP), SI
MOVL 24(SP), DX
MOVL $4, AX
SYSCALL
RET
TEXT runtime·usleep(SB),NOSPLIT,$16
MOVL $0, DX
MOVL usec+0(FP), AX
MOVL $1000000, CX
DIVL CX
MOVQ AX, 0(SP)
MOVL $1000, AX
MULL DX
MOVQ AX, 8(SP)
MOVQ SP, DI
MOVQ $0, SI
MOVL $91, AX
SYSCALL
RET
TEXT runtime·raise(SB),NOSPLIT,$16
MOVL $299, AX
SYSCALL
MOVQ AX, DI
MOVL sig+0(FP), SI
MOVL $37, AX
SYSCALL
RET
TEXT runtime·setitimer(SB),NOSPLIT,$-8
MOVL 8(SP), DI
MOVQ 16(SP), SI
MOVQ 24(SP), DX
MOVL $69, AX
SYSCALL
RET
TEXT time·now(SB), NOSPLIT, $32
MOVQ $0, DI
LEAQ 8(SP), SI
MOVL $87, AX
SYSCALL
MOVQ 8(SP), AX
MOVQ 16(SP), DX
MOVQ AX, sec+0(FP)
MOVL DX, nsec+8(FP)
RET
TEXT runtime·nanotime(SB),NOSPLIT,$24
MOVQ CLOCK_MONOTONIC, DI
LEAQ 8(SP), SI
MOVL $87, AX
SYSCALL
MOVQ 8(SP), AX
MOVQ 16(SP), DX
IMULQ $1000000000, AX
ADDQ DX, AX
RET
TEXT runtime·sigaction(SB),NOSPLIT,$-8
MOVL 8(SP), DI
MOVQ 16(SP), SI
MOVQ 24(SP), DX
MOVL $46, AX
SYSCALL
JCC 2(PC)
MOVL $0xf1, 0xf1
RET
TEXT runtime·sigprocmask(SB),NOSPLIT,$0
MOVL 8(SP), DI
MOVL 12(SP), SI
MOVL $48, AX
SYSCALL
JCC 2(PC)
MOVL $0xf1, 0xf1
MOVL AX, oset+0(FP)
RET
TEXT runtime·sigtramp(SB),NOSPLIT,$64
get_tls(BX)
MOVQ m(BX), BP
CMPQ BP, $0
JNE 5(PC)
MOVQ DI, 0(SP)
MOVQ $runtime·badsignal(SB), AX
CALL AX
RET
MOVQ g(BX), R10
MOVQ R10, 40(SP)
MOVQ m_gsignal(BP), BP
MOVQ BP, g(BX)
MOVQ DI, 0(SP)
MOVQ SI, 8(SP)
MOVQ DX, 16(SP)
MOVQ R10, 24(SP)
CALL runtime·sighandler(SB)
get_tls(BX)
MOVQ 40(SP), R10
MOVQ R10, g(BX)
RET
TEXT runtime·mmap(SB),NOSPLIT,$0
MOVQ 8(SP), DI
MOVQ 16(SP), SI
MOVL 24(SP), DX
MOVL 28(SP), R10
MOVL 32(SP), R8
MOVQ 36(SP), R9
SUBQ $16, SP
MOVQ R9, 8(SP)
MOVQ $0, R9
MOVL $197, AX
SYSCALL
ADDQ $16, SP
RET
TEXT runtime·munmap(SB),NOSPLIT,$0
MOVQ 8(SP), DI
MOVQ 16(SP), SI
MOVL $73, AX
SYSCALL
JCC 2(PC)
MOVL $0xf1, 0xf1
RET
TEXT runtime·madvise(SB),NOSPLIT,$0
MOVQ addr+0(FP), DI
MOVQ len+8(FP), SI
MOVQ behav+16(FP), DX
MOVQ $75, AX
SYSCALL
RET
TEXT runtime·sigaltstack(SB),NOSPLIT,$-8
MOVQ new+8(SP), DI
MOVQ old+16(SP), SI
MOVQ $288, AX
SYSCALL
JCC 2(PC)
MOVL $0xf1, 0xf1
RET
TEXT runtime·settls(SB),NOSPLIT,$0
ADDQ $16, DI
MOVQ $329, AX
SYSCALL
JCC 2(PC)
MOVL $0xf1, 0xf1
RET
TEXT runtime·sysctl(SB),NOSPLIT,$0
MOVQ 8(SP), DI
MOVL 16(SP), SI
MOVQ 24(SP), DX
MOVQ 32(SP), R10
MOVQ 40(SP), R8
MOVQ 48(SP), R9
MOVQ $202, AX
SYSCALL
JCC 3(PC)
NEGQ AX
RET
MOVL $0, AX
RET
TEXT runtime·kqueue(SB),NOSPLIT,$0
MOVQ $0, DI
MOVQ $0, SI
MOVQ $0, DX
MOVL $269, AX
SYSCALL
JCC 2(PC)
NEGQ AX
RET
TEXT runtime·kevent(SB),NOSPLIT,$0
MOVL 8(SP), DI
MOVQ 16(SP), SI
MOVL 24(SP), DX
MOVQ 32(SP), R10
MOVL 40(SP), R8
MOVQ 48(SP), R9
MOVL $72, AX
SYSCALL
JCC 2(PC)
NEGQ AX
RET
TEXT runtime·closeonexec(SB),NOSPLIT,$0
MOVL 8(SP), DI
MOVQ $2, SI
MOVQ $1, DX
MOVL $92, AX
SYSCALL
RET