2

以前版本的英特尔® 64 和 IA-32 架构优化参考手册包含以下编码规则:

汇编/编译器编码规则 12。(M 影响,H 通用性)
所有分支目标应为 16 字节对齐。

2020 年 5 月版本没有此规则。为什么被移除?

如Linux Kernel Mailing List 中所讨论,对齐到 16 个字节是有代价的。但这是一个长期存在的规则,ARM 对其微架构也有同样的规则。

考虑将子程序入口点和分支目标与四字(16 字节)边界对齐。

AMD针对 AMD 系列 17h 处理器的软件优化指南说:

拥有 16 字节对齐的分支目标可以获得最大的选择器吞吐量,并避免缓存行结束短操作缓存 (OC) 条目。

4

0 回答 0