@@ -560,11 +560,18 @@ def {fn_name}({", ".join(input_names)}):
560
560
@numba_funcify .register (Subtensor )
561
561
@numba_funcify .register (AdvancedSubtensor1 )
562
562
def numba_funcify_Subtensor (op , node , ** kwargs ):
563
- subtensor_def_src = create_index_func (
564
- node , objmode = isinstance (op , AdvancedSubtensor )
565
- )
563
+ objmode = isinstance (op , AdvancedSubtensor )
564
+ if objmode :
565
+ warnings .warn (
566
+ ("Numba will use object mode to allow run " "AdvancedSubtensor." ),
567
+ UserWarning ,
568
+ )
569
+
570
+ subtensor_def_src = create_index_func (node , objmode = objmode )
566
571
567
- global_env = {"np" : np , "objmode" : numba .objmode }
572
+ global_env = {"np" : np }
573
+ if objmode :
574
+ global_env ["objmode" ] = numba .objmode
568
575
569
576
subtensor_fn = compile_function_src (
570
577
subtensor_def_src , "subtensor" , {** globals (), ** global_env }
@@ -575,11 +582,18 @@ def numba_funcify_Subtensor(op, node, **kwargs):
575
582
576
583
@numba_funcify .register (IncSubtensor )
577
584
def numba_funcify_IncSubtensor (op , node , ** kwargs ):
578
- incsubtensor_def_src = create_index_func (
579
- node , objmode = isinstance (op , AdvancedIncSubtensor )
580
- )
585
+ objmode = isinstance (op , AdvancedIncSubtensor )
586
+ if objmode :
587
+ warnings .warn (
588
+ ("Numba will use object mode to allow run " "AdvancedIncSubtensor." ),
589
+ UserWarning ,
590
+ )
591
+
592
+ incsubtensor_def_src = create_index_func (node , objmode = objmode )
581
593
582
- global_env = {"np" : np , "objmode" : numba .objmode }
594
+ global_env = {"np" : np }
595
+ if objmode :
596
+ global_env ["objmode" ] = numba .objmode
583
597
584
598
incsubtensor_fn = compile_function_src (
585
599
incsubtensor_def_src , "incsubtensor" , {** globals (), ** global_env }
0 commit comments