aboutsummaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Added test for dynamic indexing within struct membersDag Lem2023-03-082-0/+71
|
* Index struct/union members within corresponding wire chunksDag Lem2023-03-051-1/+2
| | | | | This guards against access to bits outside of struct/union members via dynamic indexing.
* Out of bounds checking for struct/union membersDag Lem2023-02-192-1/+4
| | | | Currently, only constant indices are checked.
* Merge pull request #3675 from daglem/struct-item-queriesJannis Harder2023-02-151-0/+112
|\ | | | | Support for data and array queries on struct/union item expressions
| * Corrected tests for data and array queries on struct/union item expressionsDag Lem2023-02-151-80/+85
| |
| * Support for data and array queries on struct/union item expressionsDag Lem2023-02-151-0/+107
| | | | | | | | For now, $bits, $left, $right, $low, $high, and $size are supported.
* | Merge pull request #3671 from zachjs/masterJannis Harder2023-02-152-0/+16
|\ \ | |/ |/| Add test for typenames using constants shadowed later on
| * Add test for typenames using constants shadowed later onZachary Snow2023-02-122-0/+16
| | | | | | | | | | This possible edge case came up while reviewing #3555. It is currently handled correctly, but there is no clear test coverage.
* | Merge pull request #3661 from daglem/struct-array-range-offsetJannis Harder2023-02-151-0/+20
|\ \ | | | | | | Handle range offsets in packed arrays within packed structs
| * | Handle range offsets in packed arrays within packed structsDag Lem2023-02-051-0/+20
| | | | | | | | | | | | | | | | | | | | | This brings the metadata for packed arrays in packed structs in line with the metadata for unpacked arrays, and correctly handles the case when both lsb and msb in an address range are non-zero.
* | | Merge pull request #2995 from georgerennie/cover_precondJannis Harder2023-02-141-0/+25
|\ \ \ | | | | | | | | chformal: Add -coverenable option
| * | | chformal: Rename -coverprecond to -coverenableGeorge Rennie2022-06-181-3/+3
| | | |
| * | | chformal: Test -coverprecond and reuse the src attributeJannis Harder2022-06-181-0/+25
| | | |
* | | | Merge pull request #3126 from georgerennie/equiv_make_assertionsJannis Harder2023-02-141-0/+32
|\ \ \ \ | | | | | | | | | | equiv_make: Add -make_assert option
| * | | | equiv_make: Add -make_assert optionGeorge Rennie2022-06-241-0/+32
| |/ / / | | | | | | | | | | | | | | | | This adds a -make_assert flag to equiv_make. When used, the pass generates $eqx and $assert cells to encode equivalence instead of $equiv.
* | | | Merge pull request #3669 from jix/fix-xprop-tests-yosys-callJannis Harder2023-02-132-51/+60
|\ \ \ \ | | | | | | | | | | tests: Fix path of yosys invocation in xprop tests
| * | | | xprop tests: Make iverilog invocation more portableJannis Harder2023-02-131-3/+3
| | | | |
| * | | | xprop: Test fixes and abort on test failureJannis Harder2023-02-132-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use `$finish(0)` to silently exit even when using recent iverlog versions. Run `write_verilog -noexpr` before `write_verilog` as the latter can modify the design. This also enables checking the tests results, as xprop should be in a state where the existing tests pass.
| * | | | xprop: Smaller subset of tests to run by defaultJannis Harder2023-02-131-44/+53
| | | | |
| * | | | tests: Fix path of yosys invocation in xprop testsJannis Harder2023-02-101-1/+1
| | |_|/ | |/| | | | | | | | | | | | | | For now xprop test failures are still expected and ignored, but without this change, they did not even run unless the yosys build was in path.
* / | | Resolve package types in interfaces (#3658)Dag Lem2023-02-123-0/+31
|/ / / | | | | | | | | | * Resolve package types in interfaces * Added test for resolving of package types in interfaces
* | | tests: in xprop tests, use MAKE variable if setJannis Harder2023-02-101-1/+1
| | |
* | | Merge pull request #3650 from jix/rtlil_roundtrip_z_bitsJannis Harder2023-01-301-0/+9
|\ \ \ | | | | | | | | backends/rtlil: Do not shorten a value with z bits to 'x
| * | | backends/rtlil: Do not shorten a value with z bits to 'xJannis Harder2023-01-291-0/+9
| | | |
* | | | add pmux option to bmuxmap for better fsm detection with verific frontendN. Engelhardt2023-01-301-0/+45
| |_|/ |/| |
* | | Resolve struct member package typesDag Lem2023-01-291-0/+4
| | |
* | | Handle struct members of union type (#3641)Dag Lem2023-01-291-0/+16
|/ /
* | Merge pull request #3537 from jix/xpropJannis Harder2023-01-116-5/+805
|\ \ | | | | | | New xprop pass
| * | New xprop pass to encode 3-valued x-propagation using 2-valued logicJannis Harder2022-11-304-0/+801
| | |
| * | simplemap: Map `$xnor` to `$_XNOR_` cellsJannis Harder2022-11-292-5/+4
| | | | | | | | | | | | | | | The previous mapping to `$_XOR_` and `$_NOT_` predates the addition of the `$_XNOR_` cell.
* | | Merge pull request #3467 from jix/fix_cellarray_simplifyJannis Harder2022-12-191-0/+45
|\ \ \ | | | | | | | | simplify: Do not recursively simplify AST_CELL within AST_CELLARRAY
| * | | simplify: regression test for AST_CELLARRAY simplification issueJannis Harder2022-12-071-0/+45
| | | |
* | | | Support for packed multidimensional arrays within packed structsDag Lem2022-12-031-0/+60
|/ / /
* | | Merge pull request #3551 from daglem/struct-array-swapped-rangeJannis Harder2022-12-011-0/+131
|\ \ \ | |/ / |/| | Support for arrays with swapped ranges within structs
| * | Tests for unpacked arrays in packed structs are for the Yosys frontend onlyDag Lem2022-11-231-0/+4
| | |
| * | Support for swapped ranges in second array dimensionDag Lem2022-11-231-0/+42
| | |
| * | Support for arrays with swapped ranges within structsDag Lem2022-11-121-1/+86
| | | | | | | | | | | | | | | | | | This also corrects the implementation of C type arrays within structs. Fixes #3550
* | | Merge branch 'zachjs-master'Jannis Harder2022-11-211-0/+45
|\ \ \
| * | | verilog: Support module-scoped task/function callsZachary Snow2022-10-291-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is primarily intended to enable the standard-permitted use of module-scoped identifiers to refer to tasks and non-constant functions. As a side-effect, this also adds support for the non-standard use of module-scoped identifiers referring to constant functions, a feature that is supported in some other tools, including Iverilog.
* | | | fabulous: Allow adding extra custom prims and map rulesgatecat2022-11-173-0/+21
| | | | | | | | | | | | | | | | Signed-off-by: gatecat <gatecat@ds0.me>
* | | | fabulous: improvements to the passgatecat2022-11-177-0/+141
|/ / / | | | | | | | | | Signed-off-by: gatecat <gatecat@ds0.me>
* | | Replace GNU specific invocation of basename(1) with the equivalentLloyd Parkes2022-10-231-1/+1
| | | | | | | | | | | | POSIX one. The tests now complete on BSD as well as GNU/Linux.
* | | smt2/smtbmc: Fix FF witness data for fine grained or multi chunk FFsJannis Harder2022-10-121-7/+7
| | | | | | | | | | | | | | | | | | | | | The witness metadata was missing fine grained FFs completely and for coarse grained FFs where the output connection has multiple chunks it lacked the offset of the chunk within the SMT expression. This fixes both, the later by adding an "smtoffset" field to the metadata.
* | | Merge pull request #3502 from jix/equiv_opt_fixesJannis Harder2022-10-1125-82/+95
|\ \ \ | | | | | | | | equiv_opt and clk2fflogic fixes
| * | | Reenable existing equiv_opt testsJannis Harder2022-10-0713-54/+52
| | | |
| * | | Fix tests for check in equiv_optJannis Harder2022-10-0713-15/+31
| | | |
| * | | Re-enable opt_dff_sr equiv_opt checksClaire Xenia Wolf2022-10-071-13/+12
| | | | | | | | | | | | | | | | Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
* | | | Merge pull request #3452 from ALGCDG/masterMiodrag Milanović2022-10-101-0/+9
|\ \ \ \ | |/ / / |/| | | Add BLIF names command input plane size check
| * | | Adding check for BLIF names command input plane size.Archie2022-08-211-0/+9
| | | |
* | | | Test fixes for latest iverilogMiodrag Milanovic2022-09-211-2/+12
| |/ / |/| |