Update the development documentation to match reality

This commit is contained in:
Cary R 2026-02-28 07:03:14 -08:00
parent d736cffc11
commit 5beeeee3fa
3 changed files with 24 additions and 17 deletions

View File

@ -107,7 +107,7 @@ V0.9 file with the V0.8 run time).
--enable-libvvp
The vvp progam is built as a small stub linked to a shared library,
The vvp program is built as a small stub linked to a shared library,
libvvp.so, that may be linked with other programs so that they can host
a vvp simulation.
@ -179,13 +179,21 @@ example:
.. code-block:: console
% cd ivtest
% ./vvp_reg.pl --strict
% ./vvp_reg.pl
% ./vvp_reg.py
% ./vpi_reg.pl
will run all the regression tests for the simulation engine. (This is what
most people will want to do.) You should rerun this test before submitting
most people will want to do.) You should rerun these tests before submitting
patches to the developers. Also, if you are adding a new feature, you should
add test programs to the regression test suite to validate your new feature
(or bug fix.)
(or bug fix.). The python script is the preferred method to add new tests.
All of these scripts take other options to test various configurations. What
options are supported can be found by using the ``-h/--help`` argument. There
is also a separate ``vlog95_reg.pl`` script for testing the vlog95 translation
of the original tests. This is integrated into the existing Python test script
for the new tests.
Note that pull requests will be required to pass these regression tests before
being merged.

View File

@ -54,11 +54,6 @@ This describes the kind of test to run. The valid values are:
that succeeds execute it using the vvp command. If there is no gold file
specified, then look for an output line with the "PASSED" string.
* **normal-vlog95** - This is similar to the normal case, but uses
the -tvlog95 target in a first pass to generate simplified verilog, then a
regular iverilog command with the -tvvp target to generate the actual
executable. This tests the -tvlog95 target.
* **NI** - Mark the test as not implemented. The test will be skipped without
running or reporting an error.
@ -68,6 +63,9 @@ This describes the kind of test to run. The valid values are:
* **EF** - Compile and run, but expect the run time to fail. This means the
run time program must return an error exit.
* **TE** - This is specific to testing the vlog95 conversion and indicates the
translated code failed to compile.
gold (optional)
^^^^^^^^^^^^^^^
@ -123,3 +121,9 @@ vvp-args-extended (optional)
If this is specified, it is a lost of strings that are passed as arguments to
the vvp command. These are extended arguments, and are placed after the vvp
input file that is being run. This is where you place things like plusargs.
strict, force-sv or vlog95 (optional)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Any of these can be used to create overrides for the type, gold or
iverilog-args when the given test type is run.

View File

@ -17,7 +17,7 @@ the "make version" target, or automatically if the version_tag.h
file doesn't exist at all. This implies that a "make version" is
something worth doing when you do a "git pull" or create commits.
The files below are now edited by the makefile and the version.exe program:
The files below are now edited by the Makefile and the version.exe program:
* iverilog-vpi.man -- The .TH tag has a version string
* driver/iverilog.man -- The .TH tag has a version string
@ -28,10 +28,5 @@ This now includes version_base.h to get the version:
* vpi/vams_simparam.c -- Hard coded result to simulatorVersion query
This is actually a test file list that is specific to a major version.
The regression test scripts query the version of the compiler to infer
that it must include this list of tests. For example, for version 12.x
of the compiler, the needs to be an ivltest/regress-v12.list file that
lists the tests that are specific to that version.
* ivltests/regress-XXX.list -- Version specific regression tests
The test suite no longer has version specific files since it tracks along with
the code/branch.