Brick Library 0.1
Performance-portable stencil datalayout & codegen
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
st.codegen.backend.asimd.BackendASIMD Class Reference
Inheritance diagram for st.codegen.backend.asimd.BackendASIMD:
[legend]
Collaboration diagram for st.codegen.backend.asimd.BackendASIMD:
[legend]

Public Member Functions

def __init__ (self)
 
def checkConfig (self)
 
def declare_vec (self, name, CodeBlock block)
 
def store_vecbuf (self, vecbuf_name, reg_name, CodeBlock block)
 
def read_aligned (self, Grid grid, offset, str name, CodeBlock block, rel=None)
 
def merge (self, rego, regl, regr, dim, shift, CodeBlock block)
 
- Public Member Functions inherited from st.codegen.backend.avx512.BackendAVX512
def __init__ (self)
 
def setLayout (self, layout)
 
def prequel (self, toplevel)
 
def declare_buf (self, Buffer buf, CodeBlock block)
 
def declare_gridref (self, Grid grid, CodeBlock block)
 
def genVectorLoop (self, CodeBlock group)
 
def genStoreLoop (self, CodeBlock group)
 
def gen_lhs (self, Buffer buf, List[int] offset, rel=None, dimrels=None)
 
def gen_rhs (self, Expr comp, List[int] shift, List[int] offset, rel=None, dimrels=None)
 
def declare_reg (self, name, CodeBlock block)
 
def declare_vec (self, name, CodeBlock block)
 
def store_vecbuf (self, vecbuf_name, reg_name, CodeBlock block)
 
def merge (self, rego, regl, regr, dim, shift, CodeBlock block)
 
def read_aligned (self, Grid grid, offset, str name, CodeBlock block, rel=None)
 
- Public Member Functions inherited from st.codegen.backend.base.Backend
def __init__ (self)
 
def setCodeGen (self, codegen)
 
def setLayout (self, layout)
 
def prequel (self, toplevel)
 
def checkConfig (self)
 
def declare_buf (self, Buffer buf, CodeBlock block)
 
def declare_gridref (self, Grid grid, CodeBlock block)
 
def stride (self, dim)
 
def declare_vecbuf (self, Grid grid, vec_shift, CodeBlock block)
 
def genVectorLoop (self, CodeBlock group)
 
def genStoreLoop (self, CodeBlock group)
 
def store (self, Buffer buf, CodeBlock group)
 
def storeTile (self, Buffer buf, CodeBlock group)
 
def genStoreLoc (self, Grid grid, shift, offset, rel, dimrels)
 
def genStoreTileLoop (self, CodeBlock group, dims)
 
def gen_lhs (self, Buffer buf, List[int] offset, rel=None, dimrels=None)
 
def gen_rhs (self, Expr comp, List[int] shift, List[int] offset, rel=None, dimrels=None)
 
def declare_reg (self, name, CodeBlock block)
 
def declare_vec (self, name, CodeBlock block)
 
def store_vecbuf (self, vecbuf_name, reg_name, CodeBlock block)
 
def merge (self, rego, regl, regr, dim, shift, CodeBlock block)
 
def read_aligned (self, Grid grid, offset, str name, CodeBlock block, rel=None)
 

Public Attributes

 VECLEN
 
- Public Attributes inherited from st.codegen.backend.avx512.BackendAVX512
 VECLEN
 
- Public Attributes inherited from st.codegen.backend.base.Backend
 printer
 
 codegen
 
 prec
 
 layout
 
 STRIDE
 
 VECLEN
 
 ALIGNED
 

Additional Inherited Members

- Static Public Member Functions inherited from st.codegen.backend.base.Backend
def gridref_name (grid)
 
def vectmp_name (idx)
 
def vecbuf_name (grid, vec_shift)
 
def vecreg_name (grid, vec_shift)
 
def index_name (idx)
 
def rel_name (idx=None)
 
- Static Public Attributes inherited from st.codegen.backend.base.Backend
str preffix = "_cg"
 

Constructor & Destructor Documentation

◆ __init__()

def st.codegen.backend.asimd.BackendASIMD.__init__ (   self)

Reimplemented from st.codegen.backend.avx512.BackendAVX512.

Here is the call graph for this function:

Member Function Documentation

◆ checkConfig()

def st.codegen.backend.asimd.BackendASIMD.checkConfig (   self)

Reimplemented from st.codegen.backend.base.Backend.

Here is the call graph for this function:

◆ declare_vec()

def st.codegen.backend.asimd.BackendASIMD.declare_vec (   self,
  name,
CodeBlock  block 
)

◆ merge()

def st.codegen.backend.asimd.BackendASIMD.merge (   self,
  rego,
  regl,
  regr,
  dim,
  shift,
CodeBlock  block 
)

◆ read_aligned()

def st.codegen.backend.asimd.BackendASIMD.read_aligned (   self,
Grid  grid,
  offset,
str  name,
CodeBlock  block,
  rel = None 
)

◆ store_vecbuf()

def st.codegen.backend.asimd.BackendASIMD.store_vecbuf (   self,
  vecbuf_name,
  reg_name,
CodeBlock  block 
)

Member Data Documentation

◆ VECLEN

st.codegen.backend.asimd.BackendASIMD.VECLEN

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