128ビットレジスタから値(最初のワード16ビット)を抽出したいのですが、このコマンドがありますが、これは動作していません。aの値を設定した後に、変数内の結果として、算術演算は、あなたが_asmブロック内の組み込み関数を入れないでくださいSSE2値抽出の問題
int r;
int inm=0;
__m128i a=_mm_setr_epi16(8,9,3,2,4,5,6,11);
_asm{
r = _mm_extract_epi16(a,inm);
}
128ビットレジスタから値(最初のワード16ビット)を抽出したいのですが、このコマンドがありますが、これは動作していません。aの値を設定した後に、変数内の結果として、算術演算は、あなたが_asmブロック内の組み込み関数を入れないでくださいSSE2値抽出の問題
int r;
int inm=0;
__m128i a=_mm_setr_epi16(8,9,3,2,4,5,6,11);
_asm{
r = _mm_extract_epi16(a,inm);
}
...私はこれを行うことができますどのように...私は最初の単語を抽出したい最後に変更されます。他の機能と同様に動作します。これは正常に動作します:
#include <emmintrin.h>
__m128i a = _mm_setr_epi16(8,9,3,2,4,5,6,11);
int r = _mm_extract_epi16(a, 0);
pextrw
命令は、即値で動作ありません。 Cでは、値がコンパイル時定数である必要があることを意味します。
int r;
static const int inm=0;
__m128i a=_mm_setr_epi16(8,9,3,2,4,5,6,11);
r = _mm_extract_epi16(a,inm);
どのようにJavaScriptですか?あなたのコードはCのように見えます。それに加えて、ここでは質問を緊急としてマークするべきではありません。 – ThiefMaster