|
void | ilang::LogLevel (const int &lvl) |
| Set the minimun log level. Log messages at or above this level will be logged. (Default: 0) More...
|
|
void | ilang::LogPath (const std::string &path) |
| Set the path for log file. If specified, logfiles are written into this directory instead of the default logging directory (/tmp).
|
|
void | ilang::LogToErr (bool to_err) |
| Pipe log to stderr. Log messages to stderr instead of logfiles, if set to 1.
|
|
void | ilang::EnableDebug (const std::string &tag) |
| Add a debug tag.
|
|
void | ilang::DisableDebug (const std::string &tag) |
| Remove a debug tag.
|
|
ExprRef | ilang::operator- (const ExprRef &a) |
| Arithmetic negate for bit-vectors.
|
|
ExprRef | ilang::operator! (const ExprRef &a) |
| Logical not for Booleans.
|
|
ExprRef | ilang::operator~ (const ExprRef &a) |
| Bit-wise complement for bit-vectors.
|
|
ExprRef | ilang::operator& (const ExprRef &a, const ExprRef &b) |
| Logical AND (bit-wise for bit-vectors).
|
|
ExprRef | ilang::operator| (const ExprRef &a, const ExprRef &b) |
| Logical OR (bit-wise for bit-vectors).
|
|
ExprRef | ilang::operator^ (const ExprRef &a, const ExprRef &b) |
| Logical XOR (bit-wise for bit-vectors).
|
|
ExprRef | ilang::operator<< (const ExprRef &a, const ExprRef &b) |
| Left shift for bit-vectors.
|
|
ExprRef | ilang::operator>> (const ExprRef &a, const ExprRef &b) |
| Arithmetic right shift for bit-vectors.
|
|
ExprRef | ilang::Lshr (const ExprRef &a, const ExprRef &b) |
| Logical right shift for bit-vectors.
|
|
ExprRef | ilang::operator+ (const ExprRef &a, const ExprRef &b) |
| Unsigned addition for bit-vectors.
|
|
ExprRef | ilang::operator- (const ExprRef &a, const ExprRef &b) |
| Unsigned subtraction for bit-vectors.
|
|
ExprRef | ilang::operator* (const ExprRef &a, const ExprRef &b) |
| Unsigned multiply for bit-vectors.
|
|
ExprRef | ilang::operator/ (const ExprRef &a, const ExprRef &b) |
| Unsigned division for bit-vectors.
|
|
ExprRef | ilang::operator& (const ExprRef &a, const bool &b) |
| Logical AND with Boolean constant.
|
|
ExprRef | ilang::operator| (const ExprRef &a, const bool &b) |
| Logical OR with Boolean constant.
|
|
ExprRef | ilang::operator^ (const ExprRef &a, const bool &b) |
| Logical XOR with Boolean constant.
|
|
ExprRef | ilang::operator<< (const ExprRef &a, const int &b) |
| Left shift with int constant.
|
|
ExprRef | ilang::operator>> (const ExprRef &a, const int &b) |
| Arithmetic right shift with int constant.
|
|
ExprRef | ilang::Lshr (const ExprRef &a, const int &b) |
| Logical right shift with int constant.
|
|
ExprRef | ilang::operator+ (const ExprRef &a, const NumericType &b) |
| Unsigned addition with constant.
|
|
ExprRef | ilang::operator- (const ExprRef &a, const NumericType &b) |
| Unsigned subtraction with constant.
|
|
ExprRef | ilang::operator* (const ExprRef &a, const NumericType &b) |
| Unsigned multiply with constant.
|
|
ExprRef | ilang::SRem (const ExprRef &a, const ExprRef &b) |
| Arithmetic signed remainder.
|
|
ExprRef | ilang::URem (const ExprRef &a, const ExprRef &b) |
| Arithmetic unsigned remainder.
|
|
ExprRef | ilang::SMod (const ExprRef &a, const ExprRef &b) |
| Arithmetic signed modular.
|
|
void | ilang::SetUnsignedComparison (bool sign) |
|
ExprRef | ilang::operator== (const ExprRef &a, const ExprRef &b) |
| Equal.
|
|
ExprRef | ilang::operator!= (const ExprRef &a, const ExprRef &b) |
| Not equal.
|
|
ExprRef | ilang::operator< (const ExprRef &a, const ExprRef &b) |
| Signed/Unsigned less than (bit-vectors only).
|
|
ExprRef | ilang::operator> (const ExprRef &a, const ExprRef &b) |
| Signed/Unsigned greater than (bit-vectors only).
|
|
ExprRef | ilang::operator<= (const ExprRef &a, const ExprRef &b) |
| Signed/Unsigned less than or equal to (bit-vectors only).
|
|
ExprRef | ilang::operator>= (const ExprRef &a, const ExprRef &b) |
| Signed/Unsigned greater than or equal to (bit-vectors only).
|
|
ExprRef | ilang::Ult (const ExprRef &a, const ExprRef &b) |
| Unsigned less than (bit-vectors only).
|
|
ExprRef | ilang::Ugt (const ExprRef &a, const ExprRef &b) |
| Unsigned greater than (bit-vectors only).
|
|
ExprRef | ilang::Ule (const ExprRef &a, const ExprRef &b) |
| Unsigned less than or equal to (bit-vectors only).
|
|
ExprRef | ilang::Uge (const ExprRef &a, const ExprRef &b) |
| Unsigned greater than or equal to (bit-vectors only).
|
|
ExprRef | ilang::Slt (const ExprRef &a, const ExprRef &b) |
| Signed less than (bit-vectors only).
|
|
ExprRef | ilang::Sgt (const ExprRef &a, const ExprRef &b) |
| Signed greater than (bit-vectors only).
|
|
ExprRef | ilang::Sle (const ExprRef &a, const ExprRef &b) |
| Signed less than or equal to (bit-vectors only).
|
|
ExprRef | ilang::Sge (const ExprRef &a, const ExprRef &b) |
| Signed greater than or equal to (bit-vectors only).
|
|
ExprRef | ilang::operator== (const ExprRef &a, const NumericType &b) |
| Equal to constant.
|
|
ExprRef | ilang::operator!= (const ExprRef &a, const NumericType &b) |
| Not equal to constant.
|
|
ExprRef | ilang::operator< (const ExprRef &a, const NumericType &b) |
| Signed/Unsigned less than constant (bit-vectors only).
|
|
ExprRef | ilang::operator> (const ExprRef &a, const NumericType &b) |
| Signed/Unsigned greater than constant (bit-vectors only).
|
|
ExprRef | ilang::operator<= (const ExprRef &a, const NumericType &b) |
| Signed/Unsigned less than or equal to constant (bit-vectors only).
|
|
ExprRef | ilang::operator>= (const ExprRef &a, const NumericType &b) |
| Signed/Unsigned greater than or equal to constant (bit-vectors only).
|
|
ExprRef | ilang::Ult (const ExprRef &a, const NumericType &b) |
| Unsigned less than constant (bit-vectors only).
|
|
ExprRef | ilang::Ugt (const ExprRef &a, const NumericType &b) |
| Unsigned greater than constant (bit-vectors only).
|
|
ExprRef | ilang::Ule (const ExprRef &a, const NumericType &b) |
| Unsigned less than or equal to constant (bit-vectors only).
|
|
ExprRef | ilang::Uge (const ExprRef &a, const NumericType &b) |
| Unsigned greater than or equal to constant (bit-vectors only).
|
|
ExprRef | ilang::Slt (const ExprRef &a, const NumericType &b) |
| Signed less than constant (bit-vectors only).
|
|
ExprRef | ilang::Sgt (const ExprRef &a, const NumericType &b) |
| Signed greater than constant (bit-vectors only).
|
|
ExprRef | ilang::Sle (const ExprRef &a, const NumericType &b) |
| Signed less than or equal to constant (bit-vectors only).
|
|
ExprRef | ilang::Sge (const ExprRef &a, const NumericType &b) |
| Signed greater than or equal to constant (bit-vectors only).
|
|
ExprRef | ilang::Load (const ExprRef &mem, const ExprRef &addr) |
| Load from memory.
|
|
ExprRef | ilang::Store (const ExprRef &mem, const ExprRef &addr, const ExprRef &data) |
| Store to memory.
|
|
ExprRef | ilang::Load (const ExprRef &mem, const NumericType &addr) |
| Load from memory with constant address.
|
|
ExprRef | ilang::Store (const ExprRef &mem, const NumericType &addr, const NumericType &data) |
| Store to memory at constant address and data.
|
|
ExprRef | ilang::Concat (const ExprRef &msbv, const ExprRef &lsbv) |
| Concatenate two bit-vectors. More...
|
|
ExprRef | ilang::Extract (const ExprRef &bv, const int &hi, const int &lo) |
| Extract bit-field in the bit-vector. More...
|
|
ExprRef | ilang::SelectBit (const ExprRef &bv, const int &idx) |
| Extract single bit in the bit-vector. More...
|
|
ExprRef | ilang::ZExt (const ExprRef &bv, const int &length) |
| Zero-extend the bit-vector to the specified length. More...
|
|
ExprRef | ilang::SExt (const ExprRef &bv, const int &length) |
| Sign-extend the bit-vector to the specified length. More...
|
|
ExprRef | ilang::LRotate (const ExprRef &bv, const int &immediate) |
| Left-rotate the bit-vector with immediate number of times. More...
|
|
ExprRef | ilang::RRotate (const ExprRef &bv, const int &immediate) |
| Right-rotate the bit-vector with immediate number of times. More...
|
|
ExprRef | ilang::Imply (const ExprRef &ante, const ExprRef &cons) |
| Logical imply for Booleans. More...
|
|
ExprRef | ilang::Ite (const ExprRef &cond, const ExprRef &t, const ExprRef &f) |
| If-then-else on the Boolean condition. More...
|
|
ExprRef | ilang::BoolConst (bool bool_val) |
| Return a Boolean constant. More...
|
|
ExprRef | ilang::BvConst (const NumericType &bv_val, const int &bit_width) |
| Return a bit-vector constant. More...
|
|
ExprRef | ilang::MemConst (const NumericType &def_val, const std::map< NumericType, NumericType > &vals, const int &addr_width, const int &data_width) |
| Return a memory constant. More...
|
|
bool | ilang::TopEqual (const ExprRef &a, const ExprRef &b) |
| Topologically equivalent.
|
|
std::ostream & | ilang::operator<< (std::ostream &out, const ExprRef &expr) |
| Print out the ExprRef.
|
|
std::ostream & | ilang::operator<< (std::ostream &out, const InstrRef &instr) |
| Print out the Instruction.
|
|
std::ostream & | ilang::operator<< (std::ostream &out, const Ila &ila) |
| Print out the ILA.
|
|
bool | ilang::ExportIlaPortable (const Ila &ila, const std::string &file_name) |
| Export the ILA portable to file. More...
|
|
Ila | ilang::ImportIlaPortable (const std::string &file_name) |
| Import the ILA portable from file. More...
|
|
void | ilang::ExportSysCSim (const Ila &ila, const std::string &dir_path, bool optimize=false) |
| Generate the SystemC simulator. More...
|
|