From a2c6e2bc1c83387d2738706a12d1f5c0665cf3f5 Mon Sep 17 00:00:00 2001 From: Matthias Maier Date: Mon, 24 Nov 2014 17:27:51 +0100 Subject: [PATCH] silence icc warning #15531 "A porition of SIMD loop is serialized" --- cmake/setup_compiler_flags_intel.cmake | 84 +++++++++++++------------- 1 file changed, 43 insertions(+), 41 deletions(-) diff --git a/cmake/setup_compiler_flags_intel.cmake b/cmake/setup_compiler_flags_intel.cmake index f37a681ec4..ecc2da5d72 100644 --- a/cmake/setup_compiler_flags_intel.cmake +++ b/cmake/setup_compiler_flags_intel.cmake @@ -58,47 +58,48 @@ ENABLE_IF_SUPPORTED(DEAL_II_CXX_FLAGS "-w2") # # Disable some warnings that lead to a lot of false positives: # -# -w68 integer conversion resulted in a change of sign -# (triggers a lot in functionparser) -# -w175 subscript out of range -# -w135 class template "dealii::FE_Q_Base" -# has no member "Implementation" -# (the compiler is objectively wrong since the warning -# triggers also on code of the form -# class FE_Q_Base { -# struct Implementation; // forward declaration -# friend struct Implementation; -# };) -# -w177 declared but not referenced -# -w191 type qualifier is meaningless on cast type -# Warnings from this warn about code like this: -# static_cast(p) -# There are many places in boost that do this kind of stuff -# -w193 zero used for undefined preprocessing identifier "..." -# This happens when using undefined preprocessor names in -# conditions such as -# #if (abc && def) -# instead of -# #if (defined(abc) && defined(def)) -# The standard says that in such cases, the undefined symbol -# is assumed to be zero. The warning is in principle -# useful, but the pattern appears exceedingly often in the TBB -# -w279 controlling expression is constant -# -w327 NULL reference is not allowed -# (the compiler is correct here in that statements like -# *static_cast(0) are not allowed to initialize -# references; however, it's the only useful way to do -# so if you need an invalid value for a reference) -# -w383 value copied to temporary, reference to temporary used -# -w981 operands are evaluated in unspecified order -# -w1418 external function definition with no prior declaration -# (happens in boost) -# -w1478 deprecation warning -# -w1572 floating-point equality and inequality comparisons are unreliable -# -w2259 non-pointer conversion from "double" to "float" may -# lose significant bits -# -w21 type qualifiers are meaningless in this declaration -# -w2536 type qualifiers are meaningless here +# -w68 integer conversion resulted in a change of sign +# (triggers a lot in functionparser) +# -w175 subscript out of range +# -w135 class template "dealii::FE_Q_Base" +# has no member "Implementation" +# (the compiler is objectively wrong since the warning +# triggers also on code of the form +# class FE_Q_Base { +# struct Implementation; // forward declaration +# friend struct Implementation; +# };) +# -w177 declared but not referenced +# -w191 type qualifier is meaningless on cast type +# Warnings from this warn about code like this: +# static_cast(p) +# There are many places in boost that do this kind of stuff +# -w193 zero used for undefined preprocessing identifier "..." +# This happens when using undefined preprocessor names in +# conditions such as +# #if (abc && def) +# instead of +# #if (defined(abc) && defined(def)) +# The standard says that in such cases, the undefined symbol +# is assumed to be zero. The warning is in principle +# useful, but the pattern appears exceedingly often in the TBB +# -w279 controlling expression is constant +# -w327 NULL reference is not allowed +# (the compiler is correct here in that statements like +# *static_cast(0) are not allowed to initialize +# references; however, it's the only useful way to do +# so if you need an invalid value for a reference) +# -w383 value copied to temporary, reference to temporary used +# -w981 operands are evaluated in unspecified order +# -w1418 external function definition with no prior declaration +# (happens in boost) +# -w1478 deprecation warning +# -w1572 floating-point equality and inequality comparisons are unreliable +# -w2259 non-pointer conversion from "double" to "float" may +# lose significant bits +# -w21 type qualifiers are meaningless in this declaration +# -w2536 type qualifiers are meaningless here +# -w15531 A portion of SIMD loop is serialized # ENABLE_IF_SUPPORTED(DEAL_II_CXX_FLAGS "-wd68") ENABLE_IF_SUPPORTED(DEAL_II_CXX_FLAGS "-wd135") @@ -116,6 +117,7 @@ ENABLE_IF_SUPPORTED(DEAL_II_CXX_FLAGS "-wd1572") ENABLE_IF_SUPPORTED(DEAL_II_CXX_FLAGS "-wd2259") ENABLE_IF_SUPPORTED(DEAL_II_CXX_FLAGS "-wd21") ENABLE_IF_SUPPORTED(DEAL_II_CXX_FLAGS "-wd2536") +ENABLE_IF_SUPPORTED(DEAL_II_CXX_FLAGS "-wd15531") # -- 2.39.5