1 /*
2  * Copyright 2003 PathScale, Inc.
3  *
4  * Licensed under the GPL
5  */
6 
7 #ifndef __SYSDEP_X86_64_SYSCALLS_H__
8 #define __SYSDEP_X86_64_SYSCALLS_H__
9 
10 #include <linux/msg.h>
11 #include <linux/shm.h>
12 #include <kern_constants.h>
13 
14 typedef long syscall_handler_t(void);
15 
16 extern syscall_handler_t *sys_call_table[];
17 
18 #define EXECUTE_SYSCALL(syscall, regs) \
19 	(((long (*)(long, long, long, long, long, long)) \
20 	  (*sys_call_table[syscall]))(UPT_SYSCALL_ARG1(&regs->regs), \
21 		 		      UPT_SYSCALL_ARG2(&regs->regs), \
22 				      UPT_SYSCALL_ARG3(&regs->regs), \
23 				      UPT_SYSCALL_ARG4(&regs->regs), \
24 				      UPT_SYSCALL_ARG5(&regs->regs), \
25 				      UPT_SYSCALL_ARG6(&regs->regs)))
26 
27 extern long old_mmap(unsigned long addr, unsigned long len,
28 		     unsigned long prot, unsigned long flags,
29 		     unsigned long fd, unsigned long pgoff);
30 extern syscall_handler_t sys_modify_ldt;
31 extern syscall_handler_t sys_arch_prctl;
32 
33 #endif
34