Added work-around for gcc bug in AVX intrinsincs formal parameter
authorErik Lindahl <erik@kth.se>
Thu, 20 Dec 2012 18:18:04 +0000 (19:18 +0100)
committerErik Lindahl <erik@kth.se>
Wed, 9 Jan 2013 02:22:34 +0000 (03:22 +0100)
commit80721741a5adb17d4c61235c627792aaeb89cd31
tree0637500287c291afc68d82c75c278d86b7bb4e4d
parent850e20a04ccf6af7fc7ce2bcc6463f6b1fd09ed7
Added work-around for gcc bug in AVX intrinsincs formal parameter

Many relatively recent gcc versions (4.5.2, possibly 4.6.0) use incorrect
formal parameters for maskload and maskstore intrinsics. This patch
detects the bug during configuration and works around it with a define.
Refs #1058, and fixes it at least from gcc-4.5.2.

Change-Id: I447a968d2153f5acf59ad170ace69ad1b6b3f24d
CMakeLists.txt
cmake/TestAVXMaskload.c [new file with mode: 0644]
cmake/gmxTestAVXMaskload.cmake [new file with mode: 0644]
include/gmx_x86_avx_128_fma.h
include/gmx_x86_avx_256.h
src/config.h.cmakein
src/gmxlib/nonbonded/nb_kernel_avx_128_fma_single/kernelutil_x86_avx_128_fma_single.h
src/gmxlib/nonbonded/nb_kernel_avx_256_single/kernelutil_x86_avx_256_single.h