ilasynth
1.0
ILASynth: Template-based ILA Synthesis Engine
|
Typedefs | |
typedef boost::shared_ptr< Abstraction > | abstraction_ptr_t |
typedef ChoiceExpr< BitvectorExpr > | BitvectorChoice |
typedef ChoiceExpr< BoolExpr > | BoolChoice |
typedef ChoiceExpr< MemExpr > | MemChoice |
typedef boost::shared_ptr< Node > | nptr_t |
typedef std::vector< nptr_t > | nptr_vec_t |
typedef std::vector< const Node * > | nodevec_t |
typedef std::set< const Node * > | nodeset_t |
typedef std::map< std::string, npair_t > | nmap_t |
typedef std::unordered_map< const Node *, nptr_t, decltype(&nodeHash), decltype(&nodeEqual)> | rwmap_t |
typedef boost::multiprecision::cpp_int | mp_int_t |
typedef HornVar * | hvptr_t |
typedef HornLiteral * | hlptr_t |
typedef HornClause * | hcptr_t |
typedef boost::shared_ptr< SimOutput > | simout_ptr_t |
typedef boost::shared_ptr< DITreeNode > | dtree_ptr_t |
typedef std::string | vlg_name_t |
typedef std::string | vlg_stmt_t |
typedef std::string | vlg_addr_t |
typedef std::string | vlg_data_t |
typedef std::vector< vlg_name_t > | vlg_stmts_t |
typedef std::pair< vlg_name_t, int > | vlg_sig_t |
typedef std::vector< vlg_sig_t > | vlg_sigs_t |
typedef std::tuple< vlg_stmt_t, vlg_stmt_t, vlg_stmt_t > | vlg_ite_stmt_t |
typedef std::vector< vlg_ite_stmt_t > | vlg_ite_stmts_t |
typedef std::pair< vlg_name_t, vlg_sigs_t > | vlg_per_mem_access_t |
typedef std::tuple< vlg_name_t, int, int > | vlg_mem_t |
typedef std::vector< vlg_mem_t > | vlg_mems_t |
typedef std::list< mem_write_entry_t > | mem_write_entry_list_t |
typedef std::list< mem_write_entry_list_t > | mem_write_entry_list_stack_t |
typedef std::list< mem_write_t > | mem_write_list_t |
Enumerations | |
enum | endianness_t { UNKNOWN_E, LITTLE_E, BIG_E } |
Functions | |
std::size_t | hash_value (const Node &n) |
std::size_t | hash_value (const NodeType &ntype) |
std::size_t | compute_hash_value (const NodeType &ntype) |
template<typename T > | |
void | choice_hash_combine (std::size_t &seed, const ChoiceExpr< T > *c) |
std::ostream & | operator<< (std::ostream &out, const Node &that) |
bool | nodeEqual (const Node *left, const Node *right) |
size_t | nodeHash (const Node *n) |
std::ostream & | operator<< (std::ostream &out, const NodeRef &node) |
bool | NEQVarNotExist (const std::string &a1name, const std::string &a2name, const std::string ¬ExistVarName) |
bool | NEQVarTypeMismatch (const std::string &a1name, const std::string &a2name, const std::string &VarName) |
bool | NEQArchVarUpdateMismatch (const std::string &a1name, const std::string &a2name, const std::string &VarName) |
unsigned | DetermineUnrollBound (Abstraction *pAbs, const std::string &nodeName) |
bool | bmc (unsigned n1, Abstraction *a1, NodeRef *r1, unsigned n2, Abstraction *a2, NodeRef *r2) |
bool | checkMiter (z3::solver &S, z3::expr &e1, z3::expr &e2) |
void | translateILAException (PyILAException const &ex) |
std::ostream & | info (const char *s) |
std::ostream & | log1 (const char *s) |
std::ostream & | log2 (const char *s) |
void | initLogging () |
void | setLogLevel (int l, const std::string &name) |
void | enableLog (const std::string &name) |
void | disableLog (const std::string &name) |
void | clearLogs () |
std::ostream & | operator<< (std::ostream &out, const MemValues &mv) |
std::ostream & | operator<< (std::ostream &out, const DistInput &di) |
std::ostream & | operator<< (std::ostream &out, const SimOutput &simout) |
std::ostream & | operator<< (std::ostream &out, NodeType const &ntype) |
void | ila_assert (bool b, const char *msg, const char *file, int line) |
void | ila_assert (bool b, const std::string &msg, const char *file, int line) |
void | dump_trace () |
std::string | to_string (const py::object &l) |
std::string | to_string (const mp_int_t &i) |
mp_int_t | to_cpp_int (const py::object &l) |
py::object | to_pyint (const mp_int_t &i) |
py::object | to_pyint (const std::string &s) |
bool | is_py_int (const py::object &l) |
bool | is_py_int_or_long (const py::object &l) |
void | set_logging_level (int level) |
std::ostream & | operator<< (std::ostream &out, const mem_write_entry_t &mwe) |
std::ostream & | operator<< (std::ostream &out, const mem_write_entry_list_t &mwel) |
std::ostream & | operator<< (std::ostream &out, const mem_write_entry_list_stack_t &mwel) |
std::ostream & | operator<< (std::ostream &out, const mem_write_t &mw) |
std::ostream & | operator<< (std::ostream &out, const mem_write_list_t &mwl) |
Variables | |
const int | NUM_HASHTABLE_BUCKETS = 1023 |
const int | NUM_HASHTABLE_BUCKETS_SMALL = 63 |
typedef boost::shared_ptr<Abstraction> ilasynth::abstraction_ptr_t |
typedef ChoiceExpr<BoolExpr> ilasynth::BoolChoice |
typedef boost::shared_ptr<DITreeNode> ilasynth::dtree_ptr_t |
typedef HornClause* ilasynth::hcptr_t |
typedef HornLiteral* ilasynth::hlptr_t |
typedef HornVar* ilasynth::hvptr_t |
typedef std::list<mem_write_entry_list_t> ilasynth::mem_write_entry_list_stack_t |
typedef std::list<mem_write_entry_t> ilasynth::mem_write_entry_list_t |
typedef std::list<mem_write_t> ilasynth::mem_write_list_t |
typedef ChoiceExpr<MemExpr> ilasynth::MemChoice |
typedef boost::multiprecision::cpp_int ilasynth::mp_int_t |
typedef std::map<std::string, npair_t> ilasynth::nmap_t |
typedef std::set<const Node*> ilasynth::nodeset_t |
typedef std::vector<const Node*> ilasynth::nodevec_t |
typedef boost::shared_ptr<Node> ilasynth::nptr_t |
typedef std::vector<nptr_t> ilasynth::nptr_vec_t |
typedef std::unordered_map<const Node*, nptr_t, decltype(&nodeHash), decltype(&nodeEqual)> ilasynth::rwmap_t |
typedef boost::shared_ptr<SimOutput> ilasynth::simout_ptr_t |
typedef std::string ilasynth::vlg_addr_t |
typedef std::string ilasynth::vlg_data_t |
typedef std::tuple<vlg_stmt_t, vlg_stmt_t, vlg_stmt_t> ilasynth::vlg_ite_stmt_t |
typedef std::vector<vlg_ite_stmt_t> ilasynth::vlg_ite_stmts_t |
typedef std::tuple<vlg_name_t, int, int> ilasynth::vlg_mem_t |
typedef std::vector<vlg_mem_t> ilasynth::vlg_mems_t |
typedef std::string ilasynth::vlg_name_t |
typedef std::pair<vlg_name_t, vlg_sigs_t> ilasynth::vlg_per_mem_access_t |
typedef std::pair<vlg_name_t, int> ilasynth::vlg_sig_t |
typedef std::vector<vlg_sig_t> ilasynth::vlg_sigs_t |
typedef std::string ilasynth::vlg_stmt_t |
typedef std::vector<vlg_name_t> ilasynth::vlg_stmts_t |
bool ilasynth::bmc | ( | unsigned | n1, |
Abstraction * | a1, | ||
NodeRef * | r1, | ||
unsigned | n2, | ||
Abstraction * | a2, | ||
NodeRef * | r2 | ||
) |
bool ilasynth::checkMiter | ( | z3::solver & | S, |
z3::expr & | e1, | ||
z3::expr & | e2 | ||
) |
void ilasynth::choice_hash_combine | ( | std::size_t & | seed, |
const ChoiceExpr< T > * | c | ||
) |
void ilasynth::clearLogs | ( | ) |
std::size_t ilasynth::compute_hash_value | ( | const NodeType & | ntype | ) |
unsigned ilasynth::DetermineUnrollBound | ( | Abstraction * | pAbs, |
const std::string & | nodeName | ||
) |
void ilasynth::disableLog | ( | const std::string & | name | ) |
void ilasynth::dump_trace | ( | ) |
void ilasynth::enableLog | ( | const std::string & | name | ) |
std::size_t ilasynth::hash_value | ( | const Node & | n | ) |
std::size_t ilasynth::hash_value | ( | const NodeType & | ntype | ) |
void ilasynth::ila_assert | ( | bool | b, |
const char * | msg, | ||
const char * | file, | ||
int | line | ||
) |
void ilasynth::ila_assert | ( | bool | b, |
const std::string & | msg, | ||
const char * | file, | ||
int | line | ||
) |
std::ostream& ilasynth::info | ( | const char * | s | ) |
void ilasynth::initLogging | ( | ) |
bool ilasynth::is_py_int | ( | const py::object & | l | ) |
bool ilasynth::is_py_int_or_long | ( | const py::object & | l | ) |
std::ostream& ilasynth::log1 | ( | const char * | s | ) |
std::ostream& ilasynth::log2 | ( | const char * | s | ) |
bool ilasynth::NEQArchVarUpdateMismatch | ( | const std::string & | a1name, |
const std::string & | a2name, | ||
const std::string & | VarName | ||
) |
bool ilasynth::NEQVarNotExist | ( | const std::string & | a1name, |
const std::string & | a2name, | ||
const std::string & | notExistVarName | ||
) |
bool ilasynth::NEQVarTypeMismatch | ( | const std::string & | a1name, |
const std::string & | a2name, | ||
const std::string & | VarName | ||
) |
size_t ilasynth::nodeHash | ( | const Node * | n | ) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const mem_write_entry_t & | mwe | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const mem_write_entry_list_t & | mwel | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const mem_write_entry_list_stack_t & | mwel | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const mem_write_t & | mw | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const mem_write_list_t & | mwl | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
NodeType const & | ntype | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const DistInput & | di | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const MemValues & | mv | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const SimOutput & | simout | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const Node & | that | ||
) |
std::ostream& ilasynth::operator<< | ( | std::ostream & | out, |
const NodeRef & | node | ||
) |
void ilasynth::set_logging_level | ( | int | level | ) |
void ilasynth::setLogLevel | ( | int | l, |
const std::string & | name | ||
) |
mp_int_t ilasynth::to_cpp_int | ( | const py::object & | l | ) |
py::object ilasynth::to_pyint | ( | const mp_int_t & | i | ) |
py::object ilasynth::to_pyint | ( | const std::string & | s | ) |
std::string ilasynth::to_string | ( | const py::object & | l | ) |
std::string ilasynth::to_string | ( | const mp_int_t & | i | ) |
void ilasynth::translateILAException | ( | PyILAException const & | ex | ) |
const int ilasynth::NUM_HASHTABLE_BUCKETS = 1023 |
const int ilasynth::NUM_HASHTABLE_BUCKETS_SMALL = 63 |