[__arm_]vmlaldavaq_p[_s32]
SIMD ISA | Return Type | Name | Arguments | Instruction Group | |
---|---|---|---|---|---|
Helium | int64_t | [__arm_]vmlaldavaq_p[_s32] | (int64_t add, int32x4_t m1, int32x4_t m2, mve_pred16_t p) | Vector arithmetic / Multiply / Multiply-accumulate | |
Description The elements of the vector registers are handled in pairs. In the base variant, corresponding elements from the two source registers are multiplied together, whereas the exchange variant swaps the values in each pair of values read from the first source register, before multiplying them with the values from the second source register. The results of the pairs of multiply operations are combined by adding them together. At the end of each beat these results are accumulated. The 64 bit result is stored across two registers, the upper-half is stored in an odd-numbered register and the lower half is stored in an even-numbered register. The initial value of the general-purpose destination registers can optionally be added to the result. Results [RdaHi,RdaLo] result This intrinsic compiles to the following instructions: VMSR VPST VMLALDAVAT.S32 Argument Preparation add register: [RdaHi,RdaLo]m1 register: Qnm2 register: Qmp register: Rp Architectures MVE |
Copyright © 1995-2025 Arm Limited (or its affiliates). All rights reserved.