Skip to content

Commit 891e1f2

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 8f48104 commit 891e1f2

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
@@ -47,7 +47,7 @@ initialize by copy { readwrite };
4747
do not initialize { section .noinit };
4848

4949
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
50-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
50+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
5151

5252
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
5353
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
@@ -71,7 +71,7 @@ initialize by copy { readwrite };
7171
do not initialize { section .noinit };
7272

7373
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
74-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
74+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
7575

7676
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
7777
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
@@ -36,7 +36,7 @@ define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_r
3636
define region FlexRAM_region = mem:[from __region_FlexRAM_start__ to __region_FlexRAM_end__];
3737

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

4141
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
4242

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
@@ -29,7 +29,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to (__FlashCon
2929
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
3030

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

3434
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
3535

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
@@ -29,7 +29,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to (__FlashCon
2929
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
3030

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

3434
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
3535

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
@@ -29,7 +29,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to (__FlashCon
2929
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
3030

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

3434
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
3535

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
@@ -29,8 +29,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to (__FlashCon
2929
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
3030

3131
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
32-
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
33-
32+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
3433
define region FlashConfig_region = mem:[from __FlashConfig_start__ to __FlashConfig_end__];
3534

3635
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
@@ -112,7 +112,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
112112
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
113113

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

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
@@ -107,7 +107,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
107107
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
108108

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

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
@@ -100,7 +100,7 @@ define region CSTACK_region = mem:[from m_data_end-__size_cstack__+1 to m_data_e
100100
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
101101

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

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
@@ -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_KL82Z/device/TOOLCHAIN_IAR/MKL82Z128xxx7.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_end-__size_cstack__+1 to m_data_e
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_KW24D/device/TOOLCHAIN_IAR/MKW24D512xxx5.icf

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

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

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
@@ -103,7 +103,7 @@ define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data
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_K24F/TARGET_MCU_K24F1M/device/TOOLCHAIN_IAR/MK24FN1M0xxx12.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_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
@@ -21,7 +21,7 @@ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
2121
define symbol __size_cstack__ = MBED_BOOT_STACK_SIZE;
2222
define symbol __size_heap__ = 0x3000;
2323
define block CSTACK with alignment = 8, size = __size_cstack__ { };
24-
define block HEAP with alignment = 8, size = __size_heap__ { };
24+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2525

2626
initialize by copy { readwrite };
2727
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
@@ -22,7 +22,7 @@ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
2222
define symbol __size_cstack__ = MBED_BOOT_STACK_SIZE;
2323
define symbol __size_heap__ = 0x3000;
2424
define block CSTACK with alignment = 8, size = __size_cstack__ { };
25-
define block HEAP with alignment = 8, size = __size_heap__ { };
25+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2626

2727
initialize by copy { readwrite };
2828
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
@@ -22,7 +22,7 @@ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
2222
define symbol __size_cstack__ = MBED_BOOT_STACK_SIZE;
2323
define symbol __size_heap__ = 0x4000;
2424
define block CSTACK with alignment = 8, size = __size_cstack__ { };
25-
define block HEAP with alignment = 8, size = __size_heap__ { };
25+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2626

2727
initialize by copy { readwrite };
2828
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
@@ -21,7 +21,7 @@ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
2121
define symbol __size_cstack__ = MBED_BOOT_STACK_SIZE;
2222
define symbol __size_heap__ = 0xA000;
2323
define block CSTACK with alignment = 8, size = __size_cstack__ { };
24-
define block HEAP with alignment = 8, size = __size_heap__ { };
24+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2525

2626
initialize by copy { readwrite };
2727
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
@@ -21,7 +21,7 @@ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
2121
define symbol __size_cstack__ = MBED_BOOT_STACK_SIZE;
2222
define symbol __size_heap__ = 0xA000;
2323
define block CSTACK with alignment = 8, size = __size_cstack__ { };
24-
define block HEAP with alignment = 8, size = __size_heap__ { };
24+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2525

2626
initialize by copy { readwrite };
2727
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
@@ -21,7 +21,7 @@ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
2121
define symbol __size_cstack__ = MBED_BOOT_STACK_SIZE;
2222
define symbol __size_heap__ = 0xA000;
2323
define block CSTACK with alignment = 8, size = __size_cstack__ { };
24-
define block HEAP with alignment = 8, size = __size_heap__ { };
24+
define block HEAP with expanding size, minimum size = __size_heap__, alignment = 8 { };
2525

2626
initialize by copy { readwrite };
2727
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
@@ -23,8 +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__ { };
27-
26+
define block HEAP with expanding size, minimum size = __ICFEDIT_size_heap__, alignment = 8 { };
2827
initialize by copy { readwrite };
2928
do not initialize { section .noinit };
3029

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
@@ -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_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
@@ -25,7 +25,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2525
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_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

3030
initialize by copy { readwrite };
3131
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
@@ -25,7 +25,7 @@ define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFED
2525
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_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

3030
initialize by copy { readwrite };
3131
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
@@ -36,7 +36,7 @@ define region RAM_USB_region = mem:[from __RAM_USB_start__ to __RAM_USB_end__]
3636
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
3737

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

4141
initialize by copy { readwrite };
4242
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
@@ -32,7 +32,7 @@ define region URAM_region = mem:[from __URAM_start__ to __URAM_end__];
3232
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
3333

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

3737
initialize by copy { readwrite };
3838
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
@@ -32,7 +32,7 @@ define region URAM_region = mem:[from __URAM_start__ to __URAM_end__];
3232
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
3333

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

3737
initialize by copy { readwrite };
3838
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
@@ -32,7 +32,7 @@ define region URAM_region = mem:[from __URAM_start__ to __URAM_end__];
3232
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
3333

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

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

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ define region SRAM1_region = mem:[from __SRAM1_start__ to __SRAM1_end__];
3636
define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
3737

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

4141
initialize by copy { readwrite };
4242
do not initialize { section .noinit };

0 commit comments

Comments
 (0)