编写一段C代码,以便编译器使用SSE4.1指令生成汇编代码

编写一段C代码,以便编译器使用SSE4.1指令生成汇编代码,c,optimization,gcc,sse,simd,C,Optimization,Gcc,Sse,Simd,我想编写一些C代码,这样gcc使用-msse4.1标志可以优化它。基本上,我想检查编译器是否利用了SSE4.1指令。 有许多SSE4.1指令(),但我无法编写在生成的汇编代码中使用这些指令的C代码片段 提前感谢。我怀疑GCC会那么容易发出SSE4.1指令。但你可以看看: 在SPMD模型下,程序员编写的程序 虽然执行模型是 实际上,许多程序实例在 硬件。(请参阅说明此概念的更详细示例。) ispc编译一种基于C的SPMD编程语言以在SIMD上运行 CPU的单位;它经常在CPU上提供3倍或更多的加速

我想编写一些C代码,这样gcc使用
-msse4.1
标志可以优化它。基本上,我想检查编译器是否利用了SSE4.1指令。 有许多SSE4.1指令(),但我无法编写在生成的汇编代码中使用这些指令的C代码片段


提前感谢。

我怀疑GCC会那么容易发出SSE4.1指令。但你可以看看:

在SPMD模型下,程序员编写的程序 虽然执行模型是 实际上,许多程序实例在 硬件。(请参阅说明此概念的更详细示例。) ispc编译一种基于C的SPMD编程语言以在SIMD上运行 CPU的单位;它经常在CPU上提供3倍或更多的加速 具有4个宽SSE单元,无任何书写困难 内在代码


据我所见,编译器很少生成SSE4.1指令。我见过一些使用插入/提取指令打包数据的情况

但在大多数情况下,如果要使用SSE4.1指令,则需要显式使用内部函数: