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

Public Member Functions

 __init__ (self)
 
 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)
 
 print_cpp (self, indent_level=0)
 
 print_mlir (self, indent_level=0)
 
 print_omp (self, indent_level=0)
 
 print_sycl (self, indent_level=0)
 
 print_tree (self, indent_level=0)
 

Static Public Member Functions

 get_mlir_type (type_string)
 
 generate_pointer_to_2d_element (memref_mlir, row_index, col_index, is_nested, indent_level=0)
 

Data Fields

 mlir_id_count
 

Static Public Attributes

 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]
 

Protected Attributes

 _parent
 
 _on_left
 
 _hoist
 
 _index_type
 

Detailed Description

Definition at line 73 of file SyntaxTree.py.

Constructor & Destructor Documentation

◆ __init__()

exahype2.api.dslhype.SyntaxTree.Node.__init__ (   self)

Reimplemented in exahype2.api.dslhype.SyntaxTree.Statement, exahype2.api.dslhype.SyntaxTree.Expression, exahype2.api.dslhype.SyntaxTree.If, exahype2.api.dslhype.SyntaxTree.Comment, exahype2.api.dslhype.SyntaxTree.LogDataBlock, exahype2.api.dslhype.SyntaxTree.DataBlockIndex, exahype2.api.dslhype.SyntaxTree.Matrix, exahype2.api.dslhype.SyntaxTree.TDataBlock, exahype2.api.dslhype.SyntaxTree.TNestedMemref, exahype2.api.dslhype.SyntaxTree.TSimpleMemref, exahype2.api.dslhype.SyntaxTree.Vector, exahype2.api.dslhype.SyntaxTree.Reference, exahype2.api.dslhype.SyntaxTree.Assignment, exahype2.api.dslhype.SyntaxTree.DataBlockAssignment, exahype2.api.dslhype.SyntaxTree.Subscript, exahype2.api.dslhype.SyntaxTree.VectorIndex, exahype2.api.dslhype.SyntaxTree.FunctionCall, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromValue, exahype2.api.dslhype.SyntaxTree.MatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.Argument, exahype2.api.dslhype.SyntaxTree.FunctionDefinition, exahype2.api.dslhype.SyntaxTree.Name, exahype2.api.dslhype.SyntaxTree.DataBlock, exahype2.api.dslhype.SyntaxTree.FaceDataBlock, exahype2.api.dslhype.SyntaxTree.For, exahype2.api.dslhype.SyntaxTree.DataBlockMax, exahype2.api.dslhype.SyntaxTree.Max, exahype2.api.dslhype.SyntaxTree.MemoryDeallocation, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromExisting, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromFunction, exahype2.api.dslhype.SyntaxTree.Construction, exahype2.api.dslhype.SyntaxTree.MemoryAllocation, exahype2.api.dslhype.SyntaxTree.DataBlockUnaryOperation, exahype2.api.dslhype.SyntaxTree.Comparison, exahype2.api.dslhype.SyntaxTree.BinaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockComparison, exahype2.api.dslhype.SyntaxTree.DataBlockBinaryOperation, exahype2.api.dslhype.SyntaxTree.UnaryOperation, exahype2.api.dslhype.SyntaxTree.TFloat, exahype2.api.dslhype.SyntaxTree.TFunctionType, exahype2.api.dslhype.SyntaxTree.LogToFile, exahype2.api.dslhype.SyntaxTree.TCustom, exahype2.api.dslhype.SyntaxTree.Boolean, exahype2.api.dslhype.SyntaxTree.String, exahype2.api.dslhype.SyntaxTree.Integer, exahype2.api.dslhype.SyntaxTree.Float, and exahype2.api.dslhype.SyntaxTree.DiagonalMatrix.

Definition at line 207 of file SyntaxTree.py.

Member Function Documentation

◆ create_memref_from_extracted_descriptor()

exahype2.api.dslhype.SyntaxTree.Node.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 
)

◆ create_memref_from_ptr()

exahype2.api.dslhype.SyntaxTree.Node.create_memref_from_ptr (   cls,
  ptr_id,
  target_type,
  indent_level = 0,
  size_hint = None,
  target_var_name = None 
)

◆ generate_pointer_to_2d_element()

exahype2.api.dslhype.SyntaxTree.Node.generate_pointer_to_2d_element (   memref_mlir,
  row_index,
  col_index,
  is_nested,
  indent_level = 0 
)
static

