Hello community, here is the log from the commit of package Vc for openSUSE:Factory checked in at 2017-05-20 14:32:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/Vc (Old) and /work/SRC/openSUSE:Factory/.Vc.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "Vc" Sat May 20 14:32:26 2017 rev:7 rq:494956 version:1.3.2 Changes: -------- --- /work/SRC/openSUSE:Factory/Vc/Vc.changes 2017-03-10 21:46:23.677692750 +0100 +++ /work/SRC/openSUSE:Factory/.Vc.new/Vc.changes 2017-05-20 14:32:44.855517638 +0200 @@ -1,0 +2,7 @@ +Mon May 15 13:37:54 UTC 2017 - idon...@suse.com + +- Update to version 1.3.2 + * Resolve warning from GCC 6 about ignored attributes + * Support for Kaby Lake detection + +------------------------------------------------------------------- Old: ---- Vc-1.3.1.tar.gz New: ---- Vc-1.3.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ Vc.spec ++++++ --- /var/tmp/diff_new_pack.EyleYE/_old 2017-05-20 14:32:46.495285647 +0200 +++ /var/tmp/diff_new_pack.EyleYE/_new 2017-05-20 14:32:46.495285647 +0200 @@ -18,7 +18,7 @@ Name: Vc -Version: 1.3.1 +Version: 1.3.2 Release: 0 Summary: Collection of SIMD Vector Classes License: BSD-3-Clause ++++++ Vc-1.3.1.tar.gz -> Vc-1.3.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/CMakeLists.txt new/Vc-1.3.2/CMakeLists.txt --- old/Vc-1.3.1/CMakeLists.txt 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/CMakeLists.txt 2017-05-03 14:38:00.000000000 +0200 @@ -69,8 +69,6 @@ list(APPEND disabled_targets example_scaling_scalar ) - elseif(Vc_GCC_VERSION VERSION_GREATER "5.99") - AddCompilerFlag(-Wno-ignored-attributes) endif() elseif(Vc_COMPILER_IS_MSVC) if(MSVC_VERSION LESS 1700) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/avx/vector.h new/Vc-1.3.2/avx/vector.h --- old/Vc-1.3.1/avx/vector.h 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/avx/vector.h 2017-05-03 14:38:00.000000000 +0200 @@ -88,7 +88,7 @@ Vc_FREE_STORE_OPERATORS_ALIGNED(alignof(VectorType)); - Vc_ALIGNED_TYPEDEF(sizeof(T), T, EntryType); + using EntryType = typename Common::ensure_alignment_equals_sizeof<T>::type; using value_type = EntryType; typedef EntryType VectorEntryType; static constexpr size_t Size = sizeof(VectorType) / sizeof(EntryType); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/cmake/OptimizeForArchitecture.cmake new/Vc-1.3.2/cmake/OptimizeForArchitecture.cmake --- old/Vc-1.3.1/cmake/OptimizeForArchitecture.cmake 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/cmake/OptimizeForArchitecture.cmake 2017-05-03 14:38:00.000000000 +0200 @@ -98,6 +98,26 @@ # 17 1D | Enhanced Intel Core microarchitecture # 0F | Intel Core microarchitecture # + # Intel SDM Vol. 3C 35-1 / December 2016: + # 57 | Xeon Phi 3200, 5200, 7200 [Knights Landing] + # 85 | Future Xeon Phi + # 8E 9E | 7th gen. Core [Kaby Lake] + # 55 | Future Xeon [Skylake w/ AVX512] + # 4E 5E | 6th gen. Core / E3 v5 [Skylake w/o AVX512] + # 56 | Xeon D-1500 [Broadwell] + # 4F | Xeon E5 v4, E7 v4, i7-69xx [Broadwell] + # 47 | 5th gen. Core / Xeon E3 v4 [Broadwell] + # 3D | M-5xxx / 5th gen. [Broadwell] + # 3F | Xeon E5 v3, E7 v3, i7-59xx [Haswell-E] + # 3C 45 46 | 4th gen. Core, Xeon E3 v3 [Haswell] + # 3E | Xeon E5 v2, E7 v2, i7-49xx [Ivy Bridge-E] + # 3A | 3rd gen. Core, Xeon E3 v2 [Ivy Bridge] + # 2D | Xeon E5, i7-39xx [Sandy Bridge] + # 2F | Xeon E7 + # 2A | Xeon E3, 2nd gen. Core [Sandy Bridge] + # 2E | Xeon 7500, 6500 series + # 25 2C | Xeon 3600, 5600 series, Core i7, i5 and i3 + # # Values from the Intel SDE: # 5C | Goldmont # 5A | Silvermont @@ -107,7 +127,7 @@ # 4E | Skylake Client # 3C | Broadwell (likely a bug in the SDE) # 3C | Haswell - if(_cpu_model EQUAL 87) + if(_cpu_model EQUAL 87) # 57 set(TARGET_ARCHITECTURE "knl") # Knights Landing elseif(_cpu_model EQUAL 92) set(TARGET_ARCHITECTURE "goldmont") @@ -115,11 +135,13 @@ set(TARGET_ARCHITECTURE "silvermont") elseif(_cpu_model EQUAL 102) set(TARGET_ARCHITECTURE "cannonlake") + elseif(_cpu_model EQUAL 142 OR _cpu_model EQUAL 158) # 8E, 9E + set(TARGET_ARCHITECTURE "kaby-lake") elseif(_cpu_model EQUAL 85) # 55 set(TARGET_ARCHITECTURE "skylake-avx512") elseif(_cpu_model EQUAL 78 OR _cpu_model EQUAL 94) # 4E, 5E set(TARGET_ARCHITECTURE "skylake") - elseif(_cpu_model EQUAL 61 OR _cpu_model EQUAL 71 OR _cpu_model EQUAL 86) + elseif(_cpu_model EQUAL 61 OR _cpu_model EQUAL 71 OR _cpu_model EQUAL 79 OR _cpu_model EQUAL 86) # 3D, 47, 4F, 56 set(TARGET_ARCHITECTURE "broadwell") elseif(_cpu_model EQUAL 60 OR _cpu_model EQUAL 69 OR _cpu_model EQUAL 70 OR _cpu_model EQUAL 63) set(TARGET_ARCHITECTURE "haswell") @@ -183,7 +205,7 @@ Setting the value to \"auto\" will try to optimize for the architecture where cmake is called. \ Other supported values are: \"none\", \"generic\", \"core\", \"merom\" (65nm Core2), \ \"penryn\" (45nm Core2), \"nehalem\", \"westmere\", \"sandy-bridge\", \"ivy-bridge\", \ -\"haswell\", \"broadwell\", \"skylake\", \"skylake-avx512\", \"cannonlake\", \"silvermont\", \ +\"haswell\", \"broadwell\", \"skylake\", \"skylake-xeon\", \"kaby-lake\", \"cannonlake\", \"silvermont\", \ \"goldmont\", \"knl\" (Knights Landing), \"atom\", \"k8\", \"k8-sse3\", \"barcelona\", \ \"istanbul\", \"magny-cours\", \"bulldozer\", \"interlagos\", \"piledriver\", \ \"AMD 14h\", \"AMD 16h\".") @@ -287,6 +309,8 @@ _knightslanding() elseif(TARGET_ARCHITECTURE STREQUAL "cannonlake") _cannonlake() + elseif(TARGET_ARCHITECTURE STREQUAL "kaby-lake") + _skylake() elseif(TARGET_ARCHITECTURE STREQUAL "skylake-xeon" OR TARGET_ARCHITECTURE STREQUAL "skylake-avx512") _skylake_avx512() elseif(TARGET_ARCHITECTURE STREQUAL "skylake") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/common/types.h new/Vc-1.3.2/common/types.h --- old/Vc-1.3.1/common/types.h 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/common/types.h 2017-05-03 14:38:00.000000000 +0200 @@ -358,6 +358,19 @@ unrolled_loop<std::size_t, 0u, Size>(std::forward<F>(f)); } +/**\internal + * The member type `type` is either `T` or `T` with alignment increased to sizeof(T) if + * alignof(T) < sizeof(T). + */ +template <class T, std::size_t Size = sizeof(T), std::size_t Alignment = alignof(T)> +struct ensure_alignment_equals_sizeof { + Vc_ALIGNED_TYPEDEF(Size, T, type); +}; +template <class T, std::size_t Size> +struct ensure_alignment_equals_sizeof<T, Size, Size> { + using type = T; +}; + } // namespace Common } // namespace Vc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/doc/Doxyfile new/Vc-1.3.2/doc/Doxyfile --- old/Vc-1.3.1/doc/Doxyfile 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/doc/Doxyfile 2017-05-03 14:38:00.000000000 +0200 @@ -38,7 +38,7 @@ # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 1.3.1 +PROJECT_NUMBER = 1.3.2 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/include/Vc/global.h new/Vc-1.3.2/include/Vc/global.h --- old/Vc-1.3.1/include/Vc/global.h 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/include/Vc/global.h 2017-05-03 14:38:00.000000000 +0200 @@ -103,6 +103,14 @@ #define Vc_UNSUPPORTED_COMPILER 1 #endif +#if defined Vc_GCC && Vc_GCC >= 0x60000 +#define Vc_RESET_DIAGNOSTICS _Pragma("GCC diagnostic pop") +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wignored-attributes" +#else +#define Vc_RESET_DIAGNOSTICS +#endif + #if __cplusplus < 201103 && (!defined Vc_MSVC || _MSC_VER < 1900) # error "Vc requires support for C++11." #elif __cplusplus >= 201402L diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/include/Vc/vector.h new/Vc-1.3.2/include/Vc/vector.h --- old/Vc-1.3.1/include/Vc/vector.h 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/include/Vc/vector.h 2017-05-03 14:38:00.000000000 +0200 @@ -283,4 +283,6 @@ } // namespace std #endif +Vc_RESET_DIAGNOSTICS + #endif // VC_VECTOR_H_ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/include/Vc/version.h new/Vc-1.3.2/include/Vc/version.h --- old/Vc-1.3.1/include/Vc/version.h 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/include/Vc/version.h 2017-05-03 14:38:00.000000000 +0200 @@ -37,13 +37,13 @@ * \ingroup Utilities * Contains the version string of the %Vc headers. Same as Vc::versionString(). */ -#define Vc_VERSION_STRING "1.3.1" +#define Vc_VERSION_STRING "1.3.2" /** * \ingroup Utilities * Contains the encoded version number of the %Vc headers. Same as Vc::versionNumber(). */ -#define Vc_VERSION_NUMBER 0x010302 +#define Vc_VERSION_NUMBER 0x010304 /** * \ingroup Utilities diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/mic/vector.h new/Vc-1.3.2/mic/vector.h --- old/Vc-1.3.1/mic/vector.h 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/mic/vector.h 2017-05-03 14:38:00.000000000 +0200 @@ -80,7 +80,7 @@ Vc_FREE_STORE_OPERATORS_ALIGNED(64); typedef typename MIC::VectorTypeHelper<T>::Type VectorType; using vector_type = VectorType; - Vc_ALIGNED_TYPEDEF(sizeof(T), T, EntryType); + using EntryType = typename Common::ensure_alignment_equals_sizeof<T>::type; using value_type = EntryType; typedef typename MIC::DetermineVectorEntryType<T>::Type VectorEntryType; static constexpr size_t Size = sizeof(VectorType) / sizeof(VectorEntryType); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/scalar/vector.h new/Vc-1.3.2/scalar/vector.h --- old/Vc-1.3.1/scalar/vector.h 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/scalar/vector.h 2017-05-03 14:38:00.000000000 +0200 @@ -52,7 +52,7 @@ public: using abi = VectorAbi::Scalar; - Vc_ALIGNED_TYPEDEF(sizeof(T), T, EntryType); + using EntryType = typename Common::ensure_alignment_equals_sizeof<T>::type; using VectorEntryType = EntryType; using value_type = EntryType; using VectorType = EntryType; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/src/trigonometric.cpp new/Vc-1.3.2/src/trigonometric.cpp --- old/Vc-1.3.1/src/trigonometric.cpp 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/src/trigonometric.cpp 2017-05-03 14:38:00.000000000 +0200 @@ -290,8 +290,7 @@ Vc::CurrentImplementation::current()>>::asin(const Vc::float_v &_x) { typedef Vc::float_v V; - typedef V::EntryType T; - typedef Const<T, V::abi> C; + typedef Const<float, V::abi> C; typedef V::Mask M; const M &negative = _x < V::Zero(); @@ -358,8 +357,7 @@ Vc::CurrentImplementation::current()>>::atan(const Vc::float_v &_x) { using V = Vc::float_v; - typedef V::EntryType T; - typedef Const<T, V::abi> C; + typedef Const<float, V::abi> C; typedef V::Mask M; V x = abs(_x); const M >_tan_3pi_8 = x > C::atanThrsHi(); @@ -416,8 +414,7 @@ const Vc::float_v &x) { using V = Vc::float_v; - typedef V::EntryType T; - typedef Const<T, V::abi> C; + typedef Const<float, V::abi> C; typedef V::Mask M; const M xZero = x == V::Zero(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/sse/intrinsics.h new/Vc-1.3.2/sse/intrinsics.h --- old/Vc-1.3.1/sse/intrinsics.h 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/sse/intrinsics.h 2017-05-03 14:38:00.000000000 +0200 @@ -727,7 +727,7 @@ template <typename T> struct VectorTraits { typedef typename VectorTypeHelper<T>::Type VectorType; - Vc_ALIGNED_TYPEDEF(sizeof(T), T, EntryType); + using EntryType = typename Common::ensure_alignment_equals_sizeof<T>::type; static constexpr size_t Size = sizeof(VectorType) / sizeof(EntryType); enum Constants { HasVectorDivision = !std::is_integral<T>::value }; typedef Mask<T> MaskType; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Vc-1.3.1/tests/types.cpp new/Vc-1.3.2/tests/types.cpp --- old/Vc-1.3.1/tests/types.cpp 2017-03-09 14:36:15.000000000 +0100 +++ new/Vc-1.3.2/tests/types.cpp 2017-05-03 14:38:00.000000000 +0200 @@ -23,6 +23,10 @@ #include "unittest.h" +#if defined Vc_GCC && Vc_GCC >= 0x60000 +#pragma GCC diagnostic ignored "-Wignored-attributes" +#endif + #define ALL_TYPES (ALL_VECTORS, SIMD_ARRAYS(32)) TEST_TYPES(V, check_EntryType, ALL_TYPES)