vmlinux-std.lds 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /* ld script to make m68k Linux kernel */
  2. #include <asm-generic/vmlinux.lds.h>
  3. #include <asm/page.h>
  4. #include <asm/thread_info.h>
  5. OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
  6. OUTPUT_ARCH(m68k)
  7. ENTRY(_start)
  8. jiffies = jiffies_64 + 4;
  9. SECTIONS
  10. {
  11. . = 0x1000;
  12. _text = .; /* Text and read-only data */
  13. .text : {
  14. HEAD_TEXT
  15. TEXT_TEXT
  16. SCHED_TEXT
  17. LOCK_TEXT
  18. *(.fixup)
  19. *(.gnu.warning)
  20. } :text = 0x4e75
  21. _etext = .; /* End of text section */
  22. EXCEPTION_TABLE(16)
  23. _sdata = .; /* Start of data section */
  24. RODATA
  25. RW_DATA_SECTION(16, PAGE_SIZE, THREAD_SIZE)
  26. BSS_SECTION(0, 0, 0)
  27. _edata = .; /* End of data section */
  28. /* will be freed after init */
  29. . = ALIGN(PAGE_SIZE); /* Init code and data */
  30. __init_begin = .;
  31. INIT_TEXT_SECTION(PAGE_SIZE) :data
  32. INIT_DATA_SECTION(16)
  33. .m68k_fixup : {
  34. __start_fixup = .;
  35. *(.m68k_fixup)
  36. __stop_fixup = .;
  37. }
  38. NOTES
  39. .init_end : {
  40. /* This ALIGN be in a section so that _end is at the end of the
  41. load segment. */
  42. . = ALIGN(PAGE_SIZE);
  43. __init_end = .;
  44. }
  45. _end = . ;
  46. STABS_DEBUG
  47. .comment 0 : { *(.comment) }
  48. /* Sections to be discarded */
  49. DISCARDS
  50. }