Skip to content

Sta update 0725 - #393

Merged
maliberty merged 22 commits into
The-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:sta_update_0725
Jul 27, 2026
Merged

Sta update 0725#393
maliberty merged 22 commits into
The-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:sta_update_0725

Conversation

@dsengupta0628

Copy link
Copy Markdown
Contributor

Update latest OpenSTA 7/25

akashlevy and others added 12 commits July 12, 2026 13:22
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
…le (#460)

* Use more reliable mirrors for Bison and TCL in CentOS 7 Dockerfile.

ftp.gnu.org and SourceForge prdownloads are flaky in CI; switch to
dotsrc and OSUOSL mirrors.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Use GNU ftpmirror and SourceForge project URLs.

Switch CentOS 7 Dockerfile downloads to the reviewer-suggested
ftpmirror.gnu.org redirector for Bison and the SourceForge project
download URL for TCL.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
@dsengupta0628 dsengupta0628 self-assigned this Jul 25, 2026
@CLAassistant

CLAassistant commented Jul 25, 2026

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 3 committers have signed the CLA.

✅ dsengupta0628
❌ James Cherry
❌ akashlevy


James Cherry seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request refactors the delay calculation logic by replacing the incremental_ flag with delays_exist_ and optimizing fanout propagation in GraphDelayCalc. It also introduces a Vertex::isLoad helper, adds a verbose path reporting function for debugging, and cleans up CRPR arrival pruning. Feedback was provided regarding a potential bug in loadSlewChanged where using operator[] on load_pin_index_map could unsafely insert dummy entries if a pin is not found.

Comment thread dcalc/GraphDelayCalc.cc
Comment on lines +747 to +750
if (load_slews_prev.empty())
return true;
size_t index = load_pin_index_map[load_vertex->pin()];
SlewSeq &slews_prev = load_slews_prev[index];;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

Using operator[] on load_pin_index_map directly with load_vertex->pin() is unsafe because load_vertex might be visited via non-wire edges (such as isBidirectInstPath internal timing arcs) which are not populated in load_pin_index_map. If the pin is not present in the map, operator[] will insert a dummy entry with a default value of 0, causing incorrect comparisons with the first load pin's previous slew and corrupting the map.

Instead, use find() to safely check if the pin exists in the map before retrieving its index.

  auto ip = load_pin_index_map.find(load_vertex->pin());
  if (ip == load_pin_index_map.end())
    return true;
  size_t index = ip->second;
  SlewSeq &slews_prev = load_slews_prev[index];

Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
James Cherry and others added 7 commits July 26, 2026 06:29
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
Signed-off-by: James Cherry <cherry@CerezoBook.local>
This reverts commit a7d2b22.

Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
Comment thread BUILD.bazel

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why the rename?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

macOS default filesystem is case-insensitive, so top-level file BUILD collides with CMake build/ dir - mkdir build fails / build dir creation clashes. BUILD.bazel is Bazel's equally-valid canonical name, so Bazel keeps working while build/ becomes creatable.

@maliberty
maliberty merged commit d468d14 into The-OpenROAD-Project:master Jul 27, 2026
7 of 9 checks passed
@maliberty
maliberty deleted the sta_update_0725 branch July 27, 2026 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants