summaryrefslogtreecommitdiffstats
path: root/m4/ax_check_simd.m4
Commit message (Collapse)AuthorAgeFilesLines
* conv_acc: Our code requires SSSE3, not just SSE3Harald Welte2017-11-171-9/+9
| | | | | | | | | | | | | | | The accelerated convolutional decoder uses SSSE3 instructions such as PSIGNW (via _mm_sign_epi16) which go beyond what SSE3 offers. So let's make sure we use the right compiler flag (-mssse3) and also the right runtime check. Without this patch, we would use illegal instructions e.g. on Opteron Gen3 such as Opteron 2427, which are also used as build.opensuse.org build hosts (build31 through build36) where we wouldn't pass "make check" as a result. Change-Id: I2754164384109f2821fd98ffb48f625893f2923d Fixes: OS#2386
* configure.ac: fix build on systems without SIMD supportVadim Yanitskiy2017-05-111-3/+4
| | | | | | | HAVE_AVX2, HAVE_SSE3 and HAVE_SSE4_1 were never defined if CPU architecture doesn't match the (86*|x86_64*|amd64*) condition. Change-Id: If0c3128f9768f95c1f5f955db242e71c81384c6c
* configure.ac: add SIMD detection capabilitiesVadim Yanitskiy2017-05-071-0/+82
This change adds a check whether compiler supports some SIMD (Single Instruction, Multiple Data) instructions. It is enabled by default, and can be disabled by configure option --disable-simd. The check macro is based on the AX_EXT from autoconf-archive: www.gnu.org/software/autoconf-archive/ax_ext.html And depends on the ax_check_compile_flag macro: www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html Currently only the following SIMD extensions are being checked: AVX2, SSE3, SSE4.1, but adding others is also possible. All found extensions are being defined in the 'config.h' header. Change-Id: Idf8fff984bd936a75c7c307338df88ba4b005817