u-boot-64.lds 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * (C) Copyright 2002
  4. * Daniel Engström, Omicron Ceti AB, daniel@omicron.se.
  5. */
  6. #include <config.h>
  7. OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
  8. OUTPUT_ARCH(i386:x86-64)
  9. ENTRY(_start)
  10. SECTIONS
  11. {
  12. #ifndef CONFIG_CMDLINE
  13. /DISCARD/ : { *(.u_boot_list_2_cmd_*) }
  14. #endif
  15. . = CONFIG_SYS_TEXT_BASE; /* Location of bootcode in flash */
  16. __text_start = .;
  17. .text : { *(.text*); }
  18. . = ALIGN(4);
  19. . = ALIGN(4);
  20. .u_boot_list : {
  21. KEEP(*(SORT(.u_boot_list*)));
  22. }
  23. . = ALIGN(4);
  24. .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
  25. . = ALIGN(4);
  26. .data : { *(.data*) }
  27. . = ALIGN(4);
  28. .hash : { *(.hash*) }
  29. . = ALIGN(4);
  30. .got : { *(.got*) }
  31. . = ALIGN(4);
  32. __data_end = .;
  33. __init_end = .;
  34. . = ALIGN(4);
  35. .dynsym : { *(.dynsym*) }
  36. . = ALIGN(4);
  37. __rel_dyn_start = .;
  38. .rela.dyn : {
  39. *(.rela*)
  40. }
  41. __rel_dyn_end = .;
  42. . = ALIGN(4);
  43. .dynamic : { *(.dynamic) }
  44. . = ALIGN(4);
  45. _end = .;
  46. .bss __rel_dyn_start (OVERLAY) : {
  47. __bss_start = .;
  48. *(.bss)
  49. *(COM*)
  50. . = ALIGN(4);
  51. __bss_end = .;
  52. }
  53. /DISCARD/ : { *(.dynsym) }
  54. /DISCARD/ : { *(.dynstr*) }
  55. /DISCARD/ : { *(.dynamic*) }
  56. /DISCARD/ : { *(.plt*) }
  57. /DISCARD/ : { *(.interp*) }
  58. /DISCARD/ : { *(.gnu*) }
  59. }