1SCRIPT_NAME=elf 2OUTPUT_FORMAT="elf32-csky-little" 3BIG_OUTPUT_FORMAT="elf32-csky-big" 4LITTLE_OUTPUT_FORMAT="elf32-csky-little" 5NO_REL_RELOCS=yes 6TARGET_PAGE_SIZE=0x400 7MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" 8TEXT_START_ADDR=0x8000 9CHECK_RELOCS_AFTER_OPEN_INPUT=yes 10NONPAGED_TEXT_START_ADDR=0 11ATTRS_SECTIONS='.csky.attributes 0 : { KEEP (*(.csky.attributes)) KEEP (*(.csky.attributes)) }' 12ARCH=csky 13EMBEDDED=yes 14EXTRA_EM_FILE=cskyelf 15 16# There is a problem with the NOP value - it must work for both 17# big endian and little endian systems. Unfortunately there is 18# no symmetrical mcore opcode that functions as a noop. The 19# chosen solution is to use "tst r0, r14". This is a symmetrical 20# value, and apart from the corruption of the C bit, it has no other 21# side effects. Since the carry bit is never tested without being 22# explicitly set first, and since the NOP code is only used as a 23# fill value between independently viable pieces of code, it should 24# not matter. 25NOP=0 26 27ENTRY=__start 28OTHER_BSS_SYMBOLS="__bss_start__ = . ;" 29OTHER_BSS_END_SYMBOLS="__bss_end__ = . ;" 30 31# This sets the stack to the top of the simulator memory (2^19 bytes). 32# STACK_ADDR=0x80000 33 34TEMPLATE_NAME=elf 35 36 37unset EMBEDDED 38unset ENTRY 39COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)" 40GENERATE_SHLIB_SCRIPT=yes 41GENERATE_PIE_SCRIPT=yes 42GENERATE_SHLIB_SCRIPT=yes 43GENERATE_COMBRELOC_SCRIPT=yes 44