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.

[参考译文] TMS320F280039:在 TMU1模式下且启用宽松模式的情况下、expf ()以内联方式优化、导致输入负值时出现错误

Guru**** 2395445 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1367047/tms320f280039-under-tmu1-and-relaxed-mode-is-enabled-expf-is-optimized-inline-resulting-in-an-error-when-entering-a-negative-value

器件型号:TMS320F280039
Thread 中讨论的其他器件:C2000WARE

工具与软件:

编译器版本:TI v22.6.0.1.LTS

我启用了 TMU1并设置--fp_mode=relaxed。 expf 被内联并最终调用 IEXP2F32指令、但 IEXP2F32会导致 expf 在负输入上产生不正确的结果。 例如、我分别计算 expf (1.0f)和 expf (-1.0f)、计算结果都是2.71827221。 但 expf (-1.0f)的结果应该是0.366787945。

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

    您好!

    我们的专家不在办公室。 请预计响应会有延迟。

    谢谢

    Aswin

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

    您好!

    这些代码行是您为您的应用编写的、还是来自 C2000ware 中的文件? 如果来自 C2000ware、请提供文件夹路径。

    此致、

    Delaney

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

    您好、

    它是由编译器提供的 math.h

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

    尊敬的 YuanZe:

    我能够重现该问题。 这似乎是一个编译器问题;我将在编译器团队中循环对此进行评论。

    此致、

    Delaney

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

    问题出在 math.h 中 有关包括权变措施在内的更多详细信息、请参阅以下内容:
      https://sir.ext.ti.com/jira/browse/EXT_EP-11790 
    此问题将在下一个补丁版本中得到修复。
    感谢您报告此问题。

    此致、
    Greg