sv2v/test/relong
Zachary Snow a129e3bc68 add test suite documentation 2023-05-30 22:36:54 -04:00
..
README.md add test suite documentation 2023-05-30 22:36:54 -04:00
alu.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
alu.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
alu_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
array.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
array.v use builtin $clog2 in test/relong/array.v 2019-03-27 02:32:11 -04:00
array_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
cache_request.sv struct conversion attempts to size unsized constants when packing patterns 2019-04-10 14:07:38 -04:00
cache_request.v added new cache_request test from hdl examples 2019-04-10 13:15:43 -04:00
cache_request_tb.v added new cache_request test from hdl examples 2019-04-10 13:15:43 -04:00
case.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
case.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
case_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
complex_interface.sv support simple bundle interfaces 2020-06-03 20:26:17 -04:00
complex_interface.v interface conversion respects port direction when inlining bindings 2019-04-11 14:08:50 -04:00
complex_interface_tb.v major interface conversion update 2020-08-08 20:43:47 -06:00
double_clock.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
double_clock.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
double_clock_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
enum.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
enum.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
enum_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
fsm.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
fsm.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
fsm_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
functions.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
functions.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
functions_tb.v fix stale logs in test runner 2020-06-29 16:08:49 -06:00
gen_struct.sv added Reid's new tests 2019-04-23 00:33:27 -04:00
gen_struct.v added Reid's new tests 2019-04-23 00:33:27 -04:00
gen_struct_tb.v added Reid's new tests 2019-04-23 00:33:27 -04:00
inline_concat.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
inline_concat.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
inline_concat_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
module_struct.sv added Reid's new tests 2019-04-23 00:33:27 -04:00
module_struct.v added Reid's new tests 2019-04-23 00:33:27 -04:00
module_struct_tb.v added Reid's new tests 2019-04-23 00:33:27 -04:00
port_connections.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
port_connections.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
port_connections_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
run.sh explicitly use bash to avoid dash compatability issues when running tests 2019-04-16 16:35:53 -04:00
simple_interface.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
simple_interface.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
simple_interface_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
split_ports.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
split_ports.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
split_ports_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
split_struct.sv added Reid's new tests 2019-04-23 00:33:27 -04:00
split_struct.v added Reid's new tests 2019-04-23 00:33:27 -04:00
split_struct_tb.v added Reid's new tests 2019-04-23 00:33:27 -04:00
struct.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
struct.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
struct_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
typedef.sv added hdl-examples tests 2019-03-26 21:32:02 -04:00
typedef.v added hdl-examples tests 2019-03-26 21:32:02 -04:00
typedef_tb.v added hdl-examples tests 2019-03-26 21:32:02 -04:00

README.md

Reid Long's tests

These tests are borrowed from Reid Long's HDL Examples repository. Early in sv2v's development, Reid produced these examples to demonstrate how sv2v might perform its conversions. sv2v does not necessarily convert code in the same way, but its output should behave equivalently. Notably, sv2v does not create generate blocks when flattening vectors with multiple packed dimensions, uses localparams rather than macros to convert enums, and converts struct pattern literals as concatenations, rather than multiple statements.

Modifications

The following differences exist between the tests in this folder and their corresponding versions in the source repository.

  1. The inline_concat files were modified to remove a stray trailing semicolon. Though some tools allow for stray semicolons, iverilog does not.
  2. array.v previously had a custom implementation of $clog2, which was removed.
  3. cache_request.sv was modified to include a plain decimal literal to provide coverage beyond the unbased-unsized literals.
  4. The cache_request2 test is omitted. It was only an example for debugging a VCS-specific issue encountered with cache_request.