Hello,
I want to set the heap size for my CCS 5.1.09000 project running on an EVM 816X (loading on the C674X processor).
How can I check what it is currently set to? I see nothing called "heap" in my .map file. From other posts it sounded like the heap size might be listed under "sysmem" but that string is also absent from my .map file. The way I'm testing whether I've successfully increased my heap is by running my project in the debugger. I have been getting this error:
[C674X_0] ti.sysbios.heaps.HeapMem: line 296: out of memory: handle=0x800aceb8, size=1284
xdc.runtime.Error.raise: terminating execution
I'm assuming that when I have set my heap successfully to a large value this error will go away.
If I add a line like "-heap 0x1000" to my own .cmd file, I see no change in the .map file.
If I add the value 0x1000 to the field "Heap size for C/C++ dynamic memory allocation (--heap_size, -heap)" under C6000 Linker, Basic Options, in the project properties, I see no change in the .map file.
My generated linker.cmd file has this line "-heap 0x0" but I'm not sure why. There is nothing in my platform package which specifies a heap size.
To just create a simple heap, do I need to include any modules with "heap" in the name in my .cfg file? My .cfg file currently has these lines but I don't fully understand what they will do:
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
var HeapBuf = xdc.useModule('ti.sysbios.heaps.HeapBuf');
What is the simplest way to create a heap for the project?
How can you check that your heap has been created and has the right size?
Where is a good reference for what all the heap modules in the .cfg file are for and when you might need them and when you don't need them? By the way, many links seem to be broken today. A reply to one of my posts in January pointed to this link which isn't working today: http://www.ti.com/lit/an/spraas7e/spraas7e.pdf
Thanks,
Annie