Home | History | Annotate | Line # | Download | only in emulparams
      1 SCRIPT_NAME=elf
      2 OUTPUT_FORMAT="elf32-csky-little"
      3 BIG_OUTPUT_FORMAT="elf32-csky-big"
      4 LITTLE_OUTPUT_FORMAT="elf32-csky-little"
      5 NO_REL_RELOCS=yes
      6 TARGET_PAGE_SIZE=0x400
      7 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
      8 TEXT_START_ADDR=0x60000000
      9 DATA_ADDR=0x20000000
     10 
     11 # The default address spaces
     12 # RAM:        0x0 - 0x1FFFFFFF
     13 # RAM: 0x20000000 - 0x3FFFFFFF
     14 # RAM: 0x60000000 - 0x7FFFFFFF
     15 #
     16 # There are some symbols used in the crt.S
     17 # __stack: The stack top
     18 # __heap_start: The heap start
     19 # __heap_end: The heap end
     20 # __csky_exit: Be used by qemu to check exit
     21 
     22 OTHER_SYMBOLS='
     23   PROVIDE (__stack =  0x01000000 - 0x8);
     24   PROVIDE (__heap_start = 0x00000100);
     25   PROVIDE (__heap_end = 0x00900000);
     26   PROVIDE (__csky_exit = 0x10002000);
     27 '
     28 CHECK_RELOCS_AFTER_OPEN_INPUT=yes
     29 NONPAGED_TEXT_START_ADDR=0
     30 ATTRS_SECTIONS='.csky.attributes 0 : { KEEP (*(.csky.attributes)) KEEP (*(.csky.attributes)) }'
     31 ARCH=csky
     32 EMBEDDED=yes
     33 EXTRA_EM_FILE=cskyelf
     34 
     35 # There is a problem with the NOP value - it must work for both
     36 # big endian and little endian systems.  Unfortunately there is
     37 # no symmetrical mcore opcode that functions as a noop.  The
     38 # chosen solution is to use "tst r0, r14".  This is a symmetrical
     39 # value, and apart from the corruption of the C bit, it has no other
     40 # side effects.  Since the carry bit is never tested without being
     41 # explicitly set first, and since the NOP code is only used as a
     42 # fill value between independently viable pieces of code, it should
     43 # not matter.
     44 NOP=0
     45 
     46 ENTRY=__start
     47 OTHER_BSS_SYMBOLS="__sbss__ = . ;"
     48 OTHER_BSS_END_SYMBOLS="__ebss__ = . ;"
     49 
     50 # This sets the stack to the top of the simulator memory (2^19 bytes).
     51 # STACK_ADDR=0x80000
     52 
     53 TEMPLATE_NAME=elf
     54