例として4つの数字を分割して印刷するのに助けが必要です. コンパイラとして g++ を使用しています。次のコードはフラグを使用してコンパイルします。-msse3 -mmmx
フラグが必要かどうかさえわかりませんが、動作します。分割する前に関数呼び出しで数値を設定する必要があることはわかっていますが、どの関数を呼び出すかははっきりしていません (リンクには のみの関数が設定されていると思いますint
)。それを使用して結果を印刷する方法があれば、それはstd::cout
より良いですが、これでprintf
うまく機能します(この場合に正しいかどうかはわかりませんが、もともとprint128_num
は書かれていましint
た)。コードはこちら。
#include <emmintrin.h>
#include <xmmintrin.h>
#include <stdio.h>
#include <stdint.h>
void print128_num(__m128i var)
{
uint16_t *val = (uint16_t*) &var;
printf("Numerical: %i %i %i %i %i %i %i %i \n",
val[0], val[1], val[2], val[3], val[4], val[5],
val[6], val[7]);
}
__m128 divide_4_32_bit_values(__m128 __A, __m128 __B)
{
return _mm_div_ps (__A, __B);
}
int main(void)
{
return 0;
}