Advertisement
Guest User

Untitled

a guest
Jan 24th, 2018
282
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
LDIF 4.21 KB | None | 0 0
  1. OUTPUT_FORMAT("elf32-avr32", "elf32-avr32", "elf32-avr32")
  2.  
  3. OUTPUT_ARCH(avr32:uc)
  4.  
  5. ENTRY(_start)
  6.  
  7. MEMORY
  8. {
  9.   FLASH  (rxai!w) : ORIGIN = 0x80000000, LENGTH = 0x00001FE0
  10.   FLASH2 (rxai!w) : ORIGIN = 0x80001FE0, LENGTH = 0x00000020
  11.   INTRAM (wxa!ri) : ORIGIN = 0x00000004, LENGTH = 0x000017FC
  12. }
  13.  
  14. PHDRS
  15. {
  16.   FLASH PT_LOAD;
  17.   FLASH2 PT_LOAD;
  18.   INTRAM_ALIGN PT_NULL;
  19.   INTRAM_AT_FLASH PT_LOAD;
  20.   INTRAM PT_NULL;
  21.   CONST_INTRAM_AT_FLASH PT_LOAD;
  22. }
  23.  
  24. SECTIONS
  25. {
  26.   __heap_size__ = DEFINED(__heap_size__) ? __heap_size__ : 0;
  27.   __stack_size__ = DEFINED(__stack_size__) ? __stack_size__ : 1K;
  28.  
  29. /*===================*/
  30. /* Section Parameter */
  31. /*===================*/
  32.  
  33.   .HWparams :
  34.   {
  35.     *(.HWparams)
  36.   } >FLASH2 AT>FLASH2 :FLASH2
  37.  
  38. /*===================*/
  39. /* Section ROM       */
  40. /*===================*/
  41.   PROVIDE (__executable_start = 0x80000000); . = 0x80000000;
  42.   .interp :
  43.   {
  44.     *(.interp)
  45.   } >FLASH AT>FLASH :FLASH
  46.   .reset :
  47.   {
  48.     *(.reset)
  49.   } >FLASH AT>FLASH :FLASH
  50.   .text :
  51.   {
  52.     *(.text)
  53.   } >FLASH AT>FLASH :FLASH  
  54.   .lalign :
  55.   {
  56.     . = ALIGN(8);
  57.     PROVIDE(_data_lma = .);
  58.   } >FLASH AT>FLASH :FLASH
  59.  
  60.  
  61. /*===================*/
  62. /* Section RAM       */
  63. /*===================*/
  64.   . = ORIGIN(INTRAM);
  65.   .dalign :
  66.   {
  67.     . = ALIGN(8);
  68.     PROVIDE(_data = .);
  69.   } >INTRAM AT>INTRAM :INTRAM_ALIGN  
  70.   .ctors :
  71.   {
  72.     KEEP (*crtbegin*.o(.ctors))
  73.     KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors))
  74.     KEEP (*(SORT(.ctors.*)))
  75.     KEEP (*(.ctors))
  76.   } >INTRAM AT>FLASH :INTRAM_AT_FLASH
  77.   .dtors          :
  78.   {
  79.     KEEP (*crtbegin*.o(.dtors))
  80.     KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors))
  81.     KEEP (*(SORT(.dtors.*)))
  82.     KEEP (*(.dtors))
  83.   } >INTRAM AT>FLASH :INTRAM_AT_FLASH
  84.   .ddalign :
  85.   {
  86.     . = ALIGN(8);
  87.   } >INTRAM AT>FLASH :INTRAM_AT_FLASH
  88.   .data :
  89.   {
  90.     *(.data .data.* .gnu.linkonce.d.*)
  91.     KEEP (*(.gnu.linkonce.d.*personality*))
  92.     SORT(CONSTRUCTORS)
  93.   } >INTRAM AT>FLASH :INTRAM_AT_FLASH
  94.   .balign :
  95.   {
  96.     . = ALIGN(8);
  97.     PROVIDE(_edata = .);
  98.   } >INTRAM AT>FLASH :INTRAM_AT_FLASH
  99.   PROVIDE (edata = .);
  100.   __bss_start = .;
  101.   .bss :
  102.   {
  103.     *(.dynbss)
  104.     *(.bss .bss.* .gnu.linkonce.b.*)
  105.     *(COMMON)
  106.     . = ALIGN(8);
  107.   } >INTRAM AT>INTRAM :INTRAM
  108.   . = ALIGN(8);
  109.   _end = .;
  110.   PROVIDE (end = .);
  111.   __heap_start__ = ALIGN(8);
  112.   .heap           :
  113.   {
  114.     *(.heap)
  115.     . = __heap_size__;
  116.   } >INTRAM AT>INTRAM :INTRAM
  117.   __heap_end__ = .;
  118.   .stack          :
  119.   {
  120.     _stack = .;
  121.     *(.stack)
  122.     . = __stack_size__;
  123.     _estack = .;
  124.   } >INTRAM AT>INTRAM :INTRAM
  125.   _const_lma = LOADADDR(.const);
  126.   .const ALIGN(0x400) : AT ( (LOADADDR(.balign) + SIZEOF (.balign) + 7) & ~ 7 )
  127.   {
  128.     _const = .;
  129.     *(.evba)
  130.     *(.hash)
  131.     *(.dynsym)
  132.     *(.dynstr)
  133.     *(.gnu.version)
  134.     *(.gnu.version_d)
  135.     *(.gnu.version_r)
  136.     *(.rel.init)
  137.     *(.rela.init)
  138.     *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*)
  139.     *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
  140.     *(.rela.fini)
  141.     *(.rel.fini)
  142.     *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*)
  143.     *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
  144.     *(.rel.data.rel.ro*)
  145.     *(.rela.data.rel.ro*)
  146.     *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*)
  147.     *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
  148.     *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*)
  149.     *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*)
  150.     *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*)
  151.     *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*)
  152.     *(.rel.ctors)
  153.     *(.rela.ctors)
  154.     *(.rel.dtors)
  155.     *(.rela.dtors)
  156.     *(.rel.got)
  157.     *(.rela.got)
  158.     *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*)
  159.     *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
  160.     *(.rel.plt)
  161.     *(.rela.plt)
  162.     KEEP (*(.init))
  163.     *(.plt)
  164.     *(.text._unhandled_interrupt .text.udd_interrupt .stub .gnu.linkonce.t.*)
  165.     KEEP (*(.text.*personality*))
  166.     *(.gnu.warning)
  167.     KEEP (*(.fini))
  168.     PROVIDE (__etext = .);
  169.     PROVIDE (_etext = .);
  170.     PROVIDE (etext = .);
  171.     *(.rodata .rodata.* .gnu.linkonce.r.*)
  172.     *(.rodata1)
  173.     *(.eh_frame_hdr)
  174.     KEEP (*(.eh_frame))
  175.     KEEP (*(.gcc_except_table)) *(.gcc_except_table.*)
  176.   } >INTRAM :CONST_INTRAM_AT_FLASH
  177.   . = ALIGN(8);
  178.   _econst = .;
  179. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement