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

-o3优化等级时加入Hyperlink传输后出现程序在for循环时卡死的现象

如题,我现在程序在-o3优化等级时加入Hyperlink传输后出现程序在for循环时卡死的现象,但把优化等级降到-o1时就不会出现卡死的现象了。。。请问怎么解决让优化等级调到-o3程序又不跑飞哈

James Li2:

下面是一种O3出现死循环的场景,不一定和hyperlink有关。如果你代码中有类似的做法,需要注意while(1){ 查询memory中的标志位变量,且这个变量被其他master(如DMA等)修改 if( 标志位变量改变 ) break; }改正的方法是把"memory中的标志位变量"定义成volatile,否则O3的时候,编译器有可能把反复load同一个内存变量的语句优化掉导致死循环。

JY LI:

回复 James Li2:

恩,我去看看,谢谢你的回答

赞(0)
未经允许不得转载:TI中文支持网 » -o3优化等级时加入Hyperlink传输后出现程序在for循环时卡死的现象
分享到: 更多 (0)