Ryszard Rozak
4de1b22672
Fix handling of super.new calls ( #4366 )
2023-07-17 13:30:42 +02:00
Krzysztof Boroński
4bdda3f240
Improve propagation of process requirement and decouple it from suspendability ( #4321 )
2023-07-14 17:12:02 +02:00
Ryszard Rozak
ced1dfeffd
Fix select operation on assoc array with wide keys ( #4360 )
2023-07-12 18:48:24 +02:00
Krzysztof Boroński
0774f825cf
Internals: Use pointer to const nodes in V3MemberMap ( #4353 )
2023-07-12 11:36:24 -04:00
Ryszard Rozak
23fe5c1b93
Fix string concatenations ( #4354 )
2023-07-10 12:58:54 -04:00
Julian Daube
3ee9b33f8a
Fix cmake astgen for Rocky Linux 8.7 ( #4343 )
2023-07-09 06:02:21 +05:00
Wilson Snyder
5be0813893
Explicity reference std:: in header files ( #4338 ). No functional change intended.
2023-07-08 13:20:40 -04:00
Wilson Snyder
f94c1b32e5
Internals: Make V3MemberMap to remove member cache ( #4350 )
2023-07-08 12:40:27 -04:00
Wilson Snyder
ff4923cf67
Internals: Make V3MemberMap towards removing member cache ( #4350 )
2023-07-08 12:27:50 -04:00
Krzysztof Bieganski
5788bc8048
Propagate class timescale to class package ( #4348 )
...
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2023-07-07 17:27:33 +02:00
Krzysztof Bieganski
d5d1cc47e0
Fix multiple edge timing controls in class methods ( #4318 ) ( #4320 ) ( #4344 )
...
Multiple edge timing controls in class methods would cause compilation errors on
the generated C++ code. This is because the `SenExprBuilder` used for these
would get recreated per timing control, resulting in duplicate variable names.
The fix is to have a single `SenExprBuilder` per scope.
2023-07-07 08:19:49 -04:00
Aleksander Kiryk
9aa90569bf
Support string replication with variable ( #4341 )
2023-07-07 13:05:06 +05:00
Wilson Snyder
294d78e0e2
Backout unstable dbb35ab8 ( #4318 ) ( #4320 )
2023-07-05 14:26:28 -04:00
Aleksander Kiryk
399319dc1c
Fix wildcard referring types ( #4336 ) ( #4342 )
2023-07-05 13:08:00 -04:00
Krzysztof Bieganski
35d6da391b
Fix multiple edge timing controls in class methods ( #4318 ) ( #4320 )
...
Multiple edge timing controls in class methods would cause compilation errors on the generated C++ code. This is because the `SenExprBuilder` used for these would get recreated per timing control, resulting in duplicate variable names. The fix is to have a single `SenExprBuilder` per scope.
2023-07-05 10:36:10 +00:00
Aleksander Kiryk
fcbd7c87af
Fix unexpected RefDType on assoc arrays ( #4337 )
2023-07-04 18:13:22 +05:00
Ryszard Rozak
97feba6898
Support locator methods with "with" on assoc arrays ( #4335 )
2023-07-04 18:11:15 +05:00
Aleksander Kiryk
9249ffdb84
Fix queue slicing ( #4329 )
2023-07-03 13:55:24 -04:00
أحمد المحمودي
71df9e3381
Commentary: Fix typo of concurrent ( #4332 )
2023-07-02 16:12:09 -04:00
Wilson Snyder
3c964147be
Add MISINDENT lint warning for misleading indentation.
2023-07-01 10:45:25 -04:00
Wilson Snyder
54b4b6b378
Internals: Fix missing calls to cleanFileline.
2023-07-01 08:59:26 -04:00
Wilson Snyder
cff37f0775
Add GENUNNAMED lint warning.
...
Also fix generate-for blocks with empty statements getting lost.
2023-07-01 08:31:53 -04:00
Ryszard Rozak
24a9f7c650
Fix references to members of results of static methods ( #4327 )
2023-06-30 13:23:34 +02:00
Ryszard Rozak
242f661644
Fix selects of static members ( #4326 )
2023-06-30 09:12:22 +02:00
Aleksander Kiryk
32019d2bc4
Fix state update for always processes ( #4311 )
2023-06-29 09:21:49 -04:00
Krzysztof Boroński
b252bb048f
Fix unhandled overloads in V3InstrCount ( #4324 )
2023-06-28 08:49:56 -04:00
Ryszard Rozak
ba47c01a01
Fix implicit calls of base class constructors with optional arguments ( #4319 )
2023-06-27 16:08:38 +02:00
Ryszard Rozak
51266898ec
Fix comparison of string parameters ( #4308 )
2023-06-27 10:40:45 +02:00
Wilson Snyder
f9164ab0d2
Internals: Assert dtype comparison. No functional change intended.
2023-06-25 07:40:00 -04:00
Wilson Snyder
c43e707f43
Internals: refactor sameTreeIter. No functional change.
2023-06-25 07:26:45 -04:00
Mariusz Glebocki
85b7f828b3
Internals: Use `std::packaged_task` as a job wrapper; add and use `V3ThreadPool::ScopedExclusiveAccess` ( #4310 ).
...
* Add VL_ASSERT_CAPABILITY; add assumeLocked and pretendUnlock to V3Mutex.
* Pass jobs as template-arguments and use std::packaged_task.
* Add and use V3ThreadPool::ScopedExclusiveAccess.
2023-06-23 18:25:12 -04:00
Jiamin Zhu
1c88c3083c
Fix splitting coroutines ( #4297 ) ( #4307 )
2023-06-23 06:01:38 -04:00
Ryszard Rozak
4522834f7a
Fix duplicate fork names ( #4295 )
2023-06-22 06:51:53 -04:00
Ryszard Rozak
9ee5fd0585
Fix handling of ref types in initial values of type parameters ( #4304 )
2023-06-20 14:10:07 -04:00
Wilson Snyder
63b2dbb827
Fix error when multiple duplicate DPI exports ( #4301 ).
2023-06-20 06:26:46 -04:00
Wilson Snyder
d45deccc0a
Internals: Favot std::array. No functional change intended.
2023-06-16 19:44:40 -04:00
Ryszard Rozak
d1ff81a41c
Fix class reference assignment checking ( #4296 )
2023-06-15 14:00:47 +02:00
Krzysztof Bieganski
43fa6858f6
Fix `VlForkSync` redeclaration ( #4277 )
...
Given nested forks, if the inner fork had a `join` or `join_any` at the end,
`V3Sched::transformForks()` would decide that the fork's `VlForkSync` variable
should be passed in from the outside. This resulted in the `VlForkSync` getting
redeclared as a function argument. Ultimately, it led to C++ compilation errors
due to variable redeclaration.
Fixed by rearranging the `if`s that decide whether a variable should be passed
in or left as-is.
2023-06-15 07:49:50 -04:00
Krzysztof Boronski
21c01ba97b
V3Fork - transform processes that can outlive their parents into separate tasks ( #4253 )
...
Signed-off-by: Krzysztof Boronski <kboronski@antmicro.com>
2023-06-14 20:44:53 +02:00
Ryszard Rozak
b517fb5ee3
Support some stream operations on queues ( #4292 )
2023-06-13 22:46:42 -04:00
Wilson Snyder
48e98ea2bd
Internals: Sort some error codes ( #4253 ). No functional change intended.
2023-06-13 08:52:13 -04:00
Julien Margetts
ac4315e145
Fix LATCH warning on function local variables ( #4221 ) ( #4284 )
2023-06-12 09:24:46 -04:00
Àlex Torregrosa
4b7b185d05
Fix VCD scope types ( #4227 ) ( #4282 )
2023-06-08 11:43:04 -04:00
Aleksander Kiryk
6cb0335d28
Support array max ( #4275 )
2023-06-07 07:44:21 -04:00
Aleksander Kiryk
c248318958
Fix struct redefinition ( #4276 )
2023-06-06 18:28:35 -04:00
Ryszard Rozak
c3e5db5f04
Fix names of foreach blocks ( #4264 )
2023-06-06 16:24:42 +02:00
Krzysztof Bieganski
058233fc87
Set the global `usesTiming` flag if forks exist ( #4274 )
2023-06-06 09:35:12 -04:00
Mariusz Glebocki
186c851695
Internals: Avoid pessimistic mutex locking in waitIfStopRequested() ( #4272 ). No functional change intended.
...
`stopRequested()` reads only atomic variables. It doesn't need a mutex
to do this.
This function is called in `waitIfStopRequested()`, which in turn
is called before execution of every job, and inside some jobs. With this
change the mutex inside `waitIfStopRequested` needs to be locked only in
very rare cases instead of every time.
2023-06-05 19:40:36 -04:00
Mariusz Glebocki
5aa36357f6
Internals: Use `auto` instead of SFINAE in return type ( #4271 ). No functional change intended.
2023-06-05 18:53:19 -04:00
github action
a7b0551d23
Apply 'make format'
2023-06-03 14:11:23 +00:00