@@ -23,11 +23,16 @@ def debug_option(request):
2323 return request .param
2424
2525
26- def get_kernel_ir (sycl_queue , fn , sig , debug = None ):
27- kernel = compiler . compile_kernel (
28- sycl_queue , fn .py_func , sig , None , debug = debug
26+ def get_kernel_ir (fn , sig , debug = None ):
27+ kernel = dpex . core . kernel_interface . spirv_kernel . SpirvKernel (
28+ fn , fn .__name__
2929 )
30- return kernel .assembly
30+ kernel .compile (
31+ arg_types = sig ,
32+ debug = debug ,
33+ extra_compile_flags = None ,
34+ )
35+ return kernel .llvm_module
3136
3237
3338def make_check (ir , val_to_search ):
@@ -45,15 +50,11 @@ def test_debug_flag_generates_ir_with_debuginfo(debug_option):
4550 Check debug info is emitting to IR if debug parameter is set to True
4651 """
4752
48- @dpex .kernel
4953 def foo (x ):
5054 x = 1 # noqa
5155
52- sycl_queue = dpctl .get_current_queue ()
5356 sig = (types .int32 ,)
54-
55- kernel_ir = get_kernel_ir (sycl_queue , foo , sig , debug = debug_option )
56-
57+ kernel_ir = get_kernel_ir (foo , sig , debug = debug_option )
5758 tag = "!dbg"
5859
5960 if debug_option :
@@ -68,7 +69,6 @@ def test_debug_info_locals_vars_on_no_opt():
6869 if debug parameter is set to True and optimization is O0
6970 """
7071
71- @dpex .kernel
7272 def foo (var_a , var_b , var_c ):
7373 i = dpex .get_global_id (0 )
7474 var_c [i ] = var_a [i ] + var_b [i ]
@@ -79,16 +79,14 @@ def foo(var_a, var_b, var_c):
7979 '!DILocalVariable(name: "var_c"' ,
8080 '!DILocalVariable(name: "i"' ,
8181 ]
82-
83- sycl_queue = dpctl .get_current_queue ()
8482 sig = (
8583 npytypes_array_to_dpex_array (types .float32 [:]),
8684 npytypes_array_to_dpex_array (types .float32 [:]),
8785 npytypes_array_to_dpex_array (types .float32 [:]),
8886 )
8987
9088 with override_config ("OPT" , 0 ):
91- kernel_ir = get_kernel_ir (sycl_queue , foo , sig , debug = True )
89+ kernel_ir = get_kernel_ir (foo , sig , debug = True )
9290
9391 for tag in ir_tags :
9492 assert tag in kernel_ir
@@ -100,7 +98,6 @@ def test_debug_kernel_local_vars_in_ir():
10098 created in kernel
10199 """
102100
103- @dpex .kernel
104101 def foo (arr ):
105102 index = dpex .get_global_id (0 )
106103 local_d = 9 * 99 + 5
@@ -110,11 +107,8 @@ def foo(arr):
110107 '!DILocalVariable(name: "index"' ,
111108 '!DILocalVariable(name: "local_d"' ,
112109 ]
113-
114- sycl_queue = dpctl .get_current_queue ()
115110 sig = (npytypes_array_to_dpex_array (types .float32 [:]),)
116-
117- kernel_ir = get_kernel_ir (sycl_queue , foo , sig , debug = True )
111+ kernel_ir = get_kernel_ir (foo , sig , debug = True )
118112
119113 for tag in ir_tags :
120114 assert tag in kernel_ir
@@ -130,7 +124,6 @@ def func_sum(a, b):
130124 result = a + b
131125 return result
132126
133- @dpex .kernel (debug = debug_option )
134127 def data_parallel_sum (a , b , c ):
135128 i = dpex .get_global_id (0 )
136129 c [i ] = func_sum (a [i ], b [i ])
@@ -140,16 +133,13 @@ def data_parallel_sum(a, b, c):
140133 r'\!DISubprogram\(name: ".*data_parallel_sum"' ,
141134 ]
142135
143- sycl_queue = dpctl .get_current_queue ()
144136 sig = (
145137 npytypes_array_to_dpex_array (types .float32 [:]),
146138 npytypes_array_to_dpex_array (types .float32 [:]),
147139 npytypes_array_to_dpex_array (types .float32 [:]),
148140 )
149141
150- kernel_ir = get_kernel_ir (
151- sycl_queue , data_parallel_sum , sig , debug = debug_option
152- )
142+ kernel_ir = get_kernel_ir (data_parallel_sum , sig , debug = debug_option )
153143
154144 for tag in ir_tags :
155145 assert debug_option == make_check (kernel_ir , tag )
@@ -165,7 +155,6 @@ def func_sum(a, b):
165155 result = a + b
166156 return result
167157
168- @dpex .kernel
169158 def data_parallel_sum (a , b , c ):
170159 i = dpex .get_global_id (0 )
171160 c [i ] = func_sum (a [i ], b [i ])
@@ -175,22 +164,20 @@ def data_parallel_sum(a, b, c):
175164 r'\!DISubprogram\(name: ".*data_parallel_sum"' ,
176165 ]
177166
178- sycl_queue = dpctl .get_current_queue ()
179167 sig = (
180168 npytypes_array_to_dpex_array (types .float32 [:]),
181169 npytypes_array_to_dpex_array (types .float32 [:]),
182170 npytypes_array_to_dpex_array (types .float32 [:]),
183171 )
184172
185173 with override_config ("DEBUGINFO_DEFAULT" , int (debug_option )):
186- kernel_ir = get_kernel_ir (sycl_queue , data_parallel_sum , sig )
174+ kernel_ir = get_kernel_ir (data_parallel_sum , sig )
187175
188176 for tag in ir_tags :
189177 assert debug_option == make_check (kernel_ir , tag )
190178
191179
192180def test_debuginfo_DISubprogram_linkageName ():
193- @dpex .kernel
194181 def func (a , b ):
195182 i = dpex .get_global_id (0 )
196183 b [i ] = a [i ]
@@ -199,20 +186,18 @@ def func(a, b):
199186 r'\!DISubprogram\(.*linkageName: ".*e4func.*"' ,
200187 ]
201188
202- sycl_queue = dpctl .get_current_queue ()
203189 sig = (
204190 npytypes_array_to_dpex_array (types .float32 [:]),
205191 npytypes_array_to_dpex_array (types .float32 [:]),
206192 )
207193
208- kernel_ir = get_kernel_ir (sycl_queue , func , sig , debug = True )
194+ kernel_ir = get_kernel_ir (func , sig , debug = True )
209195
210196 for tag in ir_tags :
211197 assert make_check (kernel_ir , tag )
212198
213199
214200def test_debuginfo_DICompileUnit_language_and_producer ():
215- @dpex .kernel
216201 def func (a , b ):
217202 i = dpex .get_global_id (0 )
218203 b [i ] = a [i ]
@@ -222,13 +207,12 @@ def func(a, b):
222207 r'\!DICompileUnit\(.*producer: "numba-dpex"' ,
223208 ]
224209
225- sycl_queue = dpctl .get_current_queue ()
226210 sig = (
227211 npytypes_array_to_dpex_array (types .float32 [:]),
228212 npytypes_array_to_dpex_array (types .float32 [:]),
229213 )
230214
231- kernel_ir = get_kernel_ir (sycl_queue , func , sig , debug = True )
215+ kernel_ir = get_kernel_ir (func , sig , debug = True )
232216
233217 for tag in ir_tags :
234218 assert make_check (kernel_ir , tag )
0 commit comments