Definition at line 251 of file SyntaxTree.py.

◆ get_mlir_id()

exahype2.api.dslhype.SyntaxTree.Node.get_mlir_id (   cls)

Definition at line 229 of file SyntaxTree.py.

References exahype2.api.dslhype.SyntaxTree.Node.mlir_id_count.

◆ get_mlir_type()

exahype2.api.dslhype.SyntaxTree.Node.get_mlir_type (   type_string)
static

Definition at line 239 of file SyntaxTree.py.

References exahype2.api.dslhype.SyntaxTree.Node.print_mlir().

Here is the call graph for this function:

◆ hoist()

◆ on_left()

exahype2.api.dslhype.SyntaxTree.Node.on_left (   self,
  left = None 
)

Definition at line 218 of file SyntaxTree.py.

References exahype2.api.dslhype.SyntaxTree.Node._on_left.

◆ parent()

exahype2.api.dslhype.SyntaxTree.Node.parent (   self,
  parent = None 
)

Definition at line 213 of file SyntaxTree.py.

References exahype2.api.dslhype.SyntaxTree.Node._parent.

◆ print_cpp()

exahype2.api.dslhype.SyntaxTree.Node.print_cpp (   self,
  indent_level = 0 
)

Reimplemented in exahype2.api.dslhype.SyntaxTree.TVoid, exahype2.api.dslhype.SyntaxTree.Argument, exahype2.api.dslhype.SyntaxTree.FunctionDefinition, exahype2.api.dslhype.SyntaxTree.LogToFile, exahype2.api.dslhype.SyntaxTree.Name, exahype2.api.dslhype.SyntaxTree.Integer, exahype2.api.dslhype.SyntaxTree.Boolean, exahype2.api.dslhype.SyntaxTree.String, exahype2.api.dslhype.SyntaxTree.Float, exahype2.api.dslhype.SyntaxTree.DataBlock, exahype2.api.dslhype.SyntaxTree.LogDataBlock, exahype2.api.dslhype.SyntaxTree.Subscript, exahype2.api.dslhype.SyntaxTree.Reference, exahype2.api.dslhype.SyntaxTree.Vector, exahype2.api.dslhype.SyntaxTree.DiagonalMatrix, exahype2.api.dslhype.SyntaxTree.Matrix, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromValue, exahype2.api.dslhype.SyntaxTree.MatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.VectorIndex, exahype2.api.dslhype.SyntaxTree.Comparison, exahype2.api.dslhype.SyntaxTree.BinaryOperation, exahype2.api.dslhype.SyntaxTree.UnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockIndex, exahype2.api.dslhype.SyntaxTree.DataBlockComparison, exahype2.api.dslhype.SyntaxTree.DataBlockBinaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockUnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockMax, exahype2.api.dslhype.SyntaxTree.TCustom, exahype2.api.dslhype.SyntaxTree.TInteger, exahype2.api.dslhype.SyntaxTree.TLong, exahype2.api.dslhype.SyntaxTree.TBoolean, exahype2.api.dslhype.SyntaxTree.TFloat, exahype2.api.dslhype.SyntaxTree.TString, exahype2.api.dslhype.SyntaxTree.TNestedMemref, exahype2.api.dslhype.SyntaxTree.TFunctionType, exahype2.api.dslhype.SyntaxTree.TSimpleMemref, exahype2.api.dslhype.SyntaxTree.TDataBlock, exahype2.api.dslhype.SyntaxTree.TMatrix, exahype2.api.dslhype.SyntaxTree.TDiagonalMatrix, exahype2.api.dslhype.SyntaxTree.TVector, exahype2.api.dslhype.SyntaxTree.If, exahype2.api.dslhype.SyntaxTree.For, exahype2.api.dslhype.SyntaxTree.Comment, exahype2.api.dslhype.SyntaxTree.FunctionCall, exahype2.api.dslhype.SyntaxTree.Max, exahype2.api.dslhype.SyntaxTree.MemoryAllocation, exahype2.api.dslhype.SyntaxTree.MemoryDeallocation, exahype2.api.dslhype.SyntaxTree.Construction, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromExisting, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromFunction, exahype2.api.dslhype.SyntaxTree.Assignment, and exahype2.api.dslhype.SyntaxTree.DataBlockAssignment.

