<s> from __future__ import print_function , absolute_import <EOL> from numba import types , ir , typing , macro <EOL> _stub_error = NotImplementedError ( "<STR_LIT>" ) <EOL> def get_global_id ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def get_local_id ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def get_global_size ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def get_local_size ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def get_group_id ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def get_num_groups ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def get_work_dim ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def barrier ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def mem_fence ( * args , ** kargs ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def wavebarrier ( ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> def activelanepermute_wavewidth ( src , laneid , identity , useidentity ) : <EOL> """<STR_LIT>""" <EOL> raise _stub_error <EOL> class Stub ( object ) : <EOL> """<STR_LIT>""" <EOL> _description_ = '<STR_LIT>' <EOL> __slots__ = ( ) <EOL> def __new__ ( cls ) : <EOL> raise NotImplementedError ( "<STR_LIT>" % cls ) <EOL> def __repr__ ( self ) : <EOL> return self . _description_ <EOL> def shared_array ( shape , dtype ) : <EOL> shape = _legalize_shape ( shape ) <EOL> ndim = len ( shape ) <EOL> fname = "<STR_LIT>" <EOL> restype = types . Array ( dtype , ndim , '<STR_LIT:C>' ) <EOL> sig = typing . signature ( restype , types . UniTuple ( types . intp , ndim ) , types . Any ) <EOL> return ir . Intrinsic ( fname , sig , args = ( shape , dtype ) ) <EOL> class shared ( Stub ) : <EOL> """<STR_LIT>""" <EOL> _description_ = '<STR_LIT>' <EOL> array = macro . Macro ( '<STR_LIT>' , shared_array , callable = True , <EOL> argnames = [ '<STR_LIT>' , '<STR_LIT>' ] ) <EOL> def _legalize_shape ( shape ) : <EOL> if isinstance ( shape , tuple ) : <EOL> return shape <EOL> elif isinstance ( shape , int ) : <EOL> return ( shape , ) <EOL> else : <EOL> raise TypeError ( "<STR_LIT>" . format ( type ( shape ) ) ) <EOL> class atomic ( Stub ) : <EOL> """<STR_LIT>""" <EOL> _description_ = '<STR_LIT>' <EOL> class add ( Stub ) : <EOL> """<STR_LIT>""" </s>
