Skip to content

Commit 81d346f

Browse files
committed
pdn: avoid set -> vector
Signed-off-by: Peter Gadfort <[email protected]>
1 parent 4fc5fa3 commit 81d346f

File tree

5 files changed

+1209
-1221
lines changed

5 files changed

+1209
-1221
lines changed

src/pdn/src/grid.cpp

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1282,7 +1282,7 @@ odb::Rect CoreGrid::getDomainBoundary() const
12821282
void CoreGrid::setupDirectConnect(
12831283
const std::vector<odb::dbTechLayer*>& connect_pad_layers)
12841284
{
1285-
std::set<PadDirectConnectionStraps*> straps;
1285+
std::vector<PadDirectConnectionStraps*> straps;
12861286
// look for pads that need to be connected
12871287
for (auto* net : getNets()) {
12881288
std::vector<odb::dbITerm*> iterms;
@@ -1299,23 +1299,11 @@ void CoreGrid::setupDirectConnect(
12991299
iterms.push_back(iterm);
13001300
}
13011301

1302-
// sort by name to keep stable
1303-
std::stable_sort(
1304-
iterms.begin(), iterms.end(), [](odb::dbITerm* l, odb::dbITerm* r) {
1305-
const int name_compare
1306-
= r->getInst()->getName().compare(l->getInst()->getName());
1307-
if (name_compare != 0) {
1308-
return name_compare < 0;
1309-
}
1310-
1311-
return r->getMTerm()->getName() < l->getMTerm()->getName();
1312-
});
1313-
13141302
for (auto* iterm : iterms) {
13151303
auto pad_connect = std::make_unique<PadDirectConnectionStraps>(
13161304
this, iterm, connect_pad_layers);
13171305
if (pad_connect->canConnect()) {
1318-
straps.insert(pad_connect.get());
1306+
straps.push_back(pad_connect.get());
13191307
addStrap(std::move(pad_connect));
13201308
} else {
13211309
debugPrint(getLogger(),

src/pdn/src/straps.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1315,7 +1315,7 @@ void PadDirectConnectionStraps::cutShapes(
13151315
}
13161316

13171317
void PadDirectConnectionStraps::unifyConnectionTypes(
1318-
const std::set<PadDirectConnectionStraps*>& straps)
1318+
const std::vector<PadDirectConnectionStraps*>& straps)
13191319
{
13201320
std::set<ConnectionType> types;
13211321
for (auto* strap : straps) {

src/pdn/src/straps.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ class PadDirectConnectionStraps : public Straps
140140
void cutShapes(const Shape::ObstructionTreeMap& obstructions) override;
141141

142142
static void unifyConnectionTypes(
143-
const std::set<PadDirectConnectionStraps*>& straps);
143+
const std::vector<PadDirectConnectionStraps*>& straps);
144144

145145
private:
146146
enum class ConnectionType

0 commit comments

Comments
 (0)