VUZP, VZIP

VZIP (Vector Zip) interleaves the elements of two vectors.

VUZP (Vector Unzip) de-interleaves the elements of two vectors.

De-interleaving is the inverse process of interleaving.

Table 20. Operation of doubleword VZIP.8

 Register state before operationRegister state after operation
DdA7A6A5A4A3A2A1A0B3A3B2A2B1A1B0A0
DmB7B6B5B4B3B2B1B0B7A7B6A6B5A5B4A4

Table 21. Operation of quadword VZIP.32

 Register state before operationRegister state after operation
QdA3A2A1A0B1A1B0A0
QmB3B2B1B0B3A3B2A2

Table 22. Operation of doubleword VUZP.8

 Register state before operationRegister state after operation
DdA7A6A5A4A3A2A1A0B6B4B2B0A6A4A2A0
DmB7B6B5B4B3B2B1B0B7B5B3B1A7A5A3A1

Table 23. Operation of quadword VUZP.32

 Register state before operationRegister state after operation
QdA3A2A1A0B2B0A2A0
QmB3B2B1B0B3B1A3A1

Show/hideSyntax

Vop{cond}.size Qd, Qm
Vop{cond}.size Dd, Dm

where:

op

must be either UZP or ZIP.

cond

is an optional condition code.

size

must be one of 8, 16, or 32.

Qd, Qm

specifies the vectors, for a quadword operation.

Dd, Dm

specifies the vectors, for a doubleword operation.

Note

The following are all the same instruction:

  • VZIP.32 Dd, Dm

  • VUZP.32 Dd, Dm

  • VTRN.32 Dd, Dm

The instruction is disassembled as VTRN.32 Dd, Dm.

Show/hideSee also

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0489F
Non-ConfidentialID091611