Skip to content

Commit 630a6de

Browse files
author
Alexander Batashev
authored
[SYCL][NFC] Improve ABI testing for memory objects (#2139)
#1870 broke ABI by adding new field to AccessorImplHost. This patch improves ABI testing to catch this type of problems in future. Signed-off-by: Alexander Batashev <[email protected]>
1 parent 6c9c927 commit 630a6de

File tree

1 file changed

+23
-1
lines changed

1 file changed

+23
-1
lines changed

sycl/test/abi/symbol_size.cpp

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@
55

66
#include <CL/sycl/accessor.hpp>
77
#include <CL/sycl/buffer.hpp>
8+
#include <CL/sycl/detail/accessor_impl.hpp>
9+
#include <CL/sycl/detail/buffer_impl.hpp>
10+
#include <CL/sycl/detail/image_impl.hpp>
11+
#include <CL/sycl/detail/sampler_impl.hpp>
12+
#include <CL/sycl/detail/stream_impl.hpp>
813
#include <CL/sycl/device.hpp>
914
#include <CL/sycl/device_event.hpp>
1015
#include <CL/sycl/device_selector.hpp>
@@ -33,8 +38,14 @@ void check_size() {
3338

3439
int main() {
3540
using accessor_t = accessor<int, 1, access::mode::read,
36-
access::target::global_buffer, access::placeholder::true_t>;
41+
access::target::global_buffer,
42+
access::placeholder::true_t>;
3743
check_size<accessor_t, 32>();
44+
check_size<detail::AccessorImplDevice<1>, 24>();
45+
check_size<detail::LocalAccessorBaseDevice<1>, 24>();
46+
check_size<detail::AccessorImplHost, 128>();
47+
check_size<detail::AccessorBaseHost, 16>();
48+
check_size<detail::LocalAccessorImplHost, 56>();
3849
check_size<buffer<int>, 40>();
3950
check_size<context, 16>();
4051
check_size<cpu_selector, 8>();
@@ -45,21 +56,32 @@ int main() {
4556
check_size<gpu_selector, 8>();
4657
#ifdef _MSC_VER
4758
check_size<handler, 552>();
59+
check_size<detail::buffer_impl, 288>();
60+
check_size<detail::image_impl<1>, 344>();
4861
#else
4962
check_size<handler, 560>();
63+
check_size<detail::buffer_impl, 256>();
64+
check_size<detail::image_impl<1>, 312>();
5065
#endif
5166
check_size<image<1>, 16>();
5267
check_size<kernel, 16>();
5368
check_size<platform, 16>();
5469
#ifdef __SYCL_DEVICE_ONLY__
5570
check_size<private_memory<int, 1>, 4>();
71+
check_size<detail::sampler_impl, 8>();
5672
#else
5773
check_size<private_memory<int, 1>, 8>();
74+
#ifdef _MSC_VER
75+
check_size<detail::sampler_impl, 80>();
76+
#else
77+
check_size<detail::sampler_impl, 72>();
78+
#endif
5879
#endif
5980
check_size<program, 16>();
6081
check_size<range<1>, 8>();
6182
check_size<sampler, 16>();
6283
check_size<stream, 144>();
84+
check_size<detail::stream_impl, 120>();
6385
check_size<queue, 16>();
6486

6587
return 0;

0 commit comments

Comments
 (0)