mirror of https://github.com/YosysHQ/yosys.git
Added log_assert() api
This commit is contained in:
parent
ccd2a93439
commit
ed0e2f7a6f
|
@ -140,8 +140,7 @@ std::string AST::type2str(AstNodeType type)
|
|||
X(AST_EDGE)
|
||||
#undef X
|
||||
default:
|
||||
assert(!"Missing enum to string def in AST::type2str().");
|
||||
abort();
|
||||
log_abort();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#include <string>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <kernel/rtlil.h>
|
||||
#include <kernel/log.h>
|
||||
|
||||
struct CellTypes
|
||||
{
|
||||
std::set<std::string> cell_types;
|
||||
|
@ -225,8 +228,7 @@ struct CellTypes
|
|||
if (type == "$_XOR_")
|
||||
return const_xor(arg1, arg2, false, false, 1);
|
||||
|
||||
assert(!"Called CellType.eval() with unsupported cell type!");
|
||||
abort();
|
||||
log_abort();
|
||||
}
|
||||
|
||||
static RTLIL::Const eval(RTLIL::Cell *cell, const RTLIL::Const &arg1, const RTLIL::Const &arg2)
|
||||
|
|
|
@ -49,5 +49,6 @@ void log_flush();
|
|||
const char *log_signal(const RTLIL::SigSpec &sig, bool autoint = true);
|
||||
|
||||
#define log_abort() log_error("Abort in %s:%d.\n", __FILE__, __LINE__)
|
||||
#define log_assert(_assert_expr_) do { if (_assert_expr_) break; log_error("Assert `%s' failed in %s:%d.\n", #_assert_expr_, __FILE__, __LINE__); } while (0)
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue