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.
大家好、我们正与 TMS570LC4357 MCU 合作、其中包含一个迁移到 TI Clang v3.0.STS 的项目。 我正在尝试使用条件汇编、并在 TI 安全库中看到了该文件、我们也在使用该库:
然而,在测试后(通过对指令重新编号以引起一个错误),似乎表达式$$isdefed 返回0。 如指令所述、_vfp_support_在工程的预定义符号中进行定义。 然后、我在 Clang 迁移指南中发现了这一点:
但是、当尝试使用.ifdef 时、会发生以下情况:
另外、我也注意到了这一点:
请将_VFP_support_替换为 _TI_VFP_support__
它使用了$defined (__TI_VFP_support__),但我感到困惑,为什么您发送给我的指南说,宏应该替换为__ARM_FP_(顺便说一下,它不起作用)。
此外、如何将条件汇编与我自己的预定义宏配合使用?
尊敬的 Fermando:
对于安全应用、强烈建议将 TI ARMCL 用于 Hercules 器件。
那么、对于 Clang、没有办法做到这一点呢? 是否有任何关于文档错误的信息?
#if defined (__ARM_FP)可以在 C/C++代码中使用。
.if _TI_VFP_support___ 用于汇编代码
armcl 和 tiarmclang 共享一些宏符号。
感谢链接。 我现在知道、.asm 文件正在通过标志-XTI-asm 以静默方式传递到旧版汇编器中、该标志会解释有关未使用参数的警告。 .asm 文件必须转换为 GNU 语法、且文件扩展名必须更改为.s 或.S (取决于文件是否需要预处理)。