Skip to content

Commit 4ddf604

Browse files
author
deepikabhavnani
committed
Add Dynamic heap support to IAR
Two new block properties available in linker configuration files: "expanding size" and "minimum size" for IAR 8.11.2 and above Sample: define block HEAP with expanding size, minimum size = 16K, alignment = 8 {}; This block will expand to consume all remaining available space in the range where it is placed. If several such blocks end up in the same range, they will share the remaining space. Cannot place a block with expanding size inside another block with expanding size, inside a block with maximum size, or inside an overlay.
1 parent 70956ee commit 4ddf604

File tree

109 files changed

+110
-112
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

109 files changed

+110
-112
lines changed

targets/TARGET_ARM_SSG/TARGET_BEETLE/device/TOOLCHAIN_IAR/BEETLE.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ initialize by copy { readwrite };
4242
do not initialize { section .noinit };
4343

4444
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
45-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
45+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
4646

4747
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
4848
place in ROM_region { readonly };

targets/TARGET_ARM_SSG/TARGET_CM3DS_MPS2/device/TOOLCHAIN_IAR/MPS2.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ initialize by copy { readwrite };
6868
do not initialize { section .noinit };
6969

7070
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
71-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
71+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
7272

7373
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
7474
place in ROM_region { readonly };

targets/TARGET_Freescale/TARGET_K20XX/TARGET_K20D50M/device/TOOLCHAIN_IAR/MK20D5.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_r
3434
define region FlexRAM_region = mem:[from __region_FlexRAM_start__ to __region_FlexRAM_end__];
3535

3636
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
37-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
37+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3838

3939
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
4040

targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL05Z/device/TOOLCHAIN_IAR/MKL05Z4.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to (__FlashCon
2727
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
2828

2929
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
30-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
30+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3131

3232
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
3333

targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL25Z/device/TOOLCHAIN_IAR/MKL25Z4.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to (__FlashCon
2626
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
2727

2828
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
29-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
29+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3030

3131
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
3232

targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL26Z/device/TOOLCHAIN_IAR/MKL26Z4.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to (__FlashCon
2727
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
2828

2929
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
30-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
30+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3131

3232
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
3333

targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL46Z/device/TOOLCHAIN_IAR/MKL46Z4.icf

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to (__FlashCon
2727
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
2828

2929
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
30-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31-
30+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3231
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
3332

3433
initialize by copy { readwrite };

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K66F/device/TOOLCHAIN_IAR/MK66FN2M0xxx18.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
110110
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
111111

112112
define block CSTACK with alignment = 8, size = __size_cstack__ { };
113-
define block HEAP with alignment = 8, size = __size_heap__ { };
113+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
114114
define block RW { readwrite };
115115
define block ZI { zi };
116116

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K82F/device/TOOLCHAIN_IAR/MK82FN256xxx15.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
105105
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
106106

107107
define block CSTACK with alignment = 8, size = __size_cstack__ { };
108-
define block HEAP with alignment = 8, size = __size_heap__ { };
108+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
109109
define block RW { readwrite };
110110
define block ZI { zi };
111111

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL27Z/device/TOOLCHAIN_IAR/MKL27Z64xxx4.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ define region CSTACK_region = mem:[from m_data_end-__size_cstack__+1 to m_data_e
9797
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
9898

9999
define block CSTACK with alignment = 8, size = __size_cstack__ { };
100-
define block HEAP with alignment = 8, size = __size_heap__ { };
100+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
101101
define block RW { readwrite };
102102
define block ZI { zi };
103103

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL43Z/device/TOOLCHAIN_IAR/MKL43Z256xxx4.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ define region CSTACK_region = mem:[from m_data_end-__size_cstack__+1 to m_data_e
9494
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
9595

9696
define block CSTACK with alignment = 8, size = __size_cstack__ { };
97-
define block HEAP with alignment = 8, size = __size_heap__ { };
97+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
9898
define block RW { readwrite };
9999
define block ZI { zi };
100100

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL82Z/device/TOOLCHAIN_IAR/MKL82Z128xxx7.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ define region CSTACK_region = mem:[from m_data_end-__size_cstack__+1 to m_data_e
108108
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
109109

110110
define block CSTACK with alignment = 8, size = __size_cstack__ { };
111-
define block HEAP with alignment = 8, size = __size_heap__ { };
111+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
112112
define block RW { readwrite };
113113
define block ZI { zi };
114114

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW24D/device/TOOLCHAIN_IAR/MKW24D512xxx5.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
104104
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
105105

106106
define block CSTACK with alignment = 8, size = __size_cstack__ { };
107-
define block HEAP with alignment = 8, size = __size_heap__ { };
107+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
108108
define block RW { readwrite };
109109
define block ZI { zi };
110110

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW41Z/device/TOOLCHAIN_IAR/MKW41Z512xxx4.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ define region CSTACK_region = mem:[from m_data_end-__size_cstack__+1 to m_data_e
103103
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
104104

105105
define block CSTACK with alignment = 8, size = __size_cstack__ { };
106-
define block HEAP with alignment = 8, size = __size_heap__ { };
106+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
107107
define block RW { readwrite };
108108
define block ZI { zi };
109109

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K22F/TARGET_MCU_K22F512/device/TOOLCHAIN_IAR/MK22F51212.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
101101
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
102102

103103
define block CSTACK with alignment = 8, size = __size_cstack__ { };
104-
define block HEAP with alignment = 8, size = __size_heap__ { };
104+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
105105
define block RW { readwrite };
106106
define block ZI { zi };
107107

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K24F/TARGET_MCU_K24F1M/device/TOOLCHAIN_IAR/MK24FN1M0xxx12.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
108108
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
109109

110110
define block CSTACK with alignment = 8, size = __size_cstack__ { };
111-
define block HEAP with alignment = 8, size = __size_heap__ { };
111+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
112112
define block RW { readwrite };
113113
define block ZI { zi };
114114

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K64F/device/TOOLCHAIN_IAR/MK64FN1M0xxx12.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
117117
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
118118

119119
define block CSTACK with alignment = 8, size = __size_cstack__ { };
120-
define block HEAP with alignment = 8, size = __size_heap__ { };
120+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
121121
define block RW { readwrite };
122122
define block ZI { zi };
123123

targets/TARGET_Maxim/TARGET_MAX32600/device/TOOLCHAIN_IAR/MAX32600.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ define region RAM_region = mem:[from __region_RAM_start__ to __region_RAM
1818
define symbol __size_cstack__ = 0x0800;
1919
define symbol __size_heap__ = 0x3000;
2020
define block CSTACK with alignment = 8, size = __size_cstack__ { };
21-
define block HEAP with alignment = 8, size = __size_heap__ { };
21+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2222

2323
initialize by copy { readwrite };
2424
do not initialize { section .noinit };

targets/TARGET_Maxim/TARGET_MAX32610/device/TOOLCHAIN_IAR/MAX32610.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ define region RAM_region = mem:[from __region_RAM_start__ to __region_RAM
1818
define symbol __size_cstack__ = 0x0800;
1919
define symbol __size_heap__ = 0x3000;
2020
define block CSTACK with alignment = 8, size = __size_cstack__ { };
21-
define block HEAP with alignment = 8, size = __size_heap__ { };
21+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2222

2323
initialize by copy { readwrite };
2424
do not initialize { section .noinit };

targets/TARGET_Maxim/TARGET_MAX32620/device/TOOLCHAIN_IAR/MAX32620.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ define region RAM_region = mem:[from __region_RAM_start__ to __region_RAM
1818
define symbol __size_cstack__ = 0x1000;
1919
define symbol __size_heap__ = 0x4000;
2020
define block CSTACK with alignment = 8, size = __size_cstack__ { };
21-
define block HEAP with alignment = 8, size = __size_heap__ { };
21+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2222

2323
initialize by copy { readwrite };
2424
do not initialize { section .noinit };

targets/TARGET_Maxim/TARGET_MAX32625/device/TOOLCHAIN_IAR/TARGET_MAX32625NEXPAQ/MAX32625.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ define region RAM_region = mem:[from __region_RAM_start__ to __region_RAM
1818
define symbol __size_cstack__ = 0x5000;
1919
define symbol __size_heap__ = 0xA000;
2020
define block CSTACK with alignment = 8, size = __size_cstack__ { };
21-
define block HEAP with alignment = 8, size = __size_heap__ { };
21+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2222

2323
initialize by copy { readwrite };
2424
do not initialize { section .noinit };

targets/TARGET_Maxim/TARGET_MAX32625/device/TOOLCHAIN_IAR/TARGET_MAX32625_NO_BOOT/MAX32625.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ define region RAM_region = mem:[from __region_RAM_start__ to __region_RAM
1818
define symbol __size_cstack__ = 0x5000;
1919
define symbol __size_heap__ = 0xA000;
2020
define block CSTACK with alignment = 8, size = __size_cstack__ { };
21-
define block HEAP with alignment = 8, size = __size_heap__ { };
21+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2222

2323
initialize by copy { readwrite };
2424
do not initialize { section .noinit };

targets/TARGET_Maxim/TARGET_MAX32630/device/TOOLCHAIN_IAR/MAX3263x.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ define region RAM_region = mem:[from __region_RAM_start__ to __region_RAM
1818
define symbol __size_cstack__ = 0x5000;
1919
define symbol __size_heap__ = 0xA000;
2020
define block CSTACK with alignment = 8, size = __size_cstack__ { };
21-
define block HEAP with alignment = 8, size = __size_heap__ { };
21+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2222

2323
initialize by copy { readwrite };
2424
do not initialize { section .noinit };

targets/TARGET_NORDIC/TARGET_MCU_NRF51822/device/TOOLCHAIN_IAR/TARGET_MCU_NORDIC_16K/nRF51822_QFAA.icf

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2020
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
2121

2222
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
23-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
24-
23+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2524
initialize by copy { readwrite };
2625
do not initialize { section .noinit };
2726

targets/TARGET_NORDIC/TARGET_MCU_NRF51822/device/TOOLCHAIN_IAR/TARGET_MCU_NORDIC_32K/nRF51822_QFAA.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2121
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
2222

2323
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
24-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
24+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2525

2626
initialize by copy { readwrite };
2727
do not initialize { section .noinit };

targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF51/TARGET_MCU_NRF51822_UNIFIED/device/TOOLCHAIN_IAR/TARGET_MCU_NORDIC_16K/nRF51822_QFAA.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2222
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
2323

2424
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
25-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
25+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2626

2727
initialize by copy { readwrite };
2828
do not initialize { section .noinit };

targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF51/TARGET_MCU_NRF51822_UNIFIED/device/TOOLCHAIN_IAR/TARGET_MCU_NORDIC_32K/nRF51822_QFAA.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2323
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
2424

2525
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
26-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
26+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2727

2828
initialize by copy { readwrite };
2929
do not initialize { section .noinit };

targets/TARGET_NUVOTON/TARGET_M451/device/TOOLCHAIN_IAR/M453.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2222
define region IRAM_region = mem:[from __ICFEDIT_region_IRAM_start__ to __ICFEDIT_region_IRAM_end__];
2323

2424
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
25-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
25+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2626
/* NOTE: Vector table base requires to be aligned to the power of vector table size. Give a safe value here. */
2727
define block IRAMVEC with alignment = 1024, size = 4 * (16 + 64) { };
2828

targets/TARGET_NUVOTON/TARGET_M480/device/TOOLCHAIN_IAR/M487.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2424
define region IRAM_region = mem:[from __ICFEDIT_region_IRAM_start__ to __ICFEDIT_region_IRAM_end__];
2525

2626
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
27-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
27+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2828
/* NOTE: Vector table base requires to be aligned to the power of vector table size. Give a safe value here. */
2929
define block IRAMVEC with alignment = 1024, size = __ICFEDIT_size_intvec__ { };
3030
define block CRASH_DATA_RAM with alignment = 8, size = __ICFEDIT_size_crash_data__ { };

targets/TARGET_NUVOTON/TARGET_NANO100/device/TOOLCHAIN_IAR/NANO130.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2020
define region IRAM_region = mem:[from __ICFEDIT_region_IRAM_start__ to __ICFEDIT_region_IRAM_end__];
2121

2222
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
23-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2424

2525

2626
initialize by copy { readwrite };

targets/TARGET_NUVOTON/TARGET_NUC472/device/TOOLCHAIN_IAR/TARGET_NU_XRAM_SUPPORTED/NUC472_442.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ define region IRAM_region = mem:[from __ICFEDIT_region_IRAM_start__ to __ICFED
2525
define region XRAM_region = mem:[from __ICFEDIT_region_XRAM_start__ to __ICFEDIT_region_XRAM_end__];
2626

2727
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
28-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
28+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2929
/* NOTE: Vector table base requires to be aligned to the power of vector table size. Give a safe value here. */
3030
define block IRAMVEC with alignment = 1024, size = 4 * (16 + 142) { };
3131
/* Move non-critical libraries to external SRAM while internal SRAM is insufficient. */

targets/TARGET_NUVOTON/TARGET_NUC472/device/TOOLCHAIN_IAR/TARGET_NU_XRAM_UNSUPPORTED/NUC472_442.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2222
define region IRAM_region = mem:[from __ICFEDIT_region_IRAM_start__ to __ICFEDIT_region_IRAM_end__];
2323

2424
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
25-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
25+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2626
/* NOTE: Vector table base requires to be aligned to the power of vector table size. Give a safe value here. */
2727
define block IRAMVEC with alignment = 1024, size = 4 * (16 + 142) { };
2828

targets/TARGET_NXP/TARGET_LPC11U6X/device/TOOLCHAIN_IAR/TARGET_LPC11U68/LPC11U68.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ define region RAM_USB_region = mem:[from __RAM_USB_start__ to __RAM_USB_end__]
3333
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
3434

3535
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
36-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
36+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3737

3838
initialize by copy { readwrite };
3939
do not initialize { section .noinit };

targets/TARGET_NXP/TARGET_LPC11UXX/device/TOOLCHAIN_IAR/TARGET_LPC11U24_301/LPC11U24.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ define region URAM_region = mem:[from __URAM_start__ to __URAM_end__];
2828
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
2929

3030
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
31-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3232

3333
initialize by copy { readwrite };
3434
do not initialize { section .noinit };

targets/TARGET_NXP/TARGET_LPC11UXX/device/TOOLCHAIN_IAR/TARGET_LPC11U24_401/LPC11U24.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ define region URAM_region = mem:[from __URAM_start__ to __URAM_end__];
2828
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
2929

3030
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
31-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3232

3333
initialize by copy { readwrite };
3434
do not initialize { section .noinit };

targets/TARGET_NXP/TARGET_LPC11UXX/device/TOOLCHAIN_IAR/TARGET_LPC11U35_401/LPC11U35.icf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ define region URAM_region = mem:[from __URAM_start__ to __URAM_end__];
2828
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
2929

3030
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
31-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3232

3333
initialize by copy { readwrite };
3434
do not initialize { section .noinit };

0 commit comments

Comments
 (0)