为什么英特尔要从《优化参考手册》中删除16字节分支目标对齐的编码规则?

问题描述

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

组装/编译器编码规则12.(M冲击,H通用)
所有分支目标应对齐16字节。

2020年5月版本没有此规则。为什么将其删除?

对齐16个字节会产生成本,如Linux内核邮件列表上的here所述。但这是一个长期存在的规则,ARM的微体系结构也有相同的规则。

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

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

具有16个字节对齐的分支目标可以最大程度地提高选择器的吞吐量,并避免出现高速缓存行结尾的短操作高速缓存(OC)条目。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...