我听说过很多关于Altivec寄存器但我甚至没有在POWER9 ISA上找到它。在该文档中,我只在第6章“矢量工具”和第7章“矢量标量浮点运算”中找到VR和VSR寄存器。
On ABI我注意到寄存器是如何物理分配的:
我仍然不明白为什么有2组。 Altivec是遗产吗?
据我所知,以下是发生的事情:
这是对的吗?
答案 0 :(得分:3)
稍微澄清术语:
VSX增加了更多的向量寄存器(32个以上,但每个寄存器仍为128位)和VSX特定指令。如您所见,编号较高的VSX寄存器与用于VMX操作的寄存器共享。因此,在单个进程中混合使用VMX和VSX指令是不明智的,除非您注意寄存器分配。
我对英特尔的矢量实现并不太熟悉,但你的类比听起来对我来说是正确的。