Drew Lewis
daeea4ab7e
Change DispatchQueue::dispatch to use notify_one. ( #308 )
...
This prevents the thundering herd problem and should increase the
scalability of the DispatchQueue significantly.
Additionally the code the DispatchQueue was taken from made this
improvement five years ago:
79ad8a539d
Signed-off-by: Drew Lewis <cannada@google.com>
2025-10-12 14:11:21 -07:00
ambd161
36e516924f
Recognize some basic specify blocks and ignore them ( #309 )
...
* Add parser support for specify blocks and specparam
Treated like regular parameters, and so ignored
* Add regression test
* Apply PR feedback
* missed the verilog_lang
2025-10-12 14:11:00 -07:00
Akash Levy
c11bb38f58
Include StaConfig.hh once ( #305 )
...
* Include StaConfig.hh once
* pragma once
2025-10-07 09:12:54 -07:00
James Cherry
091d69385e
CheckCrpr::findCrpr resolves orfs1253
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-10-06 08:34:44 -07:00
Akash Levy
9550c99f0c
Package require test ( #303 )
2025-10-04 10:36:22 -07:00
Henner Zeller
745ee606f9
Mark choice of delay implementation with IWYU export pragma. ( #300 )
...
The Delay header is meant to provide the Delay implementation
to whoever is including it; it chooses the right implementation
via an include which this PR marks as providing a symbol that is
to be exported.
Without that annotation, tools such as `clang-tidy` or the `clangd` language server (as well as many other tools) will complain about headers not directly providing a symbol if users just include Delay.hh; With this annotation, they know.
Documentation about these IWYU pragmas:
https://clangd.llvm.org/design/include-cleaner#iwyu-pragmas
https://github.com/include-what-you-use/include-what-you-use/blob/master/docs/IWYUPragmas.md#iwyu-pragma-begin_exportsend_exports
Signed-off-by: Henner Zeller <h.zeller@acm.org>
2025-10-04 08:50:11 -07:00
James Cherry
b553e636a0
CodingGuildlines
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-10-04 08:25:17 -07:00
Drew Lewis
76324bbabb
Fix typo in CodingGuidelines.txt ( #307 )
...
Signed-off-by: Drew Lewis <cannada@google.com>
2025-09-30 14:08:05 -07:00
James Cherry
e7bffbfef5
PropActivityVisitor::visit null port check PR 301
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-29 21:02:17 -07:00
James Cherry
b456589007
PropActivityVisitor::visit null port check PR 301
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-29 19:45:04 -07:00
Matt Liberty
37e1d15433
fix stray character typo ( #302 )
...
Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2025-09-29 18:23:59 -07:00
James Cherry
8236a89ef6
latch D->Q crpr path pruniing (eagle 20250923)
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-29 15:47:20 -07:00
James Cherry
d565906c2b
tag/glk_info debug
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-29 09:48:57 -07:00
James Cherry
f18df8a1a2
Edge::arcDelayAnnotateBit resolves issue #299
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-18 15:48:37 -07:00
James Cherry
892a9a4a3d
vcd min time resolves #165
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-18 08:47:43 -07:00
James Cherry
c020334e07
power propagate activies across test_cell resolves #295
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-17 15:59:00 -07:00
Mike Inouye
cf060169aa
Add PropertyRegistry for Clock. ( #298 )
...
* Add PropertyRegistry for Clock.
Signed-off-by: Mike Inouye <mikeinouye@google.com>
* Remove extra blank line.
---------
Signed-off-by: Mike Inouye <mikeinouye@google.com>
2025-09-17 14:19:22 -07:00
James Cherry
8e50916693
deleteFilterTags
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-17 09:10:14 -07:00
James Cherry
17cf87b4c6
Tag::clkInfo const
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-16 15:30:16 -07:00
James Cherry
8580cfd813
pathIndexMapEqual
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-16 15:16:05 -07:00
James Cherry
a296abc15c
Tag use static cmp functions
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-16 14:49:01 -07:00
James Cherry
7c6a473bbc
cleanup
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-16 14:25:24 -07:00
James Cherry
7a41a7f839
ClkInfo::hash resolves #287
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-16 14:17:30 -07:00
James Cherry
84989688b7
ClkInfo, Tag cmp
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-16 13:53:16 -07:00
James Cherry
9f9ad0b4ab
clkInfoCmp, tagCmp
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-14 11:43:59 -07:00
James Cherry
ab39366f7b
tagStateCmp use +exceptionStateLess
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-12 09:10:03 -07:00
Vitor Bandeira
9870b14640
Use STA_HOME instead of CMAKE_SOURCE_DIR ( #296 )
...
When using OpenSTA as a submodule/external dependency CMAKE_SOURCE_DIR
resolves to the root of the top project instead of OpenSTA's. Using
STA_HOME resolves the path correctly and is used in other places in the
project already.
Signed-off-by: Vitor Bandeira <vvbandeira@precisioninno.com>
2025-09-12 08:52:55 -07:00
James Cherry
30c8230f68
tag group ref count w/threads
...
commit d7e45e73e7b3a5b9b3b00eeaaff6c5608fd15a44
Author: James Cherry <cherry@parallaxsw.com>
Date: Fri Sep 12 08:41:14 2025 -0700
tag group ref count w/threads
Signed-off-by: James Cherry <cherry@parallaxsw.com>
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-12 08:50:58 -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
aa27e3372e
Genclks:: deleteGenclkSrcPaths
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-08 16:08:26 -07:00
James Cherry
dcbaaf4c05
ExpandedExceptionVisitor
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-07 15:22:06 -07:00
James Cherry
26be60906c
ExpandedExceptionVisitor memory error
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-06 16:18:21 -07:00
James Cherry
2163a5c6b9
parallel dcalc with diff arc counts resolves #288
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-06 14:43:01 -07:00
James Cherry
433f9aa7d7
report_tag_arrivals
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-05 15:52:38 -07:00
James Cherry
5d02db77d7
rm Search::checkDefaultArrivalPaths
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-05 15:52:19 -07:00
James Cherry
594537b719
latch do not propagate unclked paths (eagle 20250905)
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-05 15:51:59 -07:00
James Cherry
774c3c68f1
setVertexArrivals use tag_group_lock
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-04 18:36:18 -07:00
Mateusz Gancarz
45a8a1bcc0
search: fix truncating path ends list if sorting by slack ( #291 )
2025-09-03 16:45:33 -07:00
James Cherry
1731dd0c38
group_path -default doc resolves #292
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-03 16:08:06 -07:00
Waylander
849832a951
Fix an undefined behaviour and a memory leak ( #289 )
...
* Use a unique_ptr to avoid leaks
* Use memmove instead of memcopy
As both arguments can overlap, use memmove instead of memcopy
* Fix code style issues
2025-09-03 15:12:26 -07:00
James Cherry
e4a1ebf00e
TaGGroup refcount to reclaim memory
...
commit cd7169f99ab8b67323c444d4c22d065487e439c1
Author: James Cherry <cherry@parallaxsw.com>
Date: Sun Aug 31 16:02:03 2025 -0700
reportArrivals report_tag_index
Signed-off-by: James Cherry <cherry@parallaxsw.com>
commit 658f842a776bb43eef7dbfd9a08e191c31fb9f11
Author: James Cherry <cherry@parallaxsw.com>
Date: Mon Aug 25 16:20:50 2025 -0700
tag group ref count
Signed-off-by: James Cherry <cherry@parallaxsw.com>
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-09-03 15:05:14 -07:00
Drew Lewis
255988633f
Change DmpAlg to use preallocated arrays ( #283 )
...
* Change DmpAlg to use preallocated arrays
DmpAlg isn't called with nr_order_ > 3 so this change saves 9 news and 9
frees for each construction and destruction of the class.
* Remove nr_order size check in DmpAlg constructor
Signed-off-by: Drew Lewis <cannada@google.com>
---------
Signed-off-by: Drew Lewis <cannada@google.com>
2025-08-23 11:34:32 -07:00
James Cherry
b654fd48a8
read_liberty leak resolves ORFS#1184
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-08-20 16:00:33 -07:00
James Cherry
70f4bc0459
latch nworst thru D->Q (eagle 20250815)
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-08-18 13:27:30 -07:00
Matt Liberty
872f611fea
Support redirection for report_clock_min_period ( #286 )
...
Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2025-08-15 11:28:05 -07:00
James Cherry
5b56558e7a
GraphDelayCalc::findDelays no need to visit if iter empty
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-08-13 11:43:40 -07:00
Akash Levy
4920f673a8
JSON reporting: split out source clock path ( #285 )
2025-08-13 09:53:44 -07:00
James Cherry
0cd16e504a
set_max_delay -from pos_latch -to neg_latch (eagle 20250808)
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-08-12 18:08:01 -07:00
James Cherry
d31e3b06e2
doc spell check
...
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-08-12 12:32:36 -07:00
Ethan Mahintorabi
6d18003c04
util: Fix memory leak in PatternMatch ( #282 )
...
When allocating a new string object in tcl you need increment and
then decremenet the ref counter in order for objects to be correctly
collected.
Signed-off-by: Ethan Mahintorabi <ethanmoon@google.com>
2025-08-11 16:25:47 -07:00