Skip to content

Commit 1475ab0

Browse files
committed
upstream changes 5/14 plus fix report generic field
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
1 parent 85f3840 commit 1475ab0

7 files changed

Lines changed: 46 additions & 47 deletions

File tree

search/ReportPath.cc

Lines changed: 10 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2469,11 +2469,6 @@ ReportPath::reportPathLine(const Path *path,
24692469
std::string src_attr;
24702470
if (inst)
24712471
src_attr = network_->getAttribute(inst, "src");
2472-
std::string orig_name;
2473-
if (inst && field_orig_name_->enabled()) {
2474-
std::string port_name = network_->portName(pin);
2475-
orig_name = network_->getAttribute(inst, "orig_name_" + port_name);
2476-
}
24772472
// Don't show capacitance field for input pins.
24782473
if (is_driver && field_capacitance_->enabled())
24792474
cap = graph_delay_calc_->loadCap(pin, rf, scene, min_max);
@@ -2756,11 +2751,6 @@ ReportPath::reportPath6(const Path *path,
27562751
std::string src_attr;
27572752
if (inst)
27582753
src_attr = network_->getAttribute(inst, "src");
2759-
std::string orig_name;
2760-
if (inst && field_orig_name_->enabled()) {
2761-
std::string port_name = network_->portName(pin);
2762-
orig_name = network_->getAttribute(inst, "orig_name_" + port_name);
2763-
}
27642754
// Always show the search start point (register clk pin).
27652755
// Skip reporting the clk tree unless it is requested.
27662756
if (is_clk_start
@@ -2853,13 +2843,13 @@ ReportPath::reportPath6(const Path *path,
28532843
const std::string what = descriptionField(vertex);
28542844
reportLine(what, path1, cap, slew, fanout,
28552845
incr, field_blank_, time, false, min_max, rf, src_attr,
2856-
orig_name, line_case);
2846+
line_case);
28572847

28582848
if (report_net_) {
28592849
const std::string what2 = descriptionNet(pin);
28602850
reportLine(what2, path1, field_blank_, field_blank_, field_blank_,
28612851
field_blank_, field_blank_, field_blank_, false, min_max,
2862-
nullptr, src_attr, "", "");
2852+
nullptr, src_attr, "");
28632853
}
28642854
prev_time = time;
28652855
}
@@ -2872,7 +2862,7 @@ ReportPath::reportPath6(const Path *path,
28722862
const std::string what = descriptionField(vertex);
28732863
reportLine(what, path1, field_blank_, slew, field_blank_,
28742864
incr, field_blank_, time, false, min_max, rf, src_attr,
2875-
orig_name, line_case);
2865+
line_case);
28762866
prev_time = time;
28772867
}
28782868
}
@@ -2897,27 +2887,27 @@ ReportPath::reportVariation(const Path *path) const
28972887
float std_dev = arc_delay.stdDev();
28982888
reportLine("sigma", path, field_blank_, field_blank_, field_blank_,
28992889
field_blank_, std_dev, field_blank_, true, min_max,
2900-
nullptr, "", "", "");
2890+
nullptr, "", "");
29012891
break;
29022892
}
29032893
case PocvMode::skew_normal: {
29042894
float mean = arc_delay.mean();
29052895
reportLine("mean", path, field_blank_, field_blank_, field_blank_,
29062896
field_blank_, mean, field_blank_, true, min_max,
2907-
nullptr, "", "", "");
2897+
nullptr, "", "");
29082898
float mean_shift = arc_delay.meanShift();
29092899
reportLine("mean_shift", path, field_blank_, field_blank_, field_blank_,
29102900
field_blank_, mean_shift, field_blank_, true, min_max,
2911-
nullptr, "", "", "");
2901+
nullptr, "", "");
29122902
float std_dev = arc_delay.stdDev();
29132903
reportLine("std_dev", path, field_blank_, field_blank_, field_blank_,
29142904
field_blank_, std_dev, field_blank_, true, min_max,
2915-
nullptr, "", "", "");
2905+
nullptr, "", "");
29162906
// skewness is dimensionless, so scale it to the field's time units.
29172907
float skewness = arc_delay.skewness() * units_->timeUnit()->scale();
29182908
reportLine("skewness", path, field_blank_, field_blank_, field_blank_,
29192909
field_blank_, skewness, field_blank_, true, min_max,
2920-
nullptr, "", "", "");
2910+
nullptr, "", "");
29212911
break;
29222912
}
29232913
default:
@@ -3149,7 +3139,7 @@ ReportPath::reportLineNegative(std::string_view what,
31493139
{
31503140
reportLine(what, nullptr, field_blank_, field_blank_, field_blank_,
31513141
field_blank_, field_blank_, total, true /* tota_with_minus */,
3152-
early_late, nullptr, "", "", "");
3142+
early_late, nullptr, "", "");
31533143
}
31543144

