SIMD ISAReturn TypeNameArgumentsInstruction Group
Neonuint64x2_tvshll_high_n_u32(uint32x4_t a, const int n)Shift / Left / Vector shift left and widen
Description
Unsigned Shift Left Long (immediate). This instruction reads each vector element in the lower or upper half of the source SIMD&FP register, shifts the unsigned integer value left by the specified number of bits, places the result into a vector, and writes the vector to the destination SIMD&FP register. The destination vector elements are twice as long as the source vector elements.
Results
Vd.2D result
This intrinsic compiles to the following instructions:

USHLL2 Vd.2D,Vn.4S,#n

Argument Preparation
a register: Vn.4Sn minimum: 0; maximum: 31
Architectures
A64

Operation

CheckFPAdvSIMDEnabled64();
bits(datasize) operand = Vpart[n, part];
bits(datasize*2) result;
integer element;

for e = 0 to elements-1
    element = Int(Elem[operand, e, esize], unsigned) << shift;
    Elem[result, e, 2*esize] = element<2*esize-1:0>;

V[d] = result;