1 | // SPDX-License-Identifier: GPL-2.0-or-later |
---|---|
2 | /* |
3 | * Architecture-specific kernel symbols |
4 | * |
5 | * Copyright (C) 2000-2001 Richard Hirst <rhirst with parisc-linux.org> |
6 | * Copyright (C) 2001 Dave Kennedy |
7 | * Copyright (C) 2001 Paul Bame <bame at parisc-linux.org> |
8 | * Copyright (C) 2001-2003 Grant Grundler <grundler with parisc-linux.org> |
9 | * Copyright (C) 2002-2003 Matthew Wilcox <willy at parisc-linux.org> |
10 | * Copyright (C) 2002 Randolph Chung <tausq at parisc-linux.org> |
11 | * Copyright (C) 2002-2007 Helge Deller <deller with parisc-linux.org> |
12 | */ |
13 | |
14 | #include <linux/module.h> |
15 | #include <linux/kernel.h> |
16 | #include <linux/syscalls.h> |
17 | #include <linux/libgcc.h> |
18 | |
19 | #include <linux/string.h> |
20 | EXPORT_SYMBOL(memset); |
21 | |
22 | #include <linux/atomic.h> |
23 | EXPORT_SYMBOL(__xchg8); |
24 | EXPORT_SYMBOL(__xchg32); |
25 | EXPORT_SYMBOL(__cmpxchg_u32); |
26 | EXPORT_SYMBOL(__cmpxchg_u64); |
27 | #ifdef CONFIG_SMP |
28 | EXPORT_SYMBOL(__atomic_hash); |
29 | #endif |
30 | #ifdef CONFIG_64BIT |
31 | EXPORT_SYMBOL(__xchg64); |
32 | #endif |
33 | |
34 | #include <linux/uaccess.h> |
35 | EXPORT_SYMBOL(lclear_user); |
36 | |
37 | #ifndef CONFIG_64BIT |
38 | /* Needed so insmod can set dp value */ |
39 | extern int $global$; |
40 | EXPORT_SYMBOL($global$); |
41 | #endif |
42 | |
43 | #include <asm/io.h> |
44 | EXPORT_SYMBOL(memcpy_toio); |
45 | EXPORT_SYMBOL(memcpy_fromio); |
46 | EXPORT_SYMBOL(memset_io); |
47 | |
48 | extern void $$divI(void); |
49 | extern void $$divU(void); |
50 | extern void $$remI(void); |
51 | extern void $$remU(void); |
52 | extern void $$mulI(void); |
53 | extern void $$divU_3(void); |
54 | extern void $$divU_5(void); |
55 | extern void $$divU_6(void); |
56 | extern void $$divU_9(void); |
57 | extern void $$divU_10(void); |
58 | extern void $$divU_12(void); |
59 | extern void $$divU_7(void); |
60 | extern void $$divU_14(void); |
61 | extern void $$divU_15(void); |
62 | extern void $$divI_3(void); |
63 | extern void $$divI_5(void); |
64 | extern void $$divI_6(void); |
65 | extern void $$divI_7(void); |
66 | extern void $$divI_9(void); |
67 | extern void $$divI_10(void); |
68 | extern void $$divI_12(void); |
69 | extern void $$divI_14(void); |
70 | extern void $$divI_15(void); |
71 | |
72 | EXPORT_SYMBOL($$divI); |
73 | EXPORT_SYMBOL($$divU); |
74 | EXPORT_SYMBOL($$remI); |
75 | EXPORT_SYMBOL($$remU); |
76 | EXPORT_SYMBOL($$mulI); |
77 | EXPORT_SYMBOL($$divU_3); |
78 | EXPORT_SYMBOL($$divU_5); |
79 | EXPORT_SYMBOL($$divU_6); |
80 | EXPORT_SYMBOL($$divU_9); |
81 | EXPORT_SYMBOL($$divU_10); |
82 | EXPORT_SYMBOL($$divU_12); |
83 | EXPORT_SYMBOL($$divU_7); |
84 | EXPORT_SYMBOL($$divU_14); |
85 | EXPORT_SYMBOL($$divU_15); |
86 | EXPORT_SYMBOL($$divI_3); |
87 | EXPORT_SYMBOL($$divI_5); |
88 | EXPORT_SYMBOL($$divI_6); |
89 | EXPORT_SYMBOL($$divI_7); |
90 | EXPORT_SYMBOL($$divI_9); |
91 | EXPORT_SYMBOL($$divI_10); |
92 | EXPORT_SYMBOL($$divI_12); |
93 | EXPORT_SYMBOL($$divI_14); |
94 | EXPORT_SYMBOL($$divI_15); |
95 | |
96 | EXPORT_SYMBOL(__ashrdi3); |
97 | EXPORT_SYMBOL(__ashldi3); |
98 | EXPORT_SYMBOL(__lshrdi3); |
99 | EXPORT_SYMBOL(__muldi3); |
100 | EXPORT_SYMBOL(__ucmpdi2); |
101 | |
102 | asmlinkage void * __canonicalize_funcptr_for_compare(void *); |
103 | EXPORT_SYMBOL(__canonicalize_funcptr_for_compare); |
104 | |
105 | #ifdef CONFIG_64BIT |
106 | extern void __divdi3(void); |
107 | extern void __udivdi3(void); |
108 | extern void __umoddi3(void); |
109 | extern void __moddi3(void); |
110 | |
111 | EXPORT_SYMBOL(__divdi3); |
112 | EXPORT_SYMBOL(__udivdi3); |
113 | EXPORT_SYMBOL(__umoddi3); |
114 | EXPORT_SYMBOL(__moddi3); |
115 | #endif |
116 | |
117 | #ifndef CONFIG_64BIT |
118 | extern void $$dyncall(void); |
119 | EXPORT_SYMBOL($$dyncall); |
120 | #endif |
121 | |
122 | #ifdef CONFIG_FUNCTION_TRACER |
123 | extern void _mcount(void); |
124 | EXPORT_SYMBOL(_mcount); |
125 | #endif |
126 | |
127 | /* from pacache.S -- needed for clear/copy_page */ |
128 | EXPORT_SYMBOL(clear_page_asm); |
129 | EXPORT_SYMBOL(copy_page_asm); |
130 |