Reference Guide  2.5.0
psyclone.psyGen.BuiltIn Class Reference
Inheritance diagram for psyclone.psyGen.BuiltIn:
Collaboration diagram for psyclone.psyGen.BuiltIn:

Public Member Functions

def __init__ (self)
 
def dag_name (self)
 
def load (self, call, arguments, parent=None)
 
def local_vars (self)
 
- Public Member Functions inherited from psyclone.psyGen.Kern
def __init__ (self, parent, call, name, ArgumentsClass, check=True)
 
def args (self)
 
def node_str (self, colour=True)
 
def reference_accesses (self, var_accesses)
 
def is_reduction (self)
 
def reduction_arg (self)
 
def reprod_reduction (self)
 
def local_reduction_name (self)
 
def zero_reduction_variable (self, parent, position=None)
 
def reduction_sum_loop (self, parent)
 
def arg_descriptors (self)
 
def arg_descriptors (self, obj)
 
def arguments (self)
 
def name (self)
 
def name (self, value)
 
def is_coloured (self)
 
def iterates_over (self)
 
def gen_code (self, parent)
 

Detailed Description

Parent class for all built-ins (field operations for which the user
does not have to provide an implementation).

Definition at line 1864 of file psyGen.py.

Member Function Documentation

◆ dag_name()

def psyclone.psyGen.BuiltIn.dag_name (   self)
:returns: the name to use in the DAG for this node.
:rtype: str

Definition at line 1883 of file psyGen.py.

1883  def dag_name(self):
1884  '''
1885  :returns: the name to use in the DAG for this node.
1886  :rtype: str
1887  '''
1888  _, position = self._find_position(self.ancestor(Routine))
1889  return f"builtin_{self.name}_{position}"
1890 

References psyclone.psyir.nodes.node.Node._find_position(), and psyclone.psyir.nodes.node.Node.ancestor().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ load()

def psyclone.psyGen.BuiltIn.load (   self,
  call,
  arguments,
  parent = None 
)
 Set-up the state of this BuiltIn call 

Definition at line 1891 of file psyGen.py.

1891  def load(self, call, arguments, parent=None):
1892  ''' Set-up the state of this BuiltIn call '''
1893  name = call.ktype.name
1894  super(BuiltIn, self).__init__(parent, call, name, arguments)
1895 

◆ local_vars()

def psyclone.psyGen.BuiltIn.local_vars (   self)
Variables that are local to this built-in and therefore need to be
made private when parallelising using OpenMP or similar. By default
builtin's do not have any local variables so set to nothing

Reimplemented from psyclone.psyGen.Kern.

Definition at line 1896 of file psyGen.py.

1896  def local_vars(self):
1897  '''Variables that are local to this built-in and therefore need to be
1898  made private when parallelising using OpenMP or similar. By default
1899  builtin's do not have any local variables so set to nothing'''
1900  return []
1901 
1902 

The documentation for this class was generated from the following file: