uboot/arch/arm/lib/elf_aarch64_efi.lds
<<
>>
Prefs
   1/* SPDX-License-Identifier: BSD-2-Clause */
   2/*
   3 * U-Boot aarch64 EFI linker script
   4 *
   5 * Modified from elf_aarch64_efi.lds in gnu-efi
   6 */
   7
   8OUTPUT_FORMAT("elf64-littleaarch64", "elf64-littleaarch64", "elf64-littleaarch64")
   9OUTPUT_ARCH(aarch64)
  10ENTRY(_start)
  11SECTIONS
  12{
  13        .text 0x0 : {
  14                _text = .;
  15                *(.text.head)
  16                *(.text)
  17                *(.text.*)
  18                *(.gnu.linkonce.t.*)
  19                *(.srodata)
  20                *(.rodata*)
  21                . = ALIGN(16);
  22        }
  23        _etext = .;
  24        _text_size = . - _text;
  25        .dynamic  : { *(.dynamic) }
  26        .data : {
  27                _data = .;
  28                *(.sdata)
  29                *(.data)
  30                *(.data1)
  31                *(.data.*)
  32                *(.got.plt)
  33                *(.got)
  34
  35                /*
  36                 * The EFI loader doesn't seem to like a .bss section, so we
  37                 * stick it all into .data:
  38                 */
  39                . = ALIGN(16);
  40                _bss = .;
  41                *(.sbss)
  42                *(.scommon)
  43                *(.dynbss)
  44                *(.bss)
  45                *(.bss.*)
  46                *(COMMON)
  47                . = ALIGN(16);
  48                _bss_end = .;
  49                _edata = .;
  50        }
  51        .rela.dyn : { *(.rela.dyn) }
  52        .rela.plt : { *(.rela.plt) }
  53        .rela.got : { *(.rela.got) }
  54        .rela.data : { *(.rela.data) *(.rela.data*) }
  55        _data_size = . - _etext;
  56
  57        . = ALIGN(4096);
  58        .dynsym   : { *(.dynsym) }
  59        . = ALIGN(4096);
  60        .dynstr   : { *(.dynstr) }
  61        . = ALIGN(4096);
  62        .note.gnu.build-id : { *(.note.gnu.build-id) }
  63        /DISCARD/ : {
  64                *(.rel.reloc)
  65                *(.eh_frame)
  66                *(.note.GNU-stack)
  67        }
  68        .comment 0 : { *(.comment) }
  69}
  70