From f36202620b428c45a1c8d91743727c9313424fb2 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Sat, 28 Jul 2018 11:07:56 +0000 Subject: Vendor import of libc++ trunk r338150: https://llvm.org/svn/llvm-project/libcxx/trunk@338150 --- .../experimental/simd/simd.traits/is_simd.pass.cpp | 133 +++++++++++++++++++++ 1 file changed, 133 insertions(+) create mode 100644 test/std/experimental/simd/simd.traits/is_simd.pass.cpp (limited to 'test/std/experimental/simd/simd.traits/is_simd.pass.cpp') diff --git a/test/std/experimental/simd/simd.traits/is_simd.pass.cpp b/test/std/experimental/simd/simd.traits/is_simd.pass.cpp new file mode 100644 index 000000000000..77f5d10ed3a8 --- /dev/null +++ b/test/std/experimental/simd/simd.traits/is_simd.pass.cpp @@ -0,0 +1,133 @@ +//===----------------------------------------------------------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is dual licensed under the MIT and the University of Illinois Open +// Source Licenses. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +// UNSUPPORTED: c++98, c++03 + +// +// +// [simd.traits] +// template struct is_simd; +// template inline constexpr bool is_simd_v = is_simd::value; + +#include +#include +#include "test_macros.h" + +using namespace std::experimental::parallelism_v2; + +struct UserType {}; + +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); + +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); + +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); + +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); +static_assert( is_simd>::value, ""); + +static_assert(!is_simd::value, ""); +static_assert(!is_simd::value, ""); +static_assert(!is_simd::value, ""); +static_assert(!is_simd>::value, ""); +static_assert(!is_simd>::value, ""); +static_assert(!is_simd::value, ""); + +#if TEST_STD_VER > 14 && !defined(_LIBCPP_HAS_NO_VARIABLE_TEMPLATES) && \ + !defined(_LIBCPP_HAS_NO_INLINE_VARIABLES) + +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); + +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); + +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); + +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); +static_assert( is_simd_v>, ""); + +static_assert(!is_simd_v, ""); +static_assert(!is_simd_v, ""); +static_assert(!is_simd_v, ""); +static_assert(!is_simd_v>, ""); +static_assert(!is_simd_v>, ""); +static_assert(!is_simd_v, ""); + +#endif + +int main() {} -- cgit v1.2.3