Tool/software: TI C/C++ Compiler
Hello.
The compiler is complaining that the program has run out of available memory. I've tried removing various functions, arrays, etc. but to no avail. Looking at the .map file showed that the H0SRAM starts at 0x003f8000 with length 0x00002000 with 0x19d left over (see below). The error displayed is below. How can I be out of available memory if it has 0x19d bytes remaining? More importantly, how do I overcome this compilation/linker problem?
"./myfilecfg.cmd", line 387: error #10099-D: program will not fit into
available memory. run placement with alignment/blocking fails for section
".H0SARAM$heap" size 0x200 page 1. Available memory ranges:
H0SARAM size: 0x2000 unused: 0x19d max hole: 0x19d
error #10010: errors encountered during linking; "820-0264-a10.out" not built
<Linking>
>> Compilation failure
gmake: *** [820-0264-a10.out] Error 1
gmake: Target `all' not remade because of errors.
MEMORY CONFIGURATION
name origin length used unused attr fill
---------------------- -------- --------- -------- -------- ---- --------
PAGE 0:
H0SARAM 00000000 00002000 00000000 00002000 RWIX
L1SARAM_A 00009000 000000ff 00000023 000000dc RWIX
OTP 003d7800 00000400 00000000 00000400 RWIX
CRC 003d8000 00000001 00000000 00000001 RWIX
BEGIN_FLASH 003d8001 00000002 00000002 00000000 RWIX
FLASH_BJ_APPLICATION 003d8003 0001dffc 0001c180 00001e7c RWIX
FLASH_A_BOOTLOADER 003f6000 00001f80 00000000 00001f80 RWIX
CSV_RSVD 003f7f80 00000076 00000000 00000076 RWIX
PASSWORDS 003f7ff8 00000008 00000000 00000008 RWIX
BOOTROM 003ff000 00000fc0 00000000 00000fc0 RWIX
PAGE 1:
M0SARAM 00000040 000003c0 00000000 000003c0 RWIX
M1SARAM 00000400 00000400 00000000 00000400 RWIX
DEV_EMU 00000880 00000180 000000d2 000000ae RWIX
FLASH_REGS 00000a80 00000060 00000008 00000058 RWIX
CSM 00000ae0 00000010 00000010 00000000 RWIX
XINTF 00000b20 00000020 00000020 00000000 RWIX
CPU_TIMER0 00000c00 00000008 00000008 00000000 RWIX
PIE_CTRL 00000ce0 00000020 0000001a 00000006 RWIX
PIEVECT 00000d00 00000100 00000100 00000000 RWIX
ECANA 00006000 00000040 00000034 0000000c RWIX
ECANA_LAM 00006040 00000040 00000040 00000000 RWIX
ECANA_MOTS 00006080 00000040 00000040 00000000 RWIX
ECANA_MOTO 000060c0 00000040 00000040 00000000 RWIX
ECANA_MBOX 00006100 00000100 00000100 00000000 RWIX
SYSTEM 00007010 00000020 00000020 00000000 RWIX
SPIA 00007040 00000010 00000010 00000000 RWIX
SCIA 00007050 00000010 00000010 00000000 RWIX
XINTRUPT 00007070 00000010 00000010 00000000 RWIX
GPIOMUX 000070c0 00000020 00000020 00000000 RWIX
GPIODAT 000070e0 00000020 00000020 00000000 RWIX
ADC 00007100 00000020 0000001a 00000006 RWIX
EVA 00007400 00000040 00000032 0000000e RWIX
EVB 00007500 00000040 00000032 0000000e RWIX
SCIB 00007750 00000010 00000010 00000000 RWIX
MCBSPA 00007800 00000040 00000025 0000001b RWIX
LSARAM 00008000 00001000 00000db4 0000024c RWIX
L1SARAM_B 00009100 00000f00 00000f00 00000000 RWIX
ZONE6_ASRAM 00100000 0003ffff 0001aba8 00025457 RWIX
CSM_PWL 003f7ff8 00000008 00000008 00000000 RWIX
H0SARAM 003f8000 00002000 00001e63 0000019d RWIX