dbSta: check LEF Liberty pin directions#10820
Conversation
|
Warning Gemini encountered an error creating the review. You can try again by commenting |
795f3df to
c773456
Compare
Why? You are assuming all unmatched ports are non-signal but what if they are not? |
|
Good point. The direction checker should not treat a missing Liberty port as non-signal by itself. I kept this PR scoped to LEF/LIB-CHK-011: once a matching Liberty pin exists, compare LEF and Liberty directions. The missing-LEF-signal-pin case is covered separately in #10821 as LEF/LIB-CHK-012, where LEF supply pins are skipped but LEF signal pins missing from the Liberty cell are warned. So the intended order is #10821 first, then this PR; I can fold #10821 into this branch if you prefer a single combined check. |
c773456 to
fe6aff5
Compare
Signed-off-by: Naveen Venkat <archgen.guest@nyayanidhi.in>
|
Updated this branch on top of current upstream/master to refresh the stale lock/check context, and changed the direction-mismatch diagnostic ID from CHK-120 to CHK-111 so it does not collide with the missing-Liberty-cell/pin diagnostics in #10821. On the unmatched-port question: this PR now remains scoped to direction comparison only when both LEF and Liberty pins exist; #10821 handles missing Liberty cells/pins as LEF/LIB-CHK-012. Once #10821 lands, this check composes with it instead of treating missing ports as non-signal. Verified on the VM only:
All 75 dbSta test targets passed. |
fe6aff5 to
6e9dc8c
Compare
|
I find it harder to read when you split checkLibertyPinPresence and checkLibertyPinDirections with one relying on the invariants of the other. It would be easier to read with the checks combined rather than having to recheck existance and silently skip in a separate check. |
Summary
LEF/LIB-CHK-011to compare non-supply LEF pin directions with matching Liberty port directionsRelated to #4872.
Tests
git diff --checkbazelisk build --jobs=4 --local_cpu_resources=4 //src/dbSta:IpCheckerbazelisk test --jobs=4 --local_cpu_resources=4 //src/dbSta/test:check_ip_liberty_direction-tcl_teston the Ubuntu 22.04 GCP VM fails before test execution while linkingopenroadwith unresolved__isoc23_*glibc symbols from the Bazel LLVM/sysroot toolchain.