elf_x86_64_fbsd_efi.lds 1021 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /* Same as elf_x86_64_efi.lds, except for OUTPUT_FORMAT below - KEEP IN SYNC */
  2. OUTPUT_FORMAT("elf64-x86-64-freebsd", "elf64-x86-64-freebsd", "elf64-x86-64-freebsd")
  3. OUTPUT_ARCH(i386:x86-64)
  4. ENTRY(_start)
  5. SECTIONS
  6. {
  7. . = 0;
  8. ImageBase = .;
  9. .hash : { *(.hash) } /* this MUST come first! */
  10. . = ALIGN(4096);
  11. .eh_frame :
  12. {
  13. *(.eh_frame)
  14. }
  15. . = ALIGN(4096);
  16. .text :
  17. {
  18. *(.text)
  19. }
  20. .reloc :
  21. {
  22. *(.reloc)
  23. }
  24. . = ALIGN(4096);
  25. .data :
  26. {
  27. *(.rodata*)
  28. *(.got.plt)
  29. *(.got)
  30. *(.data*)
  31. *(.sdata)
  32. /* the EFI loader doesn't seem to like a .bss section, so we stick
  33. it all into .data: */
  34. *(.sbss)
  35. *(.scommon)
  36. *(.dynbss)
  37. *(.bss)
  38. *(COMMON)
  39. *(.rel.local)
  40. }
  41. . = ALIGN(4096);
  42. .dynamic : { *(.dynamic) }
  43. . = ALIGN(4096);
  44. .rela :
  45. {
  46. *(.rela.data*)
  47. *(.rela.got)
  48. *(.rela.stab)
  49. }
  50. . = ALIGN(4096);
  51. .dynsym : { *(.dynsym) }
  52. . = ALIGN(4096);
  53. .dynstr : { *(.dynstr) }
  54. . = ALIGN(4096);
  55. .ignored.reloc :
  56. {
  57. *(.rela.reloc)
  58. }
  59. }