• 正文
  • 相关推荐
申请入驻 产业图谱

ARM编译器V6.15性能优化及注意事项

2021/01/18
194
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

ARM 编译器Arm Compiler)V6.15 相比 V6.14 改善了很多,在 Keil MDK V5.33 升级时候就有说明。

下面结合 Keil MDK 说说使用 ARM 编译器 V6.15 优化以及注意事项。

1、基础配置

Keil MDK 配置 AC6 编译:

配置优化选项:

2、优化选项描述

AC6 默认,默认值为-O0。这种情况下,代码不做优化,适用于在线调试。

对于需要优化,但不是对速度和时间非常苛刻,通常建议使用-Os balanced

对于存储容量小的芯片,可以使用-Oz选项以获得最佳代码大小,此优化级别会降低调试体验。

对运行效率(时间)有要求的工程,可以使用-Ofast优化代码。

当然,如果使用 armlink 命令行,还有 -Omin,-Omax 等选项。

AC6 编译器的优化选项(含命令选项很多),这里可以参看我之前的一篇文章:AC5 和 AC6 优化选项重要内容和区别

3、AC6.15 的注意事项

除了在 Keil MDK 中使用常规的优化选项之外,还有很多选项,在使用的时候需要注意。

比如:-Omin将自动启用armclang -flto选项,并且生成的目标文件不适合创建静态库。

使用-Omin-Omax时,Arm 无法保证在所有代码情况下都能实现最佳的代码大小优化。

启用-ffp-mode=fast armclang 选项执行的积极优化可能会违反严格遵守语言标准的规定。

Arm

Arm

ARM公司是一家知识产权(IP)供应商,主要为国际上其他的电子公司提供高性能RISC处理器、外设和系统芯片技术授权。目前,ARM公司的处理器内核已经成为便携通讯、手持计算设备、多媒体数字消费品等方案的RISC标准。公司1990年11月由Acorn、Apple和VLSI合并而成。

ARM公司是一家知识产权(IP)供应商,主要为国际上其他的电子公司提供高性能RISC处理器、外设和系统芯片技术授权。目前,ARM公司的处理器内核已经成为便携通讯、手持计算设备、多媒体数字消费品等方案的RISC标准。公司1990年11月由Acorn、Apple和VLSI合并而成。收起

查看更多

相关推荐

登录即可解锁
  • 海量技术文章
  • 设计资源下载
  • 产业链客户资源
  • 写文章/发需求
立即登录

作者黄工,从事嵌入式软件开发工作8年有余,高级嵌入式软件工程师,业余维护公众号『strongerHuang』,分享嵌入式软硬件、单片机、物联网等内容。