Commit Graph

517 Commits

Author SHA1 Message Date
Wilson Snyder
7c8d914711 V3Number::setZero can be public. No functional change. 2009-10-05 21:09:26 -04:00
Wilson Snyder
4d1f8bd057 Increase default --unroll-stmts 2009-10-05 07:49:02 -04:00
Wilson Snyder
b883ce95b2 Add --gdbbt option 2009-10-04 18:04:37 -04:00
Wilson Snyder
546e7c0c1f Internals: iterateAndNext now requires backp to exist, for forward compatibility 2009-10-04 17:01:35 -04:00
Wilson Snyder
4f2dc0ecff Internals: Route abort() through vlabort(). No functional change 2009-10-04 17:01:28 -04:00
Wilson Snyder
03c5d06107 Visitors that just accept netlists should say so. No functional change 2009-10-01 22:33:11 -04:00
Wilson Snyder
db5674cb08 Fix VCD files showing internal flattened hierarchy, broke in 3.714. 2009-09-26 09:31:50 -04:00
Wilson Snyder
66d000f4ba Repair new AstConst::Unsigned32 constructor 2009-09-26 06:43:06 -04:00
Wilson Snyder
2c3c990019 Move swap to V3Ast, and tell which AstUser*InUse fails assertions 2009-09-23 23:10:46 -04:00
Wilson Snyder
cb8b0d3597 No need for V3Signed to recurse into generate if. 2009-09-22 18:58:59 -04:00
Wilson Snyder
7a86514505 Rename opRange->opSel to match AstRange. No functional change. 2009-09-20 09:30:39 -04:00
Wilson Snyder
3a0babb47d Version bump 2009-09-18 22:37:53 -04:00
Wilson Snyder
abc738b6f1 Fix deep defines causing flex scanner overflows. 2009-09-17 22:23:18 -04:00
Wilson Snyder
d37cc5a160 Fix preprocessing commas in deep parameterized macros. 2009-09-17 22:00:17 -04:00
Wilson Snyder
1a0de753e9 Don't require SYSTEMPERL_INCLUDE if SYSTEMPERL/src exists. 2009-09-17 21:31:03 -04:00
Wilson Snyder
b798f4fe71 Detect selection index unknown instead of internal erroring 2009-09-16 20:52:52 -04:00
Wilson Snyder
0c0a588b55 Support generate for var++, var--, ++var, --var. 2009-09-16 10:32:14 -04:00
Wilson Snyder
faa5ef193b Add --bbox-sys option to blackbox $system calls. 2009-09-16 09:28:09 -04:00
Wilson Snyder
4c7b5005a6 Give fatal instead of coredump 2009-09-15 18:11:56 -04:00
Wilson Snyder
9cf61cef9d Fix --error-limit option being ignored. 2009-09-15 18:11:21 -04:00
Wilson Snyder
0b24e62d43 Fix $display with uppercase %M. 2009-09-11 19:25:42 -04:00
Wilson Snyder
91b1e66933 Fix tracing escaped dotted identifiers. 2009-09-07 15:55:54 -04:00
Wilson Snyder
eea2712eac Improved warning when "do" used as identifier. 2009-09-07 15:54:12 -04:00
Wilson Snyder
b19a4b6956 Version bump 2009-08-04 15:23:23 -04:00
Wilson Snyder
a01c995a53 Fix escaped preprocessor identifiers, bug106. 2009-07-31 12:02:43 -04:00
Wilson Snyder
59b491e3a8 Allow renaming C keywords 2009-07-22 15:21:41 -04:00
Wilson Snyder
c44febe85e Remove ; from end of some function definitions. No functional change 2009-07-22 14:38:20 -04:00
Wilson Snyder
15b3c9797b Fix constant functions with and begin/end 2009-07-21 14:31:16 -04:00
Wilson Snyder
aeeaaa53d4 Support constant function calls for parameters. 2009-07-17 14:13:11 -04:00
Wilson Snyder
a532fce0e4 V3Simulate now knows which node causes non-simulatable errors 2009-07-16 15:30:34 -04:00
Wilson Snyder
510fe8e634 Explicitly size all parameters, even if not used for module cells 2009-07-16 14:49:34 -04:00
Wilson Snyder
556d90a1b4 Remove implicit width 1 var creation. No functional change 2009-07-16 14:06:53 -04:00
Wilson Snyder
4dde1ede0e Support SystemVerilog "logic", bug101. 2009-07-16 09:19:15 -04:00
Wilson Snyder
12cb819adc Split V3Simulate out of V3Table - no functional change 2009-07-14 11:24:21 -04:00
Wilson Snyder
0607edd191 Version bump 2009-07-14 08:42:01 -04:00
Wilson Snyder
6835aecdce On WIDTH warnings, show variable name causing error. 2009-07-09 17:39:24 -04:00
Wilson Snyder
8174c1ad02 Patching SystemC is no longer required to trace sc_bvs. 2009-07-07 17:51:00 -04:00
Wilson Snyder
6129452681 Makefile: Rebuild only on git head change, not touching a file 2009-06-30 11:56:00 -04:00
Wilson Snyder
be1a3f427e Support zero-width constants in concatenations. 2009-06-30 11:54:07 -04:00
Wilson Snyder
348c43de63 Add verilator --pins-uint8 option to use sc_in<uint8_t/uint16_t>. 2009-06-29 09:21:21 -04:00
Wilson Snyder
8b20d777b0 Add verilator -V option, to show verbose version. 2009-06-25 19:53:26 -04:00
Wilson Snyder
ec0947ef7e Add BLKLOOPINIT error code, and describe --unroll-count. 2009-06-24 17:24:42 -04:00
Wilson Snyder
02e6005fa9 Version bump 2009-06-23 14:09:38 -04:00
Wilson Snyder
a32caac3c1 Fix error on case statement with all duplicate items, bug99. 2009-06-22 18:49:20 -04:00
Wilson Snyder
2aa618ce98 Add 'See the manual' to unsupported+internal errors 2009-06-21 19:37:15 -04:00
Wilson Snyder
96b23f6edd Make old site-specific configuration more generic,
set DIRPROJECT_PERL_BOOT to a script for bin/verilator to call to do setup.
2009-06-21 13:17:12 -04:00
Wilson Snyder
02d162858f Fix compiler errors under Fedora release candidate 11. 2009-06-12 09:56:46 -04:00
Wilson Snyder
3c395c26be Support decimal constants of arbitrary widths. 2009-06-12 08:27:48 -04:00
Wilson Snyder
ea78520220 Fix tristates causing "Assigned pin is neither..." 2009-06-09 15:37:52 -04:00
Wilson Snyder
b9be4ae4e8 Fix segfault on unrolling for's with bad inits, bug90. 2009-06-08 15:59:33 -04:00
Wilson Snyder
e9a7f60fa7 Version bump 2009-05-19 07:50:56 -04:00
Wilson Snyder
0a02d1f336 Reconsile with Verilog-Perl r77464 2009-05-19 07:49:19 -04:00
Wilson Snyder
663f3592ba `__FILE__ now expands to a string, per draft SystemVerilog 2010(ish). 2009-05-19 07:15:13 -04:00
Wilson Snyder
f9484a894f Reconsile with Verilog-Perl 2009-05-11 20:32:52 -04:00
Wilson Snyder
4e522ab7f5 Fix define formal arguments that contain newlines, bug84. 2009-05-11 11:57:43 -04:00
Wilson Snyder
592b2e76a8 Prepatory code for tracing escaped dots 2009-05-08 14:48:33 -04:00
Wilson Snyder
a3e463030d Fix escaped identifiers with '.' causing conflicts, bug83. 2009-05-08 13:16:19 -04:00
Wilson Snyder
4569278c53 Reconsile parser with Verilog-Perl version, to enable more SV features 2009-05-07 18:28:05 -04:00
Wilson Snyder
851b022c7a Change lexer to more closely match Verilog-Perl. Should be no functional change 2009-05-05 13:39:25 -04:00
Wilson Snyder
0985f675e3 Update bisonpre to match Verilog-Perl version 2009-05-04 21:54:44 -04:00
Wilson Snyder
7df730cedd Verilator is now licensed under LGPL v3 and/or Artistic v2.0. 2009-05-04 17:07:57 -04:00
Wilson Snyder
314ffd9353 Version bump 2009-05-02 07:38:24 -04:00
Wilson Snyder
2c953dc37f Fix $clog2 calculation error with powers-of-2, bug81. 2009-05-01 22:18:32 -04:00
Wilson Snyder
50f835c701 Fix segfault with error on bad --top-module, bug79. 2009-04-24 10:32:11 -04:00
Wilson Snyder
cbb3351d97 Fix GCC 4.3.2 compile warnings. 2009-04-23 09:16:25 -04:00
Wilson Snyder
2cedef1333 Avoid config_rev making empty file on errors 2009-04-23 09:11:40 -04:00
Wilson Snyder
4a1697a1b5 Fix GCC format warning 2009-04-08 21:47:48 -04:00
Wilson Snyder
86f08a341c Fix error with tasks that have output first, bug78. 2009-04-08 14:33:12 -04:00
Wilson Snyder
3d85cbe6b5 Fix "cloning" error with -y/--top-module, bug76. 2009-04-07 13:23:25 -04:00
Wilson Snyder
eb072da81c Version bump 2009-03-28 10:30:35 -04:00
Wilson Snyder
38669d0a10 Add SYSTEMPERL_INCLUDE envvar to assist RPM builds. 2009-03-28 10:18:53 -04:00
Wilson Snyder
202a8bc3bb Internals: Use common wrapper for setenv 2009-03-28 09:15:13 -04:00
Wilson Snyder
45e8ed6b49 Internals: Cleanup what symbol lookups need to recurse up vs not. 2009-03-24 09:22:58 -04:00
Wilson Snyder
96692e8a5b Report errors when duplicate labels are used, bug72. 2009-03-23 14:57:15 -04:00
Wilson Snyder
ecb08b0cf3 Internals: V3Link uses new common func to make symbol table 2009-03-23 13:52:36 -04:00
Wilson Snyder
71bdfd9710 Fix ASSIGN_SI errors with new --pins-bv 1 option 2009-03-13 22:58:55 -04:00
Wilson Snyder
193dcf38f4 Add --pins-bv option to use sc_bv for all ports. 2009-03-13 14:17:30 -04:00
Wilson Snyder
09091781cf Fix the SC_MODULE name() to not include __PVT__, for nicer coverage. 2009-03-12 14:07:38 -04:00
Wilson Snyder
023519c8f6 Version bump 2009-02-26 07:44:00 -05:00
Wilson Snyder
d60d0a60c7 Support repeat and forever statements. 2009-02-25 22:06:59 -05:00
Wilson Snyder
8fe0c3dd84 Commentary in parser to match Verilog-Perl 2009-02-25 17:16:51 -05:00
Wilson Snyder
85419f01a9 Fix left associativity for ?: operators. 2009-02-07 20:54:09 -05:00
Wilson Snyder
a199f4a849 Update Bison parser to track Verilog-Perl 3.110. No functional change 2009-01-28 15:27:41 -05:00
Wilson Snyder
2224918730 Fix error messages to consistently go to stderr. 2009-01-26 07:57:59 -05:00
Wilson Snyder
c4e69daecd Add IEEE grammar comments; sync with Verilator-Perl parser 2009-01-24 21:36:14 -05:00
Wilson Snyder
08f736ae33 bisonpre: Reconsile Verilog-Perl and Verilator bisonpre 2009-01-24 16:44:03 -05:00
Wilson Snyder
21b5a4e9e4 Add --debugi-<srcfile> option. 2009-01-21 16:56:50 -05:00
Wilson Snyder
8f88fa45f1 Make grammer names more closely track IEEE. No functional change. 2009-01-15 13:58:43 -05:00
Wilson Snyder
13e8176884 Fix compile issues with GCC 4.3, bug47. 2009-01-09 11:28:50 -05:00
Wilson Snyder
aac0130613 Version bump 2009-01-08 10:52:37 -05:00
Wilson Snyder
0877f44cb5 Fix creating parameterized modules when no parameter values are changed. 2009-01-08 09:22:31 -05:00
Wilson Snyder
59159b4811 Clock gating optimization, currently disabled. Merge from branch 2009-01-07 09:37:59 -05:00
Wilson Snyder
12bd12e112 Support bufif0, bufif1, notif0, notif1 2009-01-06 11:57:25 -05:00
Lane Brooks
0e4f9170fa Tristate support; merge from branch. 2009-01-06 11:03:57 -05:00
Lane Brooks
6f81a9cb1e Added *~ to .gitignore to exclude emacs backup files. 2009-01-06 09:25:47 -05:00
Wilson Snyder
41555e5aa3 Coverage of each parametarized module is counted separately. 2009-01-05 14:16:09 -05:00
Wilson Snyder
3d06720628 Copyright year update 2009-01-02 11:47:39 -05:00
Wilson Snyder
c1d2b98386 Fix wrong result for read of delayed FSM signal, bug46. 2008-12-30 17:11:25 -05:00
Wilson Snyder
1a60723d77 Fix internal error on "output x; reg x = y;" 2008-12-30 14:34:01 -05:00
Wilson Snyder
a07a234761 Fix compile error on Ubuntu 8.10. 2008-12-22 11:28:42 -05:00
Wilson Snyder
0bb4ccd7cd Fix coverage module names including parameter values 2008-12-12 17:28:27 -05:00
Wilson Snyder
74cf205bcf Move coverage type field into page field, and add module name 2008-12-12 16:04:56 -05:00
Wilson Snyder
77405ddded Add toggle coverage 2008-12-12 15:34:02 -05:00
Wilson Snyder
6b46da0240 Create /*verilator coverage_on/off*/ instead of coverage_module_off.
This allows finer grained bracketing of sections of interest.
Convert tracing_on/off to use the same general scheme.
2008-12-11 16:01:41 -05:00
Wilson Snyder
0815812546 Internals: Flip state of FileLine warning array, in prep for next change 2008-12-11 15:23:44 -05:00
Wilson Snyder
0fed1d34d1 Add /*verilator coverage_module_off*/ 2008-12-10 17:10:03 -05:00
Wilson Snyder
a1e091cff7 Internals: Last commit showed that V3LinkLevel is mostly redundant with V3LinkCells 2008-12-09 21:05:47 -05:00
Wilson Snyder
adebc99e49 Fix certain generate-if cells causing clone error. 2008-12-09 20:59:22 -05:00
Wilson Snyder
d3d1291d5a Fix line coverage of public functions.
Line coverage now aggregates by hierarchy automatically.
Previously this would be done inside SystemPerl, which was slower.
2008-12-05 10:54:14 -05:00
Wilson Snyder
de61015e08 Internal: V3Order should only use user4 for short period to support future clock gating 2008-12-03 10:27:56 -05:00
Wilson Snyder
9d856ec1bf Fix SystemC 2.2 deprecated warnings about sensitive() and sc_start(). 2008-12-03 10:11:28 -05:00
Wilson Snyder
5bdb8674ed Internals: Rename AstNode::userp to user1p for easier searching
and to disambiguate from the vertex/edge-> userp.
2008-11-25 09:03:49 -05:00
Wilson Snyder
5563c9666c Internals: Smaller AstNode to save space/time 2008-11-25 08:10:41 -05:00
Wilson Snyder
30ad20be52 Internals: Eliminate user5 for smaller AstNode/better runtime 2008-11-25 07:57:02 -05:00
Wilson Snyder
41dbfc9e1c Support posedge of bit-selected signals, bug45. 2008-11-22 21:10:20 -05:00
Wilson Snyder
b07dd622fa Commentary: Debugging and some astgen code cleanup.
No functional change.
2008-11-22 17:37:20 -05:00
Wilson Snyder
6ad21b3b3b Internals: Move V3Const to user4 to reduce future collisions 2008-11-22 17:27:55 -05:00
Wilson Snyder
a242c1019d Internal speedups: Skip iterator for Termop or VarRefs.
Fix AstUCFunc being mis-labeled as a Termop.
2008-11-22 15:28:29 -05:00
Wilson Snyder
c595d67311 Speed up Verilator itself by prefetching pointer-chase 2008-11-22 14:59:22 -05:00
Wilson Snyder
8b77379e2c Internal coding: Assert that user#() don't overlap.
Any use of a user() must now be declared, generally in the Visitor class with
    AstUser#InUse   arbitrary_object
This lets the code track if there's another request for the same user(),
preventing nasty hard to debug cases where they overlap.  This will also
call user#ClearTree(), so a bunch of those were removed, though many
extranious ones still remain.
2008-11-21 15:50:33 -05:00
Wilson Snyder
7ad29c6329 Test driver: Add benchmark option 2008-11-21 14:38:12 -05:00
Wilson Snyder
14756fa131 Internals: Make graph sorting usable in other visitors, in prep for future
changes.  No functional change.
2008-11-20 09:04:29 -05:00
Wilson Snyder
ddbfc176b6 Internals: Create AstNodeSelItem in prep for future commits.
No real functional change, outside of minor debug dump differences.
2008-11-20 07:55:54 -05:00
Wilson Snyder
ab668b066f Internal cleanup: no functional change.
Add cloneTree to each node type so cast not required after use.
Standardize declaring common AstNode functions via a macro.
2008-11-19 20:15:05 -05:00
Wilson Snyder
a4bcb3de4a Test driver: Use __ to prevent conflicts between similar named tests 2008-11-19 16:44:51 -05:00
Wilson Snyder
211894cb3e Fix arrayed variables under function not compiling, bug44. 2008-11-19 09:43:03 -05:00
Wilson Snyder
b75ff3652c Fix internal signal names containing control characters (broke in 3.680).
Internally this means for signal names use __0{xdigit}{xdigit} and avoid
__0 in other cases.
2008-11-17 21:02:10 -05:00
Wilson Snyder
13f6c5a934 Fix --output-split-cfuncs to also split trace code. 2008-11-17 17:13:57 -05:00
Wilson Snyder
2e0f6e2b13 Optimize two-level shift and and/or trees. 2008-11-17 11:36:01 -05:00
Wilson Snyder
c5d41ee2d9 Optimize constants up across sub expressions 2008-11-17 10:40:58 -05:00
Wilson Snyder
5f70c1aa68 Add debug dumps of V3Hash state 2008-11-16 20:39:49 -05:00
Wilson Snyder
d2105ba390 Commentary 2008-11-16 20:30:22 -05:00
Wilson Snyder
e46e7bbf99 Fix 'bad select range' warning missing some cases, bug43. 2008-11-12 20:54:58 -05:00
Wilson Snyder
4eeeb72dd5 Version bump 2008-11-12 15:32:22 -05:00
Wilson Snyder
adefa45fb4 After module, clear m_modp as not relevant any longer 2008-11-12 15:32:09 -05:00
Wilson Snyder
f3a4752799 Fix MSVC compile error; bug42. 2008-11-05 10:52:23 -05:00
Wilson Snyder
3d788b4b93 Fix "Missing coverage in PSL" due to "cover property $stop" statements.
"cover property" reported hierarchy now includes named begin blocks.
2008-11-05 10:23:03 -05:00
Wilson Snyder
5d2675e38a Repair of last 2 checkins; dots in wrong place when 2 level deep inline 2008-11-05 09:14:49 -05:00
Wilson Snyder
288d7bd9dc Commentary 2008-11-05 08:55:52 -05:00
Wilson Snyder
3e8cf26c1a Fix coverage hierarchy being backwards with inlining. 2008-11-04 17:19:59 -05:00
Wilson Snyder
ce212722ad Fix 'for' under 'generate-for' causing error; bug38. 2008-10-28 21:38:01 -04:00
Wilson Snyder
e49fc945df Fix GCC 4.3 compile error; bug35 2008-10-15 10:49:05 -04:00
Wilson Snyder
384807ebbd Ignore SystemVerilog timeunit and timeprecision 2008-10-14 14:49:54 -04:00
Wilson Snyder
ac619ef3d8 Include Verilog file's directory name in coverage reports. 2008-10-14 14:27:11 -04:00
Wilson Snyder
a348bd3458 Add unique and parallel case 2008-10-10 19:02:27 -04:00
Wilson Snyder
bcc7045fc9 Version bump 2008-10-08 17:08:47 -04:00
Wilson Snyder
3b1929259a Support negative bit indexes.
Allow arbitrary characters in symbols (to make '-' work.)
Final merge from negative_lsb branch.
2008-10-06 09:59:22 -04:00
Wilson Snyder
cdd6ea8e60 Fix genvars causing link error when using --public. 2008-09-30 08:58:07 -04:00
Wilson Snyder
4b8927af75 Expand environment variables in -f input files. 2008-09-29 15:51:45 -04:00
Wilson Snyder
bd6e8d808c Report error if port declaration is missing; bug32. 2008-09-23 09:35:00 -04:00