vmlinux-std.lds 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. /* ld script to make m68k Linux kernel */
  2. #include <asm-generic/vmlinux.lds.h>
  3. OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
  4. OUTPUT_ARCH(m68k)
  5. ENTRY(_start)
  6. jiffies = jiffies_64 + 4;
  7. SECTIONS
  8. {
  9. . = 0x1000;
  10. _text = .; /* Text and read-only data */
  11. .text : {
  12. *(.text)
  13. SCHED_TEXT
  14. *(.fixup)
  15. *(.gnu.warning)
  16. } :text = 0x4e75
  17. . = ALIGN(16); /* Exception table */
  18. __start___ex_table = .;
  19. __ex_table : { *(__ex_table) }
  20. __stop___ex_table = .;
  21. RODATA
  22. _etext = .; /* End of text section */
  23. .data : { /* Data */
  24. *(.data)
  25. CONSTRUCTORS
  26. }
  27. .bss : { *(.bss) } /* BSS */
  28. . = ALIGN(16);
  29. .data.cacheline_aligned : { *(.data.cacheline_aligned) } :data
  30. _edata = .; /* End of data section */
  31. /* will be freed after init */
  32. . = ALIGN(4096); /* Init code and data */
  33. __init_begin = .;
  34. .init.text : {
  35. _sinittext = .;
  36. *(.init.text)
  37. _einittext = .;
  38. }
  39. .init.data : { *(.init.data) }
  40. . = ALIGN(16);
  41. __setup_start = .;
  42. .init.setup : { *(.init.setup) }
  43. __setup_end = .;
  44. __initcall_start = .;
  45. .initcall.init : {
  46. *(.initcall1.init)
  47. *(.initcall2.init)
  48. *(.initcall3.init)
  49. *(.initcall4.init)
  50. *(.initcall5.init)
  51. *(.initcall6.init)
  52. *(.initcall7.init)
  53. }
  54. __initcall_end = .;
  55. __con_initcall_start = .;
  56. .con_initcall.init : { *(.con_initcall.init) }
  57. __con_initcall_end = .;
  58. SECURITY_INIT
  59. . = ALIGN(8192);
  60. __initramfs_start = .;
  61. .init.ramfs : { *(.init.ramfs) }
  62. __initramfs_end = .;
  63. . = ALIGN(8192);
  64. __init_end = .;
  65. .data.init_task : { *(.data.init_task) } /* The initial task and kernel stack */
  66. _end = . ;
  67. /* Sections to be discarded */
  68. /DISCARD/ : {
  69. *(.exit.text)
  70. *(.exit.data)
  71. *(.exitcall.exit)
  72. }
  73. /* Stabs debugging sections. */
  74. .stab 0 : { *(.stab) }
  75. .stabstr 0 : { *(.stabstr) }
  76. .stab.excl 0 : { *(.stab.excl) }
  77. .stab.exclstr 0 : { *(.stab.exclstr) }
  78. .stab.index 0 : { *(.stab.index) }
  79. .stab.indexstr 0 : { *(.stab.indexstr) }
  80. .comment 0 : { *(.comment) }
  81. }