インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

型キャスト操作の組込み関数

インテル® アドバンスト・ベクトル・エクステンション 512 (インテル® AVX-512) 組込み関数のプロトタイプは、zmmintrin.h ヘッダーファイルで定義されていますが、実際にヘッダーをコードにインクルードする場合は、immintrin.h を使用します。

この組込み関数はコンパイルに使用されます。命令は生成しません。



組込み関数名

演算

対応するインテル® AVX-512 命令

_mm512_castpd512_pd128

大きな型から小さな型にキャストします。

なし

_mm512_castps512_ps128

大きな型から小さな型にキャストします。

なし

_mm512_castsi512_si128

大きな型から小さな型にキャストします。

なし

_mm512_castpd512_pd256

大きな型から小さな型にキャストします。

なし

_mm512_castps512_ps256

大きな型から小さな型にキャストします。

なし

_mm512_castsi512_si256

大きな型から小さな型にキャストします。

なし

_mm512_castpd256_pd512

小さな型から大きな型へキャストします。

なし

_mm512_castps128_ps512

小さな型から大きな型へキャストします。

なし

_mm512_castsi128_si512

小さな型から大きな型へキャストします。

なし

_mm512_castpd256_pd512

小さな型から大きな型へキャストします。

なし

_mm512_castps256_ps512

小さな型から大きな型へキャストします。

なし

_mm512_castsi256_si512

小さな型から大きな型へキャストします。

なし

_mm512_castpd_ps

小さな型から大きな型へキャストします。

なし

_mm512_castpd_si512

小さな型から大きな型へキャストします。

なし

_mm512_castps_pd

小さな型から大きな型へキャストします。

なし

_mm512_castps_si512

小さな型から大きな型へキャストします。

なし

_mm512_castsi512_pd

小さな型から大きな型へキャストします。

なし

_mm512_castsi512_ps

小さな型から大きな型へキャストします。

なし


変数 定義
a

キャスト操作に使用するベクトル要素

_mm512_castpd_ps

extern __m512 __cdecl _mm512_castpd_ps(__m512d a);

値を変更することなく、ベクトル a__m512d 型から __m512 型にキャストします。



_mm512_castpd_si512

extern __m512i __cdecl _mm512_castpd_si512(__m512d a);

値を変更することなく、ベクトル a__m512d 型から __m512i 型にキャストします。



_mm512_castps_pd

extern __m512d __cdecl _mm512_castps_pd(__m512 a);

値を変更することなく、ベクトル a__m512 型から __m512d 型にキャストします。



_mm512_castps_si512

extern __m512i __cdecl _mm512_castps_si512(__m512 a);

値を変更することなく、ベクトル a__m512 型から __m512i 型にキャストします。



_mm512_castpd128_pd512

extern __m512d __cdecl _mm512_castpd128_pd512(__m128d a);

ベクトル a__m128d 型から __m512d 型にキャストします。

結果の上位 384 ビットは不定です。



_mm512_castpd256_pd512

extern __m512d __cdecl _mm512_castpd256_pd512(__m256d a);

ベクトル a__m256d 型から __m512d 型にキャストします。

結果の上位 256 ビットは不定です。



_mm512_castpd512_pd128

extern __m128d __cdecl _mm512_castpd512_pd128(__m512d a);

ベクトル a__m512d 型から __m128d 型にキャストします。



_mm512_castps512_ps128

extern __m128 __cdecl _mm512_castps512_ps128(__m512 a);

ベクトル a__m512 型から __m128 型にキャストします。



_mm512_castpd512_pd256

extern __m256d __cdecl _mm512_castpd512_pd256(__m512d a);

ベクトル a__m512d 型から __m256d 型にキャストします。



_mm512_castps128_ps512

extern __m512 __cdecl _mm512_castps128_ps512(__m128 a);

ベクトル a__m128 型から __m512 型にキャストします。

結果の上位 384 ビットは不定です。



_mm512_castps256_ps512

extern __m512 __cdecl _mm512_castps256_ps512(__m256 a);

ベクトル a__m256 型から __m512 型にキャストします。

結果の上位 256 ビットは不定です。



_mm512_castps512_ps256

extern __m256 __cdecl _mm512_castps512_ps256(__m512 a);

ベクトル a__m512 型から __m256 型にキャストします。



_mm512_castsi128_si512

extern __m512i __cdecl _mm512_castsi128_si512(__m128i a);

ベクトル a__m128i 型から __m512i 型にキャストします。

結果の上位 384 ビットは不定です。



_mm512_castsi256_si512

extern __m512i __cdecl _mm512_castsi256_si512(__m256i a);

ベクトル a__m256i 型から __m512i 型にキャストします。

結果の上位 256 ビットは不定です。



_mm512_castsi512_pd

extern __m512d __cdecl _mm512_castsi512_pd(__m512i a);

値を変更することなく、ベクトル a__m512i 型から __m512d 型にキャストします。



_mm512_castsi512_ps

extern __m512 __cdecl _mm512_castsi512_ps(__m512i a);

値を変更することなく、ベクトル a__m512i 型から __m512 型にキャストします。



_mm512_castsi512_si128

extern __m128i __cdecl _mm512_castsi512_si128(__m512i a);

ベクトル a__m512d 型から __m256d 型にキャストします。



_mm512_castsi512_si256

extern __m256i __cdecl _mm512_castsi512_si256(__m512i a);

ベクトル a__m512i 型から __m256i 型にキャストします。