You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

etherboot.lds 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
  2. OUTPUT_ARCH(i386)
  3. ENTRY(_text)
  4. SECTIONS {
  5. . = ALIGN(16);
  6. /* Start address of Etherboot in the virtual address space */
  7. _virt_start = 0;
  8. _text = . ;
  9. .text.nocompress : {
  10. *(.text*.nocompress)
  11. . = ALIGN(16);
  12. } = 0x9090
  13. .text16 : {
  14. _text16 = .;
  15. *(.text16)
  16. *(.text16.*)
  17. _etext16 = . ;
  18. }
  19. .text.compress : {
  20. *(.text)
  21. *(.text.*)
  22. } = 0x9090
  23. .rodata : {
  24. . = ALIGN(4);
  25. *(.rodata)
  26. *(.rodata.*)
  27. }
  28. . = ALIGN(4);
  29. .drivers.pci : {
  30. pci_drivers = . ;
  31. *(.drivers.pci);
  32. pci_drivers_end = . ;
  33. }
  34. . = ALIGN(4);
  35. .drivers.isa : {
  36. isa_drivers = . ;
  37. *(.drivers.isa);
  38. isa_drivers_end = .;
  39. }
  40. _etext = . ;
  41. _data = . ;
  42. .data : {
  43. *(.data)
  44. *(.data.*)
  45. }
  46. _edata = . ;
  47. _uncompressed_verbatim_end = . ;
  48. . = ALIGN(16);
  49. .bss.preserve : {
  50. *(.bss.preserve)
  51. *(.bss.preserve.*)
  52. }
  53. _bss = . ;
  54. .bss : {
  55. *(.bss)
  56. *(.bss.*)
  57. }
  58. . = ALIGN(16);
  59. _ebss = .;
  60. _stack = . ;
  61. .stack : {
  62. _stack_start = . ;
  63. *(.stack)
  64. *(.stack.*)
  65. _stack_end = . ;
  66. }
  67. _bss_size = _ebss - _bss;
  68. _stack_offset = _stack - _text ;
  69. _stack_offset_pgh = _stack_offset / 16 ;
  70. _stack_size = _stack_end - _stack_start ;
  71. . = ALIGN(16);
  72. _end = . ;
  73. /DISCARD/ : {
  74. *(.comment)
  75. *(.note)
  76. }
  77. /* PXE-specific symbol calculations. The results of these are
  78. * needed in romprefix.S, which is why they must be calculated
  79. * here.
  80. */
  81. _pxe_stack_size = _pxe_stack_t_size
  82. + _pxe_callback_interface_size
  83. + _rm_callback_interface_size
  84. + _e820mangler_size + 15 ;
  85. }