The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/conf/ldscript.sparc64

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /* $FreeBSD: releng/9.0/sys/conf/ldscript.sparc64 218822 2011-02-18 20:54:12Z dim $ */
    2 OUTPUT_FORMAT("elf64-sparc-freebsd", "elf64-sparc-freebsd",
    3               "elf64-sparc-freebsd")
    4 OUTPUT_ARCH(sparc:v9)
    5 ENTRY(_start)
    6 SEARCH_DIR(/usr/lib);
    7 SECTIONS
    8 {
    9   /* Read-only sections, merged into text segment: */
   10   . = kernbase + SIZEOF_HEADERS;
   11   .interp     : { *(.interp)    }
   12   .hash          : { *(.hash)           }
   13   .dynsym        : { *(.dynsym)         }
   14   .dynstr        : { *(.dynstr)         }
   15   .gnu.version   : { *(.gnu.version)    }
   16   .gnu.version_d   : { *(.gnu.version_d)        }
   17   .gnu.version_r   : { *(.gnu.version_r)        }
   18   .rel.init      : { *(.rel.init)       }
   19   .rela.init     : { *(.rela.init)      }
   20   .rel.text      :
   21     {
   22       *(.rel.text)
   23       *(.rel.text.*)
   24       *(.rel.gnu.linkonce.t.*)
   25     }
   26   .rela.text     :
   27     {
   28       *(.rela.text)
   29       *(.rela.text.*)
   30       *(.rela.gnu.linkonce.t.*)
   31     }
   32   .rel.fini      : { *(.rel.fini)       }
   33   .rela.fini     : { *(.rela.fini)      }
   34   .rel.rodata    :
   35     {
   36       *(.rel.rodata)
   37       *(.rel.rodata.*)
   38       *(.rel.gnu.linkonce.r.*)
   39     }
   40   .rela.rodata   :
   41     {
   42       *(.rela.rodata)
   43       *(.rela.rodata.*)
   44       *(.rela.gnu.linkonce.r.*)
   45     }
   46   .rel.data      :
   47     {
   48       *(.rel.data)
   49       *(.rel.data.*)
   50       *(.rel.gnu.linkonce.d.*)
   51     }
   52   .rela.data     :
   53     {
   54       *(.rela.data)
   55       *(.rela.data.*)
   56       *(.rela.gnu.linkonce.d.*)
   57     }
   58   .rel.ctors     : { *(.rel.ctors)      }
   59   .rela.ctors    : { *(.rela.ctors)     }
   60   .rel.dtors     : { *(.rel.dtors)      }
   61   .rela.dtors    : { *(.rela.dtors)     }
   62   .rel.got       : { *(.rel.got)                }
   63   .rela.got      : { *(.rela.got)               }
   64   .rel.sdata     :
   65     {
   66       *(.rel.sdata)
   67       *(.rel.sdata.*)
   68       *(.rel.gnu.linkonce.s.*)
   69     }
   70   .rela.sdata     :
   71     {
   72       *(.rela.sdata)
   73       *(.rela.sdata.*)
   74       *(.rela.gnu.linkonce.s.*)
   75     }
   76   .rel.sbss      :
   77     { 
   78       *(.rel.sbss)
   79       *(.rel.sbss.*)
   80       *(.rel.gnu.linkonce.sb.*)
   81     }
   82   .rela.sbss     :
   83     {
   84       *(.rela.sbss)
   85       *(.rela.sbss.*)
   86       *(.rel.gnu.linkonce.sb.*)
   87     }
   88   .rel.sdata2    : 
   89     { 
   90       *(.rel.sdata2)
   91       *(.rel.sdata2.*)
   92       *(.rel.gnu.linkonce.s2.*)
   93     }
   94   .rela.sdata2   : 
   95     {
   96       *(.rela.sdata2)
   97       *(.rela.sdata2.*)
   98       *(.rela.gnu.linkonce.s2.*)
   99     }
  100   .rel.sbss2     : 
  101     { 
  102       *(.rel.sbss2)     
  103       *(.rel.sbss2.*)
  104       *(.rel.gnu.linkonce.sb2.*)
  105     }
  106   .rela.sbss2    : 
  107     { 
  108       *(.rela.sbss2)    
  109       *(.rela.sbss2.*)
  110       *(.rela.gnu.linkonce.sb2.*)
  111     }
  112   .rel.bss       : 
  113     { 
  114       *(.rel.bss)
  115       *(.rel.bss.*)
  116       *(.rel.gnu.linkonce.b.*)
  117     }
  118   .rela.bss      : 
  119     { 
  120       *(.rela.bss)
  121       *(.rela.bss.*)
  122       *(.rela.gnu.linkonce.b.*)
  123     }
  124   .rel.plt       : { *(.rel.plt)                }
  125   .rela.plt      : { *(.rela.plt)               }
  126   .init          : 
  127   { 
  128     KEEP (*(.init))
  129   } =0x1000000
  130   .text      :
  131   {
  132     *(.trap)
  133     *(.text)
  134     *(.text.*)
  135     *(.stub)
  136     /* .gnu.warning sections are handled specially by elf32.em.  */
  137     *(.gnu.warning)
  138     *(.gnu.linkonce.t.*)
  139   } =0x1000000
  140   .fini      :
  141   {
  142     KEEP (*(.fini))
  143   } =0x1000000
  144   PROVIDE (__etext = .);
  145   PROVIDE (_etext = .);
  146   PROVIDE (etext = .);
  147   .rodata   : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r.*) }
  148   .rodata1   : { *(.rodata1) }
  149   .sdata2   : { *(.sdata2) *(.sdata2.*) *(.gnu.linkonce.s2.*) }
  150   .sbss2   : { *(.sbss2) *(.sbss2.*) *(.gnu.linkonce.sb2.*) }
  151   . = ALIGN(0x2000) + (. & (0x2000 - 1));
  152   .data    :
  153   {
  154     *(.data)
  155     *(.data.*)
  156     *(.gnu.linkonce.d.*)
  157     SORT(CONSTRUCTORS)
  158   }
  159   .data1   : { *(.data1) }
  160   .eh_frame : { KEEP (*(.eh_frame)) }
  161   .gcc_except_table : { *(.gcc_except_table) }
  162   .ctors   : 
  163   {
  164     /* gcc uses crtbegin.o to find the start of
  165        the constructors, so we make sure it is
  166        first.  Because this is a wildcard, it
  167        doesn't matter if the user does not
  168        actually link against crtbegin.o; the
  169        linker won't look for a file to match a
  170        wildcard.  The wildcard also means that it
  171        doesn't matter which directory crtbegin.o
  172        is in.  */
  173     KEEP (*crtbegin.o(.ctors))
  174     /* We don't want to include the .ctor section from
  175        from the crtend.o file until after the sorted ctors.
  176        The .ctor section from the crtend file contains the
  177        end of ctors marker and it must be last */
  178     KEEP (*(EXCLUDE_FILE (*crtend.o ) .ctors))
  179     KEEP (*(SORT(.ctors.*)))
  180     KEEP (*(.ctors))
  181   }
  182    .dtors         :
  183   {
  184     KEEP (*crtbegin.o(.dtors))
  185     KEEP (*(EXCLUDE_FILE (*crtend.o ) .dtors))
  186     KEEP (*(SORT(.dtors.*)))
  187     KEEP (*(.dtors))
  188   }
  189   .plt      : { *(.plt) }
  190   .got            : { *(.got.plt) *(.got) }
  191   .dynamic       : { *(.dynamic) }
  192   /* We want the small data sections together, so single-instruction offsets
  193      can access them all, and initialized data all before uninitialized, so
  194      we can shorten the on-disk segment size.  */
  195   .sdata     : 
  196   {
  197     *(.sdata) 
  198     *(.sdata.*)
  199     *(.gnu.linkonce.s.*)
  200   }
  201   _edata = .;
  202   PROVIDE (edata = .);
  203   __bss_start = .;
  204   .sbss      :
  205   {
  206     PROVIDE (__sbss_start = .);
  207     PROVIDE (___sbss_start = .);
  208     *(.dynsbss)
  209     *(.sbss)
  210     *(.sbss.*)
  211     *(.gnu.linkonce.sb.*)
  212     *(.scommon)
  213     PROVIDE (__sbss_end = .);
  214     PROVIDE (___sbss_end = .);
  215   }
  216   .bss       :
  217   {
  218    *(.dynbss)
  219    *(.bss)
  220    *(.bss.*)
  221    *(.gnu.linkonce.b.*)
  222    *(COMMON)
  223    /* Align here to ensure that the .bss section occupies space up to
  224       _end.  Align after .bss to ensure correct alignment even if the
  225       .bss section disappears because there are no input sections.  */
  226    . = ALIGN(64 / 8);
  227   }
  228   . = ALIGN(64 / 8);
  229   _end = .;
  230   PROVIDE (end = .);
  231   /* Stabs debugging sections.  */
  232   .stab 0 : { *(.stab) }
  233   .stabstr 0 : { *(.stabstr) }
  234   .stab.excl 0 : { *(.stab.excl) }
  235   .stab.exclstr 0 : { *(.stab.exclstr) }
  236   .stab.index 0 : { *(.stab.index) }
  237   .stab.indexstr 0 : { *(.stab.indexstr) }
  238   .comment 0 : { *(.comment) }
  239   /* DWARF debug sections.
  240      Symbols in the DWARF debugging sections are relative to the beginning
  241      of the section so we begin them at 0.  */
  242   /* DWARF 1 */
  243   .debug          0 : { *(.debug) }
  244   .line           0 : { *(.line) }
  245   /* GNU DWARF 1 extensions */
  246   .debug_srcinfo  0 : { *(.debug_srcinfo) }
  247   .debug_sfnames  0 : { *(.debug_sfnames) }
  248   /* DWARF 1.1 and DWARF 2 */
  249   .debug_aranges  0 : { *(.debug_aranges) }
  250   .debug_pubnames 0 : { *(.debug_pubnames) }
  251   /* DWARF 2 */
  252   .debug_info     0 : { *(.debug_info) *(.gnu.linkonce.wi.*) }
  253   .debug_abbrev   0 : { *(.debug_abbrev) }
  254   .debug_line     0 : { *(.debug_line) }
  255   .debug_frame    0 : { *(.debug_frame) }
  256   .debug_str      0 : { *(.debug_str) }
  257   .debug_loc      0 : { *(.debug_loc) }
  258   .debug_macinfo  0 : { *(.debug_macinfo) }
  259   /* SGI/MIPS DWARF 2 extensions */
  260   .debug_weaknames 0 : { *(.debug_weaknames) }
  261   .debug_funcnames 0 : { *(.debug_funcnames) }
  262   .debug_typenames 0 : { *(.debug_typenames) }
  263   .debug_varnames  0 : { *(.debug_varnames) }
  264   /* These must appear regardless of  .  */
  265 }

Cache object: 0cc3bc2b9bd281ec5fe3b1b34a25c53c


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.