Commit Graph
154 Commits
Author SHA1 Message Date
dsengupta0628 05b4e3a1d9 Latest pulled in changes on 4/20 from upstream to push all together with latest from 4/16
Signed-off-by: dsengupta0628 <[email protected]>
2026-04-20 14:21:16 +00:00
James Cherry 6bcf7b8156 rm unnecessary sta:: in tcl
Signed-off-by: James Cherry <[email protected]>
2026-04-16 16:12:59 -07:00
dsengupta0628 3b8e81393d Merge branch 'master' into sta_latest_from_parallaxsw_0407 2026-04-07 21:53:36 +00:00
dsengupta0628 371b85cd20 latest STA plus changes to fix prima dcalc and read_spef issues, TCL regression added
Signed-off-by: dsengupta0628 <[email protected]>
2026-04-07 20:48:15 +00:00
Deepashree Sengupta c887b2e4b3 Bias pin handling (#409)
* Update STA to exclude bias pins from timing graph and subsequently in write_verilog

Signed-off-by: dsengupta0628 <[email protected]>

* unnecessary space in orig verilog

Signed-off-by: dsengupta0628 <[email protected]>

* Update to use well supplies rather than bias pins

Signed-off-by: dsengupta0628 <[email protected]>

---------

Signed-off-by: dsengupta0628 <[email protected]>
2026-04-07 11:00:01 -07:00
James Cherry 645f2669c9 report_dcalc prima resolves #418
Signed-off-by: James Cherry <[email protected]>
2026-04-07 10:45:04 -07:00
Jaehyun KimandClaude 5fd751e8d7 Revert diff_files/diff_files_sorted to original return behavior
Revert error-on-mismatch back to return 1, as the new GitHub Action
(github-actions-are-differences-found) now detects "Differences found"
in CI output, making the error approach unnecessary.

Co-Authored-By: Claude <[email protected]>
Signed-off-by: Jaehyun Kim <[email protected]>
2026-04-07 23:42:21 +09:00
dsengupta0628 3eec04f4e8 update STA to Parallaxsw version on 4/7 with fix for issue 416 and some unrelated stuff
Signed-off-by: dsengupta0628 <[email protected]>
2026-04-07 12:59:25 +00:00
Jaehyun KimandClaude b30c82b2d0 Make diff_files/diff_files_sorted error on mismatch
Previously these functions returned 1 on mismatch but no caller
checked the return value, allowing roundtrip failures to go
undetected. Now they call error() so the sta process exits
non-zero and the regression runner catches the failure.

Co-Authored-By: Claude <[email protected]>
Signed-off-by: Jaehyun Kim <[email protected]>
2026-04-06 14:35:59 +09:00
James Cherry 548b665412 get_* -filter allow true/false, '.' in glob pattern resolves #416
Signed-off-by: James Cherry <[email protected]>
2026-04-04 16:19:41 -07:00
James Cherry d6e826ef8b save_ok hook
Signed-off-by: James Cherry <[email protected]>
2026-04-04 14:58:25 -07:00
James Cherry fe23c4530f regression.tcl
Signed-off-by: James Cherry <[email protected]>
2026-04-03 16:46:13 -07:00
Jaehyun Kim 7d0e0bb641 Merge branch 'master' of https://github.com/The-OpenROAD-Project-private/OpenSTA into secure-test-suite-cleanup
Signed-off-by: Jaehyun Kim <[email protected]>
2026-04-03 12:27:03 +09:00
Matt Liberty 94bb37bb4a Merge pull request #327 from The-OpenROAD-Project/driver-vertex-level-cache
added driver vertex levelization
2026-04-02 21:22:03 +00:00
Jaehyun KimandClaude a1c1685c04 Clean up test suite per 3-way code review findings
- Remove temp files: network_gcd_traversal.log, util_report_redirect.log
- Delete 19 comment-only C++ test stubs (dead code for removed APIs)
- Remove redundant graph_make_verify test (covered by graph_advanced)
- Centralize assert_file_nonempty/assert_file_contains into test/helpers.tcl
  and remove inline copies from 17 verilog test files
- Fix Build.sh stray quotes in heredoc output
- Fix regression.sh unquoted variable expansions
- Update .gitignore: add */test/*.log and Testing/

All 6087 tests pass.

Co-Authored-By: Claude <[email protected]>
Signed-off-by: Jaehyun Kim <[email protected]>
2026-04-02 22:27:27 +09:00
Cho Moon 748fb9bd4b code review changes per Deepashree
Signed-off-by: Cho Moon <[email protected]>
2026-04-02 06:27:17 +00:00
Jaehyun Kim b42e064281 Merge remote-tracking branch 'opensta/master' into secure-sta-test-by-opus
Signed-off-by: Jaehyun Kim <[email protected]>

# Conflicts:
#	test/get_filter.ok
2026-03-31 15:29:44 +09:00
James Cherry 538db6211f filter_objects via Akash Levy resolves #399 2026-03-30 09:36:21 -07:00
James Cherry 46472e0eed regresssion update failures/diffs
Signed-off-by: James Cherry <[email protected]>
2026-03-29 15:19:00 -07:00
Jaehyun Kim 422f774b64 Merge branch 'master' of https://github.com/The-OpenROAD-Project-private/OpenSTA into secure-sta-test-by-opus
Signed-off-by: Jaehyun Kim <[email protected]>
2026-03-29 22:33:08 +09:00
dsengupta0628 4238a057dd combined latest osta
Signed-off-by: dsengupta0628 <[email protected]>
2026-03-25 20:03:03 +00:00
James Cherry f4048cdf3e read_saif ref missing instance resolves #406
Signed-off-by: James Cherry <[email protected]>
2026-03-24 10:31:24 -07:00
dsengupta0628 5ce29f4d7d Merge remote-tracking branch 'upstream/master' into sta_update_upstream_lvf_stuff 2026-03-23 13:54:51 +00:00
James Cherry 7b0281014e regression usage
Signed-off-by: James Cherry <[email protected]>
2026-03-22 10:13:57 -07:00
James Cherry bacb61feaa regression -j
Signed-off-by: James Cherry <[email protected]>
2026-03-21 10:18:55 -07:00
Jaehyun Kim 992a1dcec5 Merge branch 'master' of https://github.com/The-OpenROAD-Project-private/OpenSTA into secure-sta-test-by-opus
Signed-off-by: Jaehyun Kim <[email protected]>
2026-03-20 21:56:12 +09:00
Vitor Bandeira 69e11bbd0d Merge pull request #300 from The-OpenROAD-Project-staging/secure-sta-test-suite
test: Add test infrastructure and sample test cases
2026-03-18 08:54:06 -03:00
Jaehyun Kim e7b861051d test: Fix post-merge build errors and regolden .ok files
After merging upstream changes, fix all build errors in C++ test files
and regolden Tcl test golden files to match updated code output.

Build fixes:
- dcalc/test/cpp/TestDcalc.cc: Fix const char* loop iterations, use
  EXPECT_NEAR for uninitialized subnormal float comparison
- liberty/test/cpp/TestLibertyStaBasicsB.cc: Wrap tests using removed
  LibertyBuilder() default constructor in #if 0
- liberty/test/cpp/TestLibertyStaCallbacks.cc: Fix LibertyBuilder()
  call to use sta_->debug()/report(); wrap old visitor tests in #if 0
- search/test/cpp/TestSearchStaDesignB.cc: Fix pg->name() nullptr
  comparison (now returns std::string&)
- search/test/cpp/TestSearchStaInit.cc: Fix 5 clkPinsInvalid/isIdealClock
  tests to expect throw (API now requires linked network)

Tcl test fixes:
- Remove calls to removed APIs: report_path_end_header/footer, report_path_end2
  from 6 search test scripts; regolden their .ok files
- Regolden .ok files for liberty (15), graph (1), network (8),
  parasitics (3), sdc (3), util (2), verilog (8) modules to reflect
  upstream format changes (timing arcs output, pin ordering, spacing)

All 6103 tests now pass.

Signed-off-by: Jaehyun Kim <[email protected]>
2026-03-11 17:11:08 +09:00
Jaehyun Kim a5f8e9c3ab test: Fix test failures after master merge
Update test code to match API changes from upstream master:

- TestGraph.cc: Fix makeScenes() call to pass reference instead of pointer
- TestLibertyClasses.cc: Fix ScaleFactorType wire_res/wire_cap name mapping;
  fix TablePtr usage by calling .get() where const TableModel* is expected
- TestLibertyClasses.cc: Update liberty_read_nangate.ok for new timing arc output
- TestPower.cc: Replace PwrActivityOrigin::defaulted with ::unknown;
  fix isSet() expectations (unknown origin returns false)
- TestSdcClasses.cc, TestSdf.cc, TestUtil.cc, TestSpice.cc:
  Fix RiseFall::to_string() expected values from short form ("^"/"v")
  to long form ("rise"/"fall")
- TestUtil.cc: Remove tests for deleted StringVector/split/TokenParser
  and StringSet::deleteContents (removed from master)
- TestSpice.cc: Replace StdStringSeq with StringSeq
- helpers.tcl: Use pwd-based result_dir so module tests write results
  to their own test/results/ directory
- verilog_bus.ok: Update golden file for new port ordering from master

Signed-off-by: Jaehyun Kim <[email protected]>
2026-03-11 10:16:27 +09:00
Jaehyun Kim d4ad9312ea Merge origin/master into secure-sta-test-suite
Resolve add/add conflict in test/helpers.tcl by merging both versions:
- Keep master's report_file, report_file_filter, sort_objects functions
- Keep branch's diff_files, diff_files_sorted functions
- Use master's result_dir setup with branch's mkdir logic in make_result_file

Resolve content conflict in test/regression by keeping branch's
bash/ctest launcher over master's Tcl regression script.

Signed-off-by: Jaehyun Kim <[email protected]>
2026-03-11 09:48:28 +09:00
Deepashree Sengupta fbe9da3fb7 Fix for OpenSTA issue 398 and OpenROAD issue 9454 with regression (#401)
* Fix for OpenSTA issue 398 and OpenROAD issue 9454 with regression

Signed-off-by: dsengupta0628 <[email protected]>

* Incorporated feedbacks from previous version

Signed-off-by: dsengupta0628 <[email protected]>

* rename tests

Signed-off-by: dsengupta0628 <[email protected]>

* remove unnecessary newline

Signed-off-by: dsengupta0628 <[email protected]>

* Updated to use network_->portBitIterator

Signed-off-by: dsengupta0628 <[email protected]>

---------

Signed-off-by: dsengupta0628 <[email protected]>
2026-03-10 14:57:21 -07:00
Deepashree Sengupta eb0446d4e2 Write verilog escape (#394)
* Fir for write_verilog issue 3826

Signed-off-by: dsengupta0628 <[email protected]>

* staToVerilog2 remove escaped_name+=ch

Signed-off-by: dsengupta0628 <[email protected]>

* updated regression to remove \ from module name

Signed-off-by: dsengupta0628 <[email protected]>

* Using helpers.tcl function to redirect results

Signed-off-by: dsengupta0628 <[email protected]>

* add std::string and remove trailing space, update regression name

Signed-off-by: dsengupta0628 <[email protected]>

* update regression to reflect correct output verilog name

Signed-off-by: dsengupta0628 <[email protected]>

---------

Signed-off-by: dsengupta0628 <[email protected]>
2026-03-02 16:48:15 -08:00
James Cherry d31372ef9a regression sta_dir
Signed-off-by: James Cherry <[email protected]>
2026-02-27 17:54:32 -08:00
James Cherry c010a0f99e liberty reader rewrite
Signed-off-by: James Cherry <[email protected]>
2026-02-27 17:12:50 -08:00
Kazuto Iris a47a8dd831 Add GitHub Action for CI and fix broken testcases (#391)
* feat(ci): add GitHub Action for push and pull request

* fix(ci): fix broken testcases

* chore: add CODEOWNERS for ci

* ci: bump actions/upload-artifact from 6 to 7
2026-02-27 13:51:28 -08:00
Jaehyun Kim 92bb9b8ec9 test: Add comprehensive test infrastructure and test cases across all OpenSTA modules
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-27 12:59:25 +09:00
Jaehyun Kim d5597bafee test: Make ./regression run parallel with multiple cores by default
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-27 12:00:42 +09:00
Jaehyun Kim 1b97c9c9b4 Merge branch 'master' of https://github.com/The-OpenROAD-Project-private/OpenSTA into secure-sta-test-by-opus 2026-02-27 11:56:33 +09:00
Jaehyun Kim 55259b894b test: Add save_ok script
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-27 11:12:27 +09:00
Jaehyun Kim d35d5661b4 test: Auto-detect new *.{tcl,ok} test cases in test and examples folders
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-27 10:57:35 +09:00
Jaehyun Kim c40b8b24bb test: Make ./test/regression -j32 run all test cases including C++ unit tests
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-27 10:15:53 +09:00
James Cherry 95d5ebb47c test/helpers.tcl
Signed-off-by: James Cherry <[email protected]>
2026-02-26 09:32:20 -08:00
dsengupta0628 cd6f564caf Renamed tests to match prlx repo, updated test to repro error without my fix
Signed-off-by: dsengupta0628 <[email protected]>
2026-02-25 20:33:15 +00:00
dsengupta0628 03f976128f fix merge
Signed-off-by: dsengupta0628 <[email protected]>
2026-02-25 19:48:36 +00:00
Jaehyun KimandClaude Opus 4.6 8adbcc0d6d Merge upstream STA update and adapt all tests to new API
Major upstream refactoring: Corner→Scene, Mode architecture, warning
format change (Warning ID:), command renames, and many API signature
changes. Adapted all C++ test files and TCL test scripts/expected
output files to pass with the new API. 6159/6159 tests pass.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-23 23:05:29 +09:00
Jaehyun KimandClaude Opus 4.6 7173c10cc1 test: strengthen assertions, add sorted SDC diff, and clean up tests
- Split oversized test files to stay under 5,000 lines per file:
  TestSdc.cc → TestSdcClasses.cc, TestSdcStaInit.cc, TestSdcStaDesign.cc
  TestSearchStaDesign.cc → TestSearchStaDesign.cc, TestSearchStaDesignB.cc
  TestLibertyStaBasics.cc → TestLibertyStaBasics.cc, TestLibertyStaBasicsB.cc
  TestNetwork.cc → TestNetwork.cc, TestNetworkB.cc
- Replace ~200+ (void) casts with proper EXPECT_* assertions across all
  C++ test files (dcalc, liberty, network, sdc, search, power, spice, util)
- Remove ~55 SUCCEED() and EXPECT_TRUE(true) no-op assertions
- Fix 6 load-only Tcl tests by adding diff_files verification with
  22 new .sdcok golden reference files
- Delete 7 orphan .ok files with no matching .tcl tests
- Add how_to_write_good_tests.md and TODO6.md documenting test quality rules

Co-Authored-By: Claude Opus 4.6 <[email protected]>
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-23 17:36:45 +09:00
Jaehyun KimandClaude Opus 4.6 b6d598a119 test: strengthen assertions, add sorted SDC diff, and clean up tests
- Add diff_files_sorted to test/helpers.tcl for hash-order-independent
  SDC comparison (fixes non-deterministic write_sdc output ordering)
- Use diff_files_sorted in sdc_derate_disable_deep and
  sdc_port_delay_advanced tests
- Remove stale coverage percentages from test comments (Comment 1)
- Remove unnecessary catch blocks in search property tests (Comment 3)
- Strengthen load-only tests with actual data verification (Comment 8)
- Remove orphan .ok files for deleted monolithic tests (Comment 9)
- Add golden .sdcok/.libok/.vok/.sdfok files for SDC/liberty/verilog
  write-and-diff tests
- Add -B (clean rebuild) option to make_coverage_report.sh
- Replace (void) casts and EXPECT_TRUE(true) with real assertions in
  TestSdc.cc and TestVerilog.cc

Co-Authored-By: Claude Opus 4.6 <[email protected]>
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-23 11:50:23 +09:00
Jaehyun KimandClaude Opus 4.6 547737f71e test: Apply review feedback - part2
- Remove stale line-number coverage comments (# Targets: line NNN, hit=0)
- Remove useless file-existence checks from verilog/sdf tests
- Delete 21 orphaned dcalc Tcl tests (C++ tests already cover them)
- Rename liberty_ccsn_ecsm -> liberty_ccsn (no ECSM libs available)
- Fix liberty_sky130_corners to use define_corners/-corner for real multi-corner testing
- Add report_checks per wireload model in liberty_wireload
- Fix test/regression to work from test/ directory (label mismatch)
- Refactor all module CMakeLists.txt with sta_module_tests() macro

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-20 01:13:42 +09:00
Jaehyun Kim 6799b1909a test: Apply review feedback - part1
Signed-off-by: Jaehyun Kim <[email protected]>
2026-02-19 23:30:23 +09:00
Martin Povišer d252a27586 Regolden tests
Signed-off-by: Martin Povišer <[email protected]>
2026-02-19 11:32:22 +01:00