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

Pha*_*omM 3 c optimization gcc sse simd

我想写一些C代码,使用-msse4.1标志的gcc 可以优化它.基本上我想检查编译器是否正在利用SSE4.1指令.有许多SSE4.1指令(http://en.wikipedia.org/wiki/SSE4#New_instructions)但我无法编写使用生成的汇编代码中的任何指令的C代码片段.

提前致谢.

Mys*_*ial 5

从我所看到的,编译器很少生成SSE4.1指令.我已经看过一些情况,它会使用插入/提取指令来打包数据.

但是在大多数情况下,如果要使用SSE4.1指令,则需要使用intrinsics明确地执行它们:

http://software.intel.com/sites/products/documentation/studio/composer/en-us/2011/compiler_c/intref_cls/common/intref_bk_sse41.htm