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.

[参考译文] 编译器/TMS320F2.8377万S:使用优化时浮点比较操作错误

Guru**** 2482225 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/667093/compiler-tms320f28377s-float-compare-action-wrong-when-using-optimization

部件号:TMS320F2.8377万S

工具/软件:TI C/C++编译器

浮子A,B;

如果(A >= 0)

B = 0;

}

编译器18.1 .0.1.LTS在opt-register级别输出为:

MOV32    R0H,@_A
MINF32   R0H,#0  
MOV32    @_B,R0H

如果使用6.4 .A.12,我得到了正确的结果

MOV32    R0H,@_A
CMPF32   R0H,#0
MOVST0   ZF,NF
BF       $C$L1,LT
零     R0H
MOV32    @_B,R0H

$C$L1:

....

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您通知我们此问题。  我可以复制它。  我在 SDOWP系统中提交了CodeGen-4518以对此进行调查。  欢迎您使用我签名中下面的SDOWP链接进行关注。

    谢谢,此致,

    -George

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    正如我在CodeGen-4517 (现在标记为CodeGen-4518的副本)中所报告的那样,我在使用16.9 .7的F2.8069万上遇到了类似的问题。

    我想进一步报告,我只使用优化级别0 (寄存器优化),而不是像其他有类似问题的人所报告的那样使用1或更高。

    由于没有解决方法,我不得不返回到一个我知道没有此问题的编译器版本:6.2 .6。 此版本已过时,缺少一些有用的功能,如能够在调试器中查看静态变量。

    您是否知道此问题何时出现? 我想使用比6.2 更新的版本。6。 谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    有问题的代码首先出现在15.12 .0中。 如果15.9 .0.STS在某个地方仍然可用,请查找它。 否则,6.4 .x比6.2 .x更新了一年半,尽管仍然很旧。