Wilson Snyder
7db7d3df0d
Misc style cleanups
2020-02-23 20:18:02 -05:00
Wilson Snyder
af84c975f1
Misc style cleanup.
2020-02-23 19:57:28 -05:00
Wilson Snyder
c4c190398f
Split not needed with --xml-only
2020-02-23 19:56:18 -05:00
Wilson Snyder
784e39131b
Merge from master
2020-02-23 19:38:27 -05:00
Wilson Snyder
28e19cef90
Fix undeclared VL_SHIFTR_WWQ, #2114 .
2020-02-23 19:33:37 -05:00
Yutetsu TAKATSUKASA
e379683e97
style change
2020-02-23 16:23:35 +09:00
Yutetsu TAKATSUKASA
5899177fc1
Pass AstVar, AstVarRef, AstSel
2020-02-23 16:10:30 +09:00
Yutetsu TAKATSUKASA
a259f9d15d
module list for packed variables are also deterministic.
2020-02-16 17:32:12 +09:00
Yutetsu TAKATSUKASA
d0957ecfc1
warning messages are shown in deterministic order for CI.
2020-02-16 17:02:29 +09:00
Yutetsu TAKATSUKASA
001e26a542
delete constify call because now the pass is called after constifyAllLint().
2020-02-16 16:03:28 +09:00
Yutetsu TAKATSUKASA
e77e8fe927
simple optimization to just check a module with split variables
2020-02-16 15:58:52 +09:00
Yutetsu TAKATSUKASA
be04672add
single entry point for V3SplitVar
2020-02-16 15:42:29 +09:00
Tobias Wölfel
18f8cd0529
Allow assert disable ( #2168 )
...
* Add +verilator+noassert flag
This allows to disable the assert check per simulation argument.
* Add AssertOn check for assert
Insert the check AssertOn to allow disabling of asserts.
Asserts can be disabled by not using the `--assert` flag or by calling
`AssertOn(false)`, or passing the "+verilator+noassert" runtime flag.
Add tests for this behavior.
Bad tests check that the assert still causes a stop.
Non bad tests check that asserts are properly disabled and cause no stop
of the simulation.
Fixes #2162 .
Signed-off-by: Tobias Wölfel <tobias.woelfel@mailbox.org>
* Correct file location
Signed-off-by: Tobias Wölfel <tobias.woelfel@mailbox.org>
* Add description for single test execution
Without this description it is not obvious how to run a single test from
the regression test suite.
Signed-off-by: Tobias Wölfel <tobias.woelfel@mailbox.org>
2020-02-15 18:17:23 -06:00
Yutetsu TAKATSUKASA
c498051c3d
refactor
...
- resolve duplicated code
- better connection
- divide long function
2020-02-14 22:39:28 +09:00
Wilson Snyder
02786b3f09
Commentary
2020-02-12 22:46:59 -05:00
Yutetsu TAKATSUKASA
8e7366eab2
Add some missing check and initialization.
2020-02-12 16:58:53 +09:00
Yutetsu TAKATSUKASA
77c52f8ab3
completely delete testing code
2020-02-12 10:53:14 +09:00
Yutetsu TAKATSUKASA
7ebfa32e13
disable full test mode
2020-02-12 09:41:44 +09:00
Yutetsu TAKATSUKASA
241e54e7b3
Tested with all existing cases after changing the code to split everything.
...
The following tests fail. Explanation is here.
- Failure because extra warnings
- vlt/t_a1_first_cc: %Error: Exec of perl failed: No stack.
make -j && test_regress/t/t_a1_first_cc.pl --vlt
- vlt/t_a2_first_sc: %Error: Exec of perl failed: No stack.
make -j && test_regress/t/t_a2_first_sc.pl --vlt
- vlt/t_flag_debugi9: %Error: Exec of perl failed: Starting Verilator 4.029 devel rev v4.028-114-g8e707db3 (mod)
make -j && test_regress/t/t_flag_debugi9.pl --vlt
- Failures because the statistics changes
- vlt/t_split_var_0: %Error: File_grep: obj_vlt/t_split_var_0/Vt_split_var_0__stats.txt: Got='26' Expected='23' in regexp: (?^i:SplitVar,\s+Split unpacked arrays\s+(\d+))
make -j && test_regress/t/t_split_var_0.pl --vlt
- vlt/t_split_var_1_bad: %Error: Line 1 mismatches; obj_vlt/t_split_var_1_bad/vlt_compile.log != t/t_split_var_1_bad.out
make -j && test_regress/t/t_split_var_1_bad.pl --vlt
- vlt/t_split_var_2_trace: %Error: VCD miscompare obj_vlt/t_split_var_2_trace/simx.vcd t/t_split_var_2_trace.out
make -j && test_regress/t/t_split_var_2_trace.pl --vlt
- vlt/t_unopt_combo_isolate: %Error: File_grep: obj_vlt/t_unopt_combo_isolate/Vt_unopt_combo_isolate__stats.txt: Regexp not found: (?^i:Optimizations, isolate_assignments blocks\s+5)
make -j && test_regress/t/t_unopt_combo_isolate.pl --vlt
- vlt/t_unopt_combo_isolate_vlt: %Error: File_grep: obj_vlt/t_unopt_combo_isolate_vlt/Vt_unopt_combo_isolate_vlt__stats.txt: Regexp not found: (?^i:Optimizations, isolate_assignments blocks\s+5)
make -j && test_regress/t/t_unopt_combo_isolate_vlt.pl --vlt
- vlt/t_xml_tag: %Error: Line 26 mismatches; obj_vlt/t_xml_tag/Vt_xml_tag.xml != t/t_xml_tag.out
make -j && test_regress/t/t_xml_tag.pl --vlt
- SplitVar changed error message by other pass.
- vlt/t_bitsel_wire_array_bad: %Error: Line 1 mismatches; obj_vlt/t_bitsel_wire_array_bad/vlt_compile.log != t/t_bitsel_wire_array_bad.out
make -j && test_regress/t/t_bitsel_wire_array_bad.pl --vlt
- vlt/t_lint_multidriven_bad: %Error: Line 9 mismatches; obj_vlt/t_lint_multidriven_bad/vlt_compile.log != t/t_lint_multidriven_bad.out
make -j && test_regress/t/t_lint_multidriven_bad.pl --vlt
- vlt/t_gen_forif: %Error: Exec of perl failed: %Warning-CLKDATA: t/t_gen_forif.v:35: Clock used as data (on rhs of assignment) in sequential block 't.Result'
make -j && test_regress/t/t_gen_forif.pl --vlt
- vlt/t_unoptflat_simple_2_bad: %Error: Exec of perl ok, but expected to fail
make -j && test_regress/t/t_unoptflat_simple_2_bad.pl --vlt
- Because of other issue https://github.com/verilator/verilator/issues/1008#issuecomment-581078519
- vlt/t_select_bound1: %Error: Exec of perl failed: %Error: t/t_select_bound1.v:23: Unsupported: 4-state numbers in this context
make -j && test_regress/t/t_select_bound1.pl --vlt
2020-02-12 09:41:44 +09:00
Wilson Snyder
39119b88d3
Code style changes. No functional change.
2020-02-09 18:58:48 -05:00
Wilson Snyder
ac552b0efb
Format standardizations (capitals/spaces), no logical change.
2020-02-09 18:27:04 -05:00
Wilson Snyder
d201ce40a0
Use newer warning format.
2020-02-09 18:08:19 -05:00
Wilson Snyder
2108b19b94
Commentary
2020-02-09 18:08:04 -05:00
Wilson Snyder
1c3b8229b4
Merge from master.
2020-02-09 17:39:23 -05:00
Wilson Snyder
70358e8587
Fix compiler warning.
2020-02-08 10:58:07 -05:00
Wilson Snyder
95b66feeb8
devel release
2020-02-08 09:16:35 -05:00
Wilson Snyder
890cecc15b
Version bump
2020-02-08 09:03:51 -05:00
Wilson Snyder
f7bad37e88
Fix GCC 4.4.7 errors.
2020-02-08 07:09:41 -05:00
Wilson Snyder
134b5efd70
Tests: Ignore obj_iv.
2020-02-07 18:00:07 -05:00
Wilson Snyder
0d6ebf21b3
Suggest svSetScope, #2152 .
2020-02-07 17:59:02 -05:00
Wilson Snyder
2d1b804e80
Fix OpenSolaris issues, #2154 .
2020-02-07 17:35:04 -05:00
Todd Strader
77f1b3eef4
Support parameter access from arrays of interfaces, #2155 .
2020-02-06 19:19:23 -05:00
Wilson Snyder
609a5dc26d
Fix cppcheck warnings. No functional change intended.
2020-02-03 23:21:56 -05:00
Wilson Snyder
0aabe6ce00
Internals: Fix cppcheck warning including missing init.
2020-02-03 22:10:29 -05:00
Wilson Snyder
20cc4e57d5
tests: Driver style fix.
2020-02-03 18:43:56 -05:00
Wilson Snyder
f3ebdc40c6
Fix some coverage lost when multithreaded, #2151 .
2020-02-03 18:43:41 -05:00
Yutetsu TAKATSUKASA
d151a9bd22
Merge remote-tracking branch 'upstream/master' into split_var0
2020-02-03 23:28:29 +09:00
Wilson Snyder
2ca9f73b31
Internals: Cleanup Emit towards constructor/destructor output.
2020-02-02 21:15:07 -05:00
Wilson Snyder
73f5e3f808
Internals: Add missing const. No functional change.
2020-02-02 10:34:29 -05:00
Wilson Snyder
8d3dad510f
Fix unused variable.
2020-02-02 06:52:28 -05:00
Wilson Snyder
2576c136f6
Fix `pragma pedantic check to work with -E.
2020-02-01 22:03:18 -05:00
Wilson Snyder
a8ad97eef2
Add VL_CACHE_LINE_BYTES and use 64 as defult.
2020-02-01 20:28:03 -05:00
Wilson Snyder
ee7da1e690
Remove .h comments for empty sections.
2020-02-01 20:11:21 -05:00
Wilson Snyder
969a46faf6
Internals: V3Emit refactoring. No functional change intended.
2020-02-01 19:32:04 -05:00
Wilson Snyder
820df28ad9
Internals: V3CUse state refactoring. No functional change intended.
2020-02-01 19:11:19 -05:00
Yutetsu TAKATSUKASA
50fb7fc8b4
Tests: Resolve self assignment in t_unoptflat_simple_2, Closes #2149 .
2020-02-01 19:07:02 -05:00
Wilson Snyder
119162912a
Internals: Determine emit forward declaraions in new pass, towards classes.
2020-02-01 16:51:05 -05:00
Wilson Snyder
80d94891e1
Internals: Allow const & non-member CFuncs for class branch. No functional change.
2020-02-01 10:57:55 -05:00
Geza Lore
f00ff61559
Link Verilator binary partially statically, Closes #2146 .
...
The build is now by default configured to link performance critical
libraries (libgcc, libstdc++, libtcmalloc) statically. This improves
Verilation speed by between 4.5-7% based on my measurements as it
eliminates approx 20% of the mispredicted branches from the execution.
With partial static linking, the size of the .text section in
verilator_bin is increased by about 14%, and the binary is itself only
about 800KB bigger on disk, so hopefully this is not a big issue in
exchange for the faster compilation speed. A configure option
"--disable-partial-static" is provided to restore the old behaviour of
linking everything dynamically.
Note: This patch also changes to use libtcmalloc_minimal, which is all
we really need and itself has fewer dependencies.
2020-01-31 19:13:55 -05:00
Wilson Snyder
2d195ebae5
Cleanup IEEE references.
2020-01-30 20:23:57 -05:00