ilasynth  1.0
ILASynth: Template-based ILA Synthesis Engine
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes | Friends | List of all members
ilasynth::MemOp Class Reference

#include <mem.hpp>

Inheritance diagram for ilasynth::MemOp:
ilasynth::MemExpr ilasynth::Node

Public Types

enum  Op { INVALID, STORE, STOREBLOCK, ITE }
 

Public Member Functions

 MemOp (Op op, const nptr_t &a0, const nptr_t &a1, const nptr_t &a2)
 
 MemOp (Op op, const nptr_t &mem, const nptr_t &addr, const nptr_t &data, endianness_t e)
 
 MemOp (const MemOp &that)
 
 MemOp (const MemOp *that, const nptr_vec_t &args)
 
virtual ~MemOp ()
 
Op getOp () const
 
virtual Nodeclone () const
 
virtual bool equal (const Node *that) const
 
virtual std::ostream & write (std::ostream &out) const
 
virtual unsigned nArgs () const
 
virtual boost::shared_ptr< Nodearg (unsigned i) const
 
- Public Member Functions inherited from ilasynth::MemExpr
 MemExpr (int addrWidth, int dataWidth)
 
 MemExpr (NodeType t)
 
virtual ~MemExpr ()
 
- Public Member Functions inherited from ilasynth::Node
 Node ()
 
 Node (NodeType t)
 
virtual ~Node ()
 
std::string & getName ()
 
const std::string & getName () const
 
const std::string & getRefName () const
 
void setRefName (const std::string &refN)
 
int getId ()
 
NodeType getType ()
 
virtual py::object getValue () const
 
virtual bool isConstant () const
 
template<class F >
void depthFirstVisit (F &func) const
 
void getSupportVars (nodeset_t &sup)
 
void visit (NodeVisitorI &vi)
 
bool hasSynthesisConstructs () const
 

Public Attributes

enum ilasynth::MemOp::Op op
 
endianness_t endian
 
- Public Attributes inherited from ilasynth::Node
NodeType type
 

Static Public Attributes

static const std::string operatorNames []
 

Protected Attributes

nptr_vec_t args
 
- Protected Attributes inherited from ilasynth::Node
std::string name
 
std::string refName
 
const int id
 
bool hash_inited
 
size_t hash_value
 

Friends

class FuncReduction
 

Additional Inherited Members

- Static Public Member Functions inherited from ilasynth::Node
static nptr_t ite (const nptr_t &cond, const nptr_t &t, const nptr_t &f)
 
- Static Protected Member Functions inherited from ilasynth::Node
static void _getSupportVarsHelper (nodeset_t &supp, const Node *n)
 

Member Enumeration Documentation

◆ Op

Enumerator
INVALID 
STORE 
STOREBLOCK 
ITE 

Constructor & Destructor Documentation

◆ MemOp() [1/4]

ilasynth::MemOp::MemOp ( Op  op,
const nptr_t a0,
const nptr_t a1,
const nptr_t a2 
)

◆ MemOp() [2/4]

ilasynth::MemOp::MemOp ( Op  op,
const nptr_t mem,
const nptr_t addr,
const nptr_t data,
endianness_t  e 
)

◆ MemOp() [3/4]

ilasynth::MemOp::MemOp ( const MemOp that)

◆ MemOp() [4/4]

ilasynth::MemOp::MemOp ( const MemOp that,
const nptr_vec_t args 
)

◆ ~MemOp()

virtual ilasynth::MemOp::~MemOp ( )
virtual

Member Function Documentation

◆ arg()

virtual boost::shared_ptr<Node> ilasynth::MemOp::arg ( unsigned  i) const
virtual

Reimplemented from ilasynth::Node.

◆ clone()

virtual Node* ilasynth::MemOp::clone ( ) const
virtual

Reimplemented from ilasynth::Node.

◆ equal()

virtual bool ilasynth::MemOp::equal ( const Node that) const
virtual

Reimplemented from ilasynth::Node.

◆ getOp()

Op ilasynth::MemOp::getOp ( ) const
inline

◆ nArgs()

virtual unsigned ilasynth::MemOp::nArgs ( ) const
virtual

Reimplemented from ilasynth::Node.

◆ write()

virtual std::ostream& ilasynth::MemOp::write ( std::ostream &  out) const
virtual

Reimplemented from ilasynth::Node.

Friends And Related Function Documentation

◆ FuncReduction

friend class FuncReduction
friend

Member Data Documentation

◆ args

nptr_vec_t ilasynth::MemOp::args
protected

◆ endian

endianness_t ilasynth::MemOp::endian

◆ op

enum ilasynth::MemOp::Op ilasynth::MemOp::op

◆ operatorNames

const std::string ilasynth::MemOp::operatorNames[]
static

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