162306a36Sopenharmony_ci/*
262306a36Sopenharmony_ci * Copyright 2003 PathScale, Inc.
362306a36Sopenharmony_ci *
462306a36Sopenharmony_ci * Licensed under the GPL
562306a36Sopenharmony_ci */
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#ifndef __SYSDEP_X86_64_SYSCALLS_H__
862306a36Sopenharmony_ci#define __SYSDEP_X86_64_SYSCALLS_H__
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci#include <linux/msg.h>
1162306a36Sopenharmony_ci#include <linux/shm.h>
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_citypedef long syscall_handler_t(long, long, long, long, long, long);
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciextern syscall_handler_t *sys_call_table[];
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci#define EXECUTE_SYSCALL(syscall, regs) \
1862306a36Sopenharmony_ci	(((*sys_call_table[syscall]))(UPT_SYSCALL_ARG1(&regs->regs), \
1962306a36Sopenharmony_ci		 		      UPT_SYSCALL_ARG2(&regs->regs), \
2062306a36Sopenharmony_ci				      UPT_SYSCALL_ARG3(&regs->regs), \
2162306a36Sopenharmony_ci				      UPT_SYSCALL_ARG4(&regs->regs), \
2262306a36Sopenharmony_ci				      UPT_SYSCALL_ARG5(&regs->regs), \
2362306a36Sopenharmony_ci				      UPT_SYSCALL_ARG6(&regs->regs)))
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ciextern syscall_handler_t sys_modify_ldt;
2662306a36Sopenharmony_ciextern syscall_handler_t sys_arch_prctl;
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci#endif
29