Definition at line 451 of file SyntaxTree.py.

◆ print_mlir()

exahype2.api.dslhype.SyntaxTree.Node.print_mlir (   self,
  indent_level = 0 
)

Reimplemented in exahype2.api.dslhype.SyntaxTree.TVoid, exahype2.api.dslhype.SyntaxTree.Argument, exahype2.api.dslhype.SyntaxTree.FunctionDefinition, exahype2.api.dslhype.SyntaxTree.LogToFile, exahype2.api.dslhype.SyntaxTree.Name, exahype2.api.dslhype.SyntaxTree.Integer, exahype2.api.dslhype.SyntaxTree.Boolean, exahype2.api.dslhype.SyntaxTree.String, exahype2.api.dslhype.SyntaxTree.Float, exahype2.api.dslhype.SyntaxTree.DataBlock, exahype2.api.dslhype.SyntaxTree.LogDataBlock, exahype2.api.dslhype.SyntaxTree.Subscript, exahype2.api.dslhype.SyntaxTree.Reference, exahype2.api.dslhype.SyntaxTree.Vector, exahype2.api.dslhype.SyntaxTree.DiagonalMatrix, exahype2.api.dslhype.SyntaxTree.Matrix, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromValue, exahype2.api.dslhype.SyntaxTree.MatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.VectorIndex, exahype2.api.dslhype.SyntaxTree.Comparison, exahype2.api.dslhype.SyntaxTree.BinaryOperation, exahype2.api.dslhype.SyntaxTree.UnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockIndex, exahype2.api.dslhype.SyntaxTree.DataBlockComparison, exahype2.api.dslhype.SyntaxTree.DataBlockBinaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockUnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockMax, exahype2.api.dslhype.SyntaxTree.TCustom, exahype2.api.dslhype.SyntaxTree.TInteger, exahype2.api.dslhype.SyntaxTree.TLong, exahype2.api.dslhype.SyntaxTree.TBoolean, exahype2.api.dslhype.SyntaxTree.TFloat, exahype2.api.dslhype.SyntaxTree.TString, exahype2.api.dslhype.SyntaxTree.TNestedMemref, exahype2.api.dslhype.SyntaxTree.TFunctionType, exahype2.api.dslhype.SyntaxTree.TSimpleMemref, exahype2.api.dslhype.SyntaxTree.TDataBlock, exahype2.api.dslhype.SyntaxTree.TMatrix, exahype2.api.dslhype.SyntaxTree.TDiagonalMatrix, exahype2.api.dslhype.SyntaxTree.TVector, exahype2.api.dslhype.SyntaxTree.If, exahype2.api.dslhype.SyntaxTree.For, exahype2.api.dslhype.SyntaxTree.Comment, exahype2.api.dslhype.SyntaxTree.FunctionCall, exahype2.api.dslhype.SyntaxTree.Max, exahype2.api.dslhype.SyntaxTree.MemoryAllocation, exahype2.api.dslhype.SyntaxTree.MemoryDeallocation, exahype2.api.dslhype.SyntaxTree.Construction, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromExisting, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromFunction, exahype2.api.dslhype.SyntaxTree.Assignment, and exahype2.api.dslhype.SyntaxTree.DataBlockAssignment.

Definition at line 455 of file SyntaxTree.py.

Referenced by exahype2.api.dslhype.SyntaxTree.Node.get_mlir_type().

Here is the caller graph for this function:

◆ print_omp()

exahype2.api.dslhype.SyntaxTree.Node.print_omp (   self,
  indent_level = 0 
)

