cudd compilation

Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
James Cherry 2021-08-22 17:01:46 -07:00
parent 289f2f2f2a
commit 5a765a7606
1 changed files with 17 additions and 26 deletions

View File

@ -35,16 +35,19 @@
#if CUDD
// https://davidkebo.com/cudd
#include "cudd.h"
#endif // CUDD
#else
#define Cudd_Init(ignore1, ignore2, ignore3, ignore4, ignore5) nullptr
#define Cudd_Quit(ignore1)
#endif
namespace sta {
static LogicValue
logicNot(LogicValue value);
static Pin *
findDrvrPin(const Pin *pin,
Network *network);
#if CUDD
Sim::Sim(StaState *sta) :
StaState(sta),
observer_(nullptr),
@ -62,6 +65,8 @@ Sim::~Sim()
Cudd_Quit(cudd_manager_);
}
#if CUDD
TimingSense
Sim::functionSense(const FuncExpr *expr,
const Pin *input_pin,
@ -224,15 +229,6 @@ Sim::ensureNode(LibertyPort *port) const
#else
// No CUDD.
static LogicValue
logicNot(LogicValue value)
{
static LogicValue logic_not[5] = {LogicValue::one, LogicValue::zero,
LogicValue::unknown, LogicValue::unknown,
LogicValue::unknown};
return logic_not[int(value)];
}
static LogicValue
logicOr(LogicValue value1,
LogicValue value2)
@ -319,20 +315,6 @@ senseXor(TimingSense sense1,
return xor_sense[int(sense1)][int(sense2)];
}
Sim::Sim(StaState *sta) :
StaState(sta),
observer_(nullptr),
valid_(false),
incremental_(false),
const_func_pins_valid_(false)
{
}
Sim::~Sim()
{
delete observer_;
}
TimingSense
Sim::functionSense(const FuncExpr *expr,
const Pin *input_pin,
@ -515,6 +497,15 @@ Sim::evalExpr(const FuncExpr *expr,
#endif // CUDD
static LogicValue
logicNot(LogicValue value)
{
static LogicValue logic_not[5] = {LogicValue::one, LogicValue::zero,
LogicValue::unknown, LogicValue::unknown,
LogicValue::unknown};
return logic_not[int(value)];
}
void
Sim::clear()
{