@@ -30,16 +30,16 @@ namespace sycl {
3030inline namespace _V1 {
3131namespace detail {
3232
33- static const AdapterPtr &getAdapter (backend Backend) {
33+ static const adapter_impl &getAdapter (backend Backend) {
3434 switch (Backend) {
3535 case backend::opencl:
36- return ur::getAdapter<backend::opencl>();
36+ return * ur::getAdapter<backend::opencl>();
3737 case backend::ext_oneapi_level_zero:
38- return ur::getAdapter<backend::ext_oneapi_level_zero>();
38+ return * ur::getAdapter<backend::ext_oneapi_level_zero>();
3939 case backend::ext_oneapi_cuda:
40- return ur::getAdapter<backend::ext_oneapi_cuda>();
40+ return * ur::getAdapter<backend::ext_oneapi_cuda>();
4141 case backend::ext_oneapi_hip:
42- return ur::getAdapter<backend::ext_oneapi_hip>();
42+ return * ur::getAdapter<backend::ext_oneapi_hip>();
4343 default :
4444 throw sycl::exception (
4545 sycl::make_error_code (sycl::errc::runtime),
@@ -71,24 +71,24 @@ backend convertUrBackend(ur_backend_t UrBackend) {
7171}
7272
7373platform make_platform (ur_native_handle_t NativeHandle, backend Backend) {
74- const auto &Adapter = getAdapter (Backend);
74+ const adapter_impl &Adapter = getAdapter (Backend);
7575
7676 // Create UR platform first.
7777 ur_platform_handle_t UrPlatform = nullptr ;
78- Adapter-> call <UrApiKind::urPlatformCreateWithNativeHandle>(
79- NativeHandle, Adapter-> getUrAdapter (), nullptr , &UrPlatform);
78+ Adapter. call <UrApiKind::urPlatformCreateWithNativeHandle>(
79+ NativeHandle, Adapter. getUrAdapter (), nullptr , &UrPlatform);
8080
8181 return detail::createSyclObjFromImpl<platform>(
8282 platform_impl::getOrMakePlatformImpl (UrPlatform, Adapter));
8383}
8484
8585__SYCL_EXPORT device make_device (ur_native_handle_t NativeHandle,
8686 backend Backend) {
87- const auto &Adapter = getAdapter (Backend);
87+ const adapter_impl &Adapter = getAdapter (Backend);
8888
8989 ur_device_handle_t UrDevice = nullptr ;
90- Adapter-> call <UrApiKind::urDeviceCreateWithNativeHandle>(
91- NativeHandle, Adapter-> getUrAdapter (), nullptr , &UrDevice);
90+ Adapter. call <UrApiKind::urDeviceCreateWithNativeHandle>(
91+ NativeHandle, Adapter. getUrAdapter (), nullptr , &UrDevice);
9292
9393 // Construct the SYCL device from UR device.
9494 return detail::createSyclObjFromImpl<device>(
@@ -100,7 +100,7 @@ __SYCL_EXPORT context make_context(ur_native_handle_t NativeHandle,
100100 const async_handler &Handler,
101101 backend Backend, bool KeepOwnership,
102102 const std::vector<device> &DeviceList) {
103- const auto &Adapter = getAdapter (Backend);
103+ const adapter_impl &Adapter = getAdapter (Backend);
104104
105105 ur_context_handle_t UrContext = nullptr ;
106106 ur_context_native_properties_t Properties{};
@@ -110,8 +110,8 @@ __SYCL_EXPORT context make_context(ur_native_handle_t NativeHandle,
110110 for (const auto &Dev : DeviceList) {
111111 DeviceHandles.push_back (detail::getSyclObjImpl (Dev)->getHandleRef ());
112112 }
113- Adapter-> call <UrApiKind::urContextCreateWithNativeHandle>(
114- NativeHandle, Adapter-> getUrAdapter (), DeviceHandles.size (),
113+ Adapter. call <UrApiKind::urContextCreateWithNativeHandle>(
114+ NativeHandle, Adapter. getUrAdapter (), DeviceHandles.size (),
115115 DeviceHandles.data (), &Properties, &UrContext);
116116 // Construct the SYCL context from UR context.
117117 return detail::createSyclObjFromImpl<context>(context_impl::create (
@@ -125,7 +125,7 @@ __SYCL_EXPORT queue make_queue(ur_native_handle_t NativeHandle,
125125 const async_handler &Handler, backend Backend) {
126126 ur_device_handle_t UrDevice =
127127 Device ? getSyclObjImpl (*Device)->getHandleRef () : nullptr ;
128- const auto &Adapter = getAdapter (Backend);
128+ const adapter_impl &Adapter = getAdapter (Backend);
129129 context_impl &ContextImpl = *getSyclObjImpl (Context);
130130
131131 if (PropList.has_property <ext::intel::property::queue::compute_index>()) {
@@ -155,7 +155,7 @@ __SYCL_EXPORT queue make_queue(ur_native_handle_t NativeHandle,
155155 // Create UR queue first.
156156 ur_queue_handle_t UrQueue = nullptr ;
157157
158- Adapter-> call <UrApiKind::urQueueCreateWithNativeHandle>(
158+ Adapter. call <UrApiKind::urQueueCreateWithNativeHandle>(
159159 NativeHandle, ContextImpl.getHandleRef (), UrDevice, &NativeProperties,
160160 &UrQueue);
161161 // Construct the SYCL queue from UR queue.
@@ -171,15 +171,15 @@ __SYCL_EXPORT event make_event(ur_native_handle_t NativeHandle,
171171__SYCL_EXPORT event make_event (ur_native_handle_t NativeHandle,
172172 const context &Context, bool KeepOwnership,
173173 backend Backend) {
174- const auto &Adapter = getAdapter (Backend);
174+ const adapter_impl &Adapter = getAdapter (Backend);
175175 const auto &ContextImpl = getSyclObjImpl (Context);
176176
177177 ur_event_handle_t UrEvent = nullptr ;
178178 ur_event_native_properties_t Properties{};
179179 Properties.stype = UR_STRUCTURE_TYPE_EVENT_NATIVE_PROPERTIES;
180180 Properties.isNativeHandleOwned = !KeepOwnership;
181181
182- Adapter-> call <UrApiKind::urEventCreateWithNativeHandle>(
182+ Adapter. call <UrApiKind::urEventCreateWithNativeHandle>(
183183 NativeHandle, ContextImpl->getHandleRef (), &Properties, &UrEvent);
184184 event Event = detail::createSyclObjFromImpl<event>(
185185 event_impl::create_from_handle (UrEvent, Context));
@@ -193,15 +193,15 @@ std::shared_ptr<detail::kernel_bundle_impl>
193193make_kernel_bundle (ur_native_handle_t NativeHandle,
194194 const context &TargetContext, bool KeepOwnership,
195195 bundle_state State, backend Backend) {
196- const auto &Adapter = getAdapter (Backend);
196+ const adapter_impl &Adapter = getAdapter (Backend);
197197 const auto &ContextImpl = getSyclObjImpl (TargetContext);
198198
199199 ur_program_handle_t UrProgram = nullptr ;
200200 ur_program_native_properties_t Properties{};
201201 Properties.stype = UR_STRUCTURE_TYPE_PROGRAM_NATIVE_PROPERTIES;
202202 Properties.isNativeHandleOwned = !KeepOwnership;
203203
204- Adapter-> call <UrApiKind::urProgramCreateWithNativeHandle>(
204+ Adapter. call <UrApiKind::urProgramCreateWithNativeHandle>(
205205 NativeHandle, ContextImpl->getHandleRef (), &Properties, &UrProgram);
206206 if (UrProgram == nullptr )
207207 throw sycl::exception (
@@ -214,39 +214,39 @@ make_kernel_bundle(ur_native_handle_t NativeHandle,
214214 std::vector<ur_device_handle_t > ProgramDevices;
215215 uint32_t NumDevices = 0 ;
216216
217- Adapter-> call <UrApiKind::urProgramGetInfo>(
217+ Adapter. call <UrApiKind::urProgramGetInfo>(
218218 UrProgram, UR_PROGRAM_INFO_NUM_DEVICES, sizeof (NumDevices), &NumDevices,
219219 nullptr );
220220 ProgramDevices.resize (NumDevices);
221- Adapter-> call <UrApiKind::urProgramGetInfo>(
221+ Adapter. call <UrApiKind::urProgramGetInfo>(
222222 UrProgram, UR_PROGRAM_INFO_DEVICES,
223223 sizeof (ur_device_handle_t ) * NumDevices, ProgramDevices.data (), nullptr );
224224
225225 for (auto &Dev : ProgramDevices) {
226226 ur_program_binary_type_t BinaryType;
227- Adapter-> call <UrApiKind::urProgramGetBuildInfo>(
227+ Adapter. call <UrApiKind::urProgramGetBuildInfo>(
228228 UrProgram, Dev, UR_PROGRAM_BUILD_INFO_BINARY_TYPE,
229229 sizeof (ur_program_binary_type_t ), &BinaryType, nullptr );
230230 switch (BinaryType) {
231231 case (UR_PROGRAM_BINARY_TYPE_NONE):
232232 if (State == bundle_state::object) {
233- auto Res = Adapter-> call_nocheck <UrApiKind::urProgramCompileExp>(
233+ auto Res = Adapter. call_nocheck <UrApiKind::urProgramCompileExp>(
234234 UrProgram, 1 , &Dev, nullptr );
235235 if (Res == UR_RESULT_ERROR_UNSUPPORTED_FEATURE) {
236- Res = Adapter-> call_nocheck <UrApiKind::urProgramCompile>(
236+ Res = Adapter. call_nocheck <UrApiKind::urProgramCompile>(
237237 ContextImpl->getHandleRef (), UrProgram, nullptr );
238238 }
239- Adapter-> checkUrResult <errc::build>(Res);
239+ Adapter. checkUrResult <errc::build>(Res);
240240 }
241241
242242 else if (State == bundle_state::executable) {
243- auto Res = Adapter-> call_nocheck <UrApiKind::urProgramBuildExp>(
243+ auto Res = Adapter. call_nocheck <UrApiKind::urProgramBuildExp>(
244244 UrProgram, 1 , &Dev, nullptr );
245245 if (Res == UR_RESULT_ERROR_UNSUPPORTED_FEATURE) {
246- Res = Adapter-> call_nocheck <UrApiKind::urProgramBuild>(
246+ Res = Adapter. call_nocheck <UrApiKind::urProgramBuild>(
247247 ContextImpl->getHandleRef (), UrProgram, nullptr );
248248 }
249- Adapter-> checkUrResult <errc::build>(Res);
249+ Adapter. checkUrResult <errc::build>(Res);
250250 }
251251
252252 break ;
@@ -259,15 +259,15 @@ make_kernel_bundle(ur_native_handle_t NativeHandle,
259259 detail::codeToString (UR_RESULT_ERROR_INVALID_VALUE));
260260 if (State == bundle_state::executable) {
261261 ur_program_handle_t UrLinkedProgram = nullptr ;
262- auto Res = Adapter-> call_nocheck <UrApiKind::urProgramLinkExp>(
262+ auto Res = Adapter. call_nocheck <UrApiKind::urProgramLinkExp>(
263263 ContextImpl->getHandleRef (), 1 , &Dev, 1 , &UrProgram, nullptr ,
264264 &UrLinkedProgram);
265265 if (Res == UR_RESULT_ERROR_UNSUPPORTED_FEATURE) {
266- Res = Adapter-> call_nocheck <UrApiKind::urProgramLink>(
266+ Res = Adapter. call_nocheck <UrApiKind::urProgramLink>(
267267 ContextImpl->getHandleRef (), 1 , &UrProgram, nullptr ,
268268 &UrLinkedProgram);
269269 }
270- Adapter-> checkUrResult <errc::build>(Res);
270+ Adapter. checkUrResult <errc::build>(Res);
271271 if (UrLinkedProgram != nullptr ) {
272272 UrProgram = UrLinkedProgram;
273273 }
@@ -351,7 +351,7 @@ kernel make_kernel(const context &TargetContext,
351351 ur_kernel_native_properties_t Properties{};
352352 Properties.stype = UR_STRUCTURE_TYPE_KERNEL_NATIVE_PROPERTIES;
353353 Properties.isNativeHandleOwned = !KeepOwnership;
354- Adapter-> call <UrApiKind::urKernelCreateWithNativeHandle>(
354+ Adapter. call <UrApiKind::urKernelCreateWithNativeHandle>(
355355 NativeHandle, ContextImpl->getHandleRef (), UrProgram, &Properties,
356356 &UrKernel);
357357
0 commit comments