sh_ksyms_32.c 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. #include <linux/module.h>
  2. #include <linux/smp.h>
  3. #include <linux/user.h>
  4. #include <linux/elfcore.h>
  5. #include <linux/sched.h>
  6. #include <linux/in6.h>
  7. #include <linux/interrupt.h>
  8. #include <linux/vmalloc.h>
  9. #include <linux/pci.h>
  10. #include <linux/irq.h>
  11. #include <asm/sections.h>
  12. #include <asm/processor.h>
  13. #include <asm/uaccess.h>
  14. #include <asm/checksum.h>
  15. #include <asm/io.h>
  16. #include <asm/delay.h>
  17. #include <asm/tlbflush.h>
  18. #include <asm/cacheflush.h>
  19. extern int dump_fpu(struct pt_regs *, elf_fpregset_t *);
  20. extern struct hw_interrupt_type no_irq_type;
  21. /* platform dependent support */
  22. EXPORT_SYMBOL(dump_fpu);
  23. EXPORT_SYMBOL(kernel_thread);
  24. EXPORT_SYMBOL(irq_desc);
  25. EXPORT_SYMBOL(no_irq_type);
  26. EXPORT_SYMBOL(strlen);
  27. /* PCI exports */
  28. #ifdef CONFIG_PCI
  29. EXPORT_SYMBOL(pci_alloc_consistent);
  30. EXPORT_SYMBOL(pci_free_consistent);
  31. #endif
  32. /* mem exports */
  33. EXPORT_SYMBOL(memchr);
  34. EXPORT_SYMBOL(memcpy);
  35. EXPORT_SYMBOL(memset);
  36. EXPORT_SYMBOL(memmove);
  37. EXPORT_SYMBOL(__copy_user);
  38. #ifdef CONFIG_MMU
  39. EXPORT_SYMBOL(get_vm_area);
  40. #endif
  41. EXPORT_SYMBOL(__udelay);
  42. EXPORT_SYMBOL(__ndelay);
  43. EXPORT_SYMBOL(__const_udelay);
  44. #define DECLARE_EXPORT(name) extern void name(void);EXPORT_SYMBOL(name)
  45. /* These symbols are generated by the compiler itself */
  46. DECLARE_EXPORT(__udivsi3);
  47. DECLARE_EXPORT(__sdivsi3);
  48. DECLARE_EXPORT(__ashrsi3);
  49. DECLARE_EXPORT(__ashlsi3);
  50. DECLARE_EXPORT(__ashrdi3);
  51. DECLARE_EXPORT(__ashldi3);
  52. DECLARE_EXPORT(__ashiftrt_r4_6);
  53. DECLARE_EXPORT(__ashiftrt_r4_7);
  54. DECLARE_EXPORT(__ashiftrt_r4_8);
  55. DECLARE_EXPORT(__ashiftrt_r4_9);
  56. DECLARE_EXPORT(__ashiftrt_r4_10);
  57. DECLARE_EXPORT(__ashiftrt_r4_11);
  58. DECLARE_EXPORT(__ashiftrt_r4_12);
  59. DECLARE_EXPORT(__ashiftrt_r4_13);
  60. DECLARE_EXPORT(__ashiftrt_r4_14);
  61. DECLARE_EXPORT(__ashiftrt_r4_15);
  62. DECLARE_EXPORT(__ashiftrt_r4_20);
  63. DECLARE_EXPORT(__ashiftrt_r4_21);
  64. DECLARE_EXPORT(__ashiftrt_r4_22);
  65. DECLARE_EXPORT(__ashiftrt_r4_23);
  66. DECLARE_EXPORT(__ashiftrt_r4_24);
  67. DECLARE_EXPORT(__ashiftrt_r4_27);
  68. DECLARE_EXPORT(__ashiftrt_r4_30);
  69. DECLARE_EXPORT(__lshrsi3);
  70. DECLARE_EXPORT(__lshrdi3);
  71. DECLARE_EXPORT(__movstrSI8);
  72. DECLARE_EXPORT(__movstrSI12);
  73. DECLARE_EXPORT(__movstrSI16);
  74. DECLARE_EXPORT(__movstrSI20);
  75. DECLARE_EXPORT(__movstrSI24);
  76. DECLARE_EXPORT(__movstrSI28);
  77. DECLARE_EXPORT(__movstrSI32);
  78. DECLARE_EXPORT(__movstrSI36);
  79. DECLARE_EXPORT(__movstrSI40);
  80. DECLARE_EXPORT(__movstrSI44);
  81. DECLARE_EXPORT(__movstrSI48);
  82. DECLARE_EXPORT(__movstrSI52);
  83. DECLARE_EXPORT(__movstrSI56);
  84. DECLARE_EXPORT(__movstrSI60);
  85. #if __GNUC__ == 4
  86. DECLARE_EXPORT(__movmem);
  87. #else
  88. DECLARE_EXPORT(__movstr);
  89. #endif
  90. #if __GNUC__ == 4
  91. DECLARE_EXPORT(__movmem_i4_even);
  92. DECLARE_EXPORT(__movmem_i4_odd);
  93. DECLARE_EXPORT(__movmemSI12_i4);
  94. #if (__GNUC_MINOR__ >= 2 || defined(__GNUC_STM_RELEASE__))
  95. /*
  96. * GCC >= 4.2 emits these for division, as do GCC 4.1.x versions of the ST
  97. * compiler which include backported patches.
  98. */
  99. DECLARE_EXPORT(__udiv_qrnnd_16);
  100. #if !defined(CONFIG_CPU_SH2)
  101. DECLARE_EXPORT(__sdivsi3_i4i);
  102. DECLARE_EXPORT(__udivsi3_i4i);
  103. #endif
  104. #endif
  105. #else /* GCC 3.x */
  106. DECLARE_EXPORT(__movstr_i4_even);
  107. DECLARE_EXPORT(__movstr_i4_odd);
  108. DECLARE_EXPORT(__movstrSI12_i4);
  109. #endif /* __GNUC__ == 4 */
  110. #if !defined(CONFIG_CACHE_OFF) && (defined(CONFIG_CPU_SH4) || \
  111. defined(CONFIG_SH7705_CACHE_32KB))
  112. /* needed by some modules */
  113. EXPORT_SYMBOL(flush_cache_all);
  114. EXPORT_SYMBOL(flush_cache_range);
  115. EXPORT_SYMBOL(flush_dcache_page);
  116. EXPORT_SYMBOL(__flush_purge_region);
  117. #endif
  118. #if !defined(CONFIG_CACHE_OFF) && defined(CONFIG_MMU) && \
  119. (defined(CONFIG_CPU_SH4) || defined(CONFIG_SH7705_CACHE_32KB))
  120. EXPORT_SYMBOL(clear_user_page);
  121. #endif
  122. EXPORT_SYMBOL(csum_partial);
  123. EXPORT_SYMBOL(csum_partial_copy_generic);
  124. #ifdef CONFIG_IPV6
  125. EXPORT_SYMBOL(csum_ipv6_magic);
  126. #endif
  127. EXPORT_SYMBOL(clear_page);
  128. EXPORT_SYMBOL(copy_page);
  129. EXPORT_SYMBOL(__clear_user);
  130. EXPORT_SYMBOL(_ebss);
  131. EXPORT_SYMBOL(empty_zero_page);