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.

[参考译文] TMS320F28377D:关于编译器文档

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1631058/tms320f28377d-about-the-compiler-documentation

器件型号: TMS320F28377D

嗨、编译后生成的 asm 输出与 TMS320C28x 优化 C/C++编译器 v22.6.0.LTS 用户指南(修订版 Z)的“内在函数“部分中显示的_abs16_sat 函数的输出不匹配。 第 163 页说明如下:

 

SETC OVM

MOV AH、src

ABS 符合

MOV dst、AH

CLRC OVM

 

但是、当我编译它时、输出如下:

SETC OVM;

SETC SXM;

MOV ACC,AL << 16;

ABS ACC;

MOV AL,AH;

CLRC OVM;

这里添加了“SETC SXM“、“MOV AH、src “行已更改为“MOV ACC、AL << 16“。 当然、我知道进行此调整是为了确保功能安全运行。 但是、我认为这些变化也应在文件中加以注意。 我需要为经理提供一个引用、其中包含使用这些函数的实际代码。 我不确定还有哪些差异。 感谢您提供任何帮助。

 

注意:我正在使用 CCS。 编译器版本为 v22.6.1.LTS。 对于此编译器、我使用的文档与 v22.6.0.LTS 版本相同。

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

    内在函数扩展取决于周围的代码上下文、包括参数、ABI 等 本用户指南仅提供代表预期生成的序列的简化扩展。 用户指南列表旨在传达内在函数的作用,例如: — 它设置溢出模式,获取绝对值,清除溢出模式等,同时以简化的扩展为例。 如果需要引用生成的实际代码、则使用编译器选项--src_interlist 并检查生成的与与内在函数关联的行号相对应的汇编代码。

    我提交了 EXT_EP-13290 、用于更新用户指南表 7-6 的上述详细信息。 欢迎点击这个链接。