特定架构说明 — Alpha
Alpha 移植使用 alpha
关键词。它专注于 HP(以前是 Compaq(以前是 DEC))硬件。这涵盖了从 ev4
(称为 21064)到 ev7z
(称为 21364a)。
额外的 Alpha 关键词要求
通常期望任何为 Alpha 添加关键词的人都在 alpha@
邮件列表中。但是,如果维护者有权访问 Alpha 硬件,Alpha 团队很乐意让他们为自己的软件包添加关键词,尽管团队希望了解此事。
Alpha 指令集和性能说明
有六个基本的 Alpha 指令集标准
-
ev4
或ev45
。ev4
是 Alpha 系列的第一个 Alpha 处理器。它具有一个整数流水线和一个浮点流水线。ev45
是一个经过修改的ev4
,数据缓存和指令缓存(分别为 D-Cache 和 I-Cache)都翻倍;它还具有除法优化功能。 -
ev5
是ev45
的演进。流水线的数量翻倍,浮点流水线在 9 个阶段而不是 10 个阶段运行。ev5
支持 3 级缓存。 -
ev56
添加了 BWX 扩展,以 8 位或 16 位量子加载/存储数据。 -
pca56
添加了一组新的 MVI(运动视频指令),旨在加速视频和音频计算。 -
ev6
支持pca56
支持的所有扩展以及一组新的 FIX,用于在整数寄存器和浮点寄存器之间移动数据以及开平方。 -
ev67
是ev6
的演进,此外它还支持一组新的 CIX,增加了用于计数和查找位的指令。
当没有将 -mcpu
选项传递给 gcc
时,它默认为编译器构建所在的处理器。
-mieee
标志**应该**始终使用,除非您对 Alpha 架构有深入的了解,因此关于不筛选变量的注释在 Alpha 上非常重要。
关于 Alpha 和 PIC 的说明
通用位置无关代码策略也适用于 Alpha。实际上,如果您尝试链接 PIC 和非 PIC 代码,Alpha 系统会发出很大的抱怨。通常,这会导致编译错误并中止 emerge。