@utils.runonce
def _load_global_helpers():
 ll.add_symbol('_Py_NoneStruct', id(None))
 for c_helpers in (_helperlib.c_helpers, _dynfunc.c_helpers):
  for (py_name, c_address) in c_helpers.items():
   c_name = ('numba_' + py_name)
   ll.add_symbol(c_name, c_address)
 for (c_name, c_address) in _helperlib.npymath_exports.items():
  ll.add_symbol(c_name, c_address)
 for obj in utils.builtins.__dict__.values():
  if (isinstance(obj, type) and issubclass(obj, BaseException)):
   ll.add_symbol(('PyExc_%s' % obj.__name__), id(obj))

@ utils . runonce def _load_global_helpers ( ) : ll . add_symbol ( '_Py_NoneStruct' , id ( None ) ) for c_helpers in ( _helperlib . c_helpers , _dynfunc . c_helpers ) : for ( py_name , c_address ) in c_helpers . items ( ) : c_name = ( 'numba_' + py_name ) ll . add_symbol ( c_name , c_address ) for ( c_name , c_address ) in _helperlib . npymath_exports . items ( ) : ll . add_symbol ( c_name , c_address ) for obj in utils . builtins . __dict__ . values ( ) : if ( isinstance ( obj , type ) and issubclass ( obj , BaseException ) ) : ll . add_symbol ( ( 'PyExc_%s' % obj . __name__ ) , id ( obj ) )
execute once to install special symbols into the llvm symbol table .