3

Neon命令のSSE命令と同等の命令/コードは何か知りたいです。

__m128i a,b,c;
c = _mm_packs_epi32(a, b);

a と b の 8 つの符号付き 32 ビット整数を符号付き 16 ビット整数にパックし、飽和させます。

ARMサイトで同等の命令を確認しましたが、同等の命令は見つかりませんでした。 http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204j/Bcfjicfj.html

4

2 に答える 2

3

あなたが望むことを直接行う命令はありませんが、それを構築するためのすべてのビルディングブロックがあります:

サチュレーション/ナロー命令は次のとおりです。

int16x4_t vqmovn_s32 (int32x4_t)  

この組み込み関数は、符号付き 32 ビットから符号付き 16 ビット整数に飽和し、4 つの縮小された整数を 64 ビット幅の変数に返します。

これらを _mm_packs_epi32 に結合するのは簡単です: a と b に対してそれを行い、結果を結合するだけです:

  int32x4_t a,b;
  int16x8_t c;

  c = vcombine_s16 (vqmovn_s32(a), vqmovn_s32(b));

vcombine_s16 引数の順序を入れ替える必要がある場合があります。

于 2013-10-28T10:08:59.693 に答える