From: Mark Abraham Date: Wed, 27 Jan 2016 12:24:24 +0000 (+0100) Subject: Merge branch release-5-1 X-Git-Url: http://biod.pnpi.spb.ru/gitweb/?a=commitdiff_plain;h=5e5338eafbb2b4878ab0b0bf37c3dadbcf9ee33f;p=alexxy%2Fgromacs.git Merge branch release-5-1 Change-Id: Iefe28408022b6964e7b1cbab07032f5d110c5f6b --- 5e5338eafbb2b4878ab0b0bf37c3dadbcf9ee33f diff --cc cmake/gmxManageSimd.cmake index 66fe788f5f,255ea7fc07..959ac77fc0 --- a/cmake/gmxManageSimd.cmake +++ b/cmake/gmxManageSimd.cmake @@@ -337,10 -351,10 +351,10 @@@ elseif(GMX_SIMD STREQUAL "ARM_NEON" "#include int main(){float32x4_t x=vdupq_n_f32(0.5);x=vmlaq_f32(x,x,x);return vgetq_lane_f32(x,0)>0;}" SIMD_CXX_FLAGS - "-mfpu=neon" "-D__STDC_CONSTANT_MACROS" "") + "-mfpu=neon-vfpv4" "-mfpu=neon" "-D__STDC_CONSTANT_MACROS" "") if(NOT CFLAGS_ARM_NEON OR NOT CXXFLAGS_ARM_NEON) - message(FATAL_ERROR "Cannot find ARM NEON compiler flag. Use a newer compiler, or disable NEON SIMD.") - gmx_give_fatal_error_when_simd_support_not_found("ARM 32-bit NEON" "disable SIMD support (slower)" "${SUGGEST_BINUTILS_UPDATE}") ++ gmx_give_fatal_error_when_simd_support_not_found("ARM NEON" "disable SIMD support (slower)" "${SUGGEST_BINUTILS_UPDATE}") endif() set(GMX_SIMD_ARM_NEON 1) @@@ -355,12 -371,16 +369,12 @@@ elseif(GMX_SIMD STREQUAL "ARM_NEON_ASIM "") gmx_find_cxxflag_for_source(CXXFLAGS_ARM_NEON_ASIMD "C++ compiler ARM NEON Advanced SIMD flag" "#include - int main(){float64x2_t x=vdupq_n_f64(0.5);x=vfmaq_f64(x,x,x);return vgetq_lane_f64(x,0)>0;}" + int main(){float64x2_t x=vdupq_n_f64(0.5);x=vfmaq_f64(x,x,x);x=vrndnq_f64(x);return vgetq_lane_f64(x,0)>0;}" SIMD_CXX_FLAGS - "-D__STDC_CONSTANT_MACROS" "") + "") if(NOT CFLAGS_ARM_NEON_ASIMD OR NOT CXXFLAGS_ARM_NEON_ASIMD) - message(FATAL_ERROR "Compiler does not fully support ARM (AArch64) NEON Advanced SIMD. Use a newer compiler (gcc version 4.9 or later), or disable SIMD.") - gmx_give_fatal_error_when_simd_support_not_found("ARM (AArch64) NEON Advanced SIMD" "disable SIMD support (slower)" "${SUGGEST_BINUTILS_UPDATE}") - endif() - - if(CMAKE_C_COMPILER_ID MATCHES "GNU" AND CMAKE_C_COMPILER_VERSION VERSION_LESS "4.9") - message(WARNING "At least gcc-4.8.1 has many bugs for ARM (AArch64) NEON Advanced SIMD compilation. You might need gcc version 4.9 or later.") ++ gmx_give_fatal_error_when_simd_support_not_found("ARM (AArch64) NEON Advanced SIMD" "particularly gcc version 4.9 or later, or disable SIMD support (slower)" "${SUGGEST_BINUTILS_UPDATE}") endif() if(CMAKE_C_COMPILER_ID MATCHES "Clang" AND CMAKE_C_COMPILER_VERSION VERSION_LESS "3.4")