Skip to content

Commit 8f04945

Browse files
committed
Provide dpctl implemenation registry
1 parent e52b423 commit 8f04945

File tree

3 files changed

+19
-0
lines changed

3 files changed

+19
-0
lines changed

numba_dpex/core/targets/dpjit_target.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from numba.core.target_extension import CPU, target_registry
1515

1616
from numba_dpex.core.datamodel.models import _init_dpjit_data_model_manager
17+
from numba_dpex.dpctl_iface import dpctlimpl
1718
from numba_dpex.dpnp_iface import dpnp_ufunc_db
1819

1920

@@ -69,6 +70,7 @@ def load_additional_registries(self):
6970
Load dpjit-specific registries.
7071
"""
7172
self.install_registry(dpex_function_registry)
73+
self.install_registry(dpctlimpl.registry)
7274

7375
# loading CPU specific registries
7476
super().load_additional_registries()

numba_dpex/dpctl_iface/dpctlimpl.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# SPDX-FileCopyrightText: 2024 Intel Corporation
2+
#
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
from numba.core.imputils import Registry
6+
7+
registry = Registry("dpctlimpl")
8+
9+
lower_builtin = registry.lower
10+
lower_getattr = registry.lower_getattr
11+
lower_getattr_generic = registry.lower_getattr_generic
12+
lower_setattr = registry.lower_setattr
13+
lower_setattr_generic = registry.lower_setattr_generic
14+
lower_cast = registry.lower_cast
15+
lower_constant = registry.lower_constant

numba_dpex/kernel_api_impl/spirv/target.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -293,13 +293,15 @@ def load_additional_registries(self):
293293
"""
294294
# pylint: disable=import-outside-toplevel
295295
from numba_dpex import printimpl
296+
from numba_dpex.dpctl_iface import dpctlimpl
296297
from numba_dpex.dpnp_iface import dpnpimpl
297298
from numba_dpex.ocl import mathimpl, oclimpl
298299

299300
self.insert_func_defn(oclimpl.registry.functions)
300301
self.insert_func_defn(mathimpl.registry.functions)
301302
self.insert_func_defn(dpnpimpl.registry.functions)
302303
self.install_registry(printimpl.registry)
304+
self.install_registry(dpctlimpl.registry)
303305
self.install_registry(spirv_registry)
304306
# Replace dpnp math functions with their OpenCL versions.
305307
self.replace_dpnp_ufunc_with_ocl_intrinsics()

0 commit comments

Comments
 (0)