1 /*###ICF### Section handled by ICF editor, don't touch! ****/
2 /*-Editor annotation file-*/
3 /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v2_1.xml" */
6 define symbol __ICFEDIT_intvec_start__ = 0x00000000;
9 define symbol __ICFEDIT_region_IROM1_start__ = 0x00000000;
10 define symbol __ICFEDIT_region_IROM1_end__ = 0x0003FFFF;
11 define symbol __ICFEDIT_region_IROM2_start__ = 0x0;
12 define symbol __ICFEDIT_region_IROM2_end__ = 0x0;
13 define symbol __ICFEDIT_region_EROM1_start__ = 0x0;
14 define symbol __ICFEDIT_region_EROM1_end__ = 0x0;
15 define symbol __ICFEDIT_region_EROM2_start__ = 0x0;
16 define symbol __ICFEDIT_region_EROM2_end__ = 0x0;
17 define symbol __ICFEDIT_region_EROM3_start__ = 0x0;
18 define symbol __ICFEDIT_region_EROM3_end__ = 0x0;
19 define symbol __ICFEDIT_region_IRAM1_start__ = 0x20000000;
20 define symbol __ICFEDIT_region_IRAM1_end__ = 0x20007FFF;
21 define symbol __ICFEDIT_region_IRAM2_start__ = 0x0;
22 define symbol __ICFEDIT_region_IRAM2_end__ = 0x0;
23 define symbol __ICFEDIT_region_ERAM1_start__ = 0x0;
24 define symbol __ICFEDIT_region_ERAM1_end__ = 0x0;
25 define symbol __ICFEDIT_region_ERAM2_start__ = 0x0;
26 define symbol __ICFEDIT_region_ERAM2_end__ = 0x0;
27 define symbol __ICFEDIT_region_ERAM3_start__ = 0x0;
28 define symbol __ICFEDIT_region_ERAM3_end__ = 0x0;
31 define symbol __ICFEDIT_size_cstack__ = 0x800;
32 define symbol __ICFEDIT_size_proc_s_stack__ = 0x0;
33 define symbol __ICFEDIT_size_main_ns_stack__ = 0x0;
34 define symbol __ICFEDIT_size_proc_ns_stack__ = 0x0;
35 define symbol __ICFEDIT_size_heap__ = 0x0;
37 /**** End of ICF editor section. ###ICF###*/
40 define memory mem with size = 4G;
41 define region IROM_region = mem:[from __ICFEDIT_region_IROM1_start__ to __ICFEDIT_region_IROM1_end__]
42 | mem:[from __ICFEDIT_region_IROM2_start__ to __ICFEDIT_region_IROM2_end__];
43 define region EROM_region = mem:[from __ICFEDIT_region_EROM1_start__ to __ICFEDIT_region_EROM1_end__]
44 | mem:[from __ICFEDIT_region_EROM2_start__ to __ICFEDIT_region_EROM2_end__]
45 | mem:[from __ICFEDIT_region_EROM3_start__ to __ICFEDIT_region_EROM3_end__];
46 define region IRAM_region = mem:[from __ICFEDIT_region_IRAM1_start__ to __ICFEDIT_region_IRAM1_end__]
47 | mem:[from __ICFEDIT_region_IRAM2_start__ to __ICFEDIT_region_IRAM2_end__];
48 define region ERAM_region = mem:[from __ICFEDIT_region_ERAM1_start__ to __ICFEDIT_region_ERAM1_end__]
49 | mem:[from __ICFEDIT_region_ERAM2_start__ to __ICFEDIT_region_ERAM2_end__]
50 | mem:[from __ICFEDIT_region_ERAM3_start__ to __ICFEDIT_region_ERAM3_end__];
51 define region NSC_region = mem:[from 0x0003F000 to 0x0003FFFF];
54 define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
55 define block PROC_STACK_S with alignment = 8, size = __ICFEDIT_size_proc_s_stack__ { };
56 define block MAIN_STACK_NS with alignment = 8, size = __ICFEDIT_size_main_ns_stack__ { };
57 define block PROC_STACK_NS with alignment = 8, size = __ICFEDIT_size_proc_ns_stack__ { };
58 define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
61 do not initialize { section .noinit };
62 initialize by copy { readwrite };
63 if( isdefinedsymbol(__USE_DLIB_PERTHREAD) )
65 /* Required in a multi-threaded application. */
66 initialize by copy with packing = none { section __DLIB_PERTHREAD };
70 place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
72 place in IROM_region { readonly };
73 place in EROM_region { readonly section application_specific_ro };
74 place in NSC_region { section Veneer$$CMSE };
76 place in IRAM_region { readwrite, block CSTACK, block PROC_STACK_S, block MAIN_STACK_NS, block PROC_STACK_NS, block HEAP };
77 place in ERAM_region { readwrite section application_specific_rw };