vmlinux-std.lds 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  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. LOCK_TEXT
  15. *(.fixup)
  16. *(.gnu.warning)
  17. } :text = 0x4e75
  18. . = ALIGN(16); /* Exception table */
  19. __start___ex_table = .;
  20. __ex_table : { *(__ex_table) }
  21. __stop___ex_table = .;
  22. RODATA
  23. _etext = .; /* End of text section */
  24. .data : { /* Data */
  25. *(.data)
  26. CONSTRUCTORS
  27. }
  28. .bss : { *(.bss) } /* BSS */
  29. . = ALIGN(16);
  30. .data.cacheline_aligned : { *(.data.cacheline_aligned) } :data
  31. _edata = .; /* End of data section */
  32. /* will be freed after init */
  33. . = ALIGN(4096); /* Init code and data */
  34. __init_begin = .;
  35. .init.text : {
  36. _sinittext = .;
  37. *(.init.text)
  38. _einittext = .;
  39. }
  40. .init.data : { *(.init.data) }
  41. . = ALIGN(16);
  42. __setup_start = .;
  43. .init.setup : { *(.init.setup) }
  44. __setup_end = .;
  45. __initcall_start = .;
  46. .initcall.init : {
  47. INITCALLS
  48. }
  49. __initcall_end = .;
  50. __con_initcall_start = .;
  51. .con_initcall.init : { *(.con_initcall.init) }
  52. __con_initcall_end = .;
  53. SECURITY_INIT
  54. #ifdef CONFIG_BLK_DEV_INITRD
  55. . = ALIGN(8192);
  56. __initramfs_start = .;
  57. .init.ramfs : { *(.init.ramfs) }
  58. __initramfs_end = .;
  59. #endif
  60. . = ALIGN(8192);
  61. __init_end = .;
  62. .data.init_task : { *(.data.init_task) } /* The initial task and kernel stack */
  63. _end = . ;
  64. /* Sections to be discarded */
  65. /DISCARD/ : {
  66. *(.exit.text)
  67. *(.exit.data)
  68. *(.exitcall.exit)
  69. }
  70. /* Stabs debugging sections. */
  71. .stab 0 : { *(.stab) }
  72. .stabstr 0 : { *(.stabstr) }
  73. .stab.excl 0 : { *(.stab.excl) }
  74. .stab.exclstr 0 : { *(.stab.exclstr) }
  75. .stab.index 0 : { *(.stab.index) }
  76. .stab.indexstr 0 : { *(.stab.indexstr) }
  77. .comment 0 : { *(.comment) }
  78. }