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.
1. I have a CCSv4 project built in debug mode and no optimizations. When I execute the function / line coverage tool, it produces a profile report. Is there a documentation to undertsand the fields in the report, say Inst exec count, CPU instruction condition false etc..
2. For certain functions I observe that though all the lines are executed (when I step through the code), the tool shows that only the start & the last line is executed and all the other lines are not executed. What could be the reason for this? How can I understand as to why the tool produced this result?
Can you please provide information on the two issues I am observing??
Hi Girish
Girish Srinivasa said:1. I have a CCSv4 project built in debug mode and no optimizations. When I execute the function / line coverage tool, it produces a profile report. Is there a documentation to undertsand the fields in the report, say Inst exec count, CPU instruction condition false etc..
There is a wiki topic that describes the simulator events: http://processors.wiki.ti.com/index.php/Simulator_Analysis_Event_Description
Girish Srinivasa said:2. For certain functions I observe that though all the lines are executed (when I step through the code), the tool shows that only the start & the last line is executed and all the other lines are not executed. What could be the reason for this? How can I understand as to why the tool produced this result?
Please provide the full CCS version number, the exact simulator being used, and a small test case.
Thanks
ki
The wiki topic provides information on the simulator events corresponding to the cycle profiler. But the information corresponding to the line/function coverage information fields
say Inst exec count, CPU instruction condition false is missing. Please point me to the explanation of these fields?
Lee,
The following below is the sample code
struct buffers{
int ptr[4];
int inputId;
int isRefAvailable ;
int frameType;
int gopCycle;
};
struct BufferHandle{
int readBufIdx;
int writeBufIdx ;
int validCount ;
int size;
struct buffers bufs[10];
};
void main(){
int i ;
struct BufferHandle handle;
handle.readBufIdx = 0 ;
handle.writeBufIdx = 0 ;
handle.validCount = 0 ;
handle.size = 5;
for (i = 0 ; i < (handle.size) ; i++)
{
handle.bufs[i].ptr[0] = NULL ;
handle.bufs[i].ptr[1] = NULL ;
handle.bufs[i].ptr[2] = NULL ;
handle.bufs[i].inputId = 0 ;
handle.bufs[i].isRefAvailable = 1 ;
handle.bufs[i].frameType = 0 ;
handle.bufs[i].gopCycle = 0 ;
}
}
The following is the snap shot of the reported problem.
RED indicates - line not executed
GREEN indicates that the line is executed.