工具/软件:TI C/C++编译器
你好
在我们的其中一个产品中、我们最近将编译器 C2000版本从3.09更改为 v6.4、对于该版本、编译器开关方面的唯一显著变化与优化相关(均使用-O2级别)。 新版本添加循环展开(SPRU514H 第55页显示了-O2的编译器选项)。
我的问题是、是否可以在特定优化级别中禁用一个优化选项?
在这种情况下、禁用循环展开、同时仍使用-O2。
此致
Bob 熏肉
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.
工具/软件:TI C/C++编译器
你好
在我们的其中一个产品中、我们最近将编译器 C2000版本从3.09更改为 v6.4、对于该版本、编译器开关方面的唯一显著变化与优化相关(均使用-O2级别)。 新版本添加循环展开(SPRU514H 第55页显示了-O2的编译器选项)。
我的问题是、是否可以在特定优化级别中禁用一个优化选项?
在这种情况下、禁用循环展开、同时仍使用-O2。
此致
Bob 熏肉
感谢您对本主题的反馈、这似乎是 我们 想要的。
但是 、我们 仍然不确定这对优化级别2 (-O2)的使用有何影响。
实际上 、我们想要的是以绿色突出显示优化选项、但以红色突出显示优化选项。
•-opt_level=off 或-Ooff
–不执行优化
•-opt_level=0或-O0
–执行控制流图简化
–将变量分配给寄存器
–执行循环旋转
–消除未使用的代码
–简化表达式和语句
–扩展对内联声明的函数的调用
•-opt_level=1或-O1
执行所有-opt_level=0 (-O0)优化、此外:
–执行本地复制/常量传播
–删除未使用的赋值
–消除本地常用表达式
•-opt_level=2或-O2
–执行所有-opt_level=1 (-O1)优化、此外:
–执行循环优化
–消除全局通用子表达式
–消除全局未使用的分配
–执行循环展开
根据您之前的答复、我们了解我们可以优化速度、最终 可以消除循环展开、但这会如何影响其他优化选项?
这是否可以与特定的优化级别(例如-O2)一起使用?
此致
Bob 熏肉