syscall-template-arm32-netbsd-1.3.S
上传用户:tsgydb
上传日期:2007-04-14
资源大小:10674k
文件大小:1k
源码类别:
MySQL数据库
开发平台:
Visual C++
- #include <machine/asm.h>
- #include <sys/syscall.h>
- #ifdef SYS___sigsuspend14
- #define SYS_sigsuspend SYS___sigsuspend14
- #endif
- #ifdef SYS___sigprocmask14
- #define SYS_sigprocmask SYS___sigprocmask14
- #endif
- #ifdef __STDC__
- #define SYSCALL(x)
- .globl _C_LABEL(machdep_sys_##x);
- _C_LABEL(machdep_sys_##x):;
- swi SYS_##x;
- bcs 1b;
- mov r15, r14;
- #else
- #define SYSCALL(x)
- .globl _C_LABEL(_machdep_sys_/**/x);
- _C_LABEL(machdep_sys_/**/x):;
- swi SYS_/**/x;
- bcs 1b;
- mov r15, r14;
- #endif
- /*
- * Initial asm stuff for all functions.
- */
- .text
- .align 0
- /* ==========================================================================
- * error code for all syscalls. The error value is returned as the negative
- * of the errno value.
- */
- 1:
- rsb r0, r0, #0x00000000
- mvn r1, #0x00000000
- mov r15, r14
- #define XSYSCALL(NAME) SYSCALL(NAME)
- XSYSCALL(SYSCALL_NAME)