Linux-2.6.12-rc2
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / arch / sparc64 / solaris / conv.h
1 /* $Id: conv.h,v 1.4 1998/08/15 20:42:51 davem Exp $
2 * conv.h: Utility macros for Solaris emulation
3 *
4 * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
5 */
6
7 /* #define DEBUG_SOLARIS */
8 #define DEBUG_SOLARIS_KMALLOC
9
10 #ifndef __ASSEMBLY__
11
12 #include <asm/unistd.h>
13
14 /* Use this to get at 32-bit user passed pointers. */
15 #define A(__x) \
16 ({ unsigned long __ret; \
17 __asm__ ("srl %0, 0, %0" \
18 : "=r" (__ret) \
19 : "0" (__x)); \
20 (void __user *)__ret; \
21 })
22
23 extern unsigned sys_call_table[];
24 extern unsigned sys_call_table32[];
25 extern unsigned sunos_sys_table[];
26
27 #define SYS(name) ((long)sys_call_table[__NR_##name])
28 #define SUNOS(x) ((long)sunos_sys_table[x])
29
30 #ifdef DEBUG_SOLARIS
31 #define SOLD(s) printk("%s,%d,%s(): %s\n",__FILE__,__LINE__,__FUNCTION__,(s))
32 #define SOLDD(s) printk("solaris: "); printk s
33 #else
34 #define SOLD(s)
35 #define SOLDD(s)
36 #endif
37
38 #endif /* __ASSEMBLY__ */