2011-03-29 05:06:37 +00:00
|
|
|
#include <linux/module.h>
|
|
|
|
|
|
|
|
asmlinkage long long __ashldi3 (long long, int);
|
|
|
|
asmlinkage long long __ashrdi3 (long long, int);
|
|
|
|
asmlinkage long long __lshrdi3 (long long, int);
|
|
|
|
asmlinkage long long __muldi3 (long long, long long);
|
|
|
|
|
|
|
|
/* The following are special because they're not called
|
|
|
|
explicitly (the C compiler generates them). Fortunately,
|
|
|
|
their interface isn't gonna change any time soon now, so
|
|
|
|
it's OK to leave it out of version control. */
|
|
|
|
EXPORT_SYMBOL(__ashldi3);
|
|
|
|
EXPORT_SYMBOL(__ashrdi3);
|
|
|
|
EXPORT_SYMBOL(__lshrdi3);
|
|
|
|
EXPORT_SYMBOL(__muldi3);
|
|
|
|
|
2011-11-11 05:13:08 +00:00
|
|
|
#if defined(CONFIG_CPU_HAS_NO_MULDIV64)
|
2011-03-29 05:06:37 +00:00
|
|
|
/*
|
|
|
|
* Simpler 68k and ColdFire parts also need a few other gcc functions.
|
|
|
|
*/
|
|
|
|
extern long long __divsi3(long long, long long);
|
|
|
|
extern long long __modsi3(long long, long long);
|
|
|
|
extern long long __mulsi3(long long, long long);
|
|
|
|
extern long long __udivsi3(long long, long long);
|
|
|
|
extern long long __umodsi3(long long, long long);
|
|
|
|
|
|
|
|
EXPORT_SYMBOL(__divsi3);
|
|
|
|
EXPORT_SYMBOL(__modsi3);
|
|
|
|
EXPORT_SYMBOL(__mulsi3);
|
|
|
|
EXPORT_SYMBOL(__udivsi3);
|
|
|
|
EXPORT_SYMBOL(__umodsi3);
|
2011-03-22 03:39:27 +00:00
|
|
|
#endif
|