Commit Graph

44 Commits

Author SHA1 Message Date
Ethan Sifferman bc79e30fe5
convert severity and elaboration system tasks (#276) 2024-09-02 23:41:29 -04:00
Zachary Snow 52197df325 add bugpoint mode
This mode reduces the size of test cases that encounter conversion
errors or produce incorrect output. The logic developed slowly over the
past three years. It is in a state that I find useful when fielding bug
reports, but has some room for improvement in terms of constraints and
filtering.
2024-06-19 23:06:34 -04:00
Zachary Snow 2d32fe9c2d minor help text updates 2023-06-22 00:05:06 -04:00
Zachary Snow 04d65bb388 added --write directory mode with one file per module 2023-06-21 08:25:42 -04:00
Zachary Snow 911243dac4 add --top for filtering uninstantiated modules 2023-06-18 22:36:43 -04:00
Zachary Snow 51c90baf5e support for loading from library directories 2023-06-13 22:53:36 -04:00
Zachary Snow a129e3bc68 add test suite documentation 2023-05-30 22:36:54 -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 646cb21b49 updated readme 2023-05-07 14:15:31 -04:00
Zachary Snow c843efd504 add UnbasedUnsized to --exclude help message 2021-10-13 20:18:15 -06:00
Zachary Snow 540a0c8ec1 minor readme tweaks 2021-09-21 22:11:02 -04:00
Zachary Snow 407ba59042 add internal --dump-prefix utility 2021-09-05 19:54:36 -04: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 c5691d9500 move --pass-through to the conversion option group 2021-08-05 22:16:39 -06:00
Zachary Snow df2524ea21 cleanup license file (no functional change)
With permission from Tom Hawkins, I have updated sv2v's existing BSD
3-Clause license to match the exact text of the standard BSD 3-Clause
license. The wording changes, listed below in full, are entirely
innocuous. The copyright attribution is now simpler. The license heading
and link have been removed from the readme. These changes enable the
license to be appropriately detected by GitHub's license detection tool,
hopefully eliminating any potential confusion about the license in use.

- "author" ==> "copyright holder"
- "his" ==> "its"
- "AUTHORS" ==> "COPYRIGHT HOLDERS AND CONTRIBUTORS"
- "AUTHORS" ==> "COPYRIGHT HOLDER"
2021-07-06 17:26:03 -04:00
Zachary Snow bb938f1e0b add ability to --pass-through input without conversion 2021-06-25 11:05:49 -06:00
Zachary Snow 404385b00f allow arbitrary .v output file using -w/--write 2021-06-16 20:31:37 -04:00
Zachary Snow ecee8b3358 support for interface based typedefs 2021-04-15 11:35:20 -04:00
Zachary Snow 5aea0ee95e add write adjacent mode 2021-02-03 09:30:30 -05:00
Zachary Snow 8eb3a251f7 package conversion overhaul
- full import and export support
- simplify AST representation of import and export
- allow package-scoped identifiers invoked as subroutines
- use scoped name resolution for identifiers in packages
- merge package item nesting conversion into package conversion
- fix handling of colliding enum items in separate modules
- fix visiting enum item exprs in types
2021-01-23 21:54:39 -07:00
Zachary Snow 1f05aa45cb add generated number tests 2020-12-10 14:52:46 -07:00
Zachary Snow 8d37db30e5 support complex modport expressions
- modports can use complex expressions
- update interface_infer test for consistency across simulators
- fix interface inlining of implicitly typed data declarations
2020-06-19 20:32:37 -04:00
Zachary Snow 2f5b746e27 upgrade CI workflow 2020-06-07 21:50:50 -04:00
Zachary Snow 2ac236dd03 add CMU acknowledgement 2020-04-16 18:12:05 -04:00
Zachary Snow f44e3e808a add option to skip preprocessing 2020-03-18 20:02:20 -04:00
Zachary Snow da087cc2c1 release v0.0.2 2020-02-22 19:53:35 -05:00
Zachary Snow 3c08767b63 redesigned preprocessor and lexer 2020-02-06 23:33:13 -05:00
Zachary Snow 58ad1feab1 allow reading from stdin 2019-11-19 23:29:19 -05:00
Zachary Snow 06411d70f1 support converting interfaces with parameters 2019-10-20 15:58:37 -04:00
Zachary Snow baf95b2729 minor README updates 2019-10-02 23:52:26 -04:00
Zachary Snow c0e38f793d updated CLI (backwards compatible) 2019-09-15 10:31:50 -04:00
Zachary Snow ae239f16b7 updated usage documentation 2019-08-07 22:10:03 -04:00
Zachary Snow 2d003c6ded conversion for package-scoped tasks, functions, and typenames 2019-04-24 04:01:33 -04:00
Dave Eckhardt 5583eaeca8 README.md: wording tweaks. 2019-04-23 15:48:11 -04:00
Zachary Snow 68cccff2b1 updated README with acknowledgments 2019-04-23 14:07:59 -04:00
Dave Eckhardt 9725ed3992 README.md: wording tweaks. 2019-04-23 13:48:00 -04:00
Zachary Snow 68b6eae484 updated documentation 2019-04-18 19:33:16 -04:00
Zachary Snow f47446653d Updated README 2019-04-03 23:40:28 -04:00
Zachary Snow f59ed11ef5 add support for specifying compile-time defines 2019-04-02 16:19:59 -04:00
Zachary Snow 0d9ed3e1fa updated CLI to support include dirs and multiple files 2019-03-28 19:55:53 -04:00
Zachary Snow 69a5585a7f updated IEEE standard references in README 2019-03-27 03:41:41 -04:00
Zachary Snow d7f641b850 pivoted to general Verilog-2005 targeting 2019-03-08 11:02:40 -05:00
Zachary Snow cf23267783 split up Yosys and VTR targeting 2019-02-26 15:03:49 -05:00
Zachary Snow 65e288fce8 added initial Readme; tweaked copyright notice 2019-02-24 14:59:00 -05:00