This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software: TI C/C++ Compiler
Hi all.
I have a question regarding regarding CCS and TI-compiler.
I'm doing a porting job from a consolidated project with CCS6 with compiler 5.1.6 to compiler 5.2.9.
Unfortunatelly, when I finish to compile the project without errors, the binary generated and loaded into the board cause continuosly reboot.
The magic point where the reset happens is when I try to load into SDRAM with EPIWorkAroundWrite() some images for my GUI.
The only difference between the two projects is the compiler version.
Could someone help me to understand the difference between TI-compiler 5.1.6 and 5.2.9 ?
Thanks in advance
Marco Crivellari
Hello Marco,
Can you post some of the code so we can better understand this?
Do you have optimizations on, and if so, at what level?
Also, if you do have optimizations on, can you turn them off and see if the issue still persists? That could indicate if optimizations are a possible issue.
Lastly, CCS is free now and TM4C is well supported on newer versions, can you try the same with CCS v9.1 and the latest LTS compiler and see how that works? Even if just to help give us another data point here as this is a very obscure issue as it stands right now.
Hi Ralph,
thank you for your reply.
As a matter of fact I've already tried to compile with CCs9.1 and last arm-ti compiler v.18 but the problem is always the same.
I think you are right when you talk about optimization, and for that reason I'll do same try with these parameters.
I'll let you know the result of this tuning and meanwhile I'll post you the piece of code where the system stuck.
//***************************************
uint8_t *pData = (0x10000000 + offset);
int32_t iRead = 0;
int32_t iSizeAlloc = getSize( filename );
int8_t buff = 0;
fp = fopen( filename );
iRead = iSizeAlloc;
while( iRead > 0 )
{
buff = fgetc( fp );
EPIWorkaroundByteWrite( pData, buff );
pData++;
iRead--;
}
fclose(fp);
Hello Marco,
I would also recommend trying to increase the stack size. The compiler may also have adjusted the stack usage and is now causing a stack overflow where there wasn't one before. The type of code you posted makes me feel the stack could be in question here.