Skip to content

Commit 8835146

Browse files
adustm0xc0170
authored andcommitted
Align IAR files with mbed-os implementation (tests are still failing)
1 parent a08f7d4 commit 8835146

File tree

1 file changed

+23
-28
lines changed
  • targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L496xG/device/TOOLCHAIN_IAR

1 file changed

+23
-28
lines changed
Lines changed: 23 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,32 @@
1-
/*###ICF### Section handled by ICF editor, don't touch! ****/
2-
/*-Editor annotation file-*/
3-
/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4-
/*-Specials-*/
5-
define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6-
/*-Memory Regions-*/
7-
define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8-
define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9-
define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10-
define symbol __ICFEDIT_region_RAM_end__ = 0x2003FFFF;
11-
define symbol __ICFEDIT_region_SRAM2_start__ = 0x10000000;
12-
define symbol __ICFEDIT_region_SRAM2_end__ = 0x1000FFFF;
13-
14-
/*-Sizes-*/
15-
define symbol __ICFEDIT_size_cstack__ = 0x400;
16-
define symbol __ICFEDIT_size_heap__ = 0x200;
17-
/**** End of ICF editor section. ###ICF###*/
1+
/* [ROM = 1024kb = 0x100000] */
2+
define symbol __intvec_start__ = 0x08000000;
3+
define symbol __region_ROM_start__ = 0x08000000;
4+
define symbol __region_ROM_end__ = 0x08000000 + 0x100000 - 1;
185

6+
/* [RAM = 0x50000] */
7+
/* Vector table dynamic copy: Total: 107 vectors = 428 bytes (0x1AC) to be reserved in RAM */
8+
define symbol __NVIC_start__ = 0x20000000;
9+
define symbol __NVIC_end__ = 0x200001AC; /* Aligned on 8 bytes (428 = 53 x 8) */
10+
define symbol __region_SRAM1_start__ = 0x20000000;
11+
define symbol __region_SRAM1_end__ = 0x2004FFFF;
1912

13+
/* Memory regions */
2014
define memory mem with size = 4G;
21-
define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
22-
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
23-
define region SRAM2_region = mem:[from __ICFEDIT_region_SRAM2_start__ to __ICFEDIT_region_SRAM2_end__];
15+
define region ROM_region = mem:[from __region_ROM_start__ to __region_ROM_end__];
16+
define region SRAM1_region = mem:[from __region_SRAM1_start__ to __region_SRAM1_end__];
2417

25-
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
26-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
18+
/* Stack 1/8 and Heap 1/4 of RAM */
19+
define symbol __size_cstack__ = 0x8000;
20+
define symbol __size_heap__ = 0xa000;
21+
define block CSTACK with alignment = 8, size = __size_cstack__ { };
22+
define block HEAP with alignment = 8, size = __size_heap__ { };
23+
define block STACKHEAP with fixed order { block HEAP, block CSTACK };
2724

28-
initialize by copy { readwrite };
25+
initialize by copy with packing = zeros { readwrite };
2926
do not initialize { section .noinit };
3027

31-
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28+
place at address mem:__intvec_start__ { readonly section .intvec };
3229

3330
place in ROM_region { readonly };
34-
place in RAM_region { readwrite,
35-
block CSTACK, block HEAP };
36-
place in SRAM2_region { };
37-
31+
place in SRAM1_region { readwrite, block STACKHEAP };
32+

0 commit comments

Comments
 (0)