Peano
Loading...
Searching...
No Matches
exahype2.api.dslhype.SyntaxTree.FunctionDefinition Class Reference
Inheritance diagram for exahype2.api.dslhype.SyntaxTree.FunctionDefinition:
Collaboration diagram for exahype2.api.dslhype.SyntaxTree.FunctionDefinition:

Public Member Functions

 __init__ (self, id, Type return_type, template=None, namespaces=[], stateless=False, top_level=False)
 
 top_level (self, top=None)
 
 add_statement (self, Statement statement)
 
 add_argument (self, Argument argument)
 
 print_declaration (self, indent_level=0)
 
 print_cpp (self, indent_level=0)
 
 print_omp (self, indent_level=0)
 
 print_sycl (self, indent_level=0)
 
 print_mlir (self, indent_level=0)
 
 print_tree (self, indent_level=0)
 
 print_definition_with_timer (self, indent_level=0)
 
 print_declaration_with_timer (self, indent_level=0)
 
- Public Member Functions inherited from exahype2.api.dslhype.SyntaxTree.Node
 parent (self, parent=None)
 
 on_left (self, left=None)
 
 hoist (self, flag=None)
 
 get_mlir_id (cls)
 
 reset_mlir_ids (cls)
 
 create_memref_from_ptr (cls, ptr_id, target_type, indent_level=0, size_hint=None, target_var_name=None)
 
 create_memref_from_extracted_descriptor (cls, alloc_ptr_id, aligned_ptr_id, offset_id, sizes_0_id, sizes_1_id, strides_0_id, strides_1_id, target_type, struct_type, indent_level=0, target_var_name=None, is_2d=False)
 

Data Fields

 id
 
- Data Fields inherited from exahype2.api.dslhype.SyntaxTree.Node
 mlir_id_count
 

Protected Attributes

 _return_type
 
 _template
 
 _arguments
 
 _body
 
 _namespaces
 
 _top_level
 
- Protected Attributes inherited from exahype2.api.dslhype.SyntaxTree.Node
 _parent
 
 _on_left
 
 _hoist
 
 _index_type
 

Static Protected Attributes

bool _stateless = False
 
list _syclDataToCopy = []
 

Additional Inherited Members

- Static Public Member Functions inherited from exahype2.api.dslhype.SyntaxTree.Node
 get_mlir_type (type_string)
 
 generate_pointer_to_2d_element (memref_mlir, row_index, col_index, is_nested, indent_level=0)
 
- Static Public Attributes inherited from exahype2.api.dslhype.SyntaxTree.Node
 output_format = None
 
int spaces_per_tab = 4
 
bool use_accelerator = False
 
bool use_memory_manager = False
 
int mlir_id_count = 0
 
dict type_map = {}
 
dict struct_map = {}
 
 context = Context()
 
 target_variable_name = None
 
dict mlir_symbol_table = {}
 
dict mlir_memref_types = {}
 
str descriptor2DType = "!llvm.struct<(ptr, ptr, i64, array<2 x i64>, array<2 x i64>)>"
 
str descriptor1DType = "!llvm.struct<(ptr, ptr, i64, array<1 x i64>, array<1 x i64>)>"
 
list patchTypes
 
 target_type = field_info.split('|||')[0]
 

Detailed Description

Definition at line 550 of file SyntaxTree.py.

Constructor & Destructor Documentation

◆ __init__()

exahype2.api.dslhype.SyntaxTree.FunctionDefinition.__init__ (   self,
  id,
Type  return_type,
  template = None,
  namespaces = [],
  stateless = False,
  top_level = False 
)

Reimplemented from exahype2.api.dslhype.SyntaxTree.Node.

Definition at line 554 of file SyntaxTree.py.

References exahype2.api.dslhype.SyntaxTree.FunctionDefinition.__init__().

Referenced by exahype2.api.dslhype.SyntaxTree.FunctionDefinition.__init__().

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

Member Function Documentation

◆ add_argument()

exahype2.api.dslhype.SyntaxTree.FunctionDefinition.add_argument (   self,
Argument  argument 
)

◆ add_statement()

exahype2.api.dslhype.SyntaxTree.FunctionDefinition.add_statement (   self,
Statement  statement 
)

◆ print_cpp()

◆ print_declaration()

exahype2.api.dslhype.SyntaxTree.FunctionDefinition.print_declaration (   self,
  indent_level = 0 
)

◆ print_declaration_with_timer()

exahype2.api.dslhype.SyntaxTree.FunctionDefinition.print_declaration_with_timer (   self,
  indent_level = 0 
)

◆ print_definition_with_timer()

◆ print_mlir()

◆ print_omp()

◆ print_sycl()

◆ print_tree()

exahype2.api.dslhype.SyntaxTree.FunctionDefinition.print_tree (   self,
  indent_level = 0 
)

◆ top_level()

exahype2.api.dslhype.SyntaxTree.FunctionDefinition.top_level (   self,
  top = None 
)

Field Documentation

◆ _arguments

◆ _body

◆ _namespaces

exahype2.api.dslhype.SyntaxTree.FunctionDefinition._namespaces
protected

Definition at line 562 of file SyntaxTree.py.

◆ _return_type

exahype2.api.dslhype.SyntaxTree.FunctionDefinition._return_type
protected

◆ _stateless

bool exahype2.api.dslhype.SyntaxTree.FunctionDefinition._stateless = False
staticprotected

Definition at line 551 of file SyntaxTree.py.

◆ _syclDataToCopy

list exahype2.api.dslhype.SyntaxTree.FunctionDefinition._syclDataToCopy = []
staticprotected

Definition at line 552 of file SyntaxTree.py.

◆ _template

◆ _top_level

◆ id


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