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.
工具/软件:TI C/C++编译器
您好!
使用上述版本进行编译时、我会得到不同的反汇编代码(使用7.4.24版本时-我得到了所需的结果)。
它仅在优化(-o3)时发生。
以下代码似乎有问题:
void func1 (short* as16Tmp1、short* ps16Pnt、short* ps16CoefPnt、short Len) { short i; __int40_t i40Temp0; for (i = 0;i < Len;i ++) { i40Temp0 =(ps16CoefPnt[i]<]<tmp1; i401_ iDs_i_imp1 ;(tmp1) as16Tmp1[14]、ps16Pnt[-2-i]); mIMacDSS__(i40Temp0、as16Tmp1[13]、ps16Pnt[-3-i]); mIMacDSS__(i40Temp0、as16Tmp1[12]、ps16Pnt[-4-i]); mIMacDSS__(i40Temp0、as16Tmp1[11]、 ps16Pnt[-5-i]); mIMacDSS__(i40Temp0、as16Tmp1[10]、ps16Pnt[-6-i]); mIMacDSS__(i40Temp0、 as16Tmp1[9]、ps16Pnt[-7-i]); mIMacDSS__(i40Temp0、as16Tmp1[8]、ps16Pnt[-8-i]); mIMacDSS__(i40Temp0、as16Tmp1[7]、ps16Pnt[-9-i]); mIMacDSS__(i40Temp0、as16Tmp1[6]、 ps16Pnt[-10-i]); mIMacDSS__(i40Temp0、as16Tmp1[5]、ps16Pnt[-11-i]); mIMacDSS__(i40Temp0、 as16Tmp1[4]、ps16Pnt[-12-i]); mIMacDSS__(i40Temp0、as16Tmp1[3]、ps16Pnt[-13-i]); mIMacDSS__(i40Temp0、as16Tmp1[2]、ps16Pnt[-14-i]); mIMacDSS__(i40Temp0、as16Tmp1[1]、 ps16Pnt[-15-i]); mIMacDSS__(i40Temp0、as16Tmp1[0]、ps16Pnt[-16-i]); ps16CoefPnt[i]= mSatSD__((i40Temp0 + 0x4000)<< 1); }
mIMacDSS 和 mSatSD 定义为:
#define mIMacDSS__(DOp1、SOp2、SOp3)((DOp1)+=(_int40_t)(((SOp2)*(SOp3)))
#define mSatSD__(DOp1)(_sat (DOp1)>> 16)
此外、还使用了以下编译器标志:
-mv6600 --abi=eabi -O3 -g --relaxed_ansi --quiet --diag_warning=225 --diag_wrap=off --no_bad_aliases --mem_model :data=far -k --obj_directory="Obj"--"../Source/EC/temp_src.c
'完成的建筑:./Source/EC/temp_src.c
看起来、如果我使用7.6.0版本进行编译、则第一个乘法(mIMacDSS__)是使用未初始化的寄存器完成的。
BTW、该问题也与版本8.2.4有关。
提前感谢、
Shay。
总之、我无法重现问题。
[引用 user="Shay Karuchi"]如果我使用7.6.0版本进行编译,看起来就像这样[/引用]
编译器版本7.6.0已使用4年以上。 并且它至少2年没有得到支持。 我很高兴看到...
Shay Karuchi 说:问题也与版本8.2.4有关。
我尝试重现8.2.4版的问题。 我找了这家……
[引用 user="Shay Karuchi"]第一个乘法(mIMacDSS__)是使用未初始化的寄存器完成的。
我找不到。 您到底是通过什么来发现这个问题的? 您确切地知道它是如何发生的?
谢谢、此致、
乔治
请提供所需的信息、说明您如何查看未初始化的寄存器的问题。
谢谢、此致、
乔治
因为已经有一段时间了,我想你已经解决了这个问题。 非常感谢您的解决。
谢谢、此致、
乔治