谁能解释一下arm指令prfm和prfum之间的区别以及它们的用法?
PRFUM https://developer.arm.com/documentation/dui0802/b/PRFUM
PRFM https://developer.arm.com/documentation/dui0801/g/A64-Data-Transfer-Instructions/PRFM--literal-
发布于 2021-06-25 01:28:51
对于这样的问题,您的主要来源是ARMv8体系结构参考手册。我手头正好有E.a版,所以页码会引用那个版本。
在第C6-1136页上,描述了PRFM
(立即)。它允许预取相对于基址寄存器中的值的偏移量,该偏移量是0到+32760范围内8的倍数。
在第C6-1142页上,描述了PRFUM
。它允许预取相对于基址寄存器中的值处于-256到+255范围内的任何类型的偏移量(而不仅仅是8的倍数)的数据。
因此,如果您需要(由于某些原因,比如使用字符串)以字节精度进行预取,或者需要使用负偏移量进行预取,则必须使用PRFUM
。另一方面,如果您想使用256或更高的偏移量进行预取,则必须使用PRFM
。
https://stackoverflow.com/questions/68118746
复制相似问题