Skip to content

Commit 7e0fce8

Browse files
authored
Merge pull request The-OpenROAD-Project#6608 from The-OpenROAD-Project-staging/drt-gui-revert
Revert "Merge pull request The-OpenROAD-Project#6550 from bnmfw/drt_linker"
2 parents c4ec647 + 324ad91 commit 7e0fce8

29 files changed

+238
-501
lines changed

src/dpl/CMakeLists.txt

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,6 @@ include("openroad")
4040
find_package(TCL)
4141
find_package(Boost)
4242

43-
swig_lib(NAME dpl
44-
NAMESPACE dpl
45-
I_FILE src/Opendp.i
46-
SCRIPTS src/Opendp.tcl
47-
)
48-
4943
add_library(dpl_lib
5044
src/Opendp.cpp
5145
src/dbToOpendp.cpp
@@ -67,11 +61,18 @@ target_link_libraries(dpl_lib
6761
utl_lib
6862
)
6963

64+
7065
target_include_directories(dpl_lib
7166
PUBLIC
7267
include
7368
)
7469

70+
swig_lib(NAME dpl
71+
NAMESPACE dpl
72+
I_FILE src/Opendp.i
73+
SCRIPTS src/Opendp.tcl
74+
)
75+
7576
target_sources(dpl
7677
PRIVATE
7778
src/MakeOpendp.cpp
@@ -89,7 +90,9 @@ target_include_directories(dpl
8990
target_link_libraries(dpl
9091
PRIVATE
9192
${TCL_LIBRARY}
93+
odb
9294
dpl_lib
95+
OpenSTA
9396
gui
9497
)
9598

src/drt/CMakeLists.txt

Lines changed: 83 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -50,117 +50,92 @@ find_package(Boost REQUIRED COMPONENTS serialization)
5050
find_package(OpenMP REQUIRED)
5151
find_package(VTune)
5252

53-
set(FLEXROUTE_HOME ${PROJECT_SOURCE_DIR})
54-
5553
swig_lib(NAME drt
5654
NAMESPACE drt
5755
I_FILE src/TritonRoute.i
5856
SCRIPTS src/TritonRoute.tcl
5957
)
6058

61-
add_library(drt_lib
62-
src/gr/FlexGRCMap.cpp
63-
src/gr/FlexGR.cpp
64-
src/gr/FlexGR_end.cpp
65-
src/gr/FlexGRGridGraph.cpp
66-
src/gr/FlexGRGridGraph_maze.cpp
67-
src/gr/FlexGR_init.cpp
68-
src/gr/FlexGR_maze.cpp
69-
src/gr/FlexGR_rq.cpp
70-
src/gr/FlexGR_topo.cpp
71-
src/dr/FlexDR_conn.cpp
72-
src/dr/FlexDR_init.cpp
73-
src/dr/FlexDR.cpp
74-
src/db/drObj/drNet.cpp
75-
src/dr/FlexDR_maze.cpp
76-
src/dr/FlexGridGraph_maze.cpp
77-
src/dr/FlexGridGraph.cpp
78-
src/dr/FlexDR_rq.cpp
79-
src/dr/FlexDR_end.cpp
80-
src/ta/FlexTA_end.cpp
81-
src/ta/FlexTA_init.cpp
82-
src/ta/FlexTA_rq.cpp
83-
src/ta/FlexTA_assign.cpp
84-
src/ta/FlexTA.cpp
85-
src/global.cpp
86-
src/gc/FlexGC_end.cpp
87-
src/gc/FlexGC_rq.cpp
88-
src/gc/FlexGC.cpp
89-
src/gc/FlexGC_init.cpp
90-
src/gc/FlexGC_main.cpp
91-
src/gc/FlexGC_eol.cpp
92-
src/gc/FlexGC_inf.cpp
93-
src/gc/FlexGC_cut.cpp
94-
src/gc/FlexGC_metspc.cpp
95-
src/db/drObj/drAccessPattern.cpp
96-
src/db/drObj/drPin.cpp
97-
src/db/drObj/drShape.cpp
98-
src/db/drObj/drVia.cpp
99-
src/db/infra/frTime_helper.cpp
100-
src/db/infra/frTime.cpp
101-
src/db/infra/KDTree.cpp
102-
src/db/taObj/taShape.cpp
103-
src/db/obj/frShape.cpp
104-
src/db/obj/frInst.cpp
105-
src/db/obj/frVia.cpp
106-
src/db/obj/frAccess.cpp
107-
src/db/obj/frRPin.cpp
108-
src/db/obj/frNode.cpp
109-
src/db/obj/frInstTerm.cpp
110-
src/db/obj/frNet.cpp
111-
src/db/tech/frConstraint.cc
112-
src/db/obj/frMarker.cpp
113-
src/db/tech/frLayer.cc
114-
src/frRegionQuery.cpp
115-
src/io/io_pin.cpp
116-
src/io/io.cpp
117-
src/io/GuideProcessor.cpp
118-
src/io/io_parser_helper.cpp
119-
src/pa/FlexPA_init.cpp
120-
src/pa/FlexPA.cpp
121-
src/pa/FlexPA_acc_point.cpp
122-
src/pa/FlexPA_acc_pattern.cpp
123-
src/pa/FlexPA_row_pattern.cpp
124-
src/pa/FlexPA_unique.cpp
125-
src/rp/FlexRP_init.cpp
126-
src/rp/FlexRP.cpp
127-
src/rp/FlexRP_prep.cpp
128-
src/distributed/frArchive.cpp
129-
src/distributed/drUpdate.cpp
130-
src/distributed/paUpdate.cpp
131-
src/TritonRoute.cpp
132-
src/frBaseTypes.cpp
133-
src/DesignCallBack.cpp
134-
)
135-
136-
target_include_directories(drt_lib
137-
PUBLIC
138-
include
139-
140-
PRIVATE
141-
src
142-
)
143-
144-
target_link_libraries(drt_lib
145-
PUBLIC
146-
odb
147-
stt
148-
OpenSTA
149-
utl_lib
150-
dst
151-
dbSta
152-
Threads::Threads
153-
OpenMP::OpenMP_CXX
154-
${Boost_LIBRARIES}
155-
ZLIB::ZLIB
156-
)
59+
set(FLEXROUTE_HOME ${PROJECT_SOURCE_DIR})
15760

15861
target_sources(drt
15962
PRIVATE
63+
src/gr/FlexGRCMap.cpp
64+
src/gr/FlexGR.cpp
65+
src/gr/FlexGR_end.cpp
66+
src/gr/FlexGRGridGraph.cpp
67+
src/gr/FlexGRGridGraph_maze.cpp
68+
src/gr/FlexGR_init.cpp
69+
src/gr/FlexGR_maze.cpp
70+
src/gr/FlexGR_rq.cpp
71+
src/gr/FlexGR_topo.cpp
72+
src/dr/FlexDR_conn.cpp
73+
src/dr/FlexDR_init.cpp
74+
src/dr/FlexDR.cpp
75+
src/db/drObj/drNet.cpp
76+
src/dr/FlexDR_maze.cpp
77+
src/dr/FlexGridGraph_maze.cpp
78+
src/dr/FlexGridGraph.cpp
79+
src/dr/FlexDR_rq.cpp
80+
src/dr/FlexDR_end.cpp
16081
src/dr/FlexDR_graphics.cpp
82+
src/ta/FlexTA_end.cpp
83+
src/ta/FlexTA_init.cpp
84+
src/ta/FlexTA_rq.cpp
85+
src/ta/FlexTA_assign.cpp
86+
src/ta/FlexTA.cpp
16187
src/ta/FlexTA_graphics.cpp
88+
src/global.cpp
89+
src/gc/FlexGC_end.cpp
90+
src/gc/FlexGC_rq.cpp
91+
src/gc/FlexGC.cpp
92+
src/gc/FlexGC_init.cpp
93+
src/gc/FlexGC_main.cpp
94+
src/gc/FlexGC_eol.cpp
95+
src/gc/FlexGC_inf.cpp
96+
src/gc/FlexGC_cut.cpp
97+
src/gc/FlexGC_metspc.cpp
98+
src/db/drObj/drAccessPattern.cpp
99+
src/db/drObj/drPin.cpp
100+
src/db/drObj/drShape.cpp
101+
src/db/drObj/drVia.cpp
102+
src/db/infra/frTime_helper.cpp
103+
src/db/infra/frTime.cpp
104+
src/db/infra/KDTree.cpp
105+
src/db/taObj/taShape.cpp
106+
src/db/obj/frShape.cpp
107+
src/db/obj/frInst.cpp
108+
src/db/obj/frVia.cpp
109+
src/db/obj/frAccess.cpp
110+
src/db/obj/frRPin.cpp
111+
src/db/obj/frNode.cpp
112+
src/db/obj/frInstTerm.cpp
113+
src/db/obj/frNet.cpp
114+
src/db/tech/frConstraint.cc
115+
src/db/obj/frMarker.cpp
116+
src/db/tech/frLayer.cc
117+
src/frRegionQuery.cpp
118+
src/io/io_pin.cpp
119+
src/io/io.cpp
120+
src/io/GuideProcessor.cpp
121+
src/io/io_parser_helper.cpp
122+
src/pa/FlexPA_init.cpp
123+
src/pa/FlexPA.cpp
124+
src/pa/FlexPA_acc_point.cpp
125+
src/pa/FlexPA_acc_pattern.cpp
126+
src/pa/FlexPA_row_pattern.cpp
127+
src/pa/FlexPA_unique.cpp
162128
src/pa/FlexPA_graphics.cpp
129+
src/rp/FlexRP_init.cpp
130+
src/rp/FlexRP.cpp
131+
src/rp/FlexRP_prep.cpp
132+
src/distributed/frArchive.cpp
133+
src/distributed/drUpdate.cpp
134+
src/distributed/paUpdate.cpp
135+
src/TritonRoute.cpp
163136
src/MakeTritonRoute.cpp
137+
src/frBaseTypes.cpp
138+
src/DesignCallBack.cpp
164139
)
165140

166141
target_include_directories(drt
@@ -173,8 +148,17 @@ target_include_directories(drt
173148

174149
target_link_libraries(drt
175150
PUBLIC
176-
drt_lib
177151
gui
152+
odb
153+
stt
154+
OpenSTA
155+
utl_lib
156+
dst
157+
dbSta
158+
Threads::Threads
159+
OpenMP::OpenMP_CXX
160+
${Boost_LIBRARIES}
161+
ZLIB::ZLIB
178162
)
179163

180164
messages(

src/drt/include/triton_route/TritonRoute.h

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -69,17 +69,13 @@ namespace drt {
6969
class frDesign;
7070
class DesignCallBack;
7171
class FlexDR;
72-
class FlexPA;
73-
class FlexTA;
7472
class FlexDRWorker;
7573
class drUpdate;
7674
struct frDebugSettings;
75+
class FlexDR;
7776
struct FlexDRViaData;
7877
class frMarker;
7978
struct RouterConfiguration;
80-
class AbstractPAGraphics;
81-
class AbstractTAGraphics;
82-
class AbstractDRGraphics;
8379

8480
struct ParamStruct
8581
{
@@ -111,16 +107,13 @@ class TritonRoute
111107
public:
112108
TritonRoute();
113109
~TritonRoute();
114-
void init(odb::dbDatabase* db,
110+
void init(Tcl_Interp* tcl_interp,
111+
odb::dbDatabase* db,
115112
utl::Logger* logger,
116113
dst::Distributed* dist,
117-
stt::SteinerTreeBuilder* stt_builder,
118-
std::unique_ptr<AbstractDRGraphics> dr_graphics,
119-
std::unique_ptr<AbstractPAGraphics> pa_graphics,
120-
std::unique_ptr<AbstractTAGraphics> ta_graphics);
114+
stt::SteinerTreeBuilder* stt_builder);
121115

122116
frDesign* getDesign() const { return design_.get(); }
123-
utl::Logger* getLogger() const { return logger_; }
124117
RouterConfiguration* getRouterConfiguration() const
125118
{
126119
return router_cfg_.get();
@@ -228,10 +221,6 @@ class TritonRoute
228221
int results_sz_{0};
229222
unsigned int cloud_sz_{0};
230223
std::optional<boost::asio::thread_pool> dist_pool_;
231-
std::unique_ptr<FlexPA> pa_{nullptr};
232-
std::unique_ptr<AbstractDRGraphics> dr_graphics_{nullptr};
233-
std::unique_ptr<AbstractPAGraphics> pa_graphics_{nullptr};
234-
std::unique_ptr<AbstractTAGraphics> ta_graphics_{nullptr};
235224

236225
void initDesign();
237226
void gr();

src/drt/src/MakeTritonRoute.cpp

Lines changed: 5 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -33,22 +33,9 @@
3333

3434
#include "triton_route/MakeTritonRoute.h"
3535

36-
#include "dr/FlexDR_graphics.h"
3736
#include "ord/OpenRoad.hh"
38-
#include "pa/FlexPA_graphics.h"
39-
#include "sta/StaMain.hh"
40-
#include "ta/FlexTA_graphics.h"
4137
#include "triton_route/TritonRoute.h"
4238

43-
namespace sta {
44-
// Tcl files encoded into strings.
45-
extern const char* drt_tcl_inits[];
46-
} // namespace sta
47-
48-
extern "C" {
49-
extern int Drt_Init(Tcl_Interp* interp);
50-
}
51-
5239
namespace ord {
5340

5441
drt::TritonRoute* makeTritonRoute()
@@ -63,41 +50,11 @@ void deleteTritonRoute(drt::TritonRoute* router)
6350

6451
void initTritonRoute(OpenRoad* openroad)
6552
{
66-
// Define swig TCL commands.
67-
auto tcl_interp = openroad->tclInterp();
68-
Drt_Init(tcl_interp);
69-
sta::evalTclInit(tcl_interp, sta::drt_tcl_inits);
70-
71-
drt::TritonRoute* router = openroad->getTritonRoute();
72-
std::unique_ptr<drt::FlexDRGraphics> dr_graphics = nullptr;
73-
std::unique_ptr<drt::FlexPAGraphics> pa_graphics = nullptr;
74-
std::unique_ptr<drt::FlexTAGraphics> ta_graphics = nullptr;
75-
76-
if (drt::FlexDRGraphics::guiActive()) {
77-
dr_graphics
78-
= std::make_unique<drt::FlexDRGraphics>(router->getDebugSettings(),
79-
router->getDesign(),
80-
router->getDb(),
81-
router->getLogger());
82-
83-
pa_graphics = std::make_unique<drt::FlexPAGraphics>(
84-
router->getDebugSettings(),
85-
router->getDesign(),
86-
router->getDb(),
87-
router->getLogger(),
88-
router->getRouterConfiguration());
89-
90-
ta_graphics = std::make_unique<drt::FlexTAGraphics>(
91-
router->getDebugSettings(), router->getDesign(), router->getDb());
92-
}
93-
94-
router->init(openroad->getDb(),
95-
openroad->getLogger(),
96-
openroad->getDistributed(),
97-
openroad->getSteinerTreeBuilder(),
98-
std::move(dr_graphics),
99-
std::move(pa_graphics),
100-
std::move(ta_graphics));
53+
openroad->getTritonRoute()->init(openroad->tclInterp(),
54+
openroad->getDb(),
55+
openroad->getLogger(),
56+
openroad->getDistributed(),
57+
openroad->getSteinerTreeBuilder());
10158
}
10259

10360
} // namespace ord

src/drt/src/TritonRoute-py.i

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,6 @@
3333
//
3434
///////////////////////////////////////////////////////////////////////////////
3535

36-
%ignore drt::TritonRoute::init;
37-
3836
%{
3937

4038
#include "ord/OpenRoad.hh"
@@ -44,4 +42,4 @@
4442

4543
%include <std_string.i>
4644
%include "../../Exception-py.i"
47-
%include "triton_route/TritonRoute.h"
45+
%include "triton_route/TritonRoute.h"

0 commit comments

Comments
 (0)