Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
James Cherry 2026-04-20 15:02:24 -07:00
parent 6c9af4a5fa
commit c671b266fe
1 changed files with 15 additions and 15 deletions

View File

@ -724,21 +724,21 @@ LibertyLibrary::makeSceneMap(LibertyLibrary *lib,
// Map a cell linked in the network to the corresponding liberty cell
// to use for delay calculation at a scene.
void
LibertyLibrary::makeSceneMap(LibertyCell *cell1,
LibertyCell *cell2,
LibertyLibrary::makeSceneMap(LibertyCell *link_cell,
LibertyCell *scene_cell,
Scene *scene,
const MinMaxAll *min_max,
Report *report)
{
for (const MinMax *mm : min_max->range()) {
size_t lib_ap_index = scene->libertyIndex(mm);
cell1->setSceneCell(cell2, lib_ap_index);
link_cell->setSceneCell(scene_cell, lib_ap_index);
}
LibertyCellPortBitIterator port_iter1(cell1);
LibertyCellPortBitIterator port_iter1(link_cell);
while (port_iter1.hasNext()) {
LibertyPort *port1 = port_iter1.next();
LibertyPort *port2 = cell2->findLibertyPort(port1->name());
LibertyPort *port2 = scene_cell->findLibertyPort(port1->name());
if (port2) {
for (const MinMax *mm : min_max->range()) {
size_t lib_ap_index = scene->libertyIndex(mm);
@ -747,15 +747,15 @@ LibertyLibrary::makeSceneMap(LibertyCell *cell1,
}
else
report->warn(1110, "cell {}/{} port {} not found in cell {}/{}.",
cell1->library()->name(),
cell1->name(),
link_cell->library()->name(),
link_cell->name(),
port1->name(),
cell2->library()->name(),
cell2->name());
scene_cell->library()->name(),
scene_cell->name());
}
for (TimingArcSet *arc_set1 : cell1->timing_arc_sets_) {
TimingArcSet *arc_set2 = cell2->findTimingArcSet(arc_set1);
for (TimingArcSet *arc_set1 : link_cell->timing_arc_sets_) {
TimingArcSet *arc_set2 = scene_cell->findTimingArcSet(arc_set1);
if (arc_set2) {
const TimingArcSeq &arcs1 = arc_set1->arcs();
const TimingArcSeq &arcs2 = arc_set2->arcs();
@ -775,13 +775,13 @@ LibertyLibrary::makeSceneMap(LibertyCell *cell1,
}
else
report->warn(1111, "cell {}/{} {} -> {} timing group {} not found in cell {}/{}.",
cell1->library()->name(),
cell1->name(),
link_cell->library()->name(),
link_cell->name(),
arc_set1->from() ? arc_set1->from()->name() : "",
arc_set1->to()->name(),
arc_set1->role()->to_string(),
cell2->library()->name(),
cell2->name());
scene_cell->library()->name(),
scene_cell->name());
}
}