xref: /netbsd-src/lib/libc/arch/powerpc/sys/__syscall.S (revision 77abcafc06acf32ff7f9d66654bcf4d2a02cae84)
1*77abcafcSthorpej/*	$NetBSD: __syscall.S,v 1.4 2020/04/18 23:55:51 thorpej Exp $	*/
2b0bf2adcSmatt
338dcdc34Smatt#include "SYS.h"
4b0bf2adcSmatt
5193dbcdaSmatt	.text
638dcdc34Smatt	.p2align 2
7193dbcdaSmattENTRY(__syscall)
8193dbcdaSmatt	mr	%r0,%r3		/* syscall number */
9193dbcdaSmatt	mr	%r3,%r4
10193dbcdaSmatt	mr	%r4,%r5
11193dbcdaSmatt	mr	%r5,%r6
12193dbcdaSmatt	mr	%r6,%r7
13193dbcdaSmatt	mr	%r7,%r8
14193dbcdaSmatt	mr	%r8,%r9
15193dbcdaSmatt	mr	%r9,%r10
1638dcdc34Smatt	ldreg	%r10,(2*__SIZEOF_POINTER__)(%r1) /* final argument is on the stack */
17193dbcdaSmatt	sc
18193dbcdaSmatt	bnslr
1938dcdc34Smatt	BRANCH_TO_CERROR()
20193dbcdaSmattEND(__syscall)
21193dbcdaSmatt
22*77abcafcSthorpejSTRONG_ALIAS(_syscall,__syscall)
23*77abcafcSthorpejWEAK_ALIAS(syscall,__syscall)
24