link.SIMNT
上传用户:luoyougen
上传日期:2008-05-12
资源大小:23136k
文件大小:3k
源码类别:

VxWorks

开发平台:

C/C++

  1. OUTPUT_FORMAT(pei-i386)
  2. ENTRY(_mainCRTStartup)
  3. SECTIONS
  4. {
  5.   .text  __image_base__ + __section_alignment__  : 
  6.   {
  7.     *(.init)
  8.     *(.text)
  9.     *(SORT(.text[0-9]*))
  10.     *(SORT(.text$*))
  11.     *(SORT(.text*))
  12.     *(.glue_7t)
  13.     *(.glue_7)
  14.      ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; 
  15. LONG (-1); *(.ctors); *(.ctor); LONG (0); 
  16.      ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; 
  17. LONG (-1); *(.dtors); *(.dtor);  LONG (0); 
  18.      *(.fini)
  19.     /* ??? Why is .gcc_exc here?  */
  20.      *(.gcc_exc)
  21.      etext = .;
  22.     *(.gcc_except_table)
  23.   }
  24.   /* Move .idata up here, just after .text, so that all text-like sections
  25.      are grouped together. Unfortunately, we can't merge it into the .text
  26.      section -- vxWorks.exe won't run in that case. Apparently, something
  27.      about windows application loading depends on .idata being distinct. */
  28.   .idata BLOCK(__section_alignment__) :
  29.   {
  30.     /* This cannot currently be handled with grouped sections.
  31. See pe.em:sort_sections.  */
  32.     SORT(*)(.idata$2)
  33.     SORT(*)(.idata$3)
  34.     /* These zeroes mark the end of the import list.  */
  35.     LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);
  36.     SORT(*)(.idata$4)
  37.     SORT(*)(.idata$5)
  38.     SORT(*)(.idata$6)
  39.     SORT(*)(.idata$7)
  40.   }
  41.   /* The Cygwin32 library uses a section to avoid copying certain data
  42.      on fork.  This used to be named ".data".  The linker used
  43.      to include this between __data_start__ and __data_end__, but that
  44.      breaks building the cygwin32 dll.  Instead, we name the section
  45.      ".data_cygwin_nocopy" and explictly include it after __data_end__. */
  46.   .data BLOCK(__section_alignment__) : 
  47.   {
  48.     __data_start__ = . ;
  49.     *(.data)
  50.     *(.data2)
  51.     *(SORT(.data[0-9]*))
  52.     *(SORT(.data$*))
  53.     *(SORT(.data*))
  54.     __data_end__ = . ;
  55.     *(.data_cygwin_nocopy)
  56.     *(.rdata)
  57.     *(SORT(.rdata[0-9]*))
  58.     *(SORT(.rdata$*))
  59.     *(SORT(.rdata*))
  60.     *(.eh_frame)
  61.     *(.pdata)
  62.   }
  63.   .bss BLOCK(__section_alignment__) :
  64.   {
  65.     __bss_start__ = . ;
  66.     *(.bss)
  67.     *(COMMON)
  68.     __bss_end__ = . ;
  69.     *(.edata)
  70.   }
  71.   /DISCARD/ :
  72.   {
  73.     *(.debug$S)
  74.     *(.debug$T)
  75.     *(.debug$F)
  76.     *(.drectve)
  77.   }
  78.   .CRT BLOCK(__section_alignment__) :
  79.   { 
  80.     *(SORT(.CRT$*))
  81.   }
  82.   .endjunk BLOCK(__section_alignment__) :
  83.   {
  84.     /* end is deprecated, don't use it */
  85.      end = .;
  86.      _end = .;
  87.      __end__ = .;
  88.   }
  89.   .rsrc BLOCK(__section_alignment__) :
  90.   { 
  91.     *(.rsrc)
  92.     *(SORT(.rsrc$*))
  93.   }
  94.   .reloc BLOCK(__section_alignment__) :
  95.   { 
  96.     *(.reloc)
  97.   }
  98.   .stab BLOCK(__section_alignment__) (NOLOAD) :
  99.   {
  100.     [ .stab ]
  101.   }
  102.   .stabstr BLOCK(__section_alignment__) (NOLOAD) :
  103.   {
  104.     [ .stabstr ]
  105.   }
  106. }