vmlinux.lds.S 862 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. OUTPUT_FORMAT(CONFIG_OUTPUT_FORMAT, CONFIG_OUTPUT_FORMAT, CONFIG_OUTPUT_FORMAT)
  2. #undef i386
  3. #ifdef CONFIG_X86_64
  4. OUTPUT_ARCH(i386:x86-64)
  5. ENTRY(startup_64)
  6. #else
  7. OUTPUT_ARCH(i386)
  8. ENTRY(startup_32)
  9. #endif
  10. SECTIONS
  11. {
  12. /* Be careful parts of head_64.S assume startup_32 is at
  13. * address 0.
  14. */
  15. . = 0;
  16. .text.head : {
  17. _head = . ;
  18. *(.text.head)
  19. _ehead = . ;
  20. }
  21. .rodata.compressed : {
  22. *(.rodata.compressed)
  23. }
  24. .text : {
  25. _text = .; /* Text */
  26. *(.text)
  27. *(.text.*)
  28. _etext = . ;
  29. }
  30. .rodata : {
  31. _rodata = . ;
  32. *(.rodata) /* read-only data */
  33. *(.rodata.*)
  34. _erodata = . ;
  35. }
  36. .data : {
  37. _data = . ;
  38. *(.data)
  39. *(.data.*)
  40. _edata = . ;
  41. }
  42. .bss : {
  43. _bss = . ;
  44. *(.bss)
  45. *(.bss.*)
  46. *(COMMON)
  47. #ifdef CONFIG_X86_64
  48. . = ALIGN(8);
  49. _end_before_pgt = . ;
  50. . = ALIGN(4096);
  51. pgtable = . ;
  52. . = . + 4096 * 6;
  53. #endif
  54. _ebss = .;
  55. }
  56. }