TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320C6678: c66x,优化

Part Number:TMS320C6678

void conv(U32 *restrict pu32_x, U32 *restrict pu32_h, U32 *restrict pu32_out, U32 u32_xlen, U32 u32_hlen)
{
int i,j;
int count = 0;
int count1 ;
int p_x,p_h;

U32 u32_outlen;
U32 u32_xtemp;
U32 u32_htemp;

u32_outlen = u32_xlen+u32_hlen-1;
for (i = 0; i< u32_outlen; i++)
{
pu32_out[count] = 0;
count1 = 0;
for (j = 0; j < count; j++)
{
//u32_xtemp = (count1 > (u32_xlen-1))? (0) : (pu32_x[count1]);
//u32_htemp = ((count-count1) > (u32_hlen-1) ? (0) : (pu32_h[count-count1]));
p_x = count1 < (u32_xlen);
p_h = (count-count1) < (u32_hlen);
u32_xtemp = p_x * pu32_x[count1];
u32_htemp = p_h * pu32_h[count-count1];
pu32_out[count] += u32_xtemp * u32_htemp;
count1++;
}
count++;
}
}

这段代码,优化等级-o2,编译器的feekback显示: Disqualified loop: Loop contains control code。请问哪里隐含了control code,并且怎么解决,谢谢

Nancy Wang:

参考:

e2e.ti.com/…/disqualified-loop-loop-contains-control-code

,

user6418822:

感谢您的回复,但是我并不能从中得到启发,我的内循环中并没有if语句之类的控制语句,可不可以给我讲的更详细一些,我的内循环哪里出了问题,谢谢啦

,

Nancy Wang:

建议发到英文论坛,会有编译器的相关专家给你支持。

赞(0)
未经允许不得转载:TI中文支持网 » TMS320C6678: c66x,优化
分享到: 更多 (0)