【发布时间】:2016-12-13 18:30:54
【问题描述】:
如何只保存和恢复 ppc64le 程序集中的 CR2-CR4 寄存器?
我知道 mflr 和 mtlr 指令。但我只想要cr2-cr4
【问题讨论】:
标签: powerpc
如何只保存和恢复 ppc64le 程序集中的 CR2-CR4 寄存器?
我知道 mflr 和 mtlr 指令。但我只想要cr2-cr4
【问题讨论】:
标签: powerpc
CRx 实际上并不是寄存器,而是 32 字节寄存器中的 4 字节字段。您可以在Power ISA 2.07 中获取更多详细信息 - 请参阅第 2.3 节,第 30 页。
mtlr/mflr保存和恢复链接寄存器,不同的是:它用于间接分支。
您可以使用 mfocrf/mtocrf 保存和恢复单个 CR 字段:请参阅第 3.3.16.1 节,第 112 页。
mfocrf r10,0x2 应该保存 CR2
mfocrf r10,0x4 应该保存 CR3
mfocrf r10,0x8 应该保存 CR4
理论上,您可以使用mfcrf(或扩展助记符mtcr 和mfcr)一次性完成此操作,但它们正在被逐步淘汰。
【讨论】: