Commit Graph

32 Commits

Author SHA1 Message Date
Zachary Snow f9917d94da execute always_comb/latch at time zero 2023-12-26 09:21:19 -07:00
CORRADI Quentin 619bde4be1
support for attributes in unary, binary, and ternary expressions
Co-authored-by: qcorradi <q.corradi22@imperial.ac.uk>
Co-authored-by: Zachary Snow <zach@zachjs.com>
2023-07-31 22:52:28 -04:00
Zachary Snow 0f8224023b test runner simplifications 2023-06-24 15:47:22 -04:00
Zachary Snow e1948689dd support newer iverilog versions
- Add script to drop parameters from VCDs.
- Bump the version of iverilog used in CI. I couldn't use anything never
  than eab37efb due a pending iverilog issue.
- Standardize around Python 3 in test cases.
2023-05-29 19:05:33 -04:00
Zachary Snow 03610606aa remove unneeded escapes in extractFlag 2023-05-29 15:32:27 -04:00
Zachary Snow c49fad1dba drop unneeded module-scoped references 2022-10-29 13:22:53 -04:00
Zachary Snow f061e88214 cleanup error suite infrastructure
- error suite runs in both regular and verbose mode
- add helper for extracting "flags" from test files
- common assertMatch, assertNotMatch helpers
- remove unused assertExists helper
- fix un-escaped wildcard in assert_deferred_nonzero.sv
2021-10-05 14:25:10 -06:00
Zachary Snow 306d71334b refactor sizing and truncation of integer literals
- use iverilog's -gstrict-expr-width throughout test suite
- add warnings for excess bits or padding zeroes in number literals
- add new --oversized-numbers parameter to retain support for unsized
  numbers wider than 32 bits
- localized use of oversized numbers to new truncate test suite which
  verifies the behavior of both modes, and compares against the known
  behavior of iverilog
2021-08-09 22:10:29 -06:00
Zachary Snow 527b59ff12 upgrade iverilog to lastest on v11-branch
Workarounds for resolved iverilog issues have been removed.
2021-08-04 17:50:53 -06:00
Zachary Snow 44c2e870f0 test runner checks for warnings emitted by sv2v 2021-08-02 09:18:45 -06:00
Zachary Snow 543b4590cb streamline iverilog test wrapper 2021-08-01 16:38:41 -06:00
Zachary Snow c7375d9016 fix pass-through codegen and parsing issues
- automatic pass-through test suite coverage
- fix codegen for interface based typedefs
- allow declaration of generic interface ports in module body
- fix codegen for comments within for loop initialization
- fix codegen of class param decls
2021-06-25 12:53:03 -06:00
Zachary Snow 108852060e prefix bare generate blocks with conditionals in codegen 2021-06-17 15:27:51 -04:00
Zachary Snow d2a18e01f2 replace integer unsigned with size-32 reg 2021-06-03 21:18:32 -04:00
Zachary Snow 74a10a8e13 fix else branch association in verbose mode 2021-05-23 15:54:49 -04:00
Zachary Snow fbde7aaca6 faster test runner pattern matching 2021-05-22 22:00:32 -04:00
Zachary Snow 801955ffab support for empty port connections 2021-05-21 14:08:12 -04:00
Zachary Snow 5aea0ee95e add write adjacent mode 2021-02-03 09:30:30 -05:00
Zachary Snow b8759776ca limited progress on typeof signedness
- ensure concats and repeats stay unsigned
- defer unbased-unsized conversion to enable cast semantics
- disable inaccurate folding of binary operations of based numbers
- fix typeof and size cast binop signedness logic
- fix typeof $unsigned and $signed
- test harness allows production of `integer unsigned`
2021-02-01 10:17:50 -05:00
Zachary Snow 8c967ea9c7 cast function generated output stability
- cast functions in separate scopes are no longer omitted or removed
- package item reordering excludes locally declared names
- test runner ensures output is stable after first iteration
2021-01-24 14:29:54 -06:00
Zachary Snow e72d372d73 omit reference file for verilog-compatible test inputs 2020-12-08 11:39:17 -07:00
Zachary Snow d46e1f24b4 run tests single threaded 2020-07-12 15:53:17 -06:00
Zachary Snow 6b81f87a88 fix stale logs in test runner 2020-06-29 16:08:49 -06:00
Zachary Snow 2d134a8640 fix verbose mode crash 2020-06-22 21:50:00 -04:00
Zachary Snow eb93ba67fc integer atom explicit sign cast support 2020-06-06 21:26:14 -04:00
Zachary Snow a77347f5cc streamline test performance 2019-10-02 23:52:33 -04:00
Zachary Snow 454afa97a3 major array pack and flatten update (closes #48)
- dimensions flattening conversion only flattens packed dimensions
- conversion for packing arrays when necessary (preserves memories)
- added coverage for array with multiple packed dimensions
- test runner no longer forbids multi-dim accesses after conversion
- Decl and subordinate types derive Ord
2019-09-26 23:11:59 -04:00
Zachary Snow c7f51209df remove extraneous explicit unsigned (resolves #45) 2019-09-24 23:35:06 -04:00
Zachary Snow aa294eaad0 genvars declared in for loops retain scoping (resolves #46) 2019-09-21 13:36:33 -04:00
Zachary Snow 77b9d2f085 support and conversion for foreach 2019-09-15 16:32:19 -04:00
Zachary Snow 73e961d7c2 simulation output properly filters VCD log line 2019-09-09 23:37:54 +02:00
Zachary Snow 8119cdd6b1 added test coverage for compilation unit package resolution 2019-08-03 23:08:26 -04:00