Ryszard Rozak
4f7e155e59
Fix class parameters of enum types ( #4219 )
2023-05-24 15:51:03 +02:00
Wilson Snyder
ff324625e4
CI: Disable m32 on g++
2023-05-23 23:04:24 -04:00
Wilson Snyder
fd7515b046
Tests: Cleanup scenarios lines. No test run change.
2023-05-23 22:40:19 -04:00
Wilson Snyder
607f853bc7
CI: Disable m32 on g++
2023-05-23 22:35:07 -04:00
Wilson Snyder
09fb1174f1
CI: Disable m32 on g++
2023-05-23 22:34:27 -04:00
Wilson Snyder
542eaab3dd
CI: Disable m32 on g++
2023-05-23 22:28:40 -04:00
Wilson Snyder
a301a498f5
CI: Disable m32 on g++
2023-05-23 22:27:10 -04:00
Wilson Snyder
d66e749ec8
CI: Fix mold build
2023-05-23 22:25:03 -04:00
Wilson Snyder
c8ca54ea31
CI: Disable m32 on g++
2023-05-23 22:24:47 -04:00
Wilson Snyder
5704552053
Fix ci for mold
2023-05-23 21:30:39 -04:00
Wilson Snyder
426069a4dd
Configure for faster C++ linking using 'mold', if it is installed.
2023-05-23 21:26:29 -04:00
Wilson Snyder
19d0aabe7a
Internals: Fix extra cast on ExprStmt.
2023-05-23 20:52:30 -04:00
Krzysztof Boroński
fb0d735f68
Tests: Skip t_suspendable_deep if coroutines are not supported by CXX toolchain ( #4217 )
2023-05-23 14:02:40 -04:00
Krzysztof Boroński
167a30be1c
Fix deep traversal of class inheritance timing ( #4216 )
2023-05-23 09:01:57 -04:00
Wilson Snyder
5982528274
Fix duplicate std:: declaration with -I ( #4215 ).
2023-05-22 20:32:20 -04:00
Krzysztof Boroński
de3095e3b4
Fix missing class forward declarations ( #4151 )
2023-05-22 08:29:01 -04:00
Wilson Snyder
8e0682f442
Fix V3Expand ignoring side effects
2023-05-21 21:02:39 -04:00
Wilson Snyder
140994d2c4
Internals: Cleanup more VL_RESTORER. No functional change intended.
2023-05-21 14:06:39 -04:00
Wilson Snyder
950e29d56e
Internals: Cleanup some missing VL_RESTORER in V3Gate. No functional change intended.
2023-05-21 12:49:07 -04:00
Wilson Snyder
65667356b6
wip
2023-05-21 12:24:00 -04:00
Wilson Snyder
6b393e9d7c
Internals: Allow statement-in-statement recursion in V3Premit
2023-05-21 12:03:13 -04:00
Wilson Snyder
4818130e4f
Internals: Remove dead code, addBeforeStmt
2023-05-20 22:37:28 -04:00
Ryszard Rozak
9da3aacd08
Fix bit selections under parameterized classes ( #4210 )
2023-05-18 20:01:36 -04:00
Krzysztof Bieganski
729f8b9334
Move suspendable detection to a separate visitor ( #4208 )
...
This makes the implementation of the detection and propagation of the
suspendable property simpler and easier to read. More importantly, there are no
more jumps around the AST with the `visit` functions, which in some cases could
result in incorrect visitor context while in the `visit` function. See the added
test, which would cause Verilator to segfault before this patch.
In testing, verilation performance was not shown to be affected by this change.
Though there is a slight performance improvement from this patch, due to adding
one more check before refreshing class member cache.
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2023-05-17 17:09:33 +00:00
Ryszard Rozak
279216048b
Fix dotted references in parameterized classes ( #4206 )
2023-05-16 07:40:02 -04:00
Ryszard Rozak
2ce7a348df
Fix references to members of parameterized base classes ( #4196 )
2023-05-15 19:50:04 -04:00
Wilson Snyder
46f719ceaa
Tests: Fix some coverage holes
2023-05-13 20:15:03 -04:00
Mariusz Glebocki
949be301de
Internals: Fix unbalanced V3LockGuard locking ( #4193 )
2023-05-13 10:32:33 -04:00
Mariusz Glebocki
be429a5800
Internals: Lock the same mutex reference as specified in VL_ACQUIRE. ( #4194 )
2023-05-13 10:28:34 -04:00
Mariusz Glebocki
e7714e0902
Internals: Add additional clang's thread safety analysis annotations ( #4195 )
...
* Simplify some Clang-specific attribute defines.
* Add `VL_RETURN_CAPABILITY` and `VL_PT_GUARDED_BY`.
2023-05-12 09:06:36 -04:00
Krzysztof Bieganski
4835ed6967
Fix forced assignments that override non-continuous assignments ( #4183 ) ( #4192 )
...
Only assign forced value on release if it was forced in the first place.
2023-05-12 06:57:12 -04:00
Ryszard Rozak
0198a3fc52
Use unchanged copy of parameterized class for instantation ( #4179 )
2023-05-11 09:56:15 +02:00
Krzysztof Boroński
e095bf1af0
Support inside expressions with strings and doubles ( #4138 ) ( #4139 )
2023-05-10 20:36:41 -04:00
Aylon Chaim Porat
d5de67c6dc
Fix wide structure VL_TOSTRING_W generation ( #4188 ) ( #4189 )
...
* V3Common.cpp::makeVlToString: fix `VL_TOSTRING_W` statement generation to include width argument
* fix contribution name
* add testcase for long struct `VL_TO_STRING_W` bug
2023-05-10 20:34:44 -04:00
Ryszard Rozak
2267db093f
Fix hashes of instances of parameterized classes ( #4182 )
2023-05-10 18:34:29 -04:00
Ryszard Rozak
5aecfa98a1
Internals: Add param value string to hash in V3Param.cpp ( #4186 )
2023-05-10 17:52:17 -04:00
Wilson Snyder
485e230dd8
Commentary ( #4187 )
2023-05-10 17:51:22 -04:00
Wilson Snyder
befb415f27
Fix mod/div/round argument side effects
2023-05-07 22:31:31 -04:00
Wilson Snyder
c0490627bf
Tests: Update historical
2023-05-07 22:00:52 -04:00
Wilson Snyder
d269fbb446
Add creating __inputs.vpp file with --debug ( #4177 ).
2023-05-07 17:58:14 -04:00
Wilson Snyder
444020f7c7
Fix super.new missing data type ( #4147 ).
2023-05-07 16:47:34 -04:00
Wilson Snyder
6188083baa
Tests: Improve randc tests
2023-05-07 15:08:44 -04:00
Wilson Snyder
c2a524d80b
Commentary ( #4175 )
2023-05-07 08:36:03 -04:00
Wilson Snyder
e6f5a0495f
Fix $fscanf of decimals overflowing variables ( #4174 ).
2023-05-07 08:25:10 -04:00
Wilson Snyder
0606a29f13
Fix arrays of unpacked structs ( #4173 ).
2023-05-06 21:41:17 -04:00
Wilson Snyder
c6052830e1
Fix C++17 requirement on previous commit.
2023-05-06 20:23:35 -04:00
Wilson Snyder
4bb876aee5
Fix false IMPLICITSTATIC on package functions.
2023-05-06 19:48:22 -04:00
Wilson Snyder
a3640c1767
Support get_randstate/set_randstate class method function.
2023-05-06 19:09:19 -04:00
Wilson Snyder
250c6950cf
Fix randomize missing simple class rand members.
2023-05-06 18:33:08 -04:00
Wilson Snyder
76f5de6e54
Replace flake8 with ruff for Python linting
2023-05-06 06:08:32 -04:00