本文主要是介绍【NEON 和 VFP 编程】NEON 和 VFP 共享的指令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
NEON 和 VFP 共享的指令包括以下内容:
1.VLDR 和 VSTR
扩展寄存器加载和存储。
2.VLDM、VSTM、VPOP 和 VPUSH
扩展寄存器加载多个和存储多个。
3.VMOV(在两个 ARM 寄存器和一个扩展寄存器之间)
在两个 ARM 寄存器和一个 64 位扩展寄存器之间传送内容。
4.VMOV(在一个 ARM 寄存器和一个 NEON 标量之间)
在一个 ARM 寄存器和半个 64 位扩展寄存器之间传送内容。
5.VMOV(在一个 ARM 寄存器和一个单精度 VFP 之间)
在一个 32 位扩展寄存器和一个 ARM 寄存器之间传送内容。
6.VMRS 和 VMSR
在一个 ARM 寄存器与一个 NEON 和 VFP 系统寄存器之间传送内容。
在没有特殊注明的情况下,本系列学习小节中,都是采用Android平台运行NEON与VFP指令的。NDK编程中,采用内联汇编的方式。
一、VLDR 和 VSTR
扩展寄存器加载和存储。
语法
VLDR{cond}{.size} Fd, [Rn{, #offset}]VSTR{cond}{.size} Fd, [Rn{, #offset}]VLDR{cond}{.size} Fd, labelVSTR{cond}{.size} Fd, label
其中:
cond 是一个可选的条件代码。
size 是一个可选的数据大小说明符。 如果 Fd 是单精度 VFP 寄存器,则必须为 32;否则必须为 64。
Fd 是要加载或保存的扩展寄
这篇关于【NEON 和 VFP 编程】NEON 和 VFP 共享的指令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!