Skip to content

Commit 0cd20fe

Browse files
committed
Added char, short, int, long, long long conversion tests and dropped cl:: prefix.
1 parent b777b39 commit 0cd20fe

File tree

1 file changed

+42
-34
lines changed

1 file changed

+42
-34
lines changed

sycl/test/basic_tests/vectors/vectors.cpp

Lines changed: 42 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,17 @@
1111
#define SYCL_SIMPLE_SWIZZLES
1212
#include <CL/sycl.hpp>
1313

14-
void check_vectors(cl::sycl::int4 a, cl::sycl::int4 b, cl::sycl::int4 c,
15-
cl::sycl::int4 gold) {
16-
cl::sycl::int4 result = a * (cl::sycl::int4)b.y() + c;
14+
void check_vectors(sycl::int4 a, sycl::int4 b, sycl::int4 c, sycl::int4 gold) {
15+
sycl::int4 result = a * (sycl::int4)b.y() + c;
1716
assert((int)result.x() == (int)gold.x());
1817
assert((int)result.y() == (int)gold.y());
1918
assert((int)result.z() == (int)gold.z());
2019
assert((int)result.w() == (int)gold.w());
2120
}
2221

2322
template <typename From, typename To> void check_convert() {
24-
cl::sycl::vec<From, 4> vec{1, 2, 3, 4};
25-
cl::sycl::vec<To, 4> result = vec.template convert<To>();
23+
sycl::vec<From, 4> vec{1, 2, 3, 4};
24+
sycl::vec<To, 4> result = vec.template convert<To>();
2625
assert((int)result.x() == (int)vec.x());
2726
assert((int)result.y() == (int)vec.y());
2827
assert((int)result.z() == (int)vec.z());
@@ -31,27 +30,32 @@ template <typename From, typename To> void check_convert() {
3130

3231
template <typename From, typename To> void check_signed_unsigned_convert_to() {
3332
check_convert<From, To>();
34-
check_convert<From, cl::sycl::detail::make_unsigned_t<To>>();
35-
check_convert<cl::sycl::detail::make_unsigned_t<From>, To>();
36-
check_convert<cl::sycl::detail::make_unsigned_t<From>,
37-
cl::sycl::detail::make_unsigned_t<To>>();
33+
check_convert<From, sycl::detail::make_unsigned_t<To>>();
34+
check_convert<sycl::detail::make_unsigned_t<From>, To>();
35+
check_convert<sycl::detail::make_unsigned_t<From>,
36+
sycl::detail::make_unsigned_t<To>>();
3837
}
3938

4039
template <typename From> void check_convert_from() {
4140
check_signed_unsigned_convert_to<From, int8_t>();
4241
check_signed_unsigned_convert_to<From, int16_t>();
4342
check_signed_unsigned_convert_to<From, int32_t>();
4443
check_signed_unsigned_convert_to<From, int64_t>();
44+
check_signed_unsigned_convert_to<From, char>();
45+
check_signed_unsigned_convert_to<From, short>();
46+
check_signed_unsigned_convert_to<From, int>();
47+
check_signed_unsigned_convert_to<From, long>();
48+
check_signed_unsigned_convert_to<From, long long>();
4549
check_signed_unsigned_convert_to<From, half>();
4650
check_signed_unsigned_convert_to<From, float>();
4751
check_signed_unsigned_convert_to<From, double>();
4852
}
4953

5054
int main() {
51-
cl::sycl::int4 a = {1, 2, 3, 4};
52-
const cl::sycl::int4 b = {10, 20, 30, 40};
53-
const cl::sycl::int4 gold = {21, 42, 90, 120};
54-
const cl::sycl::int2 a_xy = a.xy();
55+
sycl::int4 a = {1, 2, 3, 4};
56+
const sycl::int4 b = {10, 20, 30, 40};
57+
const sycl::int4 gold = {21, 42, 90, 120};
58+
const sycl::int2 a_xy = a.xy();
5559
check_vectors(a, b, {1, 2, 30, 40}, gold);
5660
check_vectors(a, b, {a.x(), a.y(), b.z(), b.w()}, gold);
5761
check_vectors(a, b, {a.x(), 2, b.z(), 40}, gold);
@@ -60,11 +64,11 @@ int main() {
6064
check_vectors(a, b, {a.xy(), b.zw()}, gold);
6165

6266
// Constructing vector from a scalar
63-
cl::sycl::vec<int, 1> vec_from_one_elem(1);
67+
sycl::vec<int, 1> vec_from_one_elem(1);
6468

6569
// implicit conversion
66-
cl::sycl::vec<unsigned char, 2> vec_2(1, 2);
67-
cl::sycl::vec<unsigned char, 4> vec_4(0, vec_2, 3);
70+
sycl::vec<unsigned char, 2> vec_2(1, 2);
71+
sycl::vec<unsigned char, 4> vec_4(0, vec_2, 3);
6872

6973
assert(vec_4.get_count() == 4);
7074
assert(static_cast<unsigned char>(vec_4.x()) == static_cast<unsigned char>(0));
@@ -74,10 +78,10 @@ int main() {
7478

7579
// explicit conversion
7680
int64_t(vec_2.x());
77-
cl::sycl::int4(vec_2.x());
81+
sycl::int4(vec_2.x());
7882

7983
// Check broadcasting operator=
80-
cl::sycl::vec<float, 4> b_vec(1.0);
84+
sycl::vec<float, 4> b_vec(1.0);
8185
b_vec = 0.5;
8286
assert(static_cast<float>(b_vec.x()) == static_cast<float>(0.5));
8387
assert(static_cast<float>(b_vec.y()) == static_cast<float>(0.5));
@@ -87,33 +91,37 @@ int main() {
8791
// Check that vector with 'unsigned long long' elements has enough bits to
8892
// store value.
8993
unsigned long long ull_ref = 1ull - 2ull;
90-
auto ull_vec = cl::sycl::vec<unsigned long long, 1>(ull_ref);
91-
unsigned long long ull_val = ull_vec.template swizzle<cl::sycl::elem::s0>();
94+
auto ull_vec = sycl::vec<unsigned long long, 1>(ull_ref);
95+
unsigned long long ull_val = ull_vec.template swizzle<sycl::elem::s0>();
9296
assert(ull_val == ull_ref);
9397

9498
// Check that the function as() in swizzle vec class is working correctly
95-
cl::sycl::vec<int8_t, 2> inputVec = cl::sycl::vec<int8_t, 2>(0, 1);
96-
auto asVec =
97-
inputVec.template swizzle<cl::sycl::elem::s0, cl::sycl::elem::s1>()
98-
.template as<cl::sycl::vec<int16_t, 1>>();
99+
sycl::vec<int8_t, 2> inputVec = sycl::vec<int8_t, 2>(0, 1);
100+
auto asVec = inputVec.template swizzle<sycl::elem::s0, sycl::elem::s1>()
101+
.template as<sycl::vec<int16_t, 1>>();
99102

100103
// Check that [u]long[n] type aliases match vec<[unsigned] long, n> types.
101-
assert((std::is_same<cl::sycl::vec<long, 2>, cl::sycl::long2>::value));
102-
assert((std::is_same<cl::sycl::vec<long, 3>, cl::sycl::long3>::value));
103-
assert((std::is_same<cl::sycl::vec<long, 4>, cl::sycl::long4>::value));
104-
assert((std::is_same<cl::sycl::vec<long, 8>, cl::sycl::long8>::value));
105-
assert((std::is_same<cl::sycl::vec<long, 16>, cl::sycl::long16>::value));
106-
assert((std::is_same<cl::sycl::vec<unsigned long, 2>, cl::sycl::ulong2>::value));
107-
assert((std::is_same<cl::sycl::vec<unsigned long, 3>, cl::sycl::ulong3>::value));
108-
assert((std::is_same<cl::sycl::vec<unsigned long, 4>, cl::sycl::ulong4>::value));
109-
assert((std::is_same<cl::sycl::vec<unsigned long, 8>, cl::sycl::ulong8>::value));
110-
assert((std::is_same<cl::sycl::vec<unsigned long, 16>, cl::sycl::ulong16>::value));
104+
assert((std::is_same<sycl::vec<long, 2>, sycl::long2>::value));
105+
assert((std::is_same<sycl::vec<long, 3>, sycl::long3>::value));
106+
assert((std::is_same<sycl::vec<long, 4>, sycl::long4>::value));
107+
assert((std::is_same<sycl::vec<long, 8>, sycl::long8>::value));
108+
assert((std::is_same<sycl::vec<long, 16>, sycl::long16>::value));
109+
assert((std::is_same<sycl::vec<unsigned long, 2>, sycl::ulong2>::value));
110+
assert((std::is_same<sycl::vec<unsigned long, 3>, sycl::ulong3>::value));
111+
assert((std::is_same<sycl::vec<unsigned long, 4>, sycl::ulong4>::value));
112+
assert((std::is_same<sycl::vec<unsigned long, 8>, sycl::ulong8>::value));
113+
assert((std::is_same<sycl::vec<unsigned long, 16>, sycl::ulong16>::value));
111114

112115
// Check convert() from and to various types.
113116
check_convert_from<int8_t>();
114117
check_convert_from<int16_t>();
115118
check_convert_from<int32_t>();
116119
check_convert_from<int64_t>();
120+
check_convert_from<char>();
121+
check_convert_from<short>();
122+
check_convert_from<int>();
123+
check_convert_from<long>();
124+
check_convert_from<long long>();
117125
check_convert_from<half>();
118126
check_convert_from<float>();
119127
check_convert_from<double>();

0 commit comments

Comments
 (0)