common.lds.S 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. #include <asm-generic/vmlinux.lds.h>
  2. .fini : { *(.fini) } =0x9090
  3. _etext = .;
  4. PROVIDE (etext = .);
  5. . = ALIGN(4096);
  6. _sdata = .;
  7. PROVIDE (sdata = .);
  8. . = ALIGN(16); /* Exception table */
  9. __start___ex_table = .;
  10. __ex_table : { *(__ex_table) }
  11. __stop___ex_table = .;
  12. RODATA
  13. .unprotected : { *(.unprotected) }
  14. . = ALIGN(4096);
  15. PROVIDE (_unprotected_end = .);
  16. . = ALIGN(4096);
  17. __uml_setup_start = .;
  18. .uml.setup.init : { *(.uml.setup.init) }
  19. __uml_setup_end = .;
  20. __uml_help_start = .;
  21. .uml.help.init : { *(.uml.help.init) }
  22. __uml_help_end = .;
  23. __uml_postsetup_start = .;
  24. .uml.postsetup.init : { *(.uml.postsetup.init) }
  25. __uml_postsetup_end = .;
  26. __setup_start = .;
  27. .init.setup : { *(.init.setup) }
  28. __setup_end = .;
  29. . = ALIGN(32);
  30. __per_cpu_start = . ;
  31. .data.percpu : { *(.data.percpu) }
  32. __per_cpu_end = . ;
  33. __initcall_start = .;
  34. .initcall.init : {
  35. *(.initcall1.init)
  36. *(.initcall2.init)
  37. *(.initcall3.init)
  38. *(.initcall4.init)
  39. *(.initcall5.init)
  40. *(.initcall6.init)
  41. *(.initcall7.init)
  42. }
  43. __initcall_end = .;
  44. __con_initcall_start = .;
  45. .con_initcall.init : { *(.con_initcall.init) }
  46. __con_initcall_end = .;
  47. __uml_initcall_start = .;
  48. .uml.initcall.init : { *(.uml.initcall.init) }
  49. __uml_initcall_end = .;
  50. __init_end = .;
  51. SECURITY_INIT
  52. __exitcall_begin = .;
  53. .exitcall : { *(.exitcall.exit) }
  54. __exitcall_end = .;
  55. __uml_exitcall_begin = .;
  56. .uml.exitcall : { *(.uml.exitcall.exit) }
  57. __uml_exitcall_end = .;
  58. . = ALIGN(4);
  59. __alt_instructions = .;
  60. .altinstructions : { *(.altinstructions) }
  61. __alt_instructions_end = .;
  62. .altinstr_replacement : { *(.altinstr_replacement) }
  63. /* .exit.text is discard at runtime, not link time, to deal with references
  64. from .altinstructions and .eh_frame */
  65. .exit.text : { *(.exit.text) }
  66. .exit.data : { *(.exit.data) }
  67. __preinit_array_start = .;
  68. .preinit_array : { *(.preinit_array) }
  69. __preinit_array_end = .;
  70. __init_array_start = .;
  71. .init_array : { *(.init_array) }
  72. __init_array_end = .;
  73. __fini_array_start = .;
  74. .fini_array : { *(.fini_array) }
  75. __fini_array_end = .;
  76. . = ALIGN(4096);
  77. __initramfs_start = .;
  78. .init.ramfs : { *(.init.ramfs) }
  79. __initramfs_end = .;
  80. /* Sections to be discarded */
  81. /DISCARD/ : {
  82. *(.exitcall.exit)
  83. }