-
Notifications
You must be signed in to change notification settings - Fork 595
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DRT integration with GRT include issue #6532
Comments
@maliberty eder mentioned that you might have some ideas on how to tackle this. |
What are the issues you are facing? |
I tried the above and it looks like a simple linking issue. I've got a PR coming. |
Fixes The-OpenROAD-Project#6532 Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
@maliberty I merged your PR but seems like the issue still persists. I can make a separate "PR" just with the code changes needed to reproduce my problem. Whenever I get to
|
Please make a small reproducer on a branch or PR |
I have the branch here, it uses a dummy function to call drt |
On your branch I can build openroad (I had to comment out the declared but undefined deletePinAccess). The problem in test executables is that refer to drt (through grt) and it is not clean. The main problem is that a number of places do Also this module need the split between drt and drt_lib that you see in most other modules. @QuantamHD made that change in many other places and can give guidance. grt should only depend on drt_lib once it exists. |
Largely the thing you need to do is decouple the openroad singleton from drt What that boils down to in practice is a bunch of calls to the gui https://github.com/The-OpenROAD-Project/OpenROAD/blob/master/src/rsz/src/MakeResizer.cc#L64-L82 You also need to seperate the MakeResizer and swig libraries from drt target into drt_lib which should contain most of the drt code, and the drt which should include drt_lib to the MakeDrt.cc + any other openroad app specific junk |
Description
For #5867 to be possible, it is essential for the GRT to have access to the DRT interface. During the attempts to make all the includes to allow for this to happen many issues arose. @eder-matheus mentioned that there have been previous attempts to implement this integration which lead to the same problems. The goal is, in any function of GlobalRouter.cpp, to be able to call drt_->anyPublicFunction().
Main Attempted Changes Diff:
drt/CMakeLists.txt:
GlobalRouter.cpp:
Suggested Solution
No response
Additional Context
No response
The text was updated successfully, but these errors were encountered: