SIMD ISAReturn TypeNameArgumentsInstruction Group
Neonuint64_tvaddlvq_u32(uint32x4_t a)Vector arithmetic / Across vector arithmetic / Addition across vector widening
Description
Unsigned sum Long across Vector. This instruction adds every vector element in the source SIMD&FP register together, and writes the scalar result to the destination SIMD&FP register. The destination scalar is twice as long as the source vector elements. All the values in this instruction are unsigned integer values.
Results
Dd result
This intrinsic compiles to the following instructions:

UADDLV Dd,Vn.4S

Argument Preparation
a register: Vn.4S
Architectures
A64

Operation

CheckFPAdvSIMDEnabled64();
bits(datasize) operand = V[n];
integer sum;

sum = Int(Elem[operand, 0, esize], unsigned);
for e = 1 to elements-1
    sum = sum + Int(Elem[operand, e, esize], unsigned);

V[d] = sum<2*esize-1:0>;