ConcreteCell/Port pointers to corresponding liberty

This commit is contained in:
James Cherry
2019-06-15 22:20:54 -07:00
parent dd8153c7f9
commit 96fcf1d8b2
5 changed files with 34 additions and 7 deletions
+14
View File
@@ -112,6 +112,7 @@ ConcreteCell::ConcreteCell(ConcreteLibrary *library,
library_(library),
name_(stringCopy(name)),
filename_(stringCopy(filename)),
liberty_cell_(nullptr),
port_bit_count_(0),
is_leaf_(is_leaf)
{
@@ -134,6 +135,12 @@ ConcreteCell::setName(const char *name)
name_ = name_cpy;
}
void
ConcreteCell::setLibertyCell(LibertyCell *cell)
{
liberty_cell_ = cell;
}
ConcretePort *
ConcreteCell::makePort(const char *name)
{
@@ -422,6 +429,7 @@ ConcretePort::ConcretePort(ConcreteCell *cell,
name_(stringCopy(name)),
cell_(cell),
direction_(PortDirection::unknown()),
liberty_port_(nullptr),
pin_index_(-1),
is_bundle_(is_bundle),
is_bus_(is_bus),
@@ -447,6 +455,12 @@ ConcretePort::cell() const
return reinterpret_cast<Cell*>(cell_);
}
void
ConcretePort::setLibertyPort(LibertyPort *port)
{
liberty_port_ = port;
}
const char *
ConcretePort::busName() const
{