インテル® C++ コンパイラー 19.0 デベロッパー・ガイドおよびリファレンス
Ivec クラスは、さまざまなサイズの整数ベクトルを用いる SIMD (Single Instruction Multiple Data) 処理へのインターフェイスの機能を提供します。このクラスの派生関係図を次に示します。
Ivec クラスの派生関係図
M64 および M128 という両クラスが __m64 および __m128i という両データ型を定義しています。この 2 つのクラスから、残りの Ivec クラスが派生します。第 1 世代の子クラス (中間クラス) は、次のように 128、64、32、16、8 というビット・サイズだけで区分されます。
I128vec1、I64vec1、I64vec2、I32vec2、I32vec4、I16vec4、I16vec8、I8vec8、I8vec16
第 2 世代は符号の有無を示します。
Is64vec2、Iu64vec2、Is32vec2、Iu32vec2、Is32vec4、Iu32vec4、Is16vec4、Iu16vec4、Is16vec8、Iu16vec8、Is8vec8、Iu8vec8、Is8vec16、Iu8vec16
M64 データ型と M128 データ型は混在させると、予期しない動作が発生することがあります。