You copied the Doc URL to your clipboard.

VSHL (by immediate)

Vector Shift Left by immediate.


VSHL{cond}.datatype {Qd}, Qm, #imm

VSHL{cond}.datatype {Dd}, Dm, #imm



is an optional condition code.


must be one of I8, I16, I32, or I64.

Qd, Qm

are the destination and operand vectors, for a quadword operation.

Dd, Dm

are the destination and operand vectors, for a doubleword operation.


is the immediate value specifying the size of the shift. The ranges are shown in the following table:

Table C3-20 Available immediate ranges in VSHL (by immediate)

datatype imm range
I8 0 to 7
I16 0 to 15
I32 0 to 31
I64 0 to 63


VSHL takes each element in a vector of integers, left shifts them by an immediate value, and places the results in the destination vector.

Bits shifted out of the left of each element are lost.

The following figure shows the operation of VSHL with two elements and a shift value of one. The least significant bit in each element in the destination vector is set to zero.

Figure C3-6 Operation of quadword VSHL.I64 Qd, Qm, #1