【NEON 和 VFP 编程】NEON 和 VFP 伪指令

伪指令(Pseudo Instruction)是用于对汇编过程进行控制的指令,该类指令并不是可执行指令,没有机器代码,只用于汇编过程中为汇编程序提供汇编信息。例如,提供如下信息:哪些是指令、哪些是数据及数据的字长、程序的起始地址和结束地址等。伪指令有2个特点:

(1)由于是伪“指令”,因而它只存在于汇编语言中。高级语言中不叫指令,叫语句;

(2)由于是“伪”指令,也即“假”指令,因而不是可执行指令,不会产生机器代码,不会占用ROM空间,只用于汇编过程中为汇编程序提供汇编信息。

本节包括以下小节:

• VLDR 伪指令(NEON 和 VFP)

• VMOV2(仅限 NEON)

• VAND 和 VORN(立即数)(仅限 NEON)

• VACLE 和 VACLT(仅限 NEON)

• VCLE 和 VCLT(仅限 NEON)。

一、VLDR 伪指令

VLDR 伪指令将一个常数值加载到 64 位 NEON 向量的每个元素,或者加载到 VFP单精度或双精度寄存器。

语法

VLDR{cond}.datatype Dd,=constant

VLDR{cond}.datatype Sd,=constant

其中:

datatype 必须是下列值之一:

In 仅限 NEON

Sn 仅限 NEON

Un 仅限 NEON

F32 NEON 或 VFP

F64 仅限 VFP

n 必须为 8、16、32 或 64 之一。

cond 是一个可选的条件代码。

Dd 或 Sd 是要加载的扩展寄存器。

constant 是 datatype 的相应类型的常数。

用法

如果某一指令(如 VMOV)可用于直接将常数生成到寄存器中,则汇编程序将使用该指令。 否则,汇编程序生成一个包含常数的双字

猜你喜欢

转载自blog.csdn.net/tyyj90/article/details/103193936