ZHCUAV8W january 1998 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
以下是其他选项的详细说明:
--advice:power={all|none| rulespec} |
允许根据 ULP(超低功耗)Advisor 规则检查代码,以避免可能出现的功耗不足。更多详细信息,请参阅 www.ti.com/ulpadvisor。rulespec 参数是用逗号分隔的说明符列表。有关详细信息,请参阅节 5.4。 |
--advice:power_severity={error| warning|remark|suppress} |
设置 ULP Advisor 规则的诊断严重程度。 |
--check_misra={all|required| advisory|none|rulespec} |
显示指定数量或类型的 MISRA-C 文档。如果要在源代码中启用 CHECK_MISRA 和 RESET_MISRA pragma,则必须使用此选项。rulespec 参数是用逗号分隔的说明符列表。有关详细信息,请参阅节 5.3。 |
--float_operations_allowed= {none|all|32|64} | 限制允许的浮点运算类型。默认为 all。如果设置为 none、32 或 64,则检查应用程序是否将在运行时执行运算。例如,如果在命令行上指定了 --float_operations_allowed=32,则编译器将在生成双精度运算时发出错误消息。这可以用来确保双精度运算不会意外地被引入到应用程序中。检查是在进行宽松模式优化后执行的,因此完全删除非法运算不会产生任何诊断消息。 |
--fp_mode={relaxed|strict} | 默认的浮点模式为 strict。要启用宽松浮点模式,请使用 --fp_mode=relaxed 选项。宽松浮点模式会使双精度浮点计算和存储在可能的情况下转换为单精度浮点。这种行为不符合 ISO 要求,但会加快代码速度,准确性会有降低。宽松模式下会发生以下具体的变化:
|
--fp_reassoc={on|off} | 启用或禁用浮点算术的重新组合。如果指定了 --fp_mode=relaxed,则自动设置 --fp_reassoc=on。如果设置了 --strict_ansi,则设置 --fp_reassoc=off,因为浮点算术的重新关联是违反 ANSI 要求的。 |
因为浮点值的精度有限,并且浮点运算是四舍五入的,所以浮点算术既不具有结合性,也不具有分配性。。例如,(1 + 3e100) - 3e100 不等于 1 + (3e100 - 3e100)。如果严格遵循 IEEE 754,编译器通常不能重新关联浮点运算。使用 --fp_reassoc=on 时,允许编译器重新关联代数,但代价是某些运算的精度会降低。 | |
--misra_advisory={error| warning|remark|suppress} |
为建议性MISRA-C:2004 规则设置诊断严重程度。 |
--misra_required={error| warning|remark|suppress} |
为所需的 MISRA-C:2004 规则设置诊断严重程度。 |
--preinclude=filename | 在编译开始时包含 filename 的源代码。这可用于建立标准的宏定义。在包含搜索列表上的目录中搜索文件名。文件按照指定的顺序进行处理。 |
--printf_support={full| nofloat|minimal} |
支持更小、有限版本的 printf 函数系列(sprintf、fprintf 等)和 scanf 函数系列(sscanf、fscanf 等)运行时支持函数。有效值为:
|
没有运行时错误检查来检测是否使用了未包含支持的格式说明符。--printf_support 选项位于 --run_linker 选项之前,并且必须在执行最终链接时使用。 | |
--sat_reassoc={on|off} | 启用或禁用饱和算术的重新组合。 |