Intel® C++ Compiler 16.0 User and Reference Guide
The prototypes for Intel® Advanced Vector Extensions 512 (Intel® AVX-512) intrinsics are located in the zmmintrin.h header file. For purposes of including a header in your code, use immintrin.h .
These intrinsics are used for compilation and do not generate any instructions.
Intrinsic Name |
Operation |
Corresponding |
---|---|---|
_mm512_castpd512_pd128 |
Casts from larger type to smaller type. |
None. |
_mm512_castps512_ps128 |
Casts from larger type to smaller type. |
None. |
_mm512_castsi512_si128 |
Casts from larger type to smaller type. |
None. |
_mm512_castpd512_pd256 |
Casts from larger type to smaller type. |
None. |
_mm512_castps512_ps256 |
Casts from larger type to smaller type. |
None. |
_mm512_castsi512_si256 |
Casts from larger type to smaller type. |
None. |
_mm512_castpd256_pd512 |
Casts from smaller type to larger type. |
None. |
_mm512_castps128_ps512 |
Casts from smaller type to larger type. |
None. |
_mm512_castsi128_si512 |
Casts from smaller type to larger type. |
None. |
_mm512_castpd256_pd512 |
Casts from smaller type to larger type. |
None. |
_mm512_castps256_ps512 |
Casts from smaller type to larger type. |
None. |
_mm512_castsi256_si512 |
Casts from smaller type to larger type. |
None. |
_mm512_castpd_ps |
Casts from smaller type to larger type. |
None. |
_mm512_castpd_si512 |
Casts from smaller type to larger type. |
None. |
_mm512_castps_pd |
Casts from smaller type to larger type. |
None. |
_mm512_castps_si512 |
Casts from smaller type to larger type. |
None. |
_mm512_castsi512_pd |
Casts from smaller type to larger type. |
None. |
_mm512_castsi512_ps |
Casts from smaller type to larger type. |
None. |
variable | definition |
---|---|
a |
vector element for casting operation |
_mm512_castpd_ps
extern __m512 __cdecl _mm512_castpd_ps(__m512d a);
Casts vector a of type __m512d to type __m512, with no change in value.
_mm512_castpd_si512
extern __m512i __cdecl _mm512_castpd_si512(__m512d a);
Casts vector a of type __m512d to type __m512i, with no change in value.
_mm512_castps_pd
extern __m512d __cdecl _mm512_castps_pd(__m512 a);
Casts vector a of type __m512 to type __m512d, with no change in value.
_mm512_castps_si512
extern __m512i __cdecl _mm512_castps_si512(__m512 a);
Casts vector a of type __m512 to type __m512i, with no change in value.
_mm512_castpd128_pd512
extern __m512d __cdecl _mm512_castpd128_pd512(__m128d a);
Casts vector a of type __m128d to type __m512d.
The upper 384-bits of the result are undefined.
_mm512_castpd256_pd512
extern __m512d __cdecl _mm512_castpd256_pd512(__m256d a);
Casts vector a of type __m256d to type __m512d.
The upper 256-bits of the result are undefined.
_mm512_castpd512_pd128
extern __m128d __cdecl _mm512_castpd512_pd128(__m512d a);
Casts vector a of type __m512d to type __m128d.
_mm512_castps512_ps128
extern __m128 __cdecl _mm512_castps512_ps128(__m512 a);
Casts vector a of type __m512 to type __m128.
_mm512_castpd512_pd256
extern __m256d __cdecl _mm512_castpd512_pd256(__m512d a);
Casts vector a of type __m512d to type __m256d.
_mm512_castps128_ps512
extern __m512 __cdecl _mm512_castps128_ps512(__m128 a);
Casts vector a of type __m128 to type __m512.
The upper 384-bits of the result are undefined.
_mm512_castps256_ps512
extern __m512 __cdecl _mm512_castps256_ps512(__m256 a);
Casts vector a of type __m256 to type __m512.
The upper 256-bits of the result are undefined.
_mm512_castps512_ps256
extern __m256 __cdecl _mm512_castps512_ps256(__m512 a);
Casts vector a of type __m512 to type __m256.
_mm512_castsi128_si512
extern __m512i __cdecl _mm512_castsi128_si512(__m128i a);
Casts vector a of type __m128i to type __m512i.
The upper 384-bits of the result are undefined.
_mm512_castsi256_si512
extern __m512i __cdecl _mm512_castsi256_si512(__m256i a);
Casts vector a of type __m256i to type __m512i.
The upper 256-bits of the result are undefined.
_mm512_castsi512_pd
extern __m512d __cdecl _mm512_castsi512_pd(__m512i a);
Casts vector a of type __m512i to type __m512d, with no change in value.
_mm512_castsi512_ps
extern __m512 __cdecl _mm512_castsi512_ps(__m512i a);
Casts vector a of type __m512i to type __m512, with no change in value.
_mm512_castsi512_si128
extern __m128i __cdecl _mm512_castsi512_si128(__m512i a);
Casts vector a of type __m512d to type __m256d.
_mm512_castsi512_si256
extern __m256i __cdecl _mm512_castsi512_si256(__m512i a);
Casts vector a of type __m512i to type __m256i.