linux/arch/alpha/kernel/alpha_ksyms.c
<<
>>
Prefs
   1/*
   2 * linux/arch/alpha/kernel/alpha_ksyms.c
   3 *
   4 * Export the alpha-specific functions that are needed for loadable
   5 * modules.
   6 */
   7
   8#include <linux/module.h>
   9#include <asm/console.h>
  10#include <asm/uaccess.h>
  11#include <asm/checksum.h>
  12#include <asm/fpu.h>
  13#include <asm/machvec.h>
  14
  15#include <linux/syscalls.h>
  16
  17/* these are C runtime functions with special calling conventions: */
  18extern void __divl (void);
  19extern void __reml (void);
  20extern void __divq (void);
  21extern void __remq (void);
  22extern void __divlu (void);
  23extern void __remlu (void);
  24extern void __divqu (void);
  25extern void __remqu (void);
  26
  27EXPORT_SYMBOL(alpha_mv);
  28EXPORT_SYMBOL(callback_getenv);
  29EXPORT_SYMBOL(callback_setenv);
  30EXPORT_SYMBOL(callback_save_env);
  31
  32/* platform dependent support */
  33EXPORT_SYMBOL(strcat);
  34EXPORT_SYMBOL(strcpy);
  35EXPORT_SYMBOL(strlen);
  36EXPORT_SYMBOL(strncpy);
  37EXPORT_SYMBOL(strncat);
  38EXPORT_SYMBOL(strchr);
  39EXPORT_SYMBOL(strrchr);
  40EXPORT_SYMBOL(memmove);
  41EXPORT_SYMBOL(__memcpy);
  42EXPORT_SYMBOL(__memset);
  43EXPORT_SYMBOL(__memsetw);
  44EXPORT_SYMBOL(__constant_c_memset);
  45EXPORT_SYMBOL(copy_page);
  46EXPORT_SYMBOL(clear_page);
  47
  48EXPORT_SYMBOL(alpha_read_fp_reg);
  49EXPORT_SYMBOL(alpha_read_fp_reg_s);
  50EXPORT_SYMBOL(alpha_write_fp_reg);
  51EXPORT_SYMBOL(alpha_write_fp_reg_s);
  52
  53/* entry.S */
  54EXPORT_SYMBOL(kernel_thread);
  55EXPORT_SYMBOL(kernel_execve);
  56
  57/* Networking helper routines. */
  58EXPORT_SYMBOL(csum_tcpudp_magic);
  59EXPORT_SYMBOL(ip_compute_csum);
  60EXPORT_SYMBOL(ip_fast_csum);
  61EXPORT_SYMBOL(csum_partial_copy_nocheck);
  62EXPORT_SYMBOL(csum_partial_copy_from_user);
  63EXPORT_SYMBOL(csum_ipv6_magic);
  64
  65#ifdef CONFIG_MATHEMU_MODULE
  66extern long (*alpha_fp_emul_imprecise)(struct pt_regs *, unsigned long);
  67extern long (*alpha_fp_emul) (unsigned long pc);
  68EXPORT_SYMBOL(alpha_fp_emul_imprecise);
  69EXPORT_SYMBOL(alpha_fp_emul);
  70#endif
  71
  72/*
  73 * The following are specially called from the uaccess assembly stubs.
  74 */
  75EXPORT_SYMBOL(__copy_user);
  76EXPORT_SYMBOL(__do_clear_user);
  77EXPORT_SYMBOL(__strncpy_from_user);
  78EXPORT_SYMBOL(__strnlen_user);
  79
  80/* 
  81 * SMP-specific symbols.
  82 */
  83
  84#ifdef CONFIG_SMP
  85EXPORT_SYMBOL(_atomic_dec_and_lock);
  86#endif /* CONFIG_SMP */
  87
  88/*
  89 * The following are special because they're not called
  90 * explicitly (the C compiler or assembler generates them in
  91 * response to division operations).  Fortunately, their
  92 * interface isn't gonna change any time soon now, so it's OK
  93 * to leave it out of version control.
  94 */
  95# undef memcpy
  96# undef memset
  97EXPORT_SYMBOL(__divl);
  98EXPORT_SYMBOL(__divlu);
  99EXPORT_SYMBOL(__divq);
 100EXPORT_SYMBOL(__divqu);
 101EXPORT_SYMBOL(__reml);
 102EXPORT_SYMBOL(__remlu);
 103EXPORT_SYMBOL(__remq);
 104EXPORT_SYMBOL(__remqu);
 105EXPORT_SYMBOL(memcpy);
 106EXPORT_SYMBOL(memset);
 107EXPORT_SYMBOL(memchr);
 108