Cygwin: cygwin_GetCommandLineW/A: don't rely on __argv[0] content
[newlib-cygwin.git] / libgloss / syscall.h
blob3db9db1426ea19b71920416e35fd3d3b145c4b5b
1 /* General use syscall.h file.
2 The more ports that use this file, the simpler sim/common/nltvals.def
3 remains. */
5 #ifndef LIBGLOSS_SYSCALL_H
6 #define LIBGLOSS_SYSCALL_H
8 /* Note: This file may be included by assembler source. */
10 /* These should be as small as possible to allow a port to use a trap type
11 instruction, which the system call # as the trap (the d10v for instance
12 supports traps 0..31). An alternative would be to define one trap for doing
13 system calls, and put the system call number in a register that is not used
14 for the normal calling sequence (so that you don't have to shift down the
15 arguments to add the system call number). Obviously, if these system call
16 numbers are ever changed, all of the simulators and potentially user code
17 will need to be updated. */
19 /* There is no current need for the following: SYS_execv, SYS_creat, SYS_wait,
20 etc. etc. Don't add them. */
22 /* These are required by the ANSI C part of newlib (excluding system() of
23 course). */
24 #define SYS_exit 1
25 #define SYS_open 2
26 #define SYS_close 3
27 #define SYS_read 4
28 #define SYS_write 5
29 #define SYS_lseek 6
30 #define SYS_unlink 7
31 #define SYS_getpid 8
32 #define SYS_kill 9
33 #define SYS_fstat 10
34 /*#define SYS_sbrk 11 - not currently a system call, but reserved. */
36 /* ARGV support. */
37 #define SYS_argvlen 12
38 #define SYS_argv 13
40 /* These are extras added for one reason or another. */
41 #define SYS_chdir 14
42 #define SYS_stat 15
43 #define SYS_chmod 16
44 #define SYS_utime 17
45 #define SYS_time 18
46 #define SYS_gettimeofday 19
47 #define SYS_times 20
48 #define SYS_link 21
50 /* New ARGV support. */
51 #define SYS_argc 22
52 #define SYS_argnlen 23
53 #define SYS_argn 24
55 /* SID simulator runtime reconfiguration. */
56 #define SYS_reconfig 25
58 #endif