Linux 3.17-rc2
[linux/fpc-iii.git] / arch / powerpc / kernel / systbl.S
blob7ab5d434e2eed9f6e120bb72c537bab29112c1b0
1 /*
2  * This file contains the table of syscall-handling functions.
3  *    Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org)
4  *
5  * Largely rewritten by Cort Dougan (cort@cs.nmt.edu)
6  * and Paul Mackerras.
7  *
8  * Adapted for iSeries by Mike Corrigan (mikejc@us.ibm.com)
9  * PPC64 updates by Dave Engebretsen (engebret@us.ibm.com) 
10  * 
11  * This program is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU General Public License
13  * as published by the Free Software Foundation; either version
14  * 2 of the License, or (at your option) any later version.
15  */
17 #include <asm/ppc_asm.h>
19 #ifdef CONFIG_PPC64
20 #define SYSCALL(func)           .llong  DOTSYM(sys_##func),DOTSYM(sys_##func)
21 #define COMPAT_SYS(func)        .llong  DOTSYM(sys_##func),DOTSYM(compat_sys_##func)
22 #define PPC_SYS(func)           .llong  DOTSYM(ppc_##func),DOTSYM(ppc_##func)
23 #define OLDSYS(func)            .llong  DOTSYM(sys_ni_syscall),DOTSYM(sys_ni_syscall)
24 #define SYS32ONLY(func)         .llong  DOTSYM(sys_ni_syscall),DOTSYM(compat_sys_##func)
25 #define SYSX(f, f3264, f32)     .llong  DOTSYM(f),DOTSYM(f3264)
26 #else
27 #define SYSCALL(func)           .long   sys_##func
28 #define COMPAT_SYS(func)        .long   sys_##func
29 #define PPC_SYS(func)           .long   ppc_##func
30 #define OLDSYS(func)            .long   sys_##func
31 #define SYS32ONLY(func)         .long   sys_##func
32 #define SYSX(f, f3264, f32)     .long   f32
33 #endif
34 #define SYSCALL_SPU(func)       SYSCALL(func)
35 #define COMPAT_SYS_SPU(func)    COMPAT_SYS(func)
36 #define PPC_SYS_SPU(func)       PPC_SYS(func)
37 #define SYSX_SPU(f, f3264, f32) SYSX(f, f3264, f32)
39 .section .rodata,"a"
41 #ifdef CONFIG_PPC64
42         .p2align        3
43 #endif
45 .globl sys_call_table
46 sys_call_table:
48 #include <asm/systbl.h>