Mercurial > nand-ecoscentric
comparison packages/hal/mn10300/sim/current/src/sim.ld @ 0:3111d98ba7b3 ecos-v1_1-release
Initial commit of eCos version 1.1
| author | jlarmour |
|---|---|
| date | Tue, 11 May 1999 11:16:07 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:3111d98ba7b3 |
|---|---|
| 1 STARTUP(vectors.o) | |
| 2 ENTRY(reset_vector) | |
| 3 | |
| 4 GROUP(libtarget.a libgcc.a) | |
| 5 | |
| 6 #include <pkgconf/hal.h> | |
| 7 | |
| 8 #define LOAD_BASE 0x40000000 | |
| 9 #define DATA_BASE | |
| 10 | |
| 11 SECTIONS | |
| 12 { | |
| 13 | |
| 14 /* Start of ROM */ | |
| 15 . = LOAD_BASE; | |
| 16 | |
| 17 .rom_vectors : | |
| 18 { | |
| 19 KEEP(*(.vectors)) | |
| 20 } | |
| 21 | |
| 22 .text : | |
| 23 { | |
| 24 _stext = .; | |
| 25 *(.text*) | |
| 26 *(.gnu.warning) | |
| 27 *(.gnu.linkonce*) | |
| 28 *(.init) | |
| 29 | |
| 30 } | |
| 31 _etext = .; | |
| 32 PROVIDE (etext = .); | |
| 33 .fini : { *(.fini) } | |
| 34 .rodata : { *(.rodata*) } | |
| 35 .rodata1 : { *(.rodata1) } | |
| 36 .fixup : { *(.fixup) } | |
| 37 .gcc_except_table : { *(.gcc_except_table) } | |
| 38 | |
| 39 __rom_data_start = ALIGN(4); | |
| 40 .data DATA_BASE : | |
| 41 AT( __rom_data_start ) | |
| 42 { | |
| 43 __ram_data_start = .; | |
| 44 *(.data*) | |
| 45 *(.data1) | |
| 46 _GOT1_START_ = .; | |
| 47 *(.got1) | |
| 48 _GOT1_END_ = .; | |
| 49 /* Put .ctors and .dtors next to the .got2 section, so that the pointers | |
| 50 get relocated with -mrelocatable. */ | |
| 51 _GOT2_START_ = .; | |
| 52 *(.got2) | |
| 53 _GOT2_END_ = .; | |
| 54 . = ALIGN(4); | |
| 55 #ifdef CYG_KERNEL_USE_INIT_PRIORITY | |
| 56 __CTOR_LIST__ = .; | |
| 57 KEEP(*(SORT(.ctors*))) | |
| 58 __CTOR_END__ = .; | |
| 59 __DTOR_LIST__ = .; | |
| 60 KEEP(*(SORT(.dtors*))) | |
| 61 __DTOR_END__ = .; | |
| 62 #else | |
| 63 __CTOR_LIST__ = .; | |
| 64 KEEP(*sched.o(.ctors*)) | |
| 65 KEEP(*clock.o(.ctors*)) | |
| 66 KEEP(*thread.o(.ctors*)) | |
| 67 KEEP(*(.ctors*)) | |
| 68 __CTOR_END__ = .; | |
| 69 __DTOR_LIST__ = .; | |
| 70 KEEP(*(.dtors)) | |
| 71 __DTOR_END__ = .; | |
| 72 #endif | |
| 73 _GOT_START_ = .; | |
| 74 _GLOBAL_OFFSET_TABLE_ = . + 32768; | |
| 75 _SDA_BASE_ = .; | |
| 76 *(.got.plt) | |
| 77 *(.got) | |
| 78 _GOT_END_ = .; | |
| 79 *(.dynamic) | |
| 80 /* We want the small data sections together, so single-instruction offsets | |
| 81 can access them all, and initialized data all before uninitialized, so | |
| 82 we can shorten the on-disk segment size. */ | |
| 83 *(.sdata*) | |
| 84 *(.sbss*) | |
| 85 } | |
| 86 __ram_data_end = .; | |
| 87 PROVIDE( __ram_data_end = .); | |
| 88 _edata = .; | |
| 89 PROVIDE (edata = .); | |
| 90 . = ALIGN(4); | |
| 91 __bss_start = .; | |
| 92 .bss : | |
| 93 { | |
| 94 *(.scommon) | |
| 95 *(.dynbss) | |
| 96 *(.bss) | |
| 97 *(COMMON) | |
| 98 } | |
| 99 . = ALIGN(4); | |
| 100 _end = . ; | |
| 101 PROVIDE (end = .); | |
| 102 | |
| 103 } | |
| 104 | |
| 105 _mn10300_interrupt_control = 0x34000100; | |
| 106 _mn10300_interrupt_vectors = 0x20000000; |
