Skip to content

Commit 77ee765

Browse files
Make sycl/test/gdb/accessors-device.cpp more reliable
1 parent c19262a commit 77ee765

File tree

1 file changed

+42
-10
lines changed

1 file changed

+42
-10
lines changed

sycl/test/gdb/accessors-device.cpp

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,51 @@
1-
// RUN: %clangxx -fsycl-device-only -c -fno-color-diagnostics -Xclang -ast-dump %s -I %sycl_include -Wno-sycl-strict | FileCheck %s
1+
// RUN: %clangxx -fsycl-device-only -c -fno-color-diagnostics -Xclang -fdump-record-layouts %s -I %sycl_include -Wno-sycl-strict | FileCheck %s
22
// UNSUPPORTED: windows
3-
#include <sycl/accessor.hpp>
3+
#include <sycl/sycl.hpp>
44

55
typedef sycl::accessor<int, 1, sycl::access::mode::read> dummy;
66

7+
using namespace sycl;
8+
9+
int main() {
10+
queue q;
11+
buffer<int, 1> b(1);
12+
q.submit([&](handler &cgh) {
13+
accessor a{b, cgh};
14+
15+
cgh.single_task([=]() { a[0] = 42; });
16+
});
17+
}
18+
719
// AccessorImplDevice must have MemRange and Offset fields
820

9-
// CHECK: CXXRecordDecl {{.*}} class AccessorImplDevice definition
10-
// CHECK-NOT: CXXRecordDecl {{.*}} definition
11-
// CHECK: FieldDecl {{.*}} referenced Offset
12-
// CHECK-NOT: CXXRecordDecl {{.*}} definition
13-
// CHECK: FieldDecl {{.*}} referenced MemRange
21+
// CHECK: 0 | class sycl::detail::AccessorImplDevice<1>
22+
// CHECK-NEXT: 0 | class sycl::id<1> Offset
23+
// CHECK-NEXT: 0 | class sycl::detail::array<1> (base)
24+
// CHECK-NEXT: 0 | size_t[1] common_array
25+
// CHECK-NEXT: 8 | class sycl::range<1> AccessRange
26+
// CHECK-NEXT: 8 | class sycl::detail::array<1> (base)
27+
// CHECK-NEXT: 8 | size_t[1] common_array
28+
// CHECK-NEXT: 16 | class sycl::range<1> MemRange
29+
// CHECK-NEXT: 16 | class sycl::detail::array<1> (base)
30+
// CHECK-NEXT: 16 | size_t[1] common_array
31+
// CHECK-NEXT: | [sizeof=24, dsize=24, align=8,
32+
// CHECK-NEXT: | nvsize=24, nvalign=8]
1433

1534
// accessor.impl must be present and of AccessorImplDevice type
1635

17-
// CHECK: CXXRecordDecl {{.*}} class accessor definition
18-
// CHECK-NOT: CXXRecordDecl {{.*}} definition
19-
// CHECK: FieldDecl {{.*}} referenced impl 'detail::AccessorImplDevice<AdjustedDim>'
36+
// CHECK: 0 | class sycl::accessor<int, 1, sycl::access::mode::read_write, sycl::access::target::global_buffer, sycl::access::placeholder::false_t>
37+
// CHECK-NEXT: 0 | class sycl::detail::accessor_common<int, 1, sycl::access::mode::read_write, sycl::access::target::global_buffer, sycl::access::placeholder::false_t> (base) (empty)
38+
// CHECK-NEXT: 0 | class sycl::detail::AccessorImplDevice<1> impl
39+
// CHECK-NEXT: 0 | class sycl::id<1> Offset
40+
// CHECK-NEXT: 0 | class sycl::detail::array<1> (base)
41+
// CHECK-NEXT: 0 | size_t[1] common_array
42+
// CHECK-NEXT: 8 | class sycl::range<1> AccessRange
43+
// CHECK-NEXT: 8 | class sycl::detail::array<1> (base)
44+
// CHECK-NEXT: 8 | size_t[1] common_array
45+
// CHECK-NEXT: 16 | class sycl::range<1> MemRange
46+
// CHECK-NEXT: 16 | class sycl::detail::array<1> (base)
47+
// CHECK-NEXT: 16 | size_t[1] common_array
48+
// CHECK-NEXT: 24 | union sycl::accessor<int, 1, sycl::access::mode::read_write, sycl::access::target::global_buffer, sycl::access::placeholder::false_t>::(anonymous at
49+
// CHECK-NEXT: 24 | ConcreteASPtrType MData
50+
// CHECK-NEXT: | [sizeof=32, dsize=32, align=8,
51+
// CHECK-NEXT: | nvsize=32, nvalign=8]

0 commit comments

Comments
 (0)