I am using Visual DSP++ version 5.0 with Update 10.1.
I am compiling programs for the ADSP-21489, and I am running into a problem with the compiler.
As I am adding features to my program, it is growing in size. At a certain point, the compiler gave the following message:
----------------Configuration: TestCode - Release----------------
prelinker: Recompiling .\Main.c
[Error li1040] ".\MachDSP.ldf":248 Out of memory in output section 'seg_pmco' in processor 'P0'
Total of 0x5d3 word(s) were not mapped.
For more details, see 'linker_log.xml' in the output directory.
Linker finished with 1 error
cc3089: fatal error: Link failed
Tool failed with exit/exception code: 1.
Build was unsuccessful.
When I look into the linker_log.xml file, I see the following at the bottom of the file:
<MSG id='02C988D8' mid='li1040' type='Error' >
<TEXT><![CDATA[Out of memory in output section 'seg_pmco' in processor 'P0'
Total of 0x5d3 word(s) were not mapped.]]></TEXT>
<EXTENDED_INFO><![CDATA[0x18c words required for .\Release\Temp_Sensor_ADC128.doj(seg_pmco):0x3ae
0x162 words required for .\Release\TestSVS.doj(seg_pmco):0x7f
0xbd words required for .\Release\UART_Service.doj(seg_pmco):0x24
0x5a words required for libc_nwc.dlb[getargv.doj](seg_pmco):0x0
0x9 words required for libc_nwc.dlb[interrup.doj](seg_pmco):0x9
0x1ad words required for libc_nwc.dlb[interrup.doj](seg_pmco):0xc
0x18 words required for libc_nwc.dlb[sure_rti.doj](seg_pmco):0x0
If I eliminate some code, the program will compile without errors again. In this case, the Loader File (ldf) file size is 174,732 bytes, and the DXE file size is 1,230,696 bytes.
So my questions are:
1. What is causing the problem?
For example, have I run into a real limitation in program size with the ADSP-21489?
I am using a "KIT" license that came with the Danvile Signal Processing dsblok, and the license has a known limitation on program size, but I'm not sure that's the limit I have hit.
2. How do I solve the problem?
For example, is there a different way to "map" the program in memory to avoid the problem?
If the problem is the license type, I suppose the solution would be to upgrade my license, right?
In any event, let me know what are the next steps necessary to solve the problem.