| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | /* pipe system call for Linux/MIPS *//* * Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org> * * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. *//*see uClibc's sh/pipe.c and glibc-2.2.4's mips/pipe.S */#include <features.h>#include <sys/asm.h>#include <asm/unistd.h>#include <sys/regdef.h>	.globl	pipe	.ent	pipe, 0	.type pipe,@functionpipe:#ifdef __PIC__	SETUP_GP#endif	li	v0,__NR_pipe	syscall	bnez	a3, 1f	sw	v0, 0(a0)	sw	v1, 4(a0)	li	v0, 0	j	ra1:	/* uClibc change -- start */	move		a0,v0		/* Pass return val to C function. */	/* uClibc change -- stop */#ifdef __PIC__	SETUP_GP64(v0, pipe)	PTR_LA	t9, __syscall_error	RESTORE_GP64	jr	t9#else	j	__syscall_error#endif1:	.end	pipe	.size	pipe,.-pipelibc_hidden_def(pipe)
 |