31553145
// Report total, and transition suffix.
@@ -3211,15 +3201,14 @@ ReportPath::reportLine(std::string_view what,
32113201
const EarlyLate *early_late,
32123202
const RiseFall *rf,
32133203
std::string_view src_attr,
3214-
std::string_view orig_name,
32153204
std::string_view line_case) const
32163205
{
32173206
std::string line;
32183207
size_t field_index = 0;
32193208
bool first_field = true;
32203209
for (const ReportField *field : fields_) {
32213210
bool last_field = field_index == (fields_.size() - 1);
3222-
3211+
32233212
if (field->enabled()) {
32243213
if (!first_field)
32253214
line += ' ';
@@ -3262,12 +3251,6 @@ ReportPath::reportLine(std::string_view what,
32623251
else
32633252
reportFieldBlank(field, line);
32643253
}
3265-
else if (field == field_orig_name_) {
3266-
if (orig_name != "")
3267-
reportField(orig_name, field, line);
3268-
else
3269-
reportFieldBlank(field, line);
3270-
}
32713254
else if (field == field_case_)
32723255
line += line_case;
32733256
else if (field->getValue())

search/ReportPath.hh

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,6 @@ public:
215215
ReportField *fieldFanout() const { return field_fanout_; }
216216
ReportField *fieldCapacitance() const { return field_capacitance_; }
217217
ReportField *fieldSrcAttr() const { return field_src_attr_; }
218-
ReportField *fieldOrigName() const { return field_orig_name_; }
219218

220219
protected:
221220
void makeFields();
@@ -428,7 +427,6 @@ protected:
428427
const EarlyLate *early_late,
429428
const RiseFall *rf,
430429
std::string_view src_attr,
431-
std::string_view orig_name,
432430
std::string_view line_case) const;
433431
void reportLineTotal(std::string_view what,
434432
const Delay &incr,
@@ -548,7 +546,6 @@ protected:
548546
ReportField *field_fanout_;
549547
ReportField *field_variation_;
550548
ReportField *field_src_attr_;
551-
ReportField *field_orig_name_;
552549
ReportField *field_edge_;
553550
ReportField *field_case_;
554551

search/Search.tcl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,7 @@ define_cmd_args "report_checks" \
333333
[-sort_by_slack]\
334334
[-path_group group_name]\
335335
[-format full|full_clock|full_clock_expanded|short|end|slack_only|summary|json]\
336-
[-fields capacitance|slew|fanout|input_pin|net|src_attr|orig_name]\
336+
[-fields capacitance|slew|fanout|input_pin|net|src_attr]\
337337
[-digits digits]\
338338
[-no_line_splits]\
339339
[> filename] [>> filename]}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Shared report-path field name constants used by the OpenSTA gtest suites.
2+
3+
#pragma once
4+
5+
#include "sta/StringUtil.hh"
6+
7+
namespace sta {
8+
9+
inline const StringSeq kAllReportFields = {
10+
"input_pin", "hierarchical_pin", "net", "capacitance",
11+
"slew", "fanout", "variation", "src_attr"};
12+
13+
} // namespace sta

search/test/cpp/TestSearchStaDesign.cc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
#include <tcl.h>
66
#include <unistd.h>
77
#include "MinMax.hh"
8+
#include "TestReportFields.hh"
89
#include "Transition.hh"
910
#include "Property.hh"
1011
#include "ExceptionPath.hh"
@@ -1874,7 +1875,7 @@ TEST_F(StaDesignTest, SearchReportClkInfos) {
18741875

18751876
TEST_F(StaDesignTest, SetReportPathFields) {
18761877
ASSERT_NO_THROW(( [&](){
1877-
sta_->setReportPathFields(true, true, true, true, true, true, true, true, true);
1878+
sta_->setReportPathFields(kAllReportFields);
18781879

18791880
}() ));
18801881
}
@@ -3625,7 +3626,7 @@ TEST_F(StaDesignTest, ReportPathFieldOrder) {
36253626

36263627
TEST_F(StaDesignTest, ReportPathFields) {
36273628
ASSERT_NO_THROW(( [&](){
3628-
sta_->setReportPathFields(true, true, true, true, true, true, true, true, true);
3629+
sta_->setReportPathFields(kAllReportFields);
36293630

36303631
}() ));
36313632
}

search/test/cpp/TestSearchStaInit.cc

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include <type_traits>
33
#include <tcl.h>
44
#include "MinMax.hh"
5+
#include "TestReportFields.hh"
56
#include "Transition.hh"
67
#include "Property.hh"
78
#include "ExceptionPath.hh"
@@ -433,13 +434,13 @@ TEST_F(StaInitTest, SetReportPathFields) {
433434
ASSERT_NE(fanout_field, nullptr);
434435
ASSERT_NE(src_attr_field, nullptr);
435436

436-
sta_->setReportPathFields(true, true, true, true, true, true, true, true, true);
437+
sta_->setReportPathFields(kAllReportFields);
437438
EXPECT_TRUE(cap_field->enabled());
438439
EXPECT_TRUE(slew_field->enabled());
439440
EXPECT_TRUE(fanout_field->enabled());
440441
EXPECT_TRUE(src_attr_field->enabled());
441442

442-
sta_->setReportPathFields(false, false, false, false, false, false, false, false, false);
443+
sta_->setReportPathFields(StringSeq{});
443444
EXPECT_FALSE(cap_field->enabled());
444445
EXPECT_FALSE(slew_field->enabled());
445446
EXPECT_FALSE(fanout_field->enabled());
@@ -1613,8 +1614,8 @@ TEST_F(StaInitTest, ReportPathNoSplit) {
16131614

16141615
TEST_F(StaInitTest, ReportPathSetReportFields) {
16151616
ReportPath *rpt = sta_->reportPath();
1616-
rpt->setReportFields(true, true, true, true, true, true, true, true, true);
1617-
rpt->setReportFields(false, false, false, false, false, false, false, false, false);
1617+
rpt->setReportFields(kAllReportFields);
1618+
rpt->setReportFields(StringSeq{});
16181619

16191620
}
16201621

@@ -3706,7 +3707,9 @@ TEST_F(StaInitTest, LogicValueStringOne) {
37063707

37073708
// --- ReportPath.cc: ReportField constructor and setEnabled ---
37083709
TEST_F(StaInitTest, ReportFieldConstruct) {
3709-
ReportField rf("test_field", "Test Field", 10, false, nullptr, true);
3710+
ReportField rf("test_field", "test_field", "Test Field", 10, false, nullptr,
3711+
nullptr);
3712+
rf.setEnabled(true);
37103713
EXPECT_EQ(rf.name(), "test_field");
37113714
EXPECT_EQ(rf.title(), "Test Field");
37123715
EXPECT_EQ(rf.width(), 10);
@@ -3716,7 +3719,8 @@ TEST_F(StaInitTest, ReportFieldConstruct) {
37163719
}
37173720

37183721
TEST_F(StaInitTest, ReportFieldSetEnabled) {
3719-
ReportField rf("f1", "F1", 8, true, nullptr, true);
3722+
ReportField rf("f1", "f1", "F1", 8, true, nullptr, nullptr);
3723+
rf.setEnabled(true);
37203724
EXPECT_TRUE(rf.enabled());
37213725
rf.setEnabled(false);
37223726
EXPECT_FALSE(rf.enabled());
@@ -3725,22 +3729,22 @@ TEST_F(StaInitTest, ReportFieldSetEnabled) {
37253729
}
37263730

37273731
TEST_F(StaInitTest, ReportFieldSetWidth) {
3728-
ReportField rf("f2", "F2", 5, false, nullptr, true);
3732+
ReportField rf("f2", "f2", "F2", 5, false, nullptr, nullptr);
37293733
EXPECT_EQ(rf.width(), 5);
37303734
rf.setWidth(12);
37313735
EXPECT_EQ(rf.width(), 12);
37323736
}
37333737

37343738
TEST_F(StaInitTest, ReportFieldSetProperties) {
3735-
ReportField rf("f3", "F3", 5, false, nullptr, true);
3739+
ReportField rf("f3", "f3", "F3", 5, false, nullptr, nullptr);
37363740
rf.setProperties("New Title", 20, true);
37373741
EXPECT_EQ(rf.title(), "New Title");
37383742
EXPECT_EQ(rf.width(), 20);
37393743
EXPECT_TRUE(rf.leftJustify());
37403744
}
37413745

37423746
TEST_F(StaInitTest, ReportFieldBlank) {
3743-
ReportField rf("f4", "F4", 3, false, nullptr, true);
3747+
ReportField rf("f4", "f4", "F4", 3, false, nullptr, nullptr);
37443748
const std::string &blank = rf.blank();
37453749
EXPECT_FALSE(blank.empty());
37463750
}

search/test/cpp/TestSearchStaInitB.cc

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include <type_traits>
33
#include <tcl.h>
44
#include "MinMax.hh"
5+
#include "TestReportFields.hh"
56
#include "Transition.hh"
67
#include "Property.hh"
78
#include "ExceptionPath.hh"
@@ -224,7 +225,7 @@ TEST_F(StaInitTest, StaReportPathEndFooter2) {
224225

225226
TEST_F(StaInitTest, StaSetReportPathFields) {
226227
ASSERT_NO_THROW(( [&](){
227-
sta_->setReportPathFields(true, true, true, true, true, true, true, true, true);
228+
sta_->setReportPathFields(kAllReportFields);
228229
}() ));
229230
}
230231

@@ -1724,8 +1725,8 @@ TEST_F(StaInitTest, SearchClassConstants2) {
17241725
TEST_F(StaInitTest, ReportPathSetReportFields2) {
17251726
ASSERT_NO_THROW(( [&](){
17261727
ReportPath *rpt = sta_->reportPath();
1727-
rpt->setReportFields(true, true, true, true, true, true, true, true, true);
1728-
rpt->setReportFields(false, false, false, false, false, false, false, false, false);
1728+
rpt->setReportFields(kAllReportFields);
1729+
rpt->setReportFields(StringSeq{});
17291730
}() ));
17301731
}
17311732

@@ -1909,8 +1910,8 @@ TEST_F(StaInitTest, ReportPathSetReportFieldsPublic) {
19091910
ASSERT_NO_THROW(( [&](){
19101911
ReportPath *rpt = sta_->reportPath();
19111912
// Call setReportFields with various combinations
1912-
rpt->setReportFields(true, false, false, false, true, false, false, false, false);
1913-
rpt->setReportFields(true, true, true, true, true, true, true, true, true);
1913+
rpt->setReportFields(StringSeq{"input_pin", "slew"});
1914+
rpt->setReportFields(kAllReportFields);
19141915
expectStaCoreState(sta_);
19151916
}() ));
19161917
}

0 commit comments

Comments
 (0)