Skip to content

Commit 52df02a

Browse files
committed
Refactored DbStrDebugHierarchy() in TestHconn.cpp
Signed-off-by: Jaehyun Kim <[email protected]>
1 parent b2a8212 commit 52df02a

File tree

1 file changed

+80
-139
lines changed

1 file changed

+80
-139
lines changed

src/dbSta/test/cpp/TestHconn.cpp

Lines changed: 80 additions & 139 deletions
Original file line numberDiff line numberDiff line change
@@ -45,204 +45,145 @@ std::once_flag init_sta_flag;
4545

4646
void DbStrDebugHierarchy(dbBlock* block, std::stringstream& str_db)
4747
{
48-
char tmp_str[10000];
49-
sprintf(tmp_str,
50-
"Debug: Data base tables for block at %s:\n",
51-
block->getName().c_str());
52-
str_db << tmp_str;
48+
str_db << fmt::format("Debug: Data base tables for block at {}:\n",
49+
block->getName());
5350

54-
sprintf(tmp_str, "Db nets (The Flat db view)\n");
55-
str_db << tmp_str;
51+
str_db << "Db nets (The Flat db view)\n";
5652

5753
for (auto dbnet : block->getNets()) {
58-
sprintf(tmp_str,
59-
"dbnet %s (id %u)\n",
60-
dbnet->getName().c_str(),
61-
dbnet->getId());
62-
str_db << tmp_str;
54+
str_db << fmt::format(
55+
"dbnet {} (id {})\n", dbnet->getName(), dbnet->getId());
6356

6457
for (auto db_iterm : dbnet->getITerms()) {
65-
sprintf(tmp_str,
66-
"\t-> Db Iterm %u (%s)\n",
67-
db_iterm->getId(),
68-
db_iterm->getName().c_str());
69-
str_db << tmp_str;
58+
str_db << fmt::format(
59+
"\t-> Db Iterm {} ({})\n", db_iterm->getId(), db_iterm->getName());
7060
}
7161
for (auto db_bterm : dbnet->getBTerms()) {
72-
sprintf(tmp_str, "\t-> Db Bterm %u\n", db_bterm->getId());
73-
str_db << tmp_str;
62+
str_db << fmt::format("\t-> Db Bterm {}\n", db_bterm->getId());
7463
}
7564
}
7665

77-
sprintf(tmp_str, "Block ports\n");
7866
// got through the ports and their owner
79-
sprintf(tmp_str, "\t\tBTerm Ports +++\n");
80-
str_db << tmp_str;
67+
str_db << "Block ports\n\t\tBTerm Ports +++\n";
8168
dbSet<dbBTerm> block_bterms = block->getBTerms();
8269
for (auto bt : block_bterms) {
83-
sprintf(tmp_str,
84-
"\t\tBterm (%u) %s Net %s (%u) Mod Net %s (%u) \n",
85-
bt->getId(),
86-
bt->getName().c_str(),
87-
bt->getNet() ? bt->getNet()->getName().c_str() : "",
88-
bt->getNet() ? bt->getNet()->getId() : 0,
89-
bt->getModNet() ? bt->getModNet()->getName().c_str() : "",
90-
bt->getModNet() ? bt->getModNet()->getId() : 0);
91-
str_db << tmp_str;
70+
str_db << fmt::format("\t\tBterm ({}) {} Net {} ({}) Mod Net {} ({}) \n",
71+
bt->getId(),
72+
bt->getName(),
73+
bt->getNet() ? bt->getNet()->getName() : "",
74+
bt->getNet() ? bt->getNet()->getId() : 0,
75+
bt->getModNet() ? bt->getModNet()->getName() : "",
76+
bt->getModNet() ? bt->getModNet()->getId() : 0);
9277
}
93-
sprintf(tmp_str, "\t\tBTerm Ports ---\n");
94-
str_db << tmp_str;
78+
str_db << "\t\tBTerm Ports ---\n";
9579

96-
sprintf(tmp_str, "The hierarchical db view:\n");
97-
str_db << tmp_str;
80+
str_db << "The hierarchical db view:\n";
9881
dbSet<dbModule> block_modules = block->getModules();
99-
sprintf(tmp_str, "Content size %u modules\n", block_modules.size());
100-
str_db << tmp_str;
82+
str_db << fmt::format("Content size {} modules\n", block_modules.size());
10183
for (auto mi : block_modules) {
10284
dbModule* cur_obj = mi;
10385
if (cur_obj == block->getTopModule()) {
104-
sprintf(tmp_str, "Top Module\n");
105-
str_db << tmp_str;
86+
str_db << "Top Module\n";
10687
}
107-
sprintf(tmp_str,
108-
"\tModule %s %s\n",
109-
(cur_obj == block->getTopModule()) ? "(Top Module)" : "",
110-
cur_obj->getName());
111-
str_db << tmp_str;
88+
str_db << fmt::format(
89+
"\tModule {} {}\n",
90+
(cur_obj == block->getTopModule()) ? "(Top Module)" : "",
91+
cur_obj->getName());
11292
// in case of top level, care as the bterms double up as pins
11393
if (cur_obj == block->getTopModule()) {
11494
for (auto bterm : block->getBTerms()) {
115-
sprintf(tmp_str,
116-
"Top B-term %s dbNet %s (%d) modNet %s (%d)\n",
117-
bterm->getName().c_str(),
118-
bterm->getNet() ? bterm->getNet()->getName().c_str() : "",
119-
bterm->getNet() ? bterm->getNet()->getId() : -1,
120-
bterm->getModNet() ? bterm->getModNet()->getName().c_str() : "",
121-
bterm->getModNet() ? bterm->getModNet()->getId() : -1);
122-
str_db << tmp_str;
95+
str_db << fmt::format(
96+
"Top B-term {} dbNet {} ({}) modNet {} ({})\n",
97+
bterm->getName(),
98+
bterm->getNet() ? bterm->getNet()->getName() : "",
99+
bterm->getNet() ? bterm->getNet()->getId() : -1,
100+
bterm->getModNet() ? bterm->getModNet()->getName() : "",
101+
bterm->getModNet() ? bterm->getModNet()->getId() : -1);
123102
}
124103
}
125104
// got through the module ports and their owner
126-
sprintf(tmp_str, "\t\tModBTerm Ports +++\n");
127-
str_db << tmp_str;
105+
str_db << "\t\tModBTerm Ports +++\n";
128106

129107
dbSet<dbModBTerm> module_ports = cur_obj->getModBTerms();
130108
for (auto module_port : module_ports) {
131-
sprintf(
132-
tmp_str,
133-
"\t\tPort %s Net %s (%d)\n",
109+
str_db << fmt::format(
110+
"\t\tPort {} Net {} ({})\n",
134111
module_port->getName(),
135-
(module_port->getModNet())
136-
? (module_port->getModNet()->getName().c_str())
137-
: "No-modnet",
112+
(module_port->getModNet()) ? (module_port->getModNet()->getName())
113+
: "No-modnet",
138114
(module_port->getModNet()) ? module_port->getModNet()->getId() : -1);
139-
str_db << tmp_str;
140-
sprintf(tmp_str,
141-
"\t\tPort parent %s\n\n",
142-
module_port->getParent()->getName());
143-
str_db << tmp_str;
115+
str_db << fmt::format("\t\tPort parent {}\n\n",
116+
module_port->getParent()->getName());
144117
}
145-
sprintf(tmp_str, "\t\tModBTermPorts ---\n");
146-
str_db << tmp_str;
118+
str_db << "\t\tModBTermPorts ---\n";
147119

148-
sprintf(tmp_str, "\t\tModule instances +++\n");
149-
str_db << tmp_str;
120+
str_db << "\t\tModule instances +++\n";
150121
dbSet<dbModInst> module_instances = mi->getModInsts();
151122
for (auto module_inst : module_instances) {
152-
sprintf(tmp_str, "\t\tMod inst %s ", module_inst->getName());
153-
str_db << tmp_str;
123+
str_db << fmt::format("\t\tMod inst {} ", module_inst->getName());
154124
dbModule* master = module_inst->getMaster();
155-
sprintf(
156-
tmp_str, "\t\tMaster %s\n\n", module_inst->getMaster()->getName());
157-
str_db << tmp_str;
125+
str_db << fmt::format("\t\tMaster {}\n\n",
126+
module_inst->getMaster()->getName());
158127
dbBlock* owner = master->getOwner();
159128
if (owner != block) {
160-
sprintf(tmp_str, "\t\t\tMaster owner in wrong block\n");
161-
str_db << tmp_str;
129+
str_db << "\t\t\tMaster owner in wrong block\n";
162130
}
163-
sprintf(tmp_str, "\t\tConnections\n");
164-
str_db << tmp_str;
131+
str_db << "\t\tConnections\n";
165132
for (dbModITerm* miterm_pin : module_inst->getModITerms()) {
166-
sprintf(tmp_str,
167-
"\t\t\tModIterm : %s (%u) Mod Net %s (%u) \n",
168-
miterm_pin->getName(),
169-
miterm_pin->getId(),
170-
miterm_pin->getModNet()
171-
? (miterm_pin->getModNet()->getName().c_str())
172-
: "No-net",
173-
miterm_pin->getModNet() ? miterm_pin->getModNet()->getId() : 0);
174-
str_db << tmp_str;
133+
str_db << fmt::format(
134+
"\t\t\tModIterm : {} ({}) Mod Net {} ({}) \n",
135+
miterm_pin->getName(),
136+
miterm_pin->getId(),
137+
miterm_pin->getModNet() ? (miterm_pin->getModNet()->getName())
138+
: "No-net",
139+
miterm_pin->getModNet() ? miterm_pin->getModNet()->getId() : 0);
175140
}
176141
}
177-
sprintf(tmp_str, "\t\tModule instances ---\n");
178-
str_db << tmp_str;
179-
sprintf(tmp_str, "\t\tDb instances +++\n");
180-
str_db << tmp_str;
142+
str_db << "\t\tModule instances ---\n";
143+
str_db << "\t\tDb instances +++\n";
181144
for (dbInst* db_inst : cur_obj->getInsts()) {
182-
sprintf(tmp_str, "\t\tdb inst %s\n", db_inst->getName().c_str());
183-
str_db << tmp_str;
184-
sprintf(tmp_str, "\t\tdb iterms:\n");
185-
str_db << tmp_str;
145+
str_db << fmt::format("\t\tdb inst {}\n", db_inst->getName());
146+
str_db << "\t\tdb iterms:\n";
186147
dbSet<dbITerm> iterms = db_inst->getITerms();
187148
for (auto iterm : iterms) {
188149
dbMTerm* mterm = iterm->getMTerm();
189-
sprintf(
190-
tmp_str,
191-
"\t\t\t\t iterm: %s (%u) Net: %s Mod net : %s (%d)\n",
192-
mterm->getName().c_str(),
150+
str_db << fmt::format(
151+
"\t\t\t\t iterm: {} ({}) Net: {} Mod net : {} ({})\n",
152+
mterm->getName(),
193153
iterm->getId(),
194-
iterm->getNet() ? iterm->getNet()->getName().c_str() : "unk-dbnet",
195-
iterm->getModNet() ? iterm->getModNet()->getName().c_str()
196-
: "unk-modnet",
154+
iterm->getNet() ? iterm->getNet()->getName() : "unk-dbnet",
155+
iterm->getModNet() ? iterm->getModNet()->getName() : "unk-modnet",
197156
iterm->getModNet() ? iterm->getModNet()->getId() : -1);
198-
str_db << tmp_str;
199157
}
200158
}
201-
sprintf(tmp_str, "\t\tDb instances ---\n");
202-
str_db << tmp_str;
203-
sprintf(tmp_str, "\tModule nets (modnets) +++ \n");
204-
str_db << tmp_str;
205-
sprintf(tmp_str,
206-
"\t# mod nets %u in %s \n",
207-
cur_obj->getModNets().size(),
208-
cur_obj->getName());
209-
210-
str_db << tmp_str;
159+
str_db << "\t\tDb instances ---\n";
160+
str_db << "\tModule nets (modnets) +++ \n";
161+
str_db << fmt::format("\t# mod nets {} in {} \n",
162+
cur_obj->getModNets().size(),
163+
cur_obj->getName());
164+
211165
dbSet<dbModNet> mod_nets = cur_obj->getModNets();
212166
for (auto mod_net : mod_nets) {
213-
sprintf(tmp_str,
214-
"\t\tNet: %s (%u)\n",
215-
mod_net->getName().c_str(),
216-
mod_net->getId());
217-
str_db << tmp_str;
218-
sprintf(tmp_str,
219-
"\t\tConnections -> modIterms/modbterms/bterms/iterms:\n");
220-
str_db << tmp_str;
221-
sprintf(
222-
tmp_str, "\t\t -> %u moditerms\n", mod_net->getModITerms().size());
223-
str_db << tmp_str;
167+
str_db << fmt::format(
168+
"\t\tNet: {} ({})\n", mod_net->getName(), mod_net->getId());
169+
str_db << "\t\tConnections -> modIterms/modbterms/bterms/iterms:\n";
170+
str_db << fmt::format("\t\t -> {} moditerms\n",
171+
mod_net->getModITerms().size());
224172
for (dbModITerm* modi_term : mod_net->getModITerms()) {
225-
sprintf(tmp_str, "\t\t\t%s\n", modi_term->getName());
226-
str_db << tmp_str;
173+
str_db << fmt::format("\t\t\t{}\n", modi_term->getName());
227174
}
228-
sprintf(
229-
tmp_str, "\t\t -> %u modbterms\n", mod_net->getModBTerms().size());
230-
str_db << tmp_str;
175+
str_db << fmt::format("\t\t -> {} modbterms\n",
176+
mod_net->getModBTerms().size());
231177
for (dbModBTerm* modb_term : mod_net->getModBTerms()) {
232-
sprintf(tmp_str, "\t\t\t%s\n", modb_term->getName());
233-
str_db << tmp_str;
178+
str_db << fmt::format("\t\t\t{}\n", modb_term->getName());
234179
}
235-
sprintf(tmp_str, "\t\t -> %u iterms\n", mod_net->getITerms().size());
236-
str_db << tmp_str;
180+
str_db << fmt::format("\t\t -> {} iterms\n", mod_net->getITerms().size());
237181
for (dbITerm* db_iterm : mod_net->getITerms()) {
238-
sprintf(tmp_str, "\t\t\t%s\n", db_iterm->getName().c_str());
239-
str_db << tmp_str;
182+
str_db << fmt::format("\t\t\t{}\n", db_iterm->getName());
240183
}
241-
sprintf(tmp_str, "\t\t -> %u bterms\n", mod_net->getBTerms().size());
242-
str_db << tmp_str;
184+
str_db << fmt::format("\t\t -> {} bterms\n", mod_net->getBTerms().size());
243185
for (dbBTerm* db_bterm : mod_net->getBTerms()) {
244-
sprintf(tmp_str, "\t\t\t%s\n", db_bterm->getName().c_str());
245-
str_db << tmp_str;
186+
str_db << fmt::format("\t\t\t{}\n", db_bterm->getName());
246187
}
247188
}
248189
}

0 commit comments

Comments
 (0)