The compiler cannot detect the trip count statically. To fix: Specify the expected number of iterations using a directive: #pragma loop_count.
...
// Iterate through a loop a minimum of three, maximum of ten, and average of five times
#pragma loop_count min(3), max(10), avg(5)
for (int i=start;i<=end;i++)
...#include <stdio.h>
int mysum(int start, int end, int a)
{
int iret=0;
// Iterate through a loop a minimum of three, maximum of ten, and average of five times
#pragma loop_count min(3), max(10), avg(5)
for (int i=start;i<=end;i++)
iret += a;
return iret;
}
int main()
{
int t;
t = mysum(1, 10, 3);
printf("t1=%d\r\n",t);
t = mysum(2, 6, 2);
printf("t2=%d\r\n",t);
t = mysum(5, 12, 1);
printf("t3=%d\r\n",t);
}