| /* |
| * This file contains the table of syscall-handling functions. |
| * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) |
| * |
| * Largely rewritten by Cort Dougan (cort@cs.nmt.edu) |
| * and Paul Mackerras. |
| * |
| * Adapted for iSeries by Mike Corrigan (mikejc@us.ibm.com) |
| * PPC64 updates by Dave Engebretsen (engebret@us.ibm.com) |
| * |
| * This program is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU General Public License |
| * as published by the Free Software Foundation; either version |
| * 2 of the License, or (at your option) any later version. |
| */ |
| |
| #include <asm/ppc_asm.h> |
| |
| #ifdef CONFIG_PPC64 |
| #define SYSCALL(func) .8byte DOTSYM(sys_##func),DOTSYM(sys_##func) |
| #define COMPAT_SYS(func) .8byte DOTSYM(sys_##func),DOTSYM(compat_sys_##func) |
| #define PPC_SYS(func) .8byte DOTSYM(ppc_##func),DOTSYM(ppc_##func) |
| #define OLDSYS(func) .8byte DOTSYM(sys_ni_syscall),DOTSYM(sys_ni_syscall) |
| #define SYS32ONLY(func) .8byte DOTSYM(sys_ni_syscall),DOTSYM(compat_sys_##func) |
| #define PPC64ONLY(func) .8byte DOTSYM(ppc_##func),DOTSYM(sys_ni_syscall) |
| #define SYSX(f, f3264, f32) .8byte DOTSYM(f),DOTSYM(f3264) |
| #else |
| #define SYSCALL(func) .long sys_##func |
| #define COMPAT_SYS(func) .long sys_##func |
| #define PPC_SYS(func) .long ppc_##func |
| #define OLDSYS(func) .long sys_##func |
| #define SYS32ONLY(func) .long sys_##func |
| #define PPC64ONLY(func) .long sys_ni_syscall |
| #define SYSX(f, f3264, f32) .long f32 |
| #endif |
| #define SYSCALL_SPU(func) SYSCALL(func) |
| #define COMPAT_SYS_SPU(func) COMPAT_SYS(func) |
| #define PPC_SYS_SPU(func) PPC_SYS(func) |
| #define SYSX_SPU(f, f3264, f32) SYSX(f, f3264, f32) |
| |
| .section .rodata,"a" |
| |
| #ifdef CONFIG_PPC64 |
| .p2align 3 |
| #endif |
| |
| .globl sys_call_table |
| sys_call_table: |
| |
| #include <asm/systbl.h> |