Commit Graph

166 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 <dsengupta@precisioninno.com>
2026-04-20 14:21:16 +00:00
James Cherry 6c9af4a5fa LibertyPort::less
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-04-18 11:39:03 -07:00
James Cherry 668cfb26af makeSceneMap rm dup warnings
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-04-18 08:45:04 -07:00
dsengupta0628 9fbfcc4fcb picked changes from upstream master, resolved conflict for levelized driververtices, parseBus for weird defs
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
2026-04-16 21:37:37 +00:00
James Cherry 134cf2cab7 tidy
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-04-15 18:21:47 -07:00
James Cherry 63efee64bf tidy round1 2026-04-13 14:59:05 -07:00
dsengupta0628 d5925fcdcc changes from upstream 4/13 with prima delaycalc checkArgs refactor, some coverity fix but still problematic
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
2026-04-13 21:26:42 +00:00
dsengupta0628 097daeb3c5 address comment related to Coverity to simplify
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
2026-04-10 18:59:42 +00:00
James Cherry 6ef92c5fc0 LibertyPort::less
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-04-10 10:35:36 -07:00
Mike Inouye d6268da88f
Consider multi-bit flops as having sequentials. (#419) 2026-04-10 10:28:01 -07:00
dsengupta0628 44643b5733 fix state table mbff issue and coverity in this file
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
2026-04-10 15:44:30 +00:00
dsengupta0628 3eec04f4e8 update STA to Parallaxsw version on 4/7 with fix for issue 416 and some unrelated stuff
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
2026-04-07 12:59:25 +00:00
James Cherry f873c6520a Library/Cell name/filename args string_view
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-04-03 11:22:38 -07:00
dsengupta0628 b5f647cb7f update test infra to accomodate std::string instead of const char*
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
2026-03-30 19:44:26 +00:00
James Cherry 5955958564 findScaleFactorType, findScaleFactorPvt string_view
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-03-30 11:01:15 -07:00
dsengupta0628 5f46ad3dfb Merge remote-tracking branch 'upstream/master' into sta_latest_merge_strings 2026-03-30 16:22:27 +00:00
James Cherry 6742692876 string squash
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-03-28 19:13:35 -07:00
dsengupta0628 4238a057dd combined latest osta
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
2026-03-25 20:03:03 +00:00
Robert O'Callahan d233581e16
Make `wire_load_tree_` default to unknown so we can detect when it's not present in a Liberty file. (#402)
This is potentially a behavior change, but I think omitting this is rare. I've only seen it in some DTCD Liberty files.
In those Liberty libraries, it seems to be expected that the Liberty data is valid for all `WireloadTree` types.
Thus it is necessary to distinguish between "wire load tree was specified as 'balanced'" and "wire load tree
was not specified".
2026-03-24 12:35:18 -07:00
dsengupta0628 af791b9974 Merge branch 'master' into sta_update_upstream_lvf_stuff 2026-03-20 19:50:24 +00:00
dsengupta0628 8e45eff4b9 clkTreeDelay to check arc without assuming it exists
Signed-off-by: dsengupta0628 <dsengupta@precisioninno.com>
2026-03-19 16:54:09 +00:00
James Cherry 134b547501 use std::format squash 2026-03-16 15:01:38 -07:00
James Cherry d6e7b4256c lvf squish
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-03-13 14:06:35 -07:00
James Cherry 981f44db68 update copyright
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-03-10 14:57:45 -07:00
James Cherry 4f540792a0 rm StringSet
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-03-08 15:39:41 -07:00
James Cherry a419f0a721 LibertyPortPair calls
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-03-08 13:36:54 -07:00
James Cherry f1e5587fef rapidus liberty latch D->Q/EN->Q matching
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-03-05 18:41:25 -07:00
James Cherry 741bf4d561 rm using std::
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-03-02 12:13:13 -08:00
James Cherry cd21c43693 rm LibertyPort::clkTreeDelays, clockTreePathDelays
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-02-28 14:57:00 -08:00
James Cherry c010a0f99e liberty reader rewrite
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-02-27 17:12:50 -08:00
James Cherry 4c157f46ee InternalPower::related_pg_port string->port
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-02-11 08:33:09 -07:00
James Cherry 33e480a6c1 liberty memory management
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-02-04 18:33:04 -07:00
James Cherry 0ae888b619 Merge branch 'master' into rel_3.0
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-02-03 08:40:58 -07:00
James Cherry 3136871ecd LibertyCell::isClockGateLatchNegedge resolves #375
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-02-03 08:33:46 -07:00
James Cherry d42b821c00 rel 3.0
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2026-01-13 09:36:45 -07:00
Akash Levy 16a92707fb
Fix `isBuffer` (#329)
* Add support for "well" direction type (nwell, pwell, etc.), and fix isBuffer (+ other functions) to accommodate wells

* Just fix isBuffer issue
2025-11-16 15:34:37 -08:00
James Cherry 8287aec5f6 Verilog make pins for liberty pg_pins resolves #326
commit b4a89c93965c49a8685fd41cb6aee10635d7a7f3
Author: James Cherry <cherry@parallaxsw.com>
Date:   Fri Nov 7 11:48:10 2025 -0700

    pg_ -> PwrGnd

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 12ddba4bf220cec8459c15e483a871b13e507bf2
Author: James Cherry <cherry@parallaxsw.com>
Date:   Fri Nov 7 08:56:02 2025 -0700

    pg_port

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-11-07 11:55:43 -07:00
Matt Liberty 2412feec33
pad cells are not buffers or inverters (#294)
Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2025-09-08 17:04:21 -07:00
James Cherry 0d7c89f544 cp liberty bus properties to bit ports resolves #273
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-07-21 14:35:53 -07:00
Matt Liberty 06f94cafd8
Add a less operator to BddPortVarMap (#258)
bdd_port_var_map_, of type BddPortVarMap, is iterated over in
Power::evalBddActivity.  Previously the map used pointer comparison so
the iteration order was non-deterministic.  The computed density was
therefore non-deterministic due to the non-associativity of
floating-point addition.

Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2025-07-13 10:59:51 -07:00
James Cherry 606c666180 set_min/max_delay -from reg/D startpoint warning resolves #265
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-07-03 17:08:44 -07:00
James Cherry c5b62b5cc8 liberty valgrind issues
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-06-23 08:19:27 -07:00
James Cherry c2a0c4db30 liberty bundle ports apply func's to members resolves #256
commit d7629119c261bbc1551f7a6b008475b194a9ff91
Author: James Cherry <cherry@parallaxsw.com>
Date:   Tue Jun 10 13:59:36 2025 +0200

    issue256

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-06-16 16:45:21 +02:00
G 79c90c3c70
fix: free default_ocv_derate_ in LibertyLibrary destructor (#249) 2025-05-31 11:11:44 -07:00
James Cherry 71bdfb9904 rm using std::string from headers
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-05-22 09:25:56 -07:00
James Cherry 932525bd87 name, asString -> to_string, const
commit d122d05822e02dcc08c665ac6ec7513791dd7209
Author: James Cherry <cherry@parallaxsw.com>
Date:   Thu Mar 27 08:58:22 2025 -0700

    rebase

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 9c7ae9a7ddd885ebdab102d48b3f39dc5dacf948
Author: James Cherry <cherry@parallaxsw.com>
Date:   Tue Mar 25 16:21:52 2025 -0700

    write_spice8

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 2bd088f03bb2e414305232d9ebd76c9d1958ec81
Author: James Cherry <cherry@parallaxsw.com>
Date:   Tue Mar 25 10:08:00 2025 -0700

    liberty reader stringify

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 86974caf063433b37ed1378e7103db4b2e55a04c
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Mar 24 20:25:39 2025 -0700

    ConcreteLiberary/Cell/Port use string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 334476e185149a90b35cdd859e0a760ec9aa242a
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Mar 24 20:16:08 2025 -0700

    leak

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 5130e8d44804f483d9099d48bb413a7f3362b4e1
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Mar 24 15:57:14 2025 -0700

    liberty parser stringify

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit d48eba88cbde9093e3eb12bcee8eb48ccd444434
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Mar 24 11:16:04 2025 -0700

    stringify

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 6913fb198d642f6b05a94fb1852064706a748b81
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Mar 24 11:06:17 2025 -0700

    stringify

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 371bca08ecf9bf816b7adcbb7ae1458c4073f5f8
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Mar 24 10:44:31 2025 -0700

    TableTemplate use string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 326465920a1f4a33dbe6be35cff5ca2245b6677e
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Mar 24 09:04:55 2025 -0700

    use string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit b93a542ddfbcb5c793c9b533cbe64ea20ec08f4a
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Mar 24 08:59:01 2025 -0700

    timingSenseString -> to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 6c121a0ff4231b37df076a62e83832897be62ff4
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Mar 23 16:09:47 2025 -0700

    Corner use string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 07b989a5a43bf5d341aa6ba2880be663997577d5
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Mar 23 16:05:43 2025 -0700

    Tag::to_string()

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 0b9480cc5a3fa9ef0cb1c6e8ba0d4a29de2df816
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Mar 23 15:53:29 2025 -0700

    PathAnalysisPt::to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit a028659091e99270f7501615285730681ed59523
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Mar 23 12:19:03 2025 -0700

    TimingRole stati alloc

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 495be6a57bda23d82e511282f5db7c188b32971b
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sat Mar 22 21:36:52 2025 -0700

    RiseFall/RiseFallBoth/Transition const

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 4c4b28adb383321b1172f4b774c7c4d9a1aee69f
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sat Mar 22 20:38:26 2025 -0700

    TimingRole const

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 54ab58ec7200d420bf3b5e709e74b652af88d508
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sat Mar 22 14:15:07 2025 -0700

    const MinMax

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit f70bb38df17b2ed758c7b6ba5647b7355366c0c0
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sat Mar 22 13:14:31 2025 -0700

    Transition::to_string(()

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit b3f3d67328194351fb8efac2219bcfbcec331552
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sat Mar 22 12:33:25 2025 -0700

    RiseFall::to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 4046f8a376926dfde980860c51d2c5c70cf4a867
Author: James Cherry <cherry@parallaxsw.com>
Date:   Thu Mar 20 09:04:10 2025 -0700

    TimingRole::name -> to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit cf4dd918eccb05d459f1804ced8365c81a5c6a50
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Mar 19 20:14:42 2025 -0700

    MinMax::asString -> to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit d80118117dda25be7b2b4896f19e955645c27f73
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Mar 19 17:43:08 2025 -0700

    TimingRole::name -> to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 284fa25c28aca998e8ce92e7b7bb927697494a13
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Mar 19 17:02:27 2025 -0700

    comment

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 646f19749b997e03dc4cbdf165cd7637010276d3
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Mar 19 14:47:40 2025 -0700

    FuncExpr::asString -> to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 4f73d8e7ad21feac6f41130b7b070f3e345b6fb5
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Mar 19 14:04:13 2025 -0700

    Vertex::name -> to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 7c7ec486aaea86f6607a1ef72bb1a74dca603831
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Mar 19 13:39:24 2025 -0700

    Vertex::name -> to_string

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-03-30 15:27:53 -07:00
James Cherry 2a4fd08211 update copyright
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-01-21 18:54:33 -07:00
James Molloy 7fbe386d35
[liberty] Fix use-before-free bug (#170)
Before this change, findTableTemplate captured `name` always. This caused a segfault
when LibertyReader::beginTable calls it with `template_name`:

  const char *template_name = group->firstName();
  if (library_ && template_name) {
    tbl_template_ = library_->findTableTemplate(template_name, type);

This pointer is owned by the group and is freed when we hit sta::libertyGroupEnd.

Ensure that findTableTemplate does not capture `name` by using findKey.

Co-authored-by: jmolloy <jmolloy@google.com>
2025-01-11 09:03:53 -08:00
James Cherry 0d13839330 liberty test_cell port signal_type
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-15 15:53:02 -08:00
James Cherry dfb95b1cfe liberty test_cell name
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-10-25 08:41:22 -07:00