1/*
2 * Copyright (C) 2005-2006 Atmel Corporation
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9/*
10 * Stubs for syscalls that require access to pt_regs or that take more
11 * than five parameters.
12 */
13
14#define ARG6	r3
15
16	.text
17	.global __sys_rt_sigsuspend
18	.type	__sys_rt_sigsuspend,@function
19__sys_rt_sigsuspend:
20	mov	r10, sp
21	rjmp	sys_rt_sigsuspend
22
23	.global	__sys_sigaltstack
24	.type	__sys_sigaltstack,@function
25__sys_sigaltstack:
26	mov	r10, sp
27	rjmp	sys_sigaltstack
28
29	.global	__sys_rt_sigreturn
30	.type	__sys_rt_sigreturn,@function
31__sys_rt_sigreturn:
32	mov	r12, sp
33	rjmp	sys_rt_sigreturn
34
35	.global	__sys_fork
36	.type	__sys_fork,@function
37__sys_fork:
38	mov	r12, sp
39	rjmp	sys_fork
40
41	.global	__sys_clone
42	.type	__sys_clone,@function
43__sys_clone:
44	mov	r8, sp
45	rjmp	sys_clone
46
47	.global	__sys_vfork
48	.type	__sys_vfork,@function
49__sys_vfork:
50	mov	r12, sp
51	rjmp	sys_vfork
52
53	.global	__sys_execve
54	.type	__sys_execve,@function
55__sys_execve:
56	mov	r9, sp
57	rjmp	sys_execve
58
59	.global	__sys_mmap2
60	.type	__sys_mmap2,@function
61__sys_mmap2:
62	pushm	lr
63	st.w	--sp, ARG6
64	call	sys_mmap_pgoff
65	sub	sp, -4
66	popm	pc
67
68	.global	__sys_sendto
69	.type	__sys_sendto,@function
70__sys_sendto:
71	pushm	lr
72	st.w	--sp, ARG6
73	call	sys_sendto
74	sub	sp, -4
75	popm	pc
76
77	.global	__sys_recvfrom
78	.type	__sys_recvfrom,@function
79__sys_recvfrom:
80	pushm	lr
81	st.w	--sp, ARG6
82	call	sys_recvfrom
83	sub	sp, -4
84	popm	pc
85
86	.global	__sys_pselect6
87	.type	__sys_pselect6,@function
88__sys_pselect6:
89	pushm	lr
90	st.w	--sp, ARG6
91	call	sys_pselect6
92	sub	sp, -4
93	popm	pc
94
95	.global	__sys_splice
96	.type	__sys_splice,@function
97__sys_splice:
98	pushm	lr
99	st.w	--sp, ARG6
100	call	sys_splice
101	sub	sp, -4
102	popm	pc
103
104	.global	__sys_epoll_pwait
105	.type	__sys_epoll_pwait,@function
106__sys_epoll_pwait:
107	pushm	lr
108	st.w	--sp, ARG6
109	call	sys_epoll_pwait
110	sub	sp, -4
111	popm	pc
112
113	.global __sys_sync_file_range
114	.type	__sys_sync_file_range,@function
115__sys_sync_file_range:
116	pushm	lr
117	st.w	--sp, ARG6
118	call	sys_sync_file_range
119	sub	sp, -4
120	popm	pc
121