5.8.6. VMOVL、V{Q}MOVN、VQMOVUN

VMOVL(向量长移)获取双字向量中的每个元素,用符号或零将其扩展到原长度的两倍,并将结果存放到四字向量中。

VMOVN(向量窄移)将四字向量中每个元素的最低有效半部复制到双字向量的相应元素中。

VQMOVN(向量饱和窄移)将操作数向量中的每个元素复制到目标向量的相应元素中。 结果元素是操作数元素宽度的一半,并且会将值饱和到结果宽度。

VQMOVUN(向量饱和窄移,有符号操作数和无符号结果)将操作数向量的每个元素复制到目标向量的相应元素中。 结果元素是操作数元素宽度的一半,并且会将值饱和到结果宽度。

语法

VMOVL{cond}.datatype Qd, Dm
V{Q}MOVN{cond}.datatype Dd, Qm
VQMOVUN{cond}.datatype Dd, Qm

其中:

Q

如果存在,则指定对结果进行饱和。

cond

是一个可选的条件代码(请参阅条件代码)。

datatype

必须是下列值之一:

S8S16S32

对于 VMOVL

U8U16U62

对于 VMOVL

I16I32I64

对于 VMOVN

S16S32S64

对于 VQMOVNVQMOVUN

U16U32U64

对于 VQMOVN

Qd, Dm

VMOVL 指定目标向量和操作数向量。

Dd, Qm

V{Q}MOV{U}N 指定目标向量和操作数向量。

Copyright © 2002-2008 ARM Limited. All rights reserved.ARM DUI 0204IC
Non-Confidential