Reimplemented in exahype2.api.dslhype.SyntaxTree.TVoid, exahype2.api.dslhype.SyntaxTree.Argument, exahype2.api.dslhype.SyntaxTree.FunctionDefinition, exahype2.api.dslhype.SyntaxTree.LogToFile, exahype2.api.dslhype.SyntaxTree.Name, exahype2.api.dslhype.SyntaxTree.Integer, exahype2.api.dslhype.SyntaxTree.Boolean, exahype2.api.dslhype.SyntaxTree.String, exahype2.api.dslhype.SyntaxTree.Float, exahype2.api.dslhype.SyntaxTree.DataBlock, exahype2.api.dslhype.SyntaxTree.LogDataBlock, exahype2.api.dslhype.SyntaxTree.Subscript, exahype2.api.dslhype.SyntaxTree.Reference, exahype2.api.dslhype.SyntaxTree.Vector, exahype2.api.dslhype.SyntaxTree.DiagonalMatrix, exahype2.api.dslhype.SyntaxTree.Matrix, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromValue, exahype2.api.dslhype.SyntaxTree.MatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.VectorIndex, exahype2.api.dslhype.SyntaxTree.Comparison, exahype2.api.dslhype.SyntaxTree.BinaryOperation, exahype2.api.dslhype.SyntaxTree.UnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockIndex, exahype2.api.dslhype.SyntaxTree.DataBlockComparison, exahype2.api.dslhype.SyntaxTree.DataBlockBinaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockUnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockMax, exahype2.api.dslhype.SyntaxTree.TCustom, exahype2.api.dslhype.SyntaxTree.TInteger, exahype2.api.dslhype.SyntaxTree.TLong, exahype2.api.dslhype.SyntaxTree.TBoolean, exahype2.api.dslhype.SyntaxTree.TFloat, exahype2.api.dslhype.SyntaxTree.TString, exahype2.api.dslhype.SyntaxTree.TNestedMemref, exahype2.api.dslhype.SyntaxTree.TFunctionType, exahype2.api.dslhype.SyntaxTree.TSimpleMemref, exahype2.api.dslhype.SyntaxTree.TDataBlock, exahype2.api.dslhype.SyntaxTree.TMatrix, exahype2.api.dslhype.SyntaxTree.TDiagonalMatrix, exahype2.api.dslhype.SyntaxTree.TVector, exahype2.api.dslhype.SyntaxTree.If, exahype2.api.dslhype.SyntaxTree.For, exahype2.api.dslhype.SyntaxTree.Comment, exahype2.api.dslhype.SyntaxTree.FunctionCall, exahype2.api.dslhype.SyntaxTree.Max, exahype2.api.dslhype.SyntaxTree.MemoryAllocation, exahype2.api.dslhype.SyntaxTree.MemoryDeallocation, exahype2.api.dslhype.SyntaxTree.Construction, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromExisting, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromFunction, exahype2.api.dslhype.SyntaxTree.Assignment, and exahype2.api.dslhype.SyntaxTree.DataBlockAssignment.

Definition at line 459 of file SyntaxTree.py.

◆ print_sycl()

exahype2.api.dslhype.SyntaxTree.Node.print_sycl (   self,
  indent_level = 0 
)

Reimplemented in exahype2.api.dslhype.SyntaxTree.TVoid, exahype2.api.dslhype.SyntaxTree.Argument, exahype2.api.dslhype.SyntaxTree.FunctionDefinition, exahype2.api.dslhype.SyntaxTree.LogToFile, exahype2.api.dslhype.SyntaxTree.Name, exahype2.api.dslhype.SyntaxTree.Integer, exahype2.api.dslhype.SyntaxTree.Boolean, exahype2.api.dslhype.SyntaxTree.String, exahype2.api.dslhype.SyntaxTree.Float, exahype2.api.dslhype.SyntaxTree.DataBlock, exahype2.api.dslhype.SyntaxTree.LogDataBlock, exahype2.api.dslhype.SyntaxTree.Subscript, exahype2.api.dslhype.SyntaxTree.Reference, exahype2.api.dslhype.SyntaxTree.Vector, exahype2.api.dslhype.SyntaxTree.DiagonalMatrix, exahype2.api.dslhype.SyntaxTree.Matrix, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromValue, exahype2.api.dslhype.SyntaxTree.MatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.VectorIndex, exahype2.api.dslhype.SyntaxTree.Comparison, exahype2.api.dslhype.SyntaxTree.BinaryOperation, exahype2.api.dslhype.SyntaxTree.UnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockIndex, exahype2.api.dslhype.SyntaxTree.DataBlockComparison, exahype2.api.dslhype.SyntaxTree.DataBlockBinaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockUnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockMax, exahype2.api.dslhype.SyntaxTree.TCustom, exahype2.api.dslhype.SyntaxTree.TInteger, exahype2.api.dslhype.SyntaxTree.TLong, exahype2.api.dslhype.SyntaxTree.TBoolean, exahype2.api.dslhype.SyntaxTree.TFloat, exahype2.api.dslhype.SyntaxTree.TString, exahype2.api.dslhype.SyntaxTree.TNestedMemref, exahype2.api.dslhype.SyntaxTree.TFunctionType, exahype2.api.dslhype.SyntaxTree.TSimpleMemref, exahype2.api.dslhype.SyntaxTree.TDataBlock, exahype2.api.dslhype.SyntaxTree.TMatrix, exahype2.api.dslhype.SyntaxTree.TDiagonalMatrix, exahype2.api.dslhype.SyntaxTree.TVector, exahype2.api.dslhype.SyntaxTree.If, exahype2.api.dslhype.SyntaxTree.For, exahype2.api.dslhype.SyntaxTree.Comment, exahype2.api.dslhype.SyntaxTree.FunctionCall, exahype2.api.dslhype.SyntaxTree.Max, exahype2.api.dslhype.SyntaxTree.MemoryAllocation, exahype2.api.dslhype.SyntaxTree.MemoryDeallocation, exahype2.api.dslhype.SyntaxTree.Construction, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromExisting, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromFunction, exahype2.api.dslhype.SyntaxTree.Assignment, and exahype2.api.dslhype.SyntaxTree.DataBlockAssignment.

