Hi,
I'm adding a new feature into current baseline. Since the free space in IRAM is not sufficient for this new feature both for code section and bss section, I located it in to SDRAM. Almost the baseline code and data are in IRAM. While I tried to compile the code, I got below errors. I've added keyword far in front of the global variable of this new feature. I tried to put the baseline code into SDRAM, in this case, no error occurred. Have tried "--mem_model:data=far", did not work. How can I make this right? My goal is to keep the baseline in IRAM as it is, and put the new feature in SDRAM.
"c:\ti/c6000/cgtools/bin/cl6x" -@"Bp1Dsp.Release.lkf"
>> error: relocation overflow occured at address 0x00000f50 in section
'.edr_text' of input file 'Release/Bp1Objs/CircularBuffers.obj'.
The 32-bit PC-relative displacement -536838080 at this location is
too large to fit into the 21-bit PC-Relative field; the destination
address is too far away from the instruction. You may need to add a
mask to the assembly instruction or use other target specific
assembly features if you really only need the lowest 21 bits of
this symbol. Please see the section on Relocation in the Assembly
User's Guide.
>> error: relocation overflow occured at address 0x00000f70 in section
'.edr_text' of input file 'Release/Bp1Objs/CircularBuffers.obj'.
The 32-bit PC-relative displacement -536838088 at this location is
too large to fit into the 21-bit PC-Relative field; the destination
address is too far away from the instruction. You may need to add a
mask to the assembly instruction or use other target specific
assembly features if you really only need the lowest 21 bits of
this symbol. Please see the section on Relocation in the Assembly
User's Guide.
....
Thanks,
Jane