mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Committer:
AnnaBridge
Date:
Fri Feb 16 16:09:33 2018 +0000
Revision:
181:57724642e740
Parent:
149:156823d33999
Child:
188:bcfe06ba3d64
mbed-dev library. Release version 159.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 144:ef7eb2e8f9f7 1 /* mbed - LPC11U35 linker script
<> 144:ef7eb2e8f9f7 2 * Based linker script generated by Code Red Technologies Red Suite 4.1
<> 144:ef7eb2e8f9f7 3 */
<> 144:ef7eb2e8f9f7 4 GROUP(libgcc.a libc_s.a libstdc++_s.a libm.a libcr_newlib_nohost.a crti.o crtn.o crtbegin.o crtend.o)
<> 144:ef7eb2e8f9f7 5
<> 144:ef7eb2e8f9f7 6 MEMORY
<> 144:ef7eb2e8f9f7 7 {
<> 144:ef7eb2e8f9f7 8 /* Define each memory region */
<> 144:ef7eb2e8f9f7 9 MFlash32 (rx) : ORIGIN = 0x0, LENGTH = 0x20000 /* 128k */
<> 144:ef7eb2e8f9f7 10 RamLoc8 (rwx) : ORIGIN = 0x100000C0, LENGTH = 0x1F40 /* 8k */
<> 144:ef7eb2e8f9f7 11 RamIo1 (rwx) : ORIGIN = 0x20000000, LENGTH = 0x800 /* 2k */
<> 144:ef7eb2e8f9f7 12 RamUsb2 (rwx) : ORIGIN = 0x20004000, LENGTH = 0x800 /* 2k */
<> 144:ef7eb2e8f9f7 13 }
<> 144:ef7eb2e8f9f7 14 /* Define a symbol for the top of each memory region */
<> 144:ef7eb2e8f9f7 15 __top_MFlash32 = 0x0 + 0x10000;
<> 144:ef7eb2e8f9f7 16 __top_RamLoc8 = 0x10000000 + 0x1F40;
<> 144:ef7eb2e8f9f7 17 __top_RamIo1 = 0x20000000 + 0x800;
<> 144:ef7eb2e8f9f7 18 __top_RamUsb2 = 0x20004000 + 0x800;
<> 144:ef7eb2e8f9f7 19
<> 144:ef7eb2e8f9f7 20 ENTRY(ResetISR)
<> 144:ef7eb2e8f9f7 21
<> 144:ef7eb2e8f9f7 22 SECTIONS
<> 144:ef7eb2e8f9f7 23 {
<> 144:ef7eb2e8f9f7 24
<> 144:ef7eb2e8f9f7 25 /* MAIN TEXT SECTION */
<> 144:ef7eb2e8f9f7 26 .text : ALIGN(4)
<> 144:ef7eb2e8f9f7 27 {
<> 144:ef7eb2e8f9f7 28 FILL(0xff)
<> 144:ef7eb2e8f9f7 29 KEEP(*(.isr_vector))
<> 144:ef7eb2e8f9f7 30 *(.text.ResetISR)
<> 144:ef7eb2e8f9f7 31 . = 0x200;
<> 144:ef7eb2e8f9f7 32
<> 144:ef7eb2e8f9f7 33 /* Global Section Table */
<> 144:ef7eb2e8f9f7 34 . = ALIGN(4) ;
<> 144:ef7eb2e8f9f7 35 __section_table_start = .;
<> 144:ef7eb2e8f9f7 36 __data_section_table = .;
<> 144:ef7eb2e8f9f7 37 LONG(LOADADDR(.data));
<> 144:ef7eb2e8f9f7 38 LONG( ADDR(.data)) ;
<> 144:ef7eb2e8f9f7 39 LONG( SIZEOF(.data));
<> 144:ef7eb2e8f9f7 40 LONG(LOADADDR(.data_RAM2));
<> 144:ef7eb2e8f9f7 41 LONG( ADDR(.data_RAM2)) ;
<> 144:ef7eb2e8f9f7 42 LONG( SIZEOF(.data_RAM2));
<> 144:ef7eb2e8f9f7 43 __data_section_table_end = .;
<> 144:ef7eb2e8f9f7 44 __bss_section_table = .;
<> 144:ef7eb2e8f9f7 45 LONG( ADDR(.bss));
<> 144:ef7eb2e8f9f7 46 LONG( SIZEOF(.bss));
<> 144:ef7eb2e8f9f7 47 LONG( ADDR(.bss_RAM2));
<> 144:ef7eb2e8f9f7 48 LONG( SIZEOF(.bss_RAM2));
<> 144:ef7eb2e8f9f7 49 __bss_section_table_end = .;
<> 144:ef7eb2e8f9f7 50 __section_table_end = . ;
<> 144:ef7eb2e8f9f7 51 /* End of Global Section Table */
<> 144:ef7eb2e8f9f7 52
<> 144:ef7eb2e8f9f7 53
<> 144:ef7eb2e8f9f7 54 *(.after_vectors*)
<> 144:ef7eb2e8f9f7 55
<> 144:ef7eb2e8f9f7 56 *(.text*)
<> 144:ef7eb2e8f9f7 57 *(.rodata .rodata.*)
<> 144:ef7eb2e8f9f7 58 . = ALIGN(4);
<> 144:ef7eb2e8f9f7 59
<> 144:ef7eb2e8f9f7 60 /* C++ constructors etc */
<> 144:ef7eb2e8f9f7 61 . = ALIGN(4);
<> 144:ef7eb2e8f9f7 62 KEEP(*(.init))
<> 144:ef7eb2e8f9f7 63
<> 144:ef7eb2e8f9f7 64 . = ALIGN(4);
<> 144:ef7eb2e8f9f7 65 __preinit_array_start = .;
<> 144:ef7eb2e8f9f7 66 KEEP (*(.preinit_array))
<> 144:ef7eb2e8f9f7 67 __preinit_array_end = .;
<> 144:ef7eb2e8f9f7 68
<> 144:ef7eb2e8f9f7 69 . = ALIGN(4);
<> 144:ef7eb2e8f9f7 70 __init_array_start = .;
<> 144:ef7eb2e8f9f7 71 KEEP (*(SORT(.init_array.*)))
<> 144:ef7eb2e8f9f7 72 KEEP (*(.init_array))
<> 144:ef7eb2e8f9f7 73 __init_array_end = .;
<> 144:ef7eb2e8f9f7 74
<> 144:ef7eb2e8f9f7 75 KEEP(*(.fini));
<> 144:ef7eb2e8f9f7 76
<> 144:ef7eb2e8f9f7 77 . = ALIGN(0x4);
<> 144:ef7eb2e8f9f7 78 KEEP (*crtbegin.o(.ctors))
<> 144:ef7eb2e8f9f7 79 KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
<> 144:ef7eb2e8f9f7 80 KEEP (*(SORT(.ctors.*)))
<> 144:ef7eb2e8f9f7 81 KEEP (*crtend.o(.ctors))
<> 144:ef7eb2e8f9f7 82
<> 144:ef7eb2e8f9f7 83 . = ALIGN(0x4);
<> 144:ef7eb2e8f9f7 84 KEEP (*crtbegin.o(.dtors))
<> 144:ef7eb2e8f9f7 85 KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
<> 144:ef7eb2e8f9f7 86 KEEP (*(SORT(.dtors.*)))
<> 144:ef7eb2e8f9f7 87 KEEP (*crtend.o(.dtors))
<> 144:ef7eb2e8f9f7 88 /* End C++ */
<> 144:ef7eb2e8f9f7 89 } > MFlash32
<> 144:ef7eb2e8f9f7 90
<> 144:ef7eb2e8f9f7 91 /*
<> 144:ef7eb2e8f9f7 92 * for exception handling/unwind - some Newlib functions (in common
<> 144:ef7eb2e8f9f7 93 * with C++ and STDC++) use this.
<> 144:ef7eb2e8f9f7 94 */
<> 144:ef7eb2e8f9f7 95 .ARM.extab : ALIGN(4)
<> 144:ef7eb2e8f9f7 96 {
<> 144:ef7eb2e8f9f7 97 *(.ARM.extab* .gnu.linkonce.armextab.*)
<> 144:ef7eb2e8f9f7 98 } > MFlash32
<> 144:ef7eb2e8f9f7 99 __exidx_start = .;
<> 144:ef7eb2e8f9f7 100
<> 144:ef7eb2e8f9f7 101 .ARM.exidx : ALIGN(4)
<> 144:ef7eb2e8f9f7 102 {
<> 144:ef7eb2e8f9f7 103 *(.ARM.exidx* .gnu.linkonce.armexidx.*)
<> 144:ef7eb2e8f9f7 104 } > MFlash32
<> 144:ef7eb2e8f9f7 105 __exidx_end = .;
<> 144:ef7eb2e8f9f7 106
<> 144:ef7eb2e8f9f7 107 _etext = .;
<> 144:ef7eb2e8f9f7 108
<> 144:ef7eb2e8f9f7 109
<> 144:ef7eb2e8f9f7 110 .data_RAM2 : ALIGN(4)
<> 144:ef7eb2e8f9f7 111 {
<> 144:ef7eb2e8f9f7 112 FILL(0xff)
<> 144:ef7eb2e8f9f7 113 *(.data.$RAM2*)
<> 144:ef7eb2e8f9f7 114 *(.data.$RamUsb2*)
<> 144:ef7eb2e8f9f7 115 . = ALIGN(4) ;
<> 144:ef7eb2e8f9f7 116 } > RamUsb2 AT>MFlash32
<> 144:ef7eb2e8f9f7 117
<> 144:ef7eb2e8f9f7 118 /* MAIN DATA SECTION */
<> 144:ef7eb2e8f9f7 119
<> 144:ef7eb2e8f9f7 120 .uninit_RESERVED : ALIGN(4)
<> 144:ef7eb2e8f9f7 121 {
<> 144:ef7eb2e8f9f7 122 KEEP(*(.bss.$RESERVED*))
<> 144:ef7eb2e8f9f7 123 } > RamLoc8
<> 144:ef7eb2e8f9f7 124
<> 144:ef7eb2e8f9f7 125 .data : ALIGN(4)
<> 144:ef7eb2e8f9f7 126 {
<> 144:ef7eb2e8f9f7 127 FILL(0xff)
<> 144:ef7eb2e8f9f7 128 _data = .;
<> 144:ef7eb2e8f9f7 129 *(vtable)
<> 144:ef7eb2e8f9f7 130 *(.data*)
<> 144:ef7eb2e8f9f7 131 . = ALIGN(4) ;
<> 144:ef7eb2e8f9f7 132 _edata = .;
<> 144:ef7eb2e8f9f7 133 } > RamLoc8 AT>MFlash32
<> 144:ef7eb2e8f9f7 134
<> 144:ef7eb2e8f9f7 135
<> 144:ef7eb2e8f9f7 136 .bss_RAM2 : ALIGN(4)
<> 144:ef7eb2e8f9f7 137 {
<> 144:ef7eb2e8f9f7 138 *(.bss.$RAM2*)
<> 144:ef7eb2e8f9f7 139 *(.bss.$RamUsb2*)
<> 144:ef7eb2e8f9f7 140 . = ALIGN(4) ;
<> 144:ef7eb2e8f9f7 141 } > RamUsb2
<> 144:ef7eb2e8f9f7 142
<> 144:ef7eb2e8f9f7 143 /* MAIN BSS SECTION */
<> 144:ef7eb2e8f9f7 144 .bss : ALIGN(4)
<> 144:ef7eb2e8f9f7 145 {
<> 144:ef7eb2e8f9f7 146 _bss = .;
<> 144:ef7eb2e8f9f7 147 *(.bss*)
<> 144:ef7eb2e8f9f7 148 *(COMMON)
<> 144:ef7eb2e8f9f7 149 . = ALIGN(4) ;
<> 144:ef7eb2e8f9f7 150 _ebss = .;
<> 144:ef7eb2e8f9f7 151 PROVIDE(end = .);
<> 144:ef7eb2e8f9f7 152 __end__ = .;
<> 144:ef7eb2e8f9f7 153 } > RamLoc8
<> 144:ef7eb2e8f9f7 154
<> 144:ef7eb2e8f9f7 155 PROVIDE(_pvHeapStart = .);
<> 144:ef7eb2e8f9f7 156 PROVIDE(_vStackTop = __top_RamLoc8 - 0);
<> 144:ef7eb2e8f9f7 157 }