FreeCalypso > hg > fc-selenite
annotate gcc/ld-script.src @ 112:fdecfb3bd860
.../drv_app/r2d/r2d_*.c: LCD include case fixes from Magnetite
R2D is not used in Selenite, but we strive to keep the two source trees
in sync as much as possible to reduce the diffs.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 13 Oct 2018 16:56:22 +0000 |
parents | 80e3a78126ac |
children | 16703b3fb211 |
rev | line source |
---|---|
82
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 dnl This ld script source is fed through m4 in order to fill in |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 dnl those settings which depend on the configuration. |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 dnl Two include files are fed to m4 before this main body: |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 dnl the appropriate targets/*.m4 file defining the memory config |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 dnl of the hardware, and one of flash.m4 or xram.m4 to select |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 dnl the build type. |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 /* |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 * FreeCalypso Selenite ld script for the Buildmem build |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 ENTRY(_Firmware_boot_entry) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 MEMORY { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 ifelse(Buildmem-FLASH_BOOT_VIA_BOOTROM,FLASH-1, |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 ` FLASH_OVERLAY : ORIGIN = 0, LENGTH = 0x2000') |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 ifelse(Buildmem,FLASH, |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 ` FLASH : ORIGIN = FLASHIMAGE_BASE_ADDR, |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 LENGTH = CONFIG_FWFLASH_SIZE - FLASHIMAGE_BASE_ADDR') |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 IRAM : ORIGIN = 0x00800000, LENGTH = CONFIG_IRAM_SIZE |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 XRAM : ORIGIN = 0x01000000, LENGTH = CONFIG_XRAM_SIZE |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 } |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 SECTIONS { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 dnl The following sections exist only in the flashImage build, |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 dnl and only on targets that use the Calypso boot ROM. |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 ifelse(Buildmem-FLASH_BOOT_VIA_BOOTROM,FLASH-1, |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 ` /* Part of flash overlaid by the boot ROM */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 bootrom.overlay 0 : { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 *(bootrom.overlay) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 } > FLASH_OVERLAY |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 /* code that enables the boot ROM and jumps to it */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 bootrom.switch : { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 *(bootrom.switch) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 } > IRAM AT> FLASH_OVERLAY |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 __romswitch_ram_addr = ADDR(bootrom.switch); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 __romswitch_flash_addr = LOADADDR(bootrom.switch); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 __romswitch_size = SIZEOF(bootrom.switch); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 ')dnl |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 |
84
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
42 define(`INTTEXT_BASE_ADDR', |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
43 ifelse(Buildmem,FLASH,FLASHIMAGE_BASE_ADDR,`/* no fixed address */'))dnl |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
44 |
82
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 /* boot entry code, going into flash or XRAM emulating flash */ |
84
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
46 .inttext INTTEXT_BASE_ADDR : { |
82
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 *(.inttext) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 } > Buildmem |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 /* copy-to-IRAM code */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 iram.text 0x80001C : { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 /* the 7 exception and interrupt vectors @ 0x80001C */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 *(.ramvecs) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 *_ir.a:(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 *_int.a:(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 *_intram.a:(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 *osx_na7_db.a:(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 *tpudrv.a:(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 *drivers_flash.a:niq32.o(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 *sim_drv.a:sim32.o(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 *libc.a:(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 *libgcc.a:(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 } > IRAM Put_in_flash |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 ifelse(Buildmem,FLASH, |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 ` __iramtext_ram_addr = ADDR(iram.text); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 __iramtext_flash_addr = LOADADDR(iram.text); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 __iramtext_size = SIZEOF(iram.text); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 ')dnl |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 /* XIP code, going into flash or XRAM emulating flash */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 xip.text : { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 *(.text*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 /* let's put the ARM->Thumb veneers in the XIP section */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 *(.glue_7) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 } > Buildmem |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 /* all .rodata will stay in flash */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 .rodata : { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 *(.rodata*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 } > Buildmem |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 |
97
80e3a78126ac
gcc/ld-script.src: .bss_dar moved to the beginning of XRAM
Mychaela Falconia <falcon@freecalypso.org>
parents:
84
diff
changeset
|
82 .bss_dar (NOLOAD) : { |
80e3a78126ac
gcc/ld-script.src: .bss_dar moved to the beginning of XRAM
Mychaela Falconia <falcon@freecalypso.org>
parents:
84
diff
changeset
|
83 *dar_gbl_var.a:(.bss* COMMON) |
80e3a78126ac
gcc/ld-script.src: .bss_dar moved to the beginning of XRAM
Mychaela Falconia <falcon@freecalypso.org>
parents:
84
diff
changeset
|
84 } > XRAM |
80e3a78126ac
gcc/ld-script.src: .bss_dar moved to the beginning of XRAM
Mychaela Falconia <falcon@freecalypso.org>
parents:
84
diff
changeset
|
85 |
82
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 /* |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 * All .data will go into XRAM. |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 * For the flash build we'll have a step that copies |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 * the .data section from flash to XRAM; for the RAM-only |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 * build it goes directly into XRAM and stays there. |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 .data : { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 *(.data*) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 } > XRAM Put_in_flash |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 ifelse(Buildmem,FLASH, |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 ` __initdata_ram_addr = ADDR(.data); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 __initdata_flash_addr = LOADADDR(.data); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 __initdata_size = SIZEOF(.data); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 ')dnl |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 /* we have two kinds of BSS: internal and external */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 int.bss (NOLOAD) : { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 *(.l1s_global) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 *_ir.a:(.bss* COMMON) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 *_int.a:(.bss* COMMON) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 *_intram.a:(.bss* COMMON) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 *osx_na7_db.a:(.bss* COMMON) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 *tpudrv.a:(.bss* COMMON) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 *libc.a:(.bss* COMMON) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 *libgcc.a:(.bss* COMMON) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 *(.API_HISR_stack) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 . = ALIGN(4); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 } > IRAM |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 __intbss_start = ADDR(int.bss); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115 __intbss_size = SIZEOF(int.bss); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 ext.bss (NOLOAD) : { |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 *(.bss* COMMON) |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119 . = ALIGN(4); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 } > XRAM |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121 __extbss_start = ADDR(ext.bss); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122 __extbss_size = SIZEOF(ext.bss); |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 |
84
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
124 int.stack (NOLOAD) : ALIGN(8) { |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
125 /* Beginning of stacks and heap area - 2.75 kbytes (int.s) */ |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
126 _Stack_segment_start = .; |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
127 . += 0xB00; |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
128 _Stack_segment_end = .; |
82
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 |
84
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
130 _iram_end = .; |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
131 } > IRAM |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
132 |
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
133 ext.stack (NOLOAD) : ALIGN(8) { |
82
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 /* Stack for abort and/or undefined modes. */ |
84
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
135 . += 512; |
82
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 _Except_Stack_SP = .; |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 /* Leave 38 32bit words for state saving on exceptions. */ |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 xdump_buffer = .; |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 . += 38 * 4; |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 |
84
32bcc299ef55
gcc/ld-script.src: additional polish
Mychaela Falconia <falcon@freecalypso.org>
parents:
82
diff
changeset
|
142 _xram_end = .; |
82
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143 } > XRAM |
6afaa5cb7392
linker script for gcc fw build: initial version put together
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144 } |