m5235-rom.ld

来自「modbus开发程序包」· LD 代码 · 共 122 行

LD
122
字号
STARTUP(system/crt0.o)

INPUT(system/vector.o)

OUTPUT_ARCH(m68k)

SEARCH_DIR(.)

GROUP(-lc -lgcc)



__DYNAMIC  =  0;



MEMORY

{

  flash  (rwx) : ORIGIN = 0x00000000, LENGTH = 0x00200000

  sdram  (rwx) : ORIGIN = 0x01000000, LENGTH = 0x01000000

  sram   (rwx) : ORIGIN = 0x20000000, LENGTH = 0x00010000

  ipsbar (rwx) : ORIGIN = 0x40000000, LENGTH = 0x40000000

}



PROVIDE (__stack = 0x2000FFFC);



SECTIONS

{

  .sdram      : {} > sdram

  .ipsbar     : {} > ipsbar

  .sram (NOLOAD) : { *(.vector_ram); *(.nbuf) } > sram

  .flash      : {} > flash



  .text :

  {

    __text_start = . ;

    *(.vector_rom)

    . = ALIGN (0x100);

    *(.text)

    . = ALIGN (16);



    *(.eh_frame)

    . = ALIGN (16);



    *(.gnu.linkonce.t.*) 



    . = ALIGN(0x4);

     __CTOR_LIST__ = .;

    ___CTOR_LIST__ = .;

    LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)

    *(.ctors)

    LONG(0)

    __CTOR_END__ = .;

    __DTOR_LIST__ = .;

    ___DTOR_LIST__ = .;

    LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)

    *(.dtors)

     LONG(0)

    __DTOR_END__ = .;

    *(.rodata)

    *(.rodata.*)

    *(.gcc_except_table) 



    . = ALIGN(0x2);

    __INIT_SECTION__ = . ;

    LONG (0x4e560000)	/* linkw %fp,#0 */

    *(.init)

    SHORT (0x4e5e)	/* unlk %fp */

    SHORT (0x4e75)	/* rts */



    __FINI_SECTION__ = . ;

    LONG (0x4e560000)	/* linkw %fp,#0 */

    *(.fini)

    SHORT (0x4e5e)	/* unlk %fp */

    SHORT (0x4e75)	/* rts */



    *(.lit)

    . = ALIGN(16);

    _etext = .;

    etext = .;



  } > flash

  . = ALIGN(2);



  .data : AT (ADDR (.text) + SIZEOF (.text))

  {

    copy_start = .;

    *(.shdata)

    *(.data)

    *(.gnu.linkonce.d.*)

    . = ALIGN (16);

    _edata = .;

    copy_end = .;

  } > sdram

  __data_load_start = LOADADDR(.data);

  __data_load_end = __data_load_start + SIZEOF(.data);



  .bss :

  {

    . = ALIGN(0x4);

    __bss_start = . ;

    *(.shbss)

    *(.bss)

    *(COMMON)

    _end =  ALIGN (0x8);

    __end = _end;

  } > sdram



  .stab 0 (NOLOAD) :

  {

    *(.stab)

  }



  .stabstr 0 (NOLOAD) :

  {

    *(.stabstr)

  }

}



__IPSBAR            = ADDR(.ipsbar);



__SDRAM             = ADDR(.sdram);

__SDRAM_SIZE        = SIZEOF(.sdram);



__SRAM              = ADDR(.sram);

__SRAM_SIZE         = SIZEOF(.sram);



__FLASH             = ADDR(.flash);

__FLASH_SIZE        = SIZEOF(.flash);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?