Definition at line 463 of file SyntaxTree.py.

◆ print_tree()

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

Reimplemented in exahype2.api.dslhype.SyntaxTree.Type, exahype2.api.dslhype.SyntaxTree.Argument, exahype2.api.dslhype.SyntaxTree.FunctionDefinition, exahype2.api.dslhype.SyntaxTree.LogToFile, exahype2.api.dslhype.SyntaxTree.Name, exahype2.api.dslhype.SyntaxTree.Integer, exahype2.api.dslhype.SyntaxTree.Boolean, exahype2.api.dslhype.SyntaxTree.String, exahype2.api.dslhype.SyntaxTree.Float, exahype2.api.dslhype.SyntaxTree.DataBlock, exahype2.api.dslhype.SyntaxTree.LogDataBlock, exahype2.api.dslhype.SyntaxTree.Subscript, exahype2.api.dslhype.SyntaxTree.Reference, exahype2.api.dslhype.SyntaxTree.Vector, exahype2.api.dslhype.SyntaxTree.DiagonalMatrix, exahype2.api.dslhype.SyntaxTree.Matrix, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.DiagonalMatrixConstructionFromValue, exahype2.api.dslhype.SyntaxTree.MatrixConstructionFromKroneckerProduct, exahype2.api.dslhype.SyntaxTree.VectorIndex, exahype2.api.dslhype.SyntaxTree.Comparison, exahype2.api.dslhype.SyntaxTree.BinaryOperation, exahype2.api.dslhype.SyntaxTree.UnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockIndex, exahype2.api.dslhype.SyntaxTree.DataBlockComparison, exahype2.api.dslhype.SyntaxTree.DataBlockBinaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockUnaryOperation, exahype2.api.dslhype.SyntaxTree.DataBlockMax, exahype2.api.dslhype.SyntaxTree.TCustom, exahype2.api.dslhype.SyntaxTree.TInteger, exahype2.api.dslhype.SyntaxTree.TLong, exahype2.api.dslhype.SyntaxTree.TBoolean, exahype2.api.dslhype.SyntaxTree.TFloat, exahype2.api.dslhype.SyntaxTree.TString, exahype2.api.dslhype.SyntaxTree.TDataBlock, exahype2.api.dslhype.SyntaxTree.TMatrix, exahype2.api.dslhype.SyntaxTree.TDiagonalMatrix, exahype2.api.dslhype.SyntaxTree.TVector, exahype2.api.dslhype.SyntaxTree.If, exahype2.api.dslhype.SyntaxTree.For, exahype2.api.dslhype.SyntaxTree.Comment, exahype2.api.dslhype.SyntaxTree.FunctionCall, exahype2.api.dslhype.SyntaxTree.Max, exahype2.api.dslhype.SyntaxTree.MemoryAllocation, exahype2.api.dslhype.SyntaxTree.MemoryDeallocation, exahype2.api.dslhype.SyntaxTree.Construction, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromExisting, exahype2.api.dslhype.SyntaxTree.DataBlockConstructionFromFunction, exahype2.api.dslhype.SyntaxTree.Assignment, and exahype2.api.dslhype.SyntaxTree.DataBlockAssignment.

