VPADD{L}, VPADAL

VPADD (Vector Pairwise Add) adds adjacent pairs of elements of two vectors, and places the results in the destination vector.

Figure 11. Example of operation of VPADD (in this case, for data type I16)

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


VPADDL (Vector Pairwise Add Long) adds adjacent pairs of elements of a vector, sign or zero extends the results to twice their original width, and places the final results in the destination vector.

Figure 12. Example of operation of doubleword VPADDL (in this case, for data type S16)

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


VPADAL (Vector Pairwise Add and Accumulate Long) adds adjacent pairs of elements of a vector, and accumulates the absolute values of the results into the elements of the destination vector.

Figure 13. Example of operation of VPADAL (in this case for data type S16)

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Show/hideSyntax

VPADD{cond}.datatype {Dd}, Dn, Dm
VPopL{cond}.datatype Qd, Qm
VPopL{cond}.datatype Dd, Dm

where:

op

must be either ADD or ADA.

cond

is an optional condition code.

datatype

must be one of:

I8, I16, I32, F32

for VPADD

S8, S16, S32

for VPADDL or VPADAL

U8, U16, U32

for VPADDL or VPADAL.

Dd, Dn, Dm

are the destination vector, the first operand vector, and the second operand vector, for a VPADD instruction.

Qd, Qm

are the destination vector and the operand vector, for a quadword VPADDL or VPADAL.

Dd, Dm

are the destination vector and the operand vector, for a doubleword VPADDL or VPADAL.

Show/hideSee also

Reference:
Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0489E
Non-ConfidentialID071611