qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

link.ld (1167B)


      1 /* Default linker script, for normal executables */
      2 OUTPUT_FORMAT("elf32-tricore")
      3 OUTPUT_ARCH(tricore)
      4 ENTRY(_start)
      5 
      6 /* the internal ram description */
      7 MEMORY
      8 {
      9   text_ram (rx!p): org = 0x80000000, len = 15K
     10   data_ram (w!xp): org = 0xd0000000, len = 130K
     11 }
     12 /*
     13  * Define the sizes of the user and system stacks.
     14  */
     15 __USTACK_SIZE = DEFINED (__USTACK_SIZE) ? __USTACK_SIZE : 1K ;
     16 /*
     17  * Define the start address and the size of the context save area.
     18  */
     19 __CSA_BEGIN =  0xd0000000 ;
     20 __CSA_SIZE =  8k ;
     21 __CSA_END = __CSA_BEGIN + __CSA_SIZE ;
     22 
     23 SECTIONS
     24 {
     25   .text  :
     26   {
     27     *(.text)
     28     . = ALIGN(8);
     29   } > text_ram
     30 
     31   .rodata :
     32   {
     33     *(.rodata)
     34     *(.rodata1)
     35   } > data_ram
     36 
     37   .data :
     38   {
     39     . = ALIGN(8) ;
     40     *(.data)
     41     *(.data.*)
     42     . = ALIGN(8) ;
     43     __USTACK = . + __USTACK_SIZE -768;
     44 
     45   } > data_ram
     46   /*
     47    * Allocate space for BSS sections.
     48    */
     49   .bss  :
     50   {
     51     BSS_BASE = . ;
     52     *(.bss)
     53     *(COMMON)
     54     . = ALIGN(8) ;
     55   } > data_ram
     56   /* Make sure CSA, stack and heap addresses are properly aligned.  */
     57   _. = ASSERT ((__CSA_BEGIN & 0x3f) == 0 , "illegal CSA start address") ;
     58   _. = ASSERT ((__CSA_SIZE & 0x3f) == 0 , "illegal CSA size") ;
     59 
     60 }