2020#include " RDLRouter.h"
2121#include " Utilities.h"
2222#include " boost/icl/interval_set.hpp"
23+ #include " gui/gui.h"
2324#include " odb/db.h"
2425#include " odb/dbTransform.h"
2526#include " odb/dbTypes.h"
@@ -916,6 +917,9 @@ void ICeWall::placePadsBumpAligned(
916917
917918 int offset = row_start;
918919
920+ const bool gui_debug
921+ = logger_->debugCheck (utl::PAD, " Place" , 1 ) && gui::Gui::get ()->enabled ();
922+
919923 int max_travel = row_width - pads_width;
920924 // iterate over pads in order
921925 for (auto itr = insts.begin (); itr != insts.end ();) {
@@ -988,6 +992,10 @@ void ICeWall::placePadsBumpAligned(
988992 * row->getSpacing ();
989993
990994 performPadFlip (row, ginst, iterm_connections);
995+
996+ if (gui_debug) {
997+ gui::Gui::get ()->pause ();
998+ }
991999 }
9921000
9931001 // more iterator to next unplaced pad
@@ -1002,6 +1010,9 @@ void ICeWall::placePadsUniform(const std::vector<odb::dbInst*>& insts,
10021010 int row_width,
10031011 int row_start) const
10041012{
1013+ const bool gui_debug
1014+ = logger_->debugCheck (utl::PAD, " Place" , 1 ) && gui::Gui::get ()->enabled ();
1015+
10051016 const double dbus = getBlock ()->getDbUnitsPerMicron ();
10061017 const int target_spacing = (row_width - pads_width) / (insts.size () + 1 );
10071018 int offset = row_start + target_spacing;
@@ -1022,6 +1033,10 @@ void ICeWall::placePadsUniform(const std::vector<odb::dbInst*>& insts,
10221033 /* allow_shift */ true );
10231034 offset += inst_widths.at (inst);
10241035 offset += target_spacing;
1036+
1037+ if (gui_debug) {
1038+ gui::Gui::get ()->pause ();
1039+ }
10251040 }
10261041}
10271042
0 commit comments