インテル® C++ コンパイラー XE 13.1 ユーザー・リファレンス・ガイド
このトピックは、インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャーにのみ適用されます。
ほとんどの組込み関数は、インテル® イニシャル・メニー・コア命令 (インテル® IMCI) に直接マップします。インテル® IMCI は、既存のインテル® ストリーミング SIMD 拡張命令 (インテル® SSE) のインテル® 64 アーキテクチャー用ベクトル命令の拡張です。
組込み関数固有の機能 (および対応する命令) を次に示します。
組込み関数/命令は、標準のインテル® 64 命令と同じメモリーアドレス空間を使用します。
組込み関数/命令は、インテル® SSE のベクトル命令を最適に処理するため、最大 512 ビット長のパックドデータに対応可能な特殊なレジスターを使用します。
ネイティブデータ型は、1 つのレジスターに最大で 32 ビット (float/整数) のデータの 16 個の要素をパックすることができます。
それぞれの計算命令とデータ操作命令について、その命令を直接実装する 2 つ の C 組込み関数が用意されています。
ベクトルマスクをサポートしており、8 つのベクトル・マスク・レジスターは、ベクトル命令の 16 個の要素に対して条件付き実行が可能で、結果はオリジナルのデスティネーションにマージされます。
ほとんどの関数は、3 つのオペランドからなります。2 つのソースとデスティネーション、または 3 つのソース (そのうち 1 つはデスティネーションでもある) があります。