__vpmsumd, __builtin_altivec_crypto_vpmsumd

Purpose

Performs the exclusive-OR operation on each even-odd pair of the polynomial-multiplication result of corresponding elements.

Prototype

vector unsigned long long __builtin_altivec_crypto_vpmsumd (vector unsigned long long a, vector unsigned long long b);

vector unsigned long long __vpmsumd (vector unsigned long long a, vector unsigned long long b);

Note:
  • The built-in function in the form of __name is a synonym of __builtin_altivec_crypto_name.
  • The built-in function in the form of __name is provided for compatibility with IBM® XL C/C++ for AIX® 16.1.0 or earlier releases. This built-in function might be deprecated in the future.

Result

For each i (0 <= i < 2), let prod[i] be the result of polynomial multiplication of doubleword elements i of a and b.

Bit 0 of the result is set to 0.

Bits 1 - 127 of the result are set to prod[0] (xor) prod[1].