极术小姐姐 · 2019年07月17日

ARM编译器6.11的新功能

在2018年10月底发布的arm Compiler 6.11实现了一个新的里程碑。

arm Compiler 6.11的主要亮点是:

在Cortex-M33上获得最佳CoreMark分数:3.96 CoreMarks / MHz。
支持最新的arm架构扩展。
在一些重要嵌入式工作负载上的性能改进。
增加对C ++ 14的支持。
arm新架构的早期支持

arm Compiler一直处于支持新架构和新内核的前沿,因此arm Compiler 6.11版本在汇编器中增加了armv8.5-A架构支持,支持了一些可选功能,如内存标记扩展,分支目标指令和随机数指令。

还有支持armv8.4-A和armv8.3-A扩展的更新,例如支持指针认证功能和半精度浮点融合乘法长指令。

arm Compiler 6.11支持Cortex-A76AE,这是一种新的基于Cortex-A76 的Split-Lock版本,于2018年5月宣布。

新的安全功能 - 堆栈保护

arm Compiler 6.11现在提供对堆栈保护的alpha支持,这是一种安全功能,可防止试图利用内存访问错误的攻击,从而提高系统的整体可靠性和完整性。这可以通过使用编译器选项-fstack-protector,-fstack-protector-all来开启。此外,您还可以使用-fstack-protector-strong,其工作方式与-fstack-protector类似,但范围更广,对任何类型本地数组和变量地址的引用都提供额外的保护功能。

性能显著提高

性能是工具链中不可或缺的一部分,arm始终不断努力和投资来提高所有工作负载的整体性能和代码密度。

arm Compiler 6.11对专注于信号处理(DSP)的特定嵌入式工作负载(如CMSIS-DSP和CMSIS-NN软件库)进行了重大改进。

它还在Cortex-M33上实现了同类最佳CoreMark得分3.96 CoreMarks / MHz,在所有领先的arm架构上展示了改进的CoreMark性能。

Cortex-M7的性能也得到了显着提升,与之前版本的arm Compiler相比,性能平均提高了8-10%。

关于代码密度,arm Compiler 6.11为AArch64代码提高了约3%。

可用性和授权

arm Compiler 6.11作为独立包提供。但是,它也可以作为以下集成工具包的一部分:

arm Development Studio
Keil MDK
所有上述产品必须合适的license才可以运行。请联系您的销售代表或查询许可证。

如果使用浮动license,license服务器必须运行armlmd和lmgrd版本11.14.1.0或更高版本。arm建议您始终使用最新版本的许可证服务器软件。

总结

arm编译器6.11提供广泛的产品和架构功能,包括改进的性能和问题的修复。有关修改列表和支持的功能,请参阅arm Compiler 6.11发行说明。你可以在arm Compiler 6.11 Documentation部分找到更多资源。

如果您正在使用arm Compiler 5.x并且计划迁移到arm Compiler 6,那么移植和兼容性指南会提供大量有用的信息和建议。

推荐阅读
关注数
59981
文章数
1163
极术社区管理员小姐姐
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息