1#include <linux/module.h>
2
3asmlinkage long long __ashldi3 (long long, int);
4asmlinkage long long __ashrdi3 (long long, int);
5asmlinkage long long __lshrdi3 (long long, int);
6asmlinkage long long __muldi3 (long long, long long);
7
8/* The following are special because they're not called
9   explicitly (the C compiler generates them).  Fortunately,
10   their interface isn't gonna change any time soon now, so
11   it's OK to leave it out of version control.  */
12EXPORT_SYMBOL(__ashldi3);
13EXPORT_SYMBOL(__ashrdi3);
14EXPORT_SYMBOL(__lshrdi3);
15EXPORT_SYMBOL(__muldi3);
16
17#if defined(CONFIG_CPU_HAS_NO_MULDIV64)
18/*
19 * Simpler 68k and ColdFire parts also need a few other gcc functions.
20 */
21extern long long __divsi3(long long, long long);
22extern long long __modsi3(long long, long long);
23extern long long __mulsi3(long long, long long);
24extern long long __udivsi3(long long, long long);
25extern long long __umodsi3(long long, long long);
26
27EXPORT_SYMBOL(__divsi3);
28EXPORT_SYMBOL(__modsi3);
29EXPORT_SYMBOL(__mulsi3);
30EXPORT_SYMBOL(__udivsi3);
31EXPORT_SYMBOL(__umodsi3);
32#endif
33