_mm512_extload_epi64
Classification
KNC, Load, CPUID Test: KNCNI
Header File
Instruction
VMOVDQA64 zmm, m512
Synopsis
_mm512_extload_epi64(void const * mt, _MM_UPCONV_EPI64_ENUM conv, _MM_BROADCAST64_ENUM bc, int hint);
Description
Depending on "bc", loads 1, 4, or 8 elements of type and size determined by "conv" from memory address "mt" and converts all elements to 64-bit integer elements, storing the results in "dst". "hint" indicates to the processor whether the data is non-temporal.
Operation
addr := MEM[mt]
FOR j := 0 to 7
i := j*64
CASE bc OF
_MM_BROADCAST64_NONE:
CASE conv OF
_MM_UPCONV_EPI64_NONE:
n := j*64
dst[i+63:i] := addr[n+63:n]
ESAC
_MM_BROADCAST_1X8:
CASE conv OF
_MM_UPCONV_EPI64_NONE:
n := j*64
dst[i+63:i] := addr[63:0]
ESAC
_MM_BROADCAST_4X8:
mod := j%4
CASE conv OF
_MM_UPCONV_EPI64_NONE:
n := mod*64
dst[i+63:i] := addr[n+63:n]
ESAC
ESAC
ENDFOR
dst[MAX:512] := 0