Home | History | Annotate | Download | only in gnuefi
      1 OUTPUT_FORMAT("elf64-ia64-little")
      2 OUTPUT_ARCH(ia64)
      3 ENTRY(_start_plabel)
      4 SECTIONS
      5 {
      6   . = 0;
      7   ImageBase = .;
      8   .hash : { *(.hash) }	/* this MUST come first! */
      9   . = ALIGN(4096);
     10   .text :
     11   {
     12    *(.text)
     13    *(.text.*)
     14    *(.gnu.linkonce.t.*)
     15   }
     16   . = ALIGN(4096);
     17   __gp = ALIGN (8) + 0x200000;
     18   .sdata :
     19   {
     20    *(.got.plt)
     21    *(.got)
     22    *(.srodata)
     23    *(.sdata)
     24    *(.sbss)
     25    *(.scommon)
     26   }
     27   . = ALIGN(4096);
     28   .data :
     29   {
     30    *(.rodata*)
     31    *(.ctors)
     32    *(.data*)
     33    *(.gnu.linkonce.d*)
     34    *(.plabel)	/* data whose relocs we want to ignore */
     35    /* the EFI loader doesn't seem to like a .bss section, so we stick
     36       it all into .data: */
     37    *(.dynbss)
     38    *(.bss)
     39    *(COMMON)
     40   }
     41   . = ALIGN(4096);
     42   .dynamic  : { *(.dynamic) }
     43   . = ALIGN(4096);
     44   .rela :
     45   {
     46     *(.rela.text)
     47     *(.rela.data*)
     48     *(.rela.sdata)
     49     *(.rela.got)
     50     *(.rela.gnu.linkonce.d*)
     51     *(.rela.stab)
     52     *(.rela.ctors)
     53   }
     54   . = ALIGN(4096);
     55   .reloc :		/* This is the PECOFF .reloc section! */
     56   {
     57     *(.reloc)
     58   }
     59   . = ALIGN(4096);
     60   .dynsym   : { *(.dynsym) }
     61   . = ALIGN(4096);
     62   .dynstr   : { *(.dynstr) }
     63   /DISCARD/ :
     64   {
     65     *(.rela.plabel)
     66     *(.rela.reloc)
     67     *(.IA_64.unwind*)
     68     *(.IA64.unwind*)
     69   }
     70 }
     71