components/shim/elf_x86_64_efi_sol2.lds
author Rich Burridge <rich.burridge@oracle.com>
Thu, 06 Apr 2017 11:44:41 -0700
changeset 7843 56b5a2b1ab27
parent 7224 ad801cd1924e
permissions -rw-r--r--
25141953 nping --icmp dumps core on SPARC
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7224
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     1
/* Same as elf_x86_64_fbsd_efi.lds, except for OUTPUT_FORMAT below - KEEP IN SYNC */
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     2
OUTPUT_FORMAT("elf64-x86-64-sol2", "elf64-x86-64-sol2", "elf64-x86-64-sol2")
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     3
OUTPUT_ARCH(i386:x86-64)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     4
ENTRY(_start)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     5
SECTIONS
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     6
{
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     7
  . = 0;
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     8
  ImageBase = .;
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
     9
  .hash : { *(.hash) }	/* this MUST come first! */
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    10
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    11
  .eh_frame : 
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    12
  { 
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    13
    *(.eh_frame)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    14
  }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    15
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    16
  .text :
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    17
  {
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    18
   _text = .;
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    19
   *(.text)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    20
   _etext = .;
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    21
  }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    22
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    23
  .reloc :
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    24
  {
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    25
   *(.reloc)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    26
  }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    27
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    28
  .data :
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    29
  {
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    30
   _data = .;
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    31
   *(.rodata*)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    32
   *(.got.plt)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    33
   *(.got)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    34
   *(.data*)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    35
   *(.sdata)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    36
   /* the EFI loader doesn't seem to like a .bss section, so we stick
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    37
      it all into .data: */
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    38
   *(.sbss)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    39
   *(.scommon)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    40
   *(.dynbss)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    41
   *(.bss)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    42
   *(COMMON)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    43
   *(.rel.local)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    44
  }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    45
  .note.gnu.build-id : { *(.note.gnu.build-id) }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    46
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    47
  .vendor_cert :
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    48
  {
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    49
   *(.vendor_cert)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    50
  }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    51
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    52
  .dynamic  : { *(.dynamic) }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    53
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    54
  .rela :
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    55
  {
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    56
    *(.rela.data*)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    57
    *(.rela.got)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    58
    *(.rela.stab)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    59
  }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    60
  _edata = .;
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    61
  _data_size = . - _data;
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    62
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    63
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    64
  .dynsym   : { *(.dynsym) }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    65
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    66
  .dynstr   : { *(.dynstr) }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    67
  . = ALIGN(4096);
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    68
  .ignored.reloc :
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    69
  {
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    70
    *(.rela.reloc)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    71
    *(.eh_frame)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    72
    *(.note.GNU-stack)
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    73
  }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    74
  .comment 0 : { *(.comment) }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    75
  .note.gnu.build-id : { *(.note.gnu.build-id) }
ad801cd1924e 23300489 Add shim to Userland (add missing file)
Ann Lai <ann.lai@oracle.com>
parents:
diff changeset
    76
}