3
SSEレジスタの下位32ビットに32ビット整数をロードする方法は未定義ですが、C/C++ではどのようにしてロードするのですか?同じ効率でvmovd xmm0, eax
のようなものを意味します。組み込み用のC/C++組み込み関数VMOVD
SSEレジスタの下位32ビットに32ビット整数をロードする方法は未定義ですが、C/C++ではどのようにしてロードするのですか?同じ効率でvmovd xmm0, eax
のようなものを意味します。組み込み用のC/C++組み込み関数VMOVD
おそらく、組み込みの_mm_cvtsi32_si128 (int a)
を探しています。下位32ビットがコピーされます。上位ビットはゼロに設定されます。
'vmovd = _mm_cvtsi32_si128'しかし、私はあなたがそれを知っていると思います、なぜそれは適切ではないでしょうか? – harold
@harold、私はそれについて感謝しなかった! –
インテルのintrinsicsガイドでは、最初のパラメータが 'int'または' int * 'である組み込み関数を見つけるために'(int')を検索することができます([sseタグwiki](https://stackoverflow.com/tagsを参照)/sse/info)を参照してください)また、 'movd'のイントリンシックスを検索するには、イントリンシックガイドまたはインテルのinsn refマニュアルを参照してください:http://felixcloutier.com/x86/MOVD:MOVQ.html –