Definition at line 467 of file SyntaxTree.py.

◆ reset_mlir_ids()

exahype2.api.dslhype.SyntaxTree.Node.reset_mlir_ids (   cls)

Definition at line 235 of file SyntaxTree.py.

Field Documentation

◆ _hoist

exahype2.api.dslhype.SyntaxTree.Node._hoist
protected

Definition at line 210 of file SyntaxTree.py.

Referenced by exahype2.api.dslhype.SyntaxTree.Node.hoist().

◆ _index_type

exahype2.api.dslhype.SyntaxTree.Node._index_type
protected

Definition at line 211 of file SyntaxTree.py.

◆ _on_left

exahype2.api.dslhype.SyntaxTree.Node._on_left
protected

Definition at line 209 of file SyntaxTree.py.

Referenced by exahype2.api.dslhype.SyntaxTree.Node.on_left().

◆ _parent

exahype2.api.dslhype.SyntaxTree.Node._parent
protected

Definition at line 208 of file SyntaxTree.py.

Referenced by exahype2.api.dslhype.SyntaxTree.Node.parent().

◆ context

exahype2.api.dslhype.SyntaxTree.Node.context = Context()
static

Definition at line 81 of file SyntaxTree.py.

◆ descriptor1DType

str exahype2.api.dslhype.SyntaxTree.Node.descriptor1DType = "!llvm.struct<(ptr, ptr, i64, array<1 x i64>, array<1 x i64>)>"
static

Definition at line 162 of file SyntaxTree.py.

◆ descriptor2DType

str exahype2.api.dslhype.SyntaxTree.Node.descriptor2DType = "!llvm.struct<(ptr, ptr, i64, array<2 x i64>, array<2 x i64>)>"
static

Definition at line 161 of file SyntaxTree.py.

◆ mlir_id_count [1/2]

int exahype2.api.dslhype.SyntaxTree.Node.mlir_id_count = 0
static

Definition at line 78 of file SyntaxTree.py.

Referenced by exahype2.api.dslhype.SyntaxTree.Node.get_mlir_id().

◆ mlir_id_count [2/2]

exahype2.api.dslhype.SyntaxTree.Node.mlir_id_count

Definition at line 236 of file SyntaxTree.py.

Referenced by exahype2.api.dslhype.SyntaxTree.Node.get_mlir_id().

◆ mlir_memref_types

dict exahype2.api.dslhype.SyntaxTree.Node.mlir_memref_types = {}
static

Definition at line 84 of file SyntaxTree.py.

◆ mlir_symbol_table

dict exahype2.api.dslhype.SyntaxTree.Node.mlir_symbol_table = {}
static

Definition at line 83 of file SyntaxTree.py.

◆ output_format

exahype2.api.dslhype.SyntaxTree.Node.output_format = None
static

Definition at line 74 of file SyntaxTree.py.

◆ patchTypes

list exahype2.api.dslhype.SyntaxTree.Node.patchTypes
static
Initial value:
= [descriptor2DType, descriptor2DType, descriptor1DType, descriptor1DType,
descriptor1DType, descriptor1DType, descriptor1DType, 'i64', 'i64', 'i64', 'ptr', 'ptr']

Definition at line 165 of file SyntaxTree.py.

◆ spaces_per_tab

int exahype2.api.dslhype.SyntaxTree.Node.spaces_per_tab = 4
static

◆ struct_map

dict exahype2.api.dslhype.SyntaxTree.Node.struct_map = {}
static

Definition at line 80 of file SyntaxTree.py.

◆ target_type

exahype2.api.dslhype.SyntaxTree.Node.target_type = field_info.split('|||')[0]
static

Definition at line 186 of file SyntaxTree.py.

◆ target_variable_name

exahype2.api.dslhype.SyntaxTree.Node.target_variable_name = None
static

Definition at line 82 of file SyntaxTree.py.

◆ type_map

dict exahype2.api.dslhype.SyntaxTree.Node.type_map = {}
static

Definition at line 79 of file SyntaxTree.py.

◆ use_accelerator

bool exahype2.api.dslhype.SyntaxTree.Node.use_accelerator = False
static

Definition at line 76 of file SyntaxTree.py.

◆ use_memory_manager

bool exahype2.api.dslhype.SyntaxTree.Node.use_memory_manager = False
static

Definition at line 77 of file SyntaxTree.py.


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