annotate packages/hal/i386/linux/current/src/syscall-i386-linux-1.0.S @ 42:94fd8fbfe8fe ecos-sw-1999-10-05

Merge from eCos master repository on 1999-10-05-12:38:44-BST
author jlarmour
date Tue, 05 Oct 1999 12:09:26 +0000
parents 443894e2e912
children 7a6ac9edc838
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
1 //=============================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
2 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
3 // syscall-i386-linux-1.0.S
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
4 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
5 // Linux system call interface functions for i386.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
6 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
7 //=============================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
8 //####COPYRIGHTBEGIN####
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
9 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
10 // -------------------------------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
11 // The contents of this file are subject to the Cygnus eCos Public License
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
12 // Version 1.0 (the "License"); you may not use this file except in
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
13 // compliance with the License. You may obtain a copy of the License at
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
14 // http://sourceware.cygnus.com/ecos
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
15 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
16 // Software distributed under the License is distributed on an "AS IS"
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
17 // basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
18 // License for the specific language governing rights and limitations under
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
19 // the License.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
20 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
21 // The Original Code is eCos - Embedded Cygnus Operating System, released
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
22 // October 31, 1998.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
23 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
24 // The Initial Developer of the Original Code is Cygnus. Portions created
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
25 // by Cygnus are Copyright (C) 1998, 1999 Cygnus Solutions.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
26 // All Rights Reserved.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
27 // -------------------------------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
28 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
29 //####COPYRIGHTEND####
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
30 //=============================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
31 //#####DESCRIPTIONBEGIN####
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
32 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
33 // Author(s): proven
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
34 // Contributors:proven
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
35 // Date: 1998-10-06
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
36 // Description: Machine dependent syscalls for i386/i486/i586
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
37 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
38 //####DESCRIPTIONEND####
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
39 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
40 //=============================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
41
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
42 // Force __ELF__ for eCos/Linux.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
43 #ifndef __ELF__
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
44 #define __ELF__
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
45 #endif
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
46
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
47 #ifndef _SYS_SYSCALL_H
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
48 #define _SYS_SYSCALL_H
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
49
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
50 #define SYS_setup 0 // Used only by init, to get system going.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
51 #define SYS_exit 1
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
52 #define SYS_fork 2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
53 #define SYS_read 3
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
54 #define SYS_write 4
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
55 #define SYS_open 5
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
56 #define SYS_close 6
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
57 #define SYS_waitpid 7
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
58 #define SYS_creat 8
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
59 #define SYS_link 9
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
60 #define SYS_unlink 10
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
61 #define SYS_execve 11
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
62 #define SYS_chdir 12
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
63 #define SYS_time 13
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
64 #define SYS_prev_mknod 14
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
65 #define SYS_chmod 15
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
66 #define SYS_chown 16
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
67 #define SYS_break 17
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
68 #define SYS_oldstat 18
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
69 #define SYS_lseek 19
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
70 #define SYS_getpid 20
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
71 #define SYS_mount 21
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
72 #define SYS_umount 22
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
73 #define SYS_setuid 23
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
74 #define SYS_getuid 24
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
75 #define SYS_stime 25
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
76 #define SYS_ptrace 26
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
77 #define SYS_alarm 27
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
78 #define SYS_oldfstat 28
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
79 #define SYS_pause 29
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
80 #define SYS_utime 30
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
81 #define SYS_stty 31
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
82 #define SYS_gtty 32
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
83 #define SYS_access 33
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
84 #define SYS_nice 34
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
85 #define SYS_ftime 35
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
86 #define SYS_sync 36
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
87 #define SYS_kill 37
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
88 #define SYS_rename 38
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
89 #define SYS_mkdir 39
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
90 #define SYS_rmdir 40
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
91 #define SYS_dup 41
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
92 #define SYS_pipe 42
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
93 #define SYS_times 43
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
94 #define SYS_prof 44
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
95 #define SYS_brk 45
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
96 #define SYS_setgid 46
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
97 #define SYS_getgid 47
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
98 #define SYS_signal 48
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
99 #define SYS_geteuid 49
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
100 #define SYS_getegid 50
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
101 #define SYS_acct 51
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
102 #define SYS_phys 52
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
103 #define SYS_lock 53
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
104 #define SYS_ioctl 54
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
105 #define SYS_fcntl 55
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
106 #define SYS_mpx 56
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
107 #define SYS_setpgid 57
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
108 #define SYS_ulimit 58
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
109 #define SYS_oldolduname 59
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
110 #define SYS_umask 60
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
111 #define SYS_chroot 61
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
112 #define SYS_prev_ustat 62
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
113 #define SYS_dup2 63
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
114 #define SYS_getppid 64
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
115 #define SYS_getpgrp 65
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
116 #define SYS_setsid 66
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
117 #define SYS_sigaction 67
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
118 #define SYS_siggetmask 68
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
119 #define SYS_sigsetmask 69
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
120 #define SYS_setreuid 70
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
121 #define SYS_setregid 71
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
122 #define SYS_sigsuspend 72
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
123 #define SYS_sigpending 73
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
124 #define SYS_sethostname 74
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
125 #define SYS_setrlimit 75
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
126 #define SYS_getrlimit 76
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
127 #define SYS_getrusage 77
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
128 #define SYS_gettimeofday 78
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
129 #define SYS_settimeofday 79
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
130 #define SYS_getgroups 80
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
131 #define SYS_setgroups 81
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
132 #define SYS_select 82
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
133 #define SYS_symlink 83
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
134 #define SYS_oldlstat 84
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
135 #define SYS_readlink 85
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
136 #define SYS_uselib 86
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
137 #define SYS_swapon 87
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
138 #define SYS_reboot 88
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
139 #define SYS_readdir 89
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
140 #define SYS_mmap 90
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
141 #define SYS_munmap 91
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
142 #define SYS_truncate 92
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
143 #define SYS_ftruncate 93
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
144 #define SYS_fchmod 94
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
145 #define SYS_fchown 95
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
146 #define SYS_getpriority 96
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
147 #define SYS_setpriority 97
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
148 #define SYS_profil 98
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
149 #define SYS_statfs 99
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
150 #define SYS_fstatfs 100
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
151 #define SYS_ioperm 101
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
152 #define SYS_socketcall 102
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
153 #define SYS_klog 103
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
154 #define SYS_setitimer 104
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
155 #define SYS_getitimer 105
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
156 #define SYS_prev_stat 106
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
157 #define SYS_prev_lstat 107
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
158 #define SYS_prev_fstat 108
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
159 #define SYS_olduname 109
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
160 #define SYS_iopl 110
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
161 #define SYS_vhangup 111
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
162 #define SYS_idle 112
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
163 #define SYS_vm86 113
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
164 #define SYS_wait4 114
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
165 #define SYS_swapoff 115
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
166 #define SYS_sysinfo 116
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
167 #define SYS_ipc 117
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
168 #define SYS_fsync 118
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
169 #define SYS_sigreturn 119
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
170 #define SYS_clone 120
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
171 #define SYS_setdomainname 121
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
172 #define SYS_uname 122
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
173 #define SYS_modify_ldt 123
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
174 #define SYS_adjtimex 124
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
175 #define SYS_mprotect 125
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
176 #define SYS_sigprocmask 126
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
177 #define SYS_create_module 127
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
178 #define SYS_init_module 128
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
179 #define SYS_delete_module 129
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
180 #define SYS_get_kernel_syms 130
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
181 #define SYS_quotactl 131
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
182 #define SYS_getpgid 132
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
183 #define SYS_fchdir 133
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
184 #define SYS_bdflush 134
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
185 #define SYS_sysfs 135
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
186 #define SYS_personality 136
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
187 #define SYS_afs_syscall 137 // Syscall for Andrew File System
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
188 #define SYS_setfsuid 138
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
189 #define SYS_setfsgid 139
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
190 #define SYS__llseek 140
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
191 #define SYS_getdents 141
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
192 #define SYS__newselect 142
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
193 #define SYS_flock 143
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
194 #define SYS_syscall_flock 143
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
195 #define SYS_msync 144
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
196 #define SYS_readv 145
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
197 #define SYS_syscall_readv 145
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
198 #define SYS_writev 146
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
199 #define SYS_syscall_writev 146
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
200 #define SYS_getsid 147
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
201 #define SYS_fdatasync 148
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
202 #define SYS__sysctl 149
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
203 #define SYS_mlock 150
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
204 #define SYS_munlock 151
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
205 #define SYS_mlockall 152
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
206 #define SYS_munlockall 153
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
207 #define SYS_sched_setparam 154
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
208 #define SYS_sched_getparam 155
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
209 #define SYS_sched_setscheduler 156
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
210 #define SYS_sched_getscheduler 157
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
211 #define SYS_sched_yield 158
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
212 #define SYS_sched_get_priority_max 159
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
213 #define SYS_sched_get_priority_min 160
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
214 #define SYS_sched_rr_get_interval 161
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
215 #define SYS_nanosleep 162
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
216 #define SYS_mremap 163
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
217
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
218 #endif // <sys/syscall.h>
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
219
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
220
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
221 #ifdef __ELF__
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
222
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
223 #define NAME(X) cyg_hal_sys_##X
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
224 #define END(X) 1: ; .type NAME(X),@function ; .size NAME(X),1b - NAME(X)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
225
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
226 #else
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
227
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
228 #define NAME(X) _cyg_hal_sys_##X
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
229 #define END(X)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
230
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
231 #endif
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
232
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
233 #define SYSCALL0(x) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
234 .globl NAME(x) ; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
235 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
236 NAME(x): \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
237 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
238 push %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
239 lea SYS_##x, %eax; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
240 int $0x80; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
241 pop %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
242 ret; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
243 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
244 END(x)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
245
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
246 #define SYSCALL1(x) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
247 .globl NAME(x) ; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
248 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
249 NAME(x): \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
250 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
251 push %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
252 mov 8(%esp), %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
253 lea SYS_##x, %eax; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
254 int $0x80; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
255 pop %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
256 ret; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
257 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
258 END(x)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
259
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
260 #define SYSCALL2(x) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
261 .globl NAME(x) ; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
262 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
263 NAME(x): \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
264 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
265 push %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
266 mov 8(%esp), %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
267 mov 12(%esp), %ecx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
268 lea SYS_##x, %eax; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
269 int $0x80; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
270 pop %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
271 ret; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
272 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
273 END(x)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
274
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
275 #define STATCALL2(x) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
276 .globl NAME(x) ; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
277 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
278 NAME(x): \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
279 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
280 push %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
281 mov 8(%esp), %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
282 mov 12(%esp), %ecx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
283 lea SYS_prev_##x, %eax; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
284 int $0x80; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
285 pop %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
286 ret; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
287 END(x)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
288
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
289 #define SYSCALL3(x) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
290 .globl NAME(x) ; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
291 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
292 NAME(x): \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
293 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
294 push %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
295 mov 8(%esp), %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
296 mov 12(%esp), %ecx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
297 mov 16(%esp), %edx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
298 lea SYS_##x, %eax; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
299 int $0x80; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
300 pop %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
301 ret; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
302 END(x)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
303
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
304
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
305 #define SYSCALL4(x) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
306 .globl NAME(x) ; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
307 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
308 NAME(x): \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
309 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
310 push %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
311 push %esi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
312 mov 12(%esp), %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
313 mov 16(%esp), %ecx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
314 mov 20(%esp), %edx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
315 mov 24(%esp), %esi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
316 lea SYS_##x, %eax; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
317 int $0x80; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
318 pop %esi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
319 pop %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
320 ret; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
321 END(x)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
322
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
323 #define SYSCALL5(x) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
324 .globl NAME(x) ; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
325 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
326 NAME(x): \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
327 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
328 push %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
329 push %esi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
330 push %edi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
331 mov 16(%esp), %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
332 mov 20(%esp), %ecx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
333 mov 24(%esp), %edx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
334 mov 28(%esp), %esi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
335 mov 32(%esp), %edi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
336 lea SYS_##x, %eax; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
337 int $0x80; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
338 pop %edi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
339 pop %esi; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
340 pop %ebx; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
341 ret; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
342 END(x)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
343
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
344 //=========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
345 // exit 1 select 82
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
346 // fork 2 socketcall 102
42
94fd8fbfe8fe Merge from eCos master repository on 1999-10-05-12:38:44-BST
jlarmour
parents: 2
diff changeset
347 // read 3 newselect 142
94fd8fbfe8fe Merge from eCos master repository on 1999-10-05-12:38:44-BST
jlarmour
parents: 2
diff changeset
348 // write 4 readv 145
94fd8fbfe8fe Merge from eCos master repository on 1999-10-05-12:38:44-BST
jlarmour
parents: 2
diff changeset
349 // open 5 writev 146
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
350 // creat 8
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
351 // link 9
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
352 // unlink 10
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
353 // execve 11
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
354 // chdir 12
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
355 // chmod 15
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
356 // chown 16
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
357 // lseek 19
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
358 // rename 38
42
94fd8fbfe8fe Merge from eCos master repository on 1999-10-05-12:38:44-BST
jlarmour
parents: 2
diff changeset
359 // dup 41
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
360 // pipe 42
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
361 // ioctl 54
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
362 // fcntl 55
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
363 // dup2 63
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
364 // readdir 89
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
365 // ftruncate 93
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
366 // fchmod 94
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
367 // fchown 95
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
368 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
369
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
370 // Initial asm stuff for all functions.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
371 .text
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
372 .align 2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
373
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
374
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
375 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
376 // machdep_sys_gettimeofday()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
377 SYSCALL3(gettimeofday)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
378
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
379 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
380 // machdep_sys_setitimer()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
381 SYSCALL3(sigaction)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
382
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
383 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
384 // machdep_sys_setitimer()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
385 SYSCALL3(setitimer)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
386
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
387 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
388 // machdep_sys_getitimer()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
389 SYSCALL2(getitimer)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
390
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
391
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
392
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
393
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
394
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
395
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
396 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
397 // machdep_sys_read()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
398 SYSCALL3(read)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
399
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
400 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
401 // machdep_sys_write()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
402 SYSCALL3(write)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
403
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
404 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
405 // machdep_sys_open()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
406 SYSCALL3(open)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
407
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
408 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
409 // machdep_sys_close()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
410 SYSCALL1(close)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
411
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
412 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
413 // machdep_sys_creat()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
414 SYSCALL2(creat)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
415
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
416 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
417 // machdep_sys_dup2()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
418 SYSCALL2(dup2)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
419
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
420 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
421 // machdep_sys_fcntl()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
422 SYSCALL3(fcntl)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
423
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
424 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
425 // machdep_sys_fchown()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
426 SYSCALL3(fchown)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
427
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
428 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
429 // machdep_sys_fchmod()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
430 SYSCALL2(fchmod)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
431
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
432 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
433 // machdep_sys_ioctl()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
434 SYSCALL3(ioctl)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
435
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
436 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
437 // machdep_sys_chown()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
438 SYSCALL3(chown)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
439
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
440 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
441 // machdep_sys_chmod()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
442 SYSCALL2(chmod)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
443
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
444 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
445 // machdep_sys_chdir()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
446 SYSCALL1(chdir)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
447
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
448 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
449 // machdep_sys_unlink()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
450 SYSCALL1(unlink)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
451
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
452 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
453 // machdep_sys_link()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
454 SYSCALL2(link)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
455
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
456 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
457 // machdep_sys_rename()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
458 SYSCALL2(rename)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
459
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
460 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
461 // machdep_sys_lseek()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
462 SYSCALL3(lseek)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
463
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
464 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
465 // machdep_sys_pipe()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
466 SYSCALL1(pipe)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
467
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
468 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
469 // machdep_sys_dup()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
470 SYSCALL1(dup)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
471
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
472 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
473 // machdep_sys_fork()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
474 SYSCALL0(fork)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
475
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
476 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
477 // machdep_sys_execve()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
478 SYSCALL3(execve)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
479
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
480 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
481 // machdep_sys_stat()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
482 #ifdef __ELF__
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
483 STATCALL2(stat)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
484 #else
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
485 SYSCALL2(stat)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
486 #endif
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
487
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
488 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
489 // machdep_sys_fstat()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
490 #ifdef __ELF__
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
491 STATCALL2(fstat)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
492 #else
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
493 SYSCALL2(fstat)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
494 #endif
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
495
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
496 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
497 // machdep_sys_fstat()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
498 #ifdef __ELF__
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
499 STATCALL2(lstat)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
500 #else
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
501 SYSCALL2(lstat)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
502 #endif
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
503
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
504 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
505 // machdep_sys_ftruncate()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
506 SYSCALL2(ftruncate)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
507
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
508 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
509 // Nonstandard calls used to make the system work
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
510 //
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
511 // ==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
512 // machdep_sys_select()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
513
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
514 .globl NAME(select)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
515
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
516 NAME(select):
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
517
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
518 push %ebx
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
519 lea 8(%esp), %ebx
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
520 lea SYS_select, %eax
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
521 int $0x80
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
522 pop %ebx
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
523 ret
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
524 END(select)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
525
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
526 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
527 // machdep_sys_wait4()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
528 SYSCALL4(wait4)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
529
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
530 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
531 // machdep_sys_readdir()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
532 SYSCALL3(readdir)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
533
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
534 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
535 // machdep_sys_socketcall()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
536 SYSCALL2(socketcall)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
537
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
538
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
539 SYSCALL1(exit)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
540 SYSCALL3(sigprocmask)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
541
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
542 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
543 // machdep_sys_sigsuspend()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
544
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
545 .globl NAME(sigsuspend)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
546
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
547 NAME(sigsuspend):
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
548
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
549 push %ebp
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
550 mov %esp,%ebp
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
551 push %edi
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
552 push %esi
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
553 push %ebx
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
554 mov 8(%ebp), %edx
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
555 mov (%edx), %edx
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
556 lea SYS_sigsuspend, %eax
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
557 int $0x80
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
558 pop %ebx
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
559 pop %esi
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
560 pop %edi
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
561 mov %ebp,%esp
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
562 pop %ebp
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
563 ret
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
564 END(sigsuspend)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
565
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
566 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
567 // machdep_sys_readv()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
568 #ifdef HAVE_SYSCALL_READV
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
569 SYSCALL3(readv)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
570 #endif
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
571
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
572 //==========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
573 // machdep_sys_writev()
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
574 #ifdef HAVE_SYSCALL_WRITEV
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
575 SYSCALL3(writev)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
576 #endif
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
577
42
94fd8fbfe8fe Merge from eCos master repository on 1999-10-05-12:38:44-BST
jlarmour
parents: 2
diff changeset
578 //==========================================================================
94fd8fbfe8fe Merge from eCos master repository on 1999-10-05-12:38:44-BST
jlarmour
parents: 2
diff changeset
579 // machdep_sys_newselect()
94fd8fbfe8fe Merge from eCos master repository on 1999-10-05-12:38:44-BST
jlarmour
parents: 2
diff changeset
580 SYSCALL5(_newselect)