|
14 | 14 | // CHECK-NEXT: "_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE3EMU",
|
15 | 15 | // CHECK-NEXT: "_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE3OWL",
|
16 | 16 | // CHECK-NEXT: "_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE3RAT",
|
17 |
| -// CHECK-NEXT: "_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE3FOX" |
| 17 | +// CHECK-NEXT: "_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE3FOX", |
| 18 | +// CHECK-NEXT: "_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE3BEE" |
18 | 19 | // CHECK-NEXT: };
|
19 | 20 |
|
20 | 21 | // CHECK:template <> struct KernelInfo<class GNU> {
|
|
97 | 98 | // CHECK-NEXT: __SYCL_DLL_LOCAL
|
98 | 99 | // CHECK-NEXT: static constexpr bool callsAnyThisFreeFunction() { return 1; }
|
99 | 100 | // CHECK-NEXT:};
|
| 101 | +// CHECK-NEXT:template <> struct KernelInfo<class BEE> { |
| 102 | +// CHECK-NEXT: __SYCL_DLL_LOCAL |
| 103 | +// CHECK-NEXT: static constexpr const char* getName() { return "_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE3BEE"; } |
| 104 | +// CHECK-NEXT: __SYCL_DLL_LOCAL |
| 105 | +// CHECK-NEXT: static constexpr unsigned getNumParams() { return 0; } |
| 106 | +// CHECK-NEXT: __SYCL_DLL_LOCAL |
| 107 | +// CHECK-NEXT: static constexpr const kernel_param_desc_t& getParamDesc(unsigned i) { |
| 108 | +// CHECK-NEXT: return kernel_signatures[i+0]; |
| 109 | +// CHECK-NEXT: } |
| 110 | +// CHECK-NEXT: __SYCL_DLL_LOCAL |
| 111 | +// CHECK-NEXT: static constexpr bool isESIMD() { return 0; } |
| 112 | +// CHECK-NEXT: __SYCL_DLL_LOCAL |
| 113 | +// CHECK-NEXT: static constexpr bool callsThisItem() { return 1; } |
| 114 | +// CHECK-NEXT: __SYCL_DLL_LOCAL |
| 115 | +// CHECK-NEXT: static constexpr bool callsAnyThisFreeFunction() { return 1; } |
| 116 | +// CHECK-NEXT:}; |
100 | 117 |
|
101 | 118 | #include "sycl.hpp"
|
102 | 119 |
|
@@ -135,8 +152,10 @@ int main() {
|
135 | 152 | cgh.parallel_for<class RAT>(range<1>(1), [=](id<1> I) { f(); });
|
136 | 153 |
|
137 | 154 | // This kernel does not call sycl::this_item, but does call this_id
|
138 |
| - cgh.parallel_for<class FOX>(range<1>(1), |
139 |
| - [=](id<1> I) { this_id<1>(); }); |
| 155 | + cgh.parallel_for<class FOX>(range<1>(1), [=](id<1> I) { this_id<1>(); }); |
| 156 | + |
| 157 | + // This kernel calls sycl::this_item |
| 158 | + cgh.parallel_for<class BEE>(range<1>(1), [=](auto I) { this_item<1>(); }); |
140 | 159 | });
|
141 | 160 |
|
142 | 161 | return 0;
|
|
0 commit comments