BOOST_AUTO_TEST_CASE_TEMPLATE( fill_n_scalar, S, scalar_types ) { S v1 = S(1.5f); S v2 = S(2.5f); S v3 = S(42.0f); test_fill_n(v1, v2, v3, queue); }
static void test_fill_n (const std::size_t N) { rw_info (0, 0, 0, "template <class %s, class %s, class %s> " "void std::fill_n (%1$s, %2$s, const %3$s&)", "OutputIterator", "Size", "T"); if (rw_opt_no_output_iter) { rw_note (0, __FILE__, __LINE__, "OutputIterator test disabled"); std_log(LOG_FILENAME_LINE,"OutputIterator test disabled"); } else { test_fill_n (N, OutputIter<X>(0, 0, 0), (X*)0); } if (rw_opt_no_fwd_iter) { rw_note (0, __FILE__, __LINE__, "ForwardIterator test disabled"); std_log(LOG_FILENAME_LINE,"ForwardIterator test disabled"); } else { test_fill_n (N, FwdIter<X>(), (X*)0); } if (rw_opt_no_bidir_iter) { rw_note (0, __FILE__, __LINE__, "BidirectionalIterator test disabled"); std_log(LOG_FILENAME_LINE,"BidirectionalIterator test disabled"); } else { test_fill_n (N, BidirIter<X>(), (X*)0); } if (rw_opt_no_rnd_iter) { rw_note (0, __FILE__, __LINE__, "RandomAccessIterator test disabled"); std_log(LOG_FILENAME_LINE,"RandomAccessIterator test disabled"); } else { test_fill_n (N, RandomAccessIter<X>(), (X*)0); } }
BOOST_AUTO_TEST_CASE_TEMPLATE( fill_n_vec4, S, scalar_types ) { typedef typename bc::make_vector_type<S, 4>::type T; S s1 = S(1.5f); S s2 = S(2.5f); S s3 = S(42.0f); S s4 = S(84.0f); T v1 = T(s1, s2, s3, s4); T v2 = T(s3, s4, s1, s2); T v3 = T(s4, s3, s2, s1); test_fill_n(v1, v2, v3, queue); }
static int run_test (int, char*[]) { // check that the number of loops is non-negative rw_fatal (-1 < rw_opt_nloops, 0, 0, "number of loops must be non-negative, got %d", rw_opt_nloops); const std::size_t N = std::size_t (rw_opt_nloops); test_fill (N); test_fill_n (N); return 0; }
BOOST_AUTO_TEST_CASE_TEMPLATE( fill_n_vec16, S, scalar_types ) { typedef typename bc::make_vector_type<S, 16>::type T; S s1 = S(1.5f); S s2 = S(2.5f); S s3 = S(42.0f); S s4 = S(84.0f); S s5 = S(122.5f); S s6 = S(131.5f); S s7 = S(142.0f); S s8 = S(254.0f); T v1 = T(s1, s2, s3, s4, s5, s6, s7, s8, s1, s2, s3, s4, s5, s6, s7, s8); T v2 = T(s3, s4, s1, s2, s7, s8, s5, s6, s4, s3, s2, s1, s8, s7, s6, s5); T v3 = T(s4, s3, s2, s1, s8, s7, s6, s5, s8, s7, s6, s5, s4, s3, s2, s1); test_fill_n(v1, v2, v3, queue); }