Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2544 commits
Select commit Hold shift + click to select a range
5af215f
Merge branch 'master' of https://github.com/The-OpenROAD-Project/Open…
eder-matheus Jul 28, 2026
260b686
Merge branch 'master' into 3dic-sta-track-a
dsengupta0628 Jul 28, 2026
2b485cf
grt: key CUGR access-point selection by cell and pin index
eder-matheus Jul 28, 2026
16ac286
grt: name the CUGR fallback pin list instead of calling in the loop h…
eder-matheus Jul 28, 2026
31dbd83
Make private headers visible to cts unittest
hzeller Jul 28, 2026
166d8f4
address codex reviews
dsengupta0628 Jul 28, 2026
0148d19
Merge pull request #11012 from hzeller/feature-20260728-layering-cts
maliberty Jul 29, 2026
01c6eb5
Merge pull request #10976 from The-OpenROAD-Project-staging/odb-3d-pa…
maliberty Jul 29, 2026
3755f89
Merge pull request #11006 from eder-matheus/grt_cugr_fix_missing_guides
eder-matheus Jul 29, 2026
e250332
Tell agents not the check DCO to avoid false positives.
maliberty Jul 29, 2026
22ef866
grt: update soft-NDR regression tests
jfgava Jul 29, 2026
a0d8b64
Merge branch 'master' of github.com:The-OpenROAD-Project-private/Open…
jfgava Jul 29, 2026
6f76dd1
test: update ibex sky130hs metrics
jfgava Jul 29, 2026
8ddd009
grt: fastroute: Improve GRT-0183 message
dnltz Jul 29, 2026
adc93b9
Update AGENTS.md
maliberty Jul 29, 2026
c1606d3
Merge pull request #11018 from The-OpenROAD-Project-staging/no-dco-in…
maliberty Jul 29, 2026
810018d
latest set of codex reveiws addressed, and create a new skill to do c…
dsengupta0628 Jul 29, 2026
cb06a15
buildifier and tclfmt pass
dsengupta0628 Jul 29, 2026
34075db
Merge pull request #11020 from dnltz/WIP/dnltz/grt-update-0183-error
eder-matheus Jul 29, 2026
9500e60
Merge branch 'master' into 3dic-sta-track-a
dsengupta0628 Jul 29, 2026
2420d72
grt: fix implicit signed/unsigned conversion
jfgava Jul 29, 2026
62d70da
grt/cugr: factor via flank-edge enumeration into a shared GridGraph h…
eder-matheus Jul 29, 2026
56e3740
grt/cugr: add CUGR congestion report with wire/via demand split, repl…
eder-matheus Jul 29, 2026
d379ff0
Merge branch 'master' into rsz_funcs_dfs
dsengupta0628 Jul 29, 2026
d4fb454
grt: implement CUGR net merge mirroring FastRoute path
sparsh-karna Jul 13, 2026
3c0bfcc
grt: add early return check for empty routes in CUGR net merge
sparsh-karna Jul 13, 2026
ad03032
grt: preserve connection geometry in CUGR tree on merge
sparsh-karna Jul 13, 2026
571fbb3
grt: run clang-format to fix format check violations
sparsh-karna Jul 13, 2026
a52c069
grt: merge connectCUGRRouting into connectRouting to avoid duplication
sparsh-karna Jul 15, 2026
47aef09
grt: unify net merge logic between FastRoute and CUGR
sparsh-karna Jul 15, 2026
b7be199
grt: error on invalid layer index in CUGR hasAvailableResources
sparsh-karna Jul 15, 2026
49a95a3
grt: fix snake_case variable names in CUGR::mergeNet
sparsh-karna Jul 15, 2026
ac8f298
grt: move CUGR mergeNet call into connectRouting
sparsh-karna Jul 22, 2026
ae3f50c
grt: apply merged net flags to both paths
sparsh-karna Jul 22, 2026
adc80bc
grt: unify fallback dirty net logic for mergeNetsRouting
sparsh-karna Jul 22, 2026
7ae36e4
grt: add remove_buffers integration tests for CUGR path
sparsh-karna Jul 22, 2026
b2551be
grt: regolden remove_buffers2_cugr segs after CUGR rebase
sparsh-karna Jul 23, 2026
978bc9b
grt: add remove_buffers3 integration test for CUGR path
sparsh-karna Jul 23, 2026
d0b2656
grt: call mergeNet in same-gcell CUGR branch to fix congestion accoun…
sparsh-karna Jul 24, 2026
0da97d6
grt: commit CUGR grid demand for stitched connection segments
sparsh-karna Jul 24, 2026
e560fce
grt: check CUGR capacity against net NDR demand in hasAvailableResources
sparsh-karna Jul 24, 2026
e6d35d6
Fix GRT-1252 by properly building CUGR merge connection tree via DFS
sparsh-karna Jul 24, 2026
b152526
Address code review: fix CUGR.h comments and refactor GlobalRouter.cp…
sparsh-karna Jul 29, 2026
20b19e4
add bazel test to build
dsengupta0628 Jul 29, 2026
a6fee22
fix the regression
dsengupta0628 Jul 29, 2026
ab7510d
tap: update README
joaomai Jul 29, 2026
2442181
odb: always report if cutRows tries to remove a row that contains a p…
joaomai Jul 29, 2026
5f65d78
grt: unify CUGR route export and fix dropped local-net guides
eder-matheus Jul 29, 2026
52d2e76
grt: enable antenna checking on CUGR guides
eder-matheus Jul 29, 2026
27a24da
grt: warn and skip repair_antennas with CUGR
eder-matheus Jul 29, 2026
4d255dd
grt: add CUGR antenna checking tests
eder-matheus Jul 29, 2026
014fa63
grt: simplify guide pin binding and CUGR antenna test
eder-matheus Jul 29, 2026
32622a2
Use bant `-c` feature to select column.
hzeller Jul 29, 2026
7dc6acf
chiplets in a 3dic stack cant use different techs per database contra…
dsengupta0628 Jul 30, 2026
d026a99
grt/cugr: report fractional congestion totals in CUGR routing statistics
eder-matheus Jul 30, 2026
df4bf49
Merge pull request #11029 from hzeller/feature-20260730-bant-column
eder-matheus Jul 30, 2026
6119a66
update sta ptr to 7/29
dsengupta0628 Jul 30, 2026
09ad647
grt/cugr: add bounds guards to via flank-edge enumeration and sub-min…
eder-matheus Jul 30, 2026
8409aad
fix bazel build issue
dsengupta0628 Jul 30, 2026
eaaa6e3
Merge pull request #10999 from hzeller/feature-20260727-fix-inc
maliberty Jul 30, 2026
0a14a0a
Merge remote-tracking branch 'origin/master' into grt_cugr_congestion…
eder-matheus Jul 30, 2026
3600e40
Merge branch 'master' of https://github.com/The-OpenROAD-Project/Open…
eder-matheus Jul 30, 2026
77de4c9
Merge pull request #10862 from The-OpenROAD-Project-staging/rsz_funcs…
maliberty Jul 30, 2026
5cda76e
rcx: add multi-chip extraction pass skeleton
AcKoucher Jul 30, 2026
f7653d0
Merge pull request #11030 from eder-matheus/grt_cugr_congestion_report
eder-matheus Jul 30, 2026
e827341
rcx: pass value by reference rather than copy
AcKoucher Jul 30, 2026
2bc4401
tap: fix overlapping endcap cells at macro boundary jogs
eder-matheus Jul 30, 2026
23e7245
tap: add abutting_macros_step regression tests for boundary jog overlaps
eder-matheus Jul 30, 2026
1531e07
Merge branch 'master' of https://github.com/The-OpenROAD-Project/Open…
eder-matheus Jul 30, 2026
53c601f
tap: shorten endcap placement comments
eder-matheus Jul 30, 2026
736d2b4
tap: check occupied row spans without allocating in placeEndcapEdgeVe…
eder-matheus Jul 30, 2026
8a31e04
tap: rename flush wording to at-row-end in corner displacement
eder-matheus Jul 30, 2026
7bed3ec
odb: fix explicit null dereferenced flagged by coverity
AcKoucher Jul 30, 2026
663eab1
web: index the search R-trees on a stored Rect
maliberty Jul 30, 2026
bd87546
web: bucket master and via-master geometry by layer
maliberty Jul 30, 2026
78c46db
web: rebuild the geometry cache on every design edit
maliberty Jul 31, 2026
b559273
fix relative name issue for bazel
dsengupta0628 Jul 31, 2026
07bb842
grt: update remove_buffers_cugr ok files to match CI binary output fo…
sparsh-karna Jul 31, 2026
55f7722
grt: fix remove_buffers_cugr ok files to match CI output
sparsh-karna Jul 31, 2026
5bd46b0
grt: make incremental_repair_cugr exercise real repair transforms
eder-matheus Jul 31, 2026
5214422
Merge branch 'master' of https://github.com/The-OpenROAD-Project-priv…
eder-matheus Jul 31, 2026
10e79ba
Merge remote-tracking branch 'upstream/master' into cugr-merge-net
sparsh-karna Jul 31, 2026
eef6975
grt: add a min overflow stagnation check and iteration 15 limit for s…
jfgava Jul 31, 2026
a1325be
rsz: check for dont touch before applying Move
mikesinouye Jul 31, 2026
d6d5c6f
Merge pull request #11031 from The-OpenROAD-Project-staging/or_update…
maliberty Jul 31, 2026
f6bf313
web: key the geometry cache on the chiplet hierarchy too
maliberty Jul 31, 2026
9086879
build equiv classes without liberty dont_use
dsengupta0628 Jul 31, 2026
b6bb1fa
Merge branch 'master' into or_dontuse_rsz
dsengupta0628 Jul 31, 2026
0cee39f
Merge remote-tracking branch 'origin/master' into drt_spacing_0
bnmfw Jul 31, 2026
b2cedc0
grt: fix iteration variable
jfgava Jul 31, 2026
59450ef
address AI feedback
mikesinouye Jul 31, 2026
6e81f76
address AI feedback
mikesinouye Jul 31, 2026
9fa7937
dpl: drop unreachable hist_gen_ overflow guard
gudeh Jul 31, 2026
9e2bf6e
grt: update improved ibex sky130hs test metrics
jfgava Jul 31, 2026
c68d827
Merge pull request #11028 from The-OpenROAD-Project-staging/grt_cugr_…
eder-matheus Jul 31, 2026
fd14fc8
dpl: remove unnecessary comment
gudeh Jul 31, 2026
be0a43f
drt: abutting at spacing 0 regression
bnmfw Jul 31, 2026
e0fb776
Merge pull request #11039 from The-OpenROAD-Project-staging/web-tile-…
maliberty Jul 31, 2026
236f583
Fixed golden files for new tests
sparsh-karna Jul 31, 2026
d189ea8
grt: repair antennas with diodes when using CUGR
eder-matheus Jul 31, 2026
2fb4cfa
grt: add repair_antennas_cugr test
eder-matheus Jul 31, 2026
909107c
Merge pull request #11021 from The-OpenROAD-Project-staging/grt-impro…
jfgava Jul 31, 2026
4ed5de6
grt: add repair_antennas CUGR tests for more configurations
eder-matheus Jul 31, 2026
7fbbb70
Merge pull request #10856 from The-OpenROAD-Project-staging/drt_spaci…
osamahammad21 Jul 31, 2026
9cac2e2
Merge remote-tracking branch 'upstream/master' into cugr-merge-net
sparsh-karna Jul 31, 2026
57f12e0
Merge pull request #11041 from mikesinouye/donttouch
precisionmoon Jul 31, 2026
b96b44b
web: make display controls have checkboxes on the right
gadfort Aug 1, 2026
3c79f7b
web: bound tile memory by compositing layers into N panes
gadfort Aug 1, 2026
b4e4438
web: allow layers to be selected
gadfort Aug 1, 2026
4e98cf4
Merge pull request #11043 from The-OpenROAD-Project-staging/grt_cugr_…
eder-matheus Aug 1, 2026
f87cfc6
gui: fix display-controls expand arrow stealing clicks as visibility …
maliberty Aug 1, 2026
5020124
gui: display-controls group headers are divs, not labels wrapping the…
maliberty Aug 1, 2026
846127f
gui: collapse group only on its triangle or bare header area
maliberty Aug 1, 2026
06c7bcb
Merge pull request #11047 from The-OpenROAD-Project-staging/web-displ…
gadfort Aug 1, 2026
52bd97e
Merge remote-tracking branch 'gadfort/master' into web-display-controls
gadfort Aug 1, 2026
fd3d20c
web: ensure visibility is only clicked when clicking it
gadfort Aug 1, 2026
c205c3d
Merge remote-tracking branch 'gadfort/master' into web-merge-tiles
gadfort Aug 1, 2026
03118ac
web: fix three issues found in review of the tile merging
gadfort Aug 1, 2026
0fd925c
web: paint merged tiles incrementally as layers arrive
gadfort Aug 1, 2026
a78e040
web: fix debug tiles to account for DPR
gadfort Aug 1, 2026
3fbd1f1
web: strip the query string before the asset lookup
gadfort Aug 1, 2026
2961c25
web: ensure min font
gadfort Aug 1, 2026
02685dc
web: fix formattig
gadfort Aug 1, 2026
3388057
web: settle cancelled tile requests so merged decodes are released
maliberty Aug 1, 2026
811c6f1
web: fix merged tile follow-up issues
maliberty Aug 1, 2026
126f4fd
Merge pull request #11045 from gadfort/web-merge-tiles
maliberty Aug 1, 2026
8b82551
Merge branch 'master' into web-display-controls
gadfort Aug 1, 2026
37b6a9e
Merge pull request #11049 from gadfort/web-fix-debug-tiles
maliberty Aug 2, 2026
e024463
Merge pull request #10979 from gudeh/dpl-histCost-improvement
maliberty Aug 2, 2026
98251df
Merge pull request #11037 from AcKoucher/odb-inter-chip-coverity
maliberty Aug 2, 2026
6c121a6
web: address review feedback on layer selection
gadfort Aug 2, 2026
15e6776
Merge pull request #11046 from gadfort/web-display-controls
maliberty Aug 3, 2026
3d590bc
web: cleanup inspector, honor use DBU, format strings, add tables
gadfort Aug 2, 2026
48afc33
web: address feedback and remove pointless helper
gadfort Aug 2, 2026
8a1321b
Merge pull request #11052 from gadfort/inspector-fix
maliberty Aug 3, 2026
6ae3b6d
grt: update ok files
eder-matheus Aug 3, 2026
7007686
Merge pull request #10899 from sparsh-karna/cugr-merge-net
eder-matheus Aug 3, 2026
4a6f4cc
Merge pull request #11034 from The-OpenROAD-Project-staging/rcx-3d-base
maliberty Aug 3, 2026
a592c9b
web: fix tile seams at fractional device pixel ratios
gadfort Aug 3, 2026
dbe0f52
dpl: draw diamond search as a per-instance outline
gudeh Aug 3, 2026
03778a3
Revert "update sta ptr to 7/29"
eder-matheus Aug 3, 2026
02e1659
odb, rcx: move extraction rules file ownership from odb to rcx
AcKoucher Aug 3, 2026
b076432
Merge pull request #11056 from AcKoucher/odb-to-rcx-extraction-rules
maliberty Aug 3, 2026
e1e3e30
bazel: add yamlfix support to fix_lint and lint_test
oharboe Aug 4, 2026
5ba5e53
bazel: keep buildifier_prebuilt as dev_dependency = True
oharboe Aug 4, 2026
ce95b57
bazel: safely handle empty YAML file list in yaml_tidy.sh and yaml_fm…
oharboe Aug 4, 2026
32cc919
bazel: exclude git submodules from file discovery in tidy and lint sc…
oharboe Aug 4, 2026
8ea06ab
rcx: add ability to specify the extraction rules for the assembly kit
AcKoucher Aug 4, 2026
8a3f4f3
Merge branch 'master' into cutrows-min-height
joaomai Aug 4, 2026
e193ff3
Merge pull request #11060 from AcKoucher/rcx-assembly-rules
maliberty Aug 4, 2026
16f1a7f
bazel: Resolve git_ls_files.sh before changing workspace directory
oharboe Aug 4, 2026
badc08b
bazel: Fix yaml_fmt_test.sh issues
oharboe Aug 4, 2026
0eb24ac
Merge branch 'master' of https://github.com/The-OpenROAD-Project/Open…
eder-matheus Aug 4, 2026
8d20a0f
Merge pull request #11059 from oharboe/exclude-submodules-linter
maliberty Aug 4, 2026
5d67450
rcx: handle track grids with tracks in only one direction
AcKoucher Aug 4, 2026
b84bcb8
bazel: add yamlfix.toml SOT and yamlfix.ignore DRY blacklist for YAML…
oharboe Aug 4, 2026
5333308
Merge pull request #11058 from oharboe/yamlfix-linter
maliberty Aug 4, 2026
a8e52e9
Merge pull request #11063 from The-OpenROAD-Project-staging/old_sta
eder-matheus Aug 4, 2026
8ff5772
Merge remote-tracking branch 'private/master' into dpl-debug-changes
gudeh Aug 4, 2026
90a0430
Merge pull request #11042 from The-OpenROAD-Project-staging/or_dontus…
maliberty Aug 5, 2026
b56cf85
rsz: stop doomed repair_design passes when buffer insertion count exc…
oharboe Aug 5, 2026
f294b56
rsz: hoist max_allowed_buffers calculation out of driver_vertices loop
oharboe Aug 5, 2026
b60c2e9
docs: add DSE and autotuner support guidelines for zero-config futili…
oharboe Aug 5, 2026
2017eff
docs: address review nits in DSE and autotuner support guidelines
oharboe Aug 5, 2026
2389b00
Merge branch 'master' into salvage-10695: isolate sphinx_build_test i…
oharboe Aug 5, 2026
9b8b453
docs: address code review nits for sphinx_build_test
oharboe Aug 5, 2026
1e4d778
Merge branch 'master' into salvage-10695
oharboe Aug 5, 2026
9a82bc5
retrigger CI for PR 11066
oharboe Aug 5, 2026
5062075
dpl: debug for diamond search,
gudeh Aug 5, 2026
9ac5123
Merge remote-tracking branch 'private/master' into dpl-debug-changes
gudeh Aug 5, 2026
1e3c327
dpl: clear diamond searches at start placement
gudeh Aug 5, 2026
f28dccd
dpl: debug,
gudeh Aug 5, 2026
8a92df2
dpl: fix build issue
gudeh Aug 5, 2026
24969a8
dpl: guard debug render with mutex to fix a segfault in drawObjects()
gudeh Aug 5, 2026
6a757de
dpl: shorter comments
gudeh Aug 5, 2026
31bafe9
web: render overlay and heat-map tiles at the display's resolution
gadfort Aug 5, 2026
426b9c4
Merge remote-tracking branch 'origin/master' into fix-dpr-seams
gadfort Aug 5, 2026
b24aa54
docs: address PR feedback and add custom DSE scripts section
oharboe Aug 5, 2026
274797a
Merge pull request #11076 from AcKoucher/rcx-empty-track-grid-fix
maliberty Aug 5, 2026
60979a1
web: address CI and review feedback on the dpr tile work
gadfort Aug 5, 2026
744c58d
Merge pull request #11019 from The-OpenROAD-Project-staging/cts_fix_l…
precisionmoon Aug 5, 2026
c536d9d
Merge pull request #11067 from oharboe/docs-dse-futility-policy
maliberty Aug 5, 2026
c3c136c
web: drop an unused variable in the heat-map registration test
gadfort Aug 5, 2026
8328314
Merge pull request #11066 from oharboe/rsz-futility-limit
precisionmoon Aug 5, 2026
a782cce
Merge pull request #11077 from gadfort/fix-dpr-seams
maliberty Aug 5, 2026
184888d
est: optimize layer lookups in EstimateParasitics
oharboe Aug 5, 2026
b9a3892
Merge pull request #11074 from oharboe/odb-tech-fast-find-layer
maliberty Aug 5, 2026
70a3cef
dbSta: add SWIG interface to allow dbNet -> sta::Net conversion
AcKoucher Aug 6, 2026
ab6fd26
Merge pull request #11088 from AcKoucher/db-sta-db-net-to-sta-net
maliberty Aug 6, 2026
a5be9eb
ord: register Tech for Python global APIs
naveenvenk17 Aug 6, 2026
490d768
web: add display-control overlays from parity table 2.5 (#10619)
jorge-ferreira-pii Aug 6, 2026
c83791f
Merge pull request #10806 from The-OpenROAD-Project-staging/feature-W…
maliberty Aug 6, 2026
bae9127
added layer name to min pitch message - take 2
jeffng-or Aug 6, 2026
e849da5
Merge pull request #11090 from The-OpenROAD-Project-staging/pdn-messa…
maliberty Aug 7, 2026
dcd6b63
est: skip parasitic estimation for timing-irrelevant nets; key wire R…
maliberty Aug 7, 2026
3fc5f48
Merge pull request #11091 from The-OpenROAD-Project-staging/est-skip-…
maliberty Aug 7, 2026
cbf57c7
ci: fix MODULE.bazel.lock gate and regenerate the lock file
sombraSoft Aug 7, 2026
7878765
dpl: during check_placement, ensure the site exists before checking f…
gudeh Aug 7, 2026
5ca40ec
dpl: keep original code strucutre, include chekcing if site actually …
gudeh Aug 7, 2026
d38cf77
psm: report the average IR drop under the drop__average metric
shivarammysore Aug 7, 2026
6918465
Merge pull request #11094 from The-OpenROAD-Project-staging/bazel-loc…
sombraSoft Aug 7, 2026
9faa4c1
odb: ensure chip has a name and not a nullptr
gadfort Aug 7, 2026
ab751a0
Merge remote-tracking branch 'private/master' into dpl-ensure-site
gudeh Aug 7, 2026
8bf9a07
Merge pull request #11097 from shivarammysore/psm-drop-average-metric
gadfort Aug 7, 2026
2f77717
psm: error early when a report writer has no solution, and skip unpow…
shivarammysore Aug 7, 2026
4b8b591
psm: reflow a comment to satisfy clang-format
shivarammysore Aug 7, 2026
0a79c02
Merge pull request #10919 from naveenvenk17/nv-bazel-python-runfiles
maliberty Aug 8, 2026
bc86d35
Merge pull request #11100 from gadfort/odb-segfault
maliberty Aug 8, 2026
bdbcc5c
psm: check the map each writer reads, and register the test with Bazel
shivarammysore Aug 8, 2026
5e916f3
web: fix bbox and add debugPrints
gadfort Aug 8, 2026
ec86453
Merge pull request #11035 from eder-matheus/tap_endcap_overlaps
maliberty Aug 8, 2026
c73a960
Merge pull request #11103 from shivarammysore/psm-write-guards
maliberty Aug 8, 2026
b9d46b5
web: account for transform
gadfort Aug 8, 2026
4894e36
web: address rounding
gadfort Aug 8, 2026
4027396
Merge remote-tracking branch 'origin/master' into fix-bbox
gadfort Aug 8, 2026
3003f31
utl: guard against rounding issues in to_numeric_string
gadfort Aug 8, 2026
ab4f320
Revert "est: skip parasitic estimation for timing-irrelevant nets; ke…
maliberty Aug 9, 2026
4ca2ac9
Merge pull request #11101 from gudeh/dpl-ensure-site
osamahammad21 Aug 9, 2026
b1d9b3d
Merge pull request #11055 from gudeh/dpl-debug-changes
osamahammad21 Aug 9, 2026
9e09f7c
Merge pull request #11105 from The-OpenROAD-Project-staging/revert-est
maliberty Aug 9, 2026
191a654
Fix integer truncation bug in RepairDesign::repairNetWire
oharboe Aug 9, 2026
f55ae79
Merge pull request #11106 from oharboe/fix-buf-dist-truncation
maliberty Aug 9, 2026
0529201
Merge pull request #11104 from gadfort/fix-bbox
maliberty Aug 9, 2026
335bb52
gpl: add separate Bazel targets for long-running regression tests
maliberty Aug 10, 2026
1c522d5
gpl: exclude large/passfail test scripts from test_resources
maliberty Aug 10, 2026
dd163c8
Merge pull request #11109 from The-OpenROAD-Project-staging/gpl-bazel…
maliberty Aug 10, 2026
950eb7e
gpl: ensure global placement pointers are fixed even on exception
oharboe Aug 10, 2026
f699094
gpl: use boost scoped_exit
oharboe Aug 10, 2026
b62304c
gpl: fix bazel build for boost scope_exit
oharboe Aug 10, 2026
b6704f8
merged with master post conflict resolution
dsengupta0628 Aug 10, 2026
420f59d
Merge pull request #11009 from The-OpenROAD-Project-staging/cutrows-m…
eder-matheus Aug 10, 2026
61815d6
dpl: fix data race
gudeh Aug 10, 2026
153df98
grt: use boolean grid map for fast congestion nets lookup
oharboe Aug 10, 2026
f658f88
grt: resolve review feedback for congested grids loop duplication
oharboe Aug 10, 2026
41ef564
remove contract-review skill for tracking in separate PR
dsengupta0628 Aug 10, 2026
b6ba0eb
grt: optimize grid map allocations and add bounds checking
oharboe Aug 10, 2026
18b3c09
grt: add unit test for FastRouteCore::getCongestionNets
oharboe Aug 10, 2026
b4ef1df
grt: remove dead findNetsNearPosition and tidy getCongestionNets
oharboe Aug 10, 2026
2222fd0
grt: use size_t grid indexing and map lookup for known congestion nets
oharboe Aug 10, 2026
c5b3bc4
Merge pull request #11111 from oharboe/fix-timingbase-fixpointers
maliberty Aug 10, 2026
73697f9
grt: name the congestion search radius and avoid overflow in size guard
oharboe Aug 10, 2026
3538817
Merge remote-tracking branch 'origin/master' into salvage-10695
oharboe Aug 10, 2026
d76d784
Merge pull request #11068 from oharboe/salvage-10695
vvbandeira Aug 10, 2026
e7e05f1
rcx: create struct for the spef header to avoid duplicated code on 3D…
AcKoucher Aug 10, 2026
d8999ce
grt: fix cmake test dependency when tests are disabled
oharboe Aug 10, 2026
12af836
rcx: address review comments on null handling in spef header code
AcKoucher Aug 10, 2026
0100fab
Merge pull request #10664 from The-OpenROAD-Project-staging/3dic-sta-…
dsengupta0628 Aug 10, 2026
4ede5f5
Merge pull request #11114 from oharboe/grt-fastroute-congestion-fix
eder-matheus Aug 10, 2026
a7e56ab
Merge pull request #11113 from gudeh/dpl-fix-data-race
maliberty Aug 10, 2026
ec94b92
Merge pull request #11119 from AcKoucher/rcx-spef-header
maliberty Aug 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 8 additions & 1 deletion .bant-macros
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,8 @@ tcl_encode_sta = genrule(
)

# gist extracted from @qt-bazel//:build_defs.bzl
qt_internal_library = bant_forward_args(cc_library())

qt6_library = (
[
genrule(
Expand All @@ -65,7 +67,12 @@ qt6_library = (
for uisrc in uic_srcs
],
includes = includes,
deps = deps,
deps = deps + [
"@qt-bazel//qt_source:core",
"@qt-bazel//qt_source:widgets",
"@qt-bazel//qt_source:charts",
"@qt-bazel//qt_source:gui",
],
),
)

Expand Down
19 changes: 16 additions & 3 deletions .bazelignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,22 @@
# Build outputs from CMake
build/
debug/
src/sta/build/
src/sta/debug/
# we use abc from MODULE.bazel
third-party/abc/
tmp

# standalone workspace for downstream consumer tests
test/downstream/

# Various things from third-party/ that might be used by CMake, but
# we have in MODULE.bazel.
# Goal: no sub-modules, only bazel-managed dependencies.
third-party/abc/
third-party/lemon/

# fmt ships its own BUILD.bazel assuming it is the workspace root; we overlay
# fmt via new_local_repository(name="fmt"), so hide this nested package from
# //... discovery (its glob(["include/fmt/*.h"]) matches nothing here).
third-party/slang-elab/third_party/fmt/support/bazel/

# Other things to ignore
tmp/
96 changes: 92 additions & 4 deletions .bazelrc
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
common --enable_bzlmod

# abc is driven programmatically by OpenROAD, so skip the interactive
# readline dependency exposed by abc@0.64-yosyshq.bcr.2.
common --@abc//:use_readline=false
build --workspace_status_command=tools/workspace_status.sh

# Release builds embed real git version info; dev builds use cache-safe placeholders.
Expand Down Expand Up @@ -40,9 +44,24 @@ build --cxxopt=-fexceptions --host_cxxopt=-fexceptions
build --copt "-Wall" --host_copt "-Wall"
build --copt "-Wextra" --host_copt "-Wextra"

# Treat specific warnings as errors
build --copt "-Werror=array-bounds" --host_copt "-Werror=array-bounds"
build --copt "-Werror=dangling" --host_copt "-Werror=dangling"
build --copt "-Werror=dangling-assignment" --host_copt "-Werror=dangling-assignment"
build --copt "-Werror=dangling-assignment-gsl" --host_copt "-Werror=dangling-assignment-gsl"
build --copt "-Werror=dangling-field" --host_copt "-Werror=dangling-field"
build --copt "-Werror=dangling-gsl" --host_copt "-Werror=dangling-gsl"
build --copt "-Werror=fortify-source" --host_copt "-Werror=fortify-source"
build --copt "-Werror=return-stack-address" --host_copt "-Werror=return-stack-address"

# ... and disable the warnings we're not interested in.
build --copt "-Wno-sign-compare" --host_copt "-Wno-sign-compare"
build --copt "-Wno-unused-parameter" --host_copt "-Wno-unused-parameter"
# False positive under Bazel's parse_headers feature: it compiles each
# declared header as a main TU, which makes clang treat #pragma once as
# a no-op and emit -Wpragma-once-outside-header. Project convention is
# #pragma once for all headers, so silence the warning project-wide.
build --copt "-Wno-pragma-once-outside-header" --host_copt "-Wno-pragma-once-outside-header"
build --copt "-Wno-gcc-compat" --host_copt "-Wno-gcc-compat"
build --copt "-Wno-nullability-extension" --host_copt "-Wno-nullability-extension"
build --copt "-Wno-deprecated-declarations" --host_copt "-Wno-deprecated-declarations"
Expand All @@ -58,13 +77,26 @@ build --copt "-Wno-cast-function-type-mismatch" --host_copt "-Wno-cast-function
build --copt "-Wno-unused-but-set-variable" --host_copt "-Wno-unused-but-set-variable"
build --cxxopt "-Wno-deprecated-copy" --host_cxxopt "-Wno-deprecated-copy"
build --cxxopt "-Wno-deprecated-copy-with-user-provided-copy" --host_cxxopt "-Wno-deprecated-copy-with-user-provided-copy"
build --cxxopt "-Wno-dangling" --host_cxxopt "-Wno-dangling"

# For 3rd party code: Disable warnings entirely.
# They are not actionable and just create noise.
build --per_file_copt=.*external/.*@-w
build --host_per_file_copt=.*external/.*@-w

# Treat include paths into external/ (bzlmod/BCR deps) as -isystem so clang
# suppresses ALL warnings from third-party headers pulled into our TUs (boost,
# Eigen, googletest, ...), regardless of the specific warning. The
# per_file_copt -w above only covers compiling external *source* files; this
# covers external *headers* included by our own sources.
#
# The feature is global (target and exec config) and also demotes a from-source
# dep's own -iquote entries to -isystem. Tools that rely on -iquote precedence
# to shadow libc headers are patched to restore it -- e.g. git's
# builtin/get-tar-commit-id.c includes git's own tar.h, which must win over
# glibc's <tar.h>. See the git single_version_override in MODULE.bazel (same
# class of fix as the bison/sed/gawk/m4 -I-over-isystem overrides).
build --features=external_include_paths

# This avoid problems with building -c dbg which enables asserts.
# Without this libstdc++ vs libc++ differences cause link errors.
build --per_file_copt=.*external/abc.*@-stdlib=libc++
Expand All @@ -78,9 +110,13 @@ common --enable_platform_specific_config
# macOS: boost.stacktrace needs this since backtrace() doesn't require GNU source
build:macos --copt=-DBOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED
build:macos --host_copt=-DBOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED
# Aligned allocation/deallocation for abseil is only available since 10.13
build:macos --macos_minimum_os=10.13
build:macos --host_macos_minimum_os=10.13
# Floating-point std::to_chars (behind std::format, used by OpenSTA)
# needs macOS 13.3; std::filesystem (src/tcl_readline_setup.cc) needs
# 10.15; abseil's aligned allocation needs 10.13. The historical 10.13
# floor was never enforced: toolchains_llvm ignored it and compiled
# against the host SDK's default. hermetic-llvm honors it.
build:macos --macos_minimum_os=13.3
build:macos --host_macos_minimum_os=13.3

# Settings for --config=asan address sanitizer build
build:asan --strip=never
Expand All @@ -89,17 +125,54 @@ build:asan --copt=-DADDRESS_SANITIZER
build:asan --copt=-O1
build:asan --copt=-g
build:asan --copt=-fno-omit-frame-pointer
# Compress the DWARF debug sections (transparent to gdb/perf/addr2line).
build:asan --copt=-gz=zlib
build:asan --linkopt=-gz=zlib
build:asan --linkopt=-fsanitize=address
# TCMalloc is incompatible with ASan: __asan_init's interceptor setup calls
# dlsym -> malloc before TCMalloc is initialized, segfaulting at startup.
# Override the per-target malloc attribute to use the system allocator, which
# ASan intercepts cleanly.
build:asan --custom_malloc=@bazel_tools//tools/cpp:malloc

# Flags with enough debug symbols to get useful outputs with Linux `perf`
build:profile --strip=never
build:profile --copt -g --host_copt -g
build:profile --copt -gmlt --host_copt -gmlt
build:profile --copt -fno-omit-frame-pointer --host_copt -fno-omit-frame-pointer
# Compress the DWARF debug sections (transparent to gdb/perf/addr2line).
build:profile --copt=-gz=zlib --host_copt=-gz=zlib
build:profile --linkopt=-gz=zlib

# Settings for --config=coverage C++ coverage build (LLVM source-based).
# Usage: bazel coverage --config=coverage //...
# `bazel coverage` already layers the `test` config on top of `build`, so this
# only adds the coverage-specific bits. --combined_report=lcov merges every
# test's per-target lcov into one file at
# bazel-out/_coverage/_coverage_report.dat, which CI renders with genhtml
# (lcov is installed in bazel/Dockerfile). The instrumentation_filter mirrors
# the exclusions of the retired cmake/lcov flow (etc/CodeCoverage.sh _lcov):
# instrument OpenROAD's own //src/... code, minus OpenSTA (src/sta, which has
# its own private test suite) and drt's unused global-routing code. Third-party
# deps live under external repos / //third-party and are simply never matched
# by //src, so they need no explicit exclusion.
# Instrumentation and the coverage tools come from the toolchain; requires
# llvm >= 0.8.14 (see the bazel_dep note in MODULE.bazel).
coverage:coverage --combined_report=lcov
coverage:coverage --instrumentation_filter=//src[/:],-//src/sta[/:],-//src/drt/src/gr[/:],-//src/drt/src/db/grObj[/:]
coverage:coverage --experimental_generate_llvm_lcov
coverage:coverage --experimental_use_llvm_covmap
# Skip the raw per-test coverage outputs: rules_cc leaves a dangling `gcov`
# symlink there and fetching them fails. Drop once rules_cc >= 0.2.23
# (bazelbuild/rules_cc#795) is released.
coverage:coverage --noexperimental_fetch_all_coverage_outputs

# Improve hermeticity by disallowing user envars and network access
build --incompatible_strict_action_env
build --nosandbox_default_allow_network
# Refuse to autodetect a local C++ toolchain (/usr/bin/gcc); the hermetic
# toolchain must win resolution, with or without the etc/bazel-hermetic wrapper.
common --repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1

test --build_tests_only

Expand All @@ -119,12 +192,27 @@ build:ci --disk_cache=
# Tell the 'ci' config to include 'opt'
build:ci --config=opt

# Launch py_binary via a shell stub instead of rules_python's legacy python
# stub, whose '#!/usr/bin/env python3' shebang needs a host python3 before
# the hermetic interpreter takes over (found by etc/bazel-hermetic).
common --@rules_python//python/config_settings:bootstrap_impl=script

# Setup remote cache
# Anon: HTTPS read-only cache
build --remote_cache=https://bazel.precisioninno.com
build --remote_cache_compression=true
build --remote_upload_local_results=false
# CI: gRPC + Remote Asset API, requires --remote_header
build:ci --remote_cache=grpcs://bazel.precisioninno.com:443
build:ci --experimental_remote_downloader=grpcs://bazel.precisioninno.com:443

# Without this, bazelisk build ... builds the bazel-orfs tests
build --build_tag_filters=-orfs

# clang-tidy via aspect_rules_lint, using clang-tidy from the LLVM toolchain.
# Usage: bazel build --config=lint //src/utl/...
build:lint --aspects=//tools/lint:linters.bzl%clang_tidy
build:lint --output_groups=rules_lint_report
build:lint --remote_download_outputs=all

try-import %workspace%/user.bazelrc
2 changes: 1 addition & 1 deletion .bazelversion
Original file line number Diff line number Diff line change
@@ -1 +1 @@
8.6.0
9.1.1
4 changes: 2 additions & 2 deletions .github/workflows/black.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@ jobs:
runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-latest' }}
steps:
- name: Checkout Code
uses: actions/checkout@v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Run black
uses: psf/black@stable
uses: psf/black@87928e6d6761a4a6d22250e1fee5601b3998086e # 26.5.1
13 changes: 9 additions & 4 deletions .github/workflows/buildifier.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,21 +15,26 @@ jobs:
fail-fast: false
matrix:
check:
# Drive buildifier from `git ls-files` instead of `-r .` so the
# scan stays inside this repo. With `-r .` buildifier was
# recursing into submodule contents (third-party/slang-elab/...)
# left on disk by self-hosted runners — files we can't fix from
# here since they're upstream-managed.
- name: Buildifier format
run: ./buildifier -r -mode=check -lint=off .
run: "git ls-files -z ':(glob)**/*.bzl' ':(glob)**/*.bazel' ':(glob)**/BUILD' ':(glob)**/WORKSPACE' | xargs -0 -r ./buildifier -mode=check -lint=off"
- name: Buildifier lint
run: ./buildifier -r -lint=warn .
run: "git ls-files -z ':(glob)**/*.bzl' ':(glob)**/*.bazel' ':(glob)**/BUILD' ':(glob)**/WORKSPACE' | xargs -0 -r ./buildifier -lint=warn"
name: ${{ matrix.check.name }}
env:
BUILDIFIER_VERSION: v8.2.1

steps:
- name: Checkout Code
uses: actions/checkout@v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Cache buildifier
id: cache-buildifier
uses: actions/cache@v5
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ./buildifier
key: ${{ runner.os }}-buildifier-${{ env.BUILDIFIER_VERSION }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/first-time-contributor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
pull-requests: write
steps:
- name: Greet First-Time Contributor
uses: actions/first-interaction@v1
uses: actions/first-interaction@34f15e814fe48ac9312ccf29db4e74fa767cbab7 # v1.3.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
issue-message: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/github-actions-are-differences-found.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-latest' }}
steps:
- name: Check out repository code
uses: actions/checkout@v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
- name: Check ok files
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-latest' }}
steps:
- name: Check out repository code
uses: actions/checkout@v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
submodules: 'recursive'
Expand Down
16 changes: 13 additions & 3 deletions .github/workflows/github-actions-check-bazel-lock.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,17 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out repository code
uses: actions/checkout@v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Verify lock file is up to date
run: bazelisk mod deps --lockfile_mode=error
- name: Update lock file to check for differences
run: bazelisk mod deps --lockfile_mode=update

- name: Differences to be addressed
run: |
if ! git diff --exit-code -- MODULE.bazel.lock ; then
msg="MODULE.bazel.lock is out of date. Regenerate with:"
msg="$msg bazelisk mod deps --lockfile_mode=update"
msg="$msg then commit the updated MODULE.bazel.lock."
echo "::error file=MODULE.bazel.lock::$msg"
exit 1
fi
Loading