GNU Binutils 项目今日宣布发布 GNU Binutils 2.46,并将其作为 GNU/Linux 操作系统用二进制工具集的最新稳定版本。
GNU Binutils 2.46 的主要亮点包括对 AMD Zen6 处理器的支持、对 sdtrig 1.0 和 ssstrict 1.0 RISC-V 标准扩展的支持,以及通过 +sme-mop4 、 +sme-tmop 、 +ssve-bitperm 和 +ssve-fexpa 扩展对剩余 ARMv9.6 指令的支持。
此次发布还增加了对 ARMv9.7 扩展的支持,通过 -march=armv9.7-a 选项启用,以及 +f16f32dot 、 +f16f32mm 、 +f16mm 、 +gcie 、 +lscp 、 +mpamv2 、 +mtetc 、 +sme2p3 、 +sve-b16mm 、 +sve2p3 和 +tlbid 扩展的支持,并通过 +poe2 、 +tev 和 +mops-go 扩展对 POE2 和 vMTE 等未来 ARM 技术的支持。
GNU Binutils 2.46 的另一个有趣变化是支持生成 SFrame 版本 3 格式,以及 --gsframe-3 命令行选项,该选项会导致 GAS 发出版本 3 的 SFrame 部分。据开发者介绍,现有的 --gsframe 选项默认会发出 SFrame 版本 3。
SFrame v3 格式引入了对超过 2GB 文本的支持、对标记最外层框架的支持、对标记信号跳板的支持,以及对具有非 SP/FP 基础 CFA 或将 FP/RA 保存在 REG 中的“灵活”框架的支持等特性。
此外,GNU Binutils 现在可以发出具有零偏移量的 SFrame FRE,以在 SFrame 堆栈跟踪格式中传达未定义的返回地址。此外,本次发布还添加了对 ELF 目标的支持,可以使用新的“E”属性字母指定任意段的大小。
其他值得注意的变更包括,GNU Binutils 2.46 移除了 NaCl 目标支持和 Solaris/PowerPC 目标支持,增加了对 readelf 程序显示全局偏移表内容的支持,并改进了链接器标签支持。详情请查看发布公告。
GNU Binutils 2.46 可以从官方网站作为源代码 tarball 供系统集成商下载。普通用户需要等待新的 GNU Binutils 发布到其发行版的稳定仓库中,才能享受新特性和改进。
转自 GNU Binutils 2.46 Adds Support for AMD Zen6 CPUs, SFrame v3, and More – 9to5Linux
Linuxeden开源社区