Skip to content

psm: implement the missing checkShort - #11296

Open
gadfort wants to merge 4 commits into
The-OpenROAD-Project:masterfrom
gadfort:psm-shorts
Open

psm: implement the missing checkShort#11296
gadfort wants to merge 4 commits into
The-OpenROAD-Project:masterfrom
gadfort:psm-shorts

Conversation

@gadfort

@gadfort gadfort commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Summary

It was clear that providing short information along with open in #10955 was needed.
This implements the missing stub. This should be checked carefully as any flows that call check_power_grid will be impacted if there are false positives.

One possibility would be to make this opt-in?

Type of Change

  • New feature
  • Breaking change

Impact

Will now flag if the power grid is shorting to something.

Verification

  • I have verified that the local build succeeds (./etc/Build.sh).
  • I have run the relevant tests and they pass.
  • My code follows the repository's formatting guidelines.
  • I have included tests to prevent regressions.
  • I have signed my commits (DCO).

Signed-off-by: Peter Gadfort <gadfort@zeroasic.com>
@gadfort
gadfort requested a review from a team as a code owner September 1, 2026 18:47
@gadfort
gadfort requested a review from maliberty September 1, 2026 18:47

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

Copy link
Copy Markdown
Contributor

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 implements a comprehensive short-checking mechanism in the Power Source Manager (psm) tool by introducing the IRShort class hierarchy and integrating it into IRSolver using Boost geometry R-trees. The feedback highlights several critical safety and code quality improvements, such as adding null checks for nets, instances, and marker categories to prevent potential crashes, explicitly including <fmt/format.h> and to ensure self-contained headers, and using prefix increments on Boost query iterators to optimize performance.

Comment thread src/psm/src/ir_short.cpp
Comment thread src/psm/src/ir_short.cpp
Comment thread src/psm/src/ir_short.cpp
Comment thread src/psm/src/ir_short.cpp
Comment thread src/psm/src/ir_short.cpp
Comment thread src/psm/src/ir_solver.h
Comment thread src/psm/src/ir_solver.cpp
Comment thread src/psm/src/ir_solver.cpp
Signed-off-by: Peter Gadfort <gadfort@zeroasic.com>
Signed-off-by: Peter Gadfort <gadfort@zeroasic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants