SymbiYosys.git
23 months agoMerge pull request #185 from georgerennie/prefix_empty_taskname
Jannis Harder [Fri, 24 Jun 2022 10:40:09 +0000 (12:40 +0200)]
Merge pull request #185 from georgerennie/prefix_empty_taskname

Use default prefix directory when no task is specified

23 months agoMerge pull request #183 from jix/engine-option-docs
Jannis Harder [Thu, 23 Jun 2022 14:39:32 +0000 (16:39 +0200)]
Merge pull request #183 from jix/engine-option-docs

Reflect recent engine updates in the reference docs

23 months agoMerge pull request #184 from jix/smtbmc-keepgoing-induction-trace-fix
Jannis Harder [Thu, 23 Jun 2022 11:37:38 +0000 (13:37 +0200)]
Merge pull request #184 from jix/smtbmc-keepgoing-induction-trace-fix

smtbmc: Fix induction trace filename with --keep-going for the basecase

23 months agosmtbmc: Fix induction trace filename with --keep-going for the basecase
Jannis Harder [Thu, 23 Jun 2022 11:15:58 +0000 (13:15 +0200)]
smtbmc: Fix induction trace filename with --keep-going for the basecase

--keep-going only applies to the basecase and induction runs without that
option, so the trace filename for induction should have no placeholder.

23 months agoReflect recent engine updates in the reference docs
Jannis Harder [Mon, 20 Jun 2022 12:59:00 +0000 (14:59 +0200)]
Reflect recent engine updates in the reference docs

23 months agoUse default prefix directory when no task is specified
George Rennie [Sat, 18 Jun 2022 23:49:12 +0000 (00:49 +0100)]
Use default prefix directory when no task is specified

23 months agoMerge pull request #182 from jix/taskloop
Jannis Harder [Wed, 15 Jun 2022 14:41:39 +0000 (16:41 +0200)]
Merge pull request #182 from jix/taskloop

Decouple taskloop from task

23 months agoDecouple taskloop from task
Jannis Harder [Thu, 21 Apr 2022 14:22:32 +0000 (16:22 +0200)]
Decouple taskloop from task

23 months agoMerge pull request #181 from jix/monotonic
Jannis Harder [Wed, 15 Jun 2022 14:27:23 +0000 (16:27 +0200)]
Merge pull request #181 from jix/monotonic

Use monotonic clock for timeouts

23 months agoUse monotonic clock for timeouts
Jannis Harder [Mon, 25 Apr 2022 13:43:59 +0000 (15:43 +0200)]
Use monotonic clock for timeouts

23 months agoMerge pull request #180 from jix/sby-fewer-asserts
Jannis Harder [Wed, 15 Jun 2022 12:08:15 +0000 (14:08 +0200)]
Merge pull request #180 from jix/sby-fewer-asserts

Don't use python asserts to handle unexpected solver output

23 months agoDon't use python asserts to handle unexpected solver output
Jannis Harder [Tue, 14 Jun 2022 15:59:08 +0000 (17:59 +0200)]
Don't use python asserts to handle unexpected solver output

23 months agoSbyProc: New error_callback instead of exit_callback for failing procs
Jannis Harder [Wed, 15 Jun 2022 10:10:52 +0000 (12:10 +0200)]
SbyProc: New error_callback instead of exit_callback for failing procs

23 months agoMerge pull request #179 from jix/btor-option-handling
Jannis Harder [Wed, 15 Jun 2022 11:24:36 +0000 (13:24 +0200)]
Merge pull request #179 from jix/btor-option-handling

btor pono: improve option handling

23 months agobtor pono: improve option handling
Jannis Harder [Tue, 14 Jun 2022 15:56:54 +0000 (17:56 +0200)]
btor pono: improve option handling

Fail on the unsupported skip option and pass solver args to pono.

23 months agoMerge pull request #178 from jix/aiger-aigbmc-fixes
Jannis Harder [Tue, 14 Jun 2022 15:52:33 +0000 (17:52 +0200)]
Merge pull request #178 from jix/aiger-aigbmc-fixes

aiger: check supported modes and aigbmc fixes

23 months agoaiger: check supported modes and aigbmc fixes
Jannis Harder [Tue, 14 Jun 2022 15:15:32 +0000 (17:15 +0200)]
aiger: check supported modes and aigbmc fixes

23 months agoMerge pull request #177 from mattvenn/tristate-example
Jannis Harder [Tue, 14 Jun 2022 13:54:09 +0000 (15:54 +0200)]
Merge pull request #177 from mattvenn/tristate-example

Tristate example

23 months agoadd makefile for test
Matt Venn [Tue, 14 Jun 2022 13:35:22 +0000 (15:35 +0200)]
add makefile for test

23 months agoremove unused module port
Matt Venn [Mon, 13 Jun 2022 12:00:08 +0000 (14:00 +0200)]
remove unused module port

23 months agoexpect fail
Matt Venn [Mon, 13 Jun 2022 11:59:12 +0000 (13:59 +0200)]
expect fail

23 months agotristate example
Matt Venn [Mon, 13 Jun 2022 11:51:04 +0000 (13:51 +0200)]
tristate example

23 months agoMerge pull request #172 from jix/smtbmc-unroll-noincr-traces-fix
Jannis Harder [Mon, 13 Jun 2022 12:05:37 +0000 (14:05 +0200)]
Merge pull request #172 from jix/smtbmc-unroll-noincr-traces-fix

Regression test for smtbmc --unroll --noincr

23 months agoMerge pull request #175 from jix/more-test-improvements
Jannis Harder [Mon, 13 Jun 2022 11:59:31 +0000 (13:59 +0200)]
Merge pull request #175 from jix/more-test-improvements

Use the test Makefile for all examples

23 months agoUse the test Makefile for all examples
Jannis Harder [Mon, 13 Jun 2022 11:20:33 +0000 (13:20 +0200)]
Use the test Makefile for all examples

* Rename and move sbysrc/demo[123].sby to docs/examples/demos
    * Make them use multiple tasks for multiple engines
* Scan docs/examples for sby files for make test
* `make ci` is now `NOSKIP` by default
* Skip scripts using `verific` w/o yosys verific support
    * This does not fail even with NOSKIP set

23 months agoRegression test for smtbmc --unroll --noincr
Jannis Harder [Wed, 8 Jun 2022 10:08:34 +0000 (12:08 +0200)]
Regression test for smtbmc --unroll --noincr

23 months agoMerge pull request #173 from jix/test-cvc
Jannis Harder [Fri, 10 Jun 2022 13:24:49 +0000 (15:24 +0200)]
Merge pull request #173 from jix/test-cvc

Test that cvc4 and cvc5 can be used

23 months agoMerge pull request #164 from jix/suggest_f_flag
Jannis Harder [Fri, 10 Jun 2022 13:14:01 +0000 (15:14 +0200)]
Merge pull request #164 from jix/suggest_f_flag

Suggest -f when the workdir already exists

23 months agoTest that cvc4 and cvc5 can be used
Jannis Harder [Wed, 8 Jun 2022 11:33:12 +0000 (13:33 +0200)]
Test that cvc4 and cvc5 can be used

23 months agoMerge pull request #171 from jix/make-remove-unused-tool-list
Jannis Harder [Wed, 8 Jun 2022 09:43:43 +0000 (11:43 +0200)]
Merge pull request #171 from jix/make-remove-unused-tool-list

tests: Remove unused tool list in test Makefile

23 months agotests: Remove unused tool list in test Makefile
Jannis Harder [Wed, 8 Jun 2022 09:32:35 +0000 (11:32 +0200)]
tests: Remove unused tool list in test Makefile

The checks for available tools moved to a python script, so need need to
have a copy of the tool list in the Makefile.

23 months agoMerge pull request #169 from jix/yices-forall
Jannis Harder [Wed, 8 Jun 2022 07:43:47 +0000 (09:43 +0200)]
Merge pull request #169 from jix/yices-forall

Test designs using $allconst

23 months agoMerge pull request #163 from jix/make_improvements
Jannis Harder [Tue, 7 Jun 2022 12:50:59 +0000 (14:50 +0200)]
Merge pull request #163 from jix/make_improvements

Test makefile improvements

23 months agotests: Move required tool checks from rule generation to execution
Jannis Harder [Tue, 7 Jun 2022 12:29:25 +0000 (14:29 +0200)]
tests: Move required tool checks from rule generation to execution

This avoids regenerating the test makefile rules when the set of
installed tools changes and is a bit simpler overall.

23 months agoDon't fail tests when xmlschema is missing
Jannis Harder [Fri, 3 Jun 2022 15:16:01 +0000 (17:16 +0200)]
Don't fail tests when xmlschema is missing

23 months agoTest designs using $allconst
Jannis Harder [Fri, 3 Jun 2022 14:48:21 +0000 (16:48 +0200)]
Test designs using $allconst

23 months agotests: Fail on CI when any required tool is missing
Jannis Harder [Thu, 2 Jun 2022 14:25:11 +0000 (16:25 +0200)]
tests: Fail on CI when any required tool is missing

23 months agotests: Check for btorsim --vcd
Jannis Harder [Thu, 2 Jun 2022 14:24:30 +0000 (16:24 +0200)]
tests: Check for btorsim --vcd

23 months agoupdate install instructions for btorsim
N. Engelhardt [Wed, 1 Jun 2022 14:51:28 +0000 (16:51 +0200)]
update install instructions for btorsim

23 months agoSuggest -f when the workdir already exists
Jannis Harder [Mon, 30 May 2022 14:18:37 +0000 (16:18 +0200)]
Suggest -f when the workdir already exists

23 months agoCheck for the tabby/oss cad suite before running make ci checks
Jannis Harder [Mon, 30 May 2022 13:27:14 +0000 (15:27 +0200)]
Check for the tabby/oss cad suite before running make ci checks

23 months agoBetter checking of available solvers
Jannis Harder [Mon, 30 May 2022 12:37:20 +0000 (14:37 +0200)]
Better checking of available solvers

Check for required auxiliary tools and always regenerate the make rules
when the set of available tools changes.

23 months agoMakefile: Rename run_tests to test, update help, use .PHONY
Jannis Harder [Mon, 30 May 2022 11:35:57 +0000 (13:35 +0200)]
Makefile: Rename run_tests to test, update help, use .PHONY

2 years agoMerge pull request #161 from programmerjake/add-div-mod-floor-tests
Jannis Harder [Thu, 26 May 2022 10:00:05 +0000 (12:00 +0200)]
Merge pull request #161 from programmerjake/add-div-mod-floor-tests

add test for yosys's $divfloor and $modfloor cells

2 years agoadd depth 1
Jacob Lifshay [Wed, 25 May 2022 10:35:21 +0000 (03:35 -0700)]
add depth 1

2 years agoadd test for yosys's $divfloor and $modfloor cells
Jacob Lifshay [Wed, 25 May 2022 00:51:48 +0000 (17:51 -0700)]
add test for yosys's $divfloor and $modfloor cells

Depends on: https://github.com/YosysHQ/yosys/pull/3335

2 years agodocs: add instructions for newer btorsim version required
N. Engelhardt [Tue, 24 May 2022 09:39:10 +0000 (11:39 +0200)]
docs: add instructions for newer btorsim version required

2 years agoMerge pull request #159 from jix/fix-dpmem-example
Jannis Harder [Wed, 11 May 2022 09:23:57 +0000 (11:23 +0200)]
Merge pull request #159 from jix/fix-dpmem-example

examples: Fix use of SVA value change expressions

2 years agoexamples: Fix use of SVA value change expressions
Jannis Harder [Wed, 11 May 2022 08:38:54 +0000 (10:38 +0200)]
examples: Fix use of SVA value change expressions

The $stable value change expression cannot be true for a non-x signal in
the initial state. This is now correctly handled by the verific import,
so the dpmem example needs to start assuming `$stable` only after
leaving the initial state.

2 years agoMerge pull request #156 from jix/refactor-tests
Jannis Harder [Mon, 25 Apr 2022 09:21:21 +0000 (11:21 +0200)]
Merge pull request #156 from jix/refactor-tests

Refactor tests

2 years agoRefactor tests
Jannis Harder [Mon, 11 Apr 2022 15:39:05 +0000 (17:39 +0200)]
Refactor tests

Organize tests into subdirectories and use a new makefile that scans
.sby files and allows selecting tests by mode, engine, solver and/or
subdirectory. Automatically skips tests that use engines/solvers that
are not found in the PATH.

See `cd tests; make help` for a description of supported make targets.

2 years agoAdd --dumptaskinfo option to output some .sby metadata as json
Jannis Harder [Mon, 11 Apr 2022 15:37:27 +0000 (17:37 +0200)]
Add --dumptaskinfo option to output some .sby metadata as json

2 years agoAdd envvar to enable automatic .gitignore creation for workdirs
Jannis Harder [Mon, 11 Apr 2022 15:35:11 +0000 (17:35 +0200)]
Add envvar to enable automatic .gitignore creation for workdirs

2 years agoMerge pull request #140 from nakengelhardt/junit_jny
Miodrag Milanović [Fri, 8 Apr 2022 13:26:48 +0000 (15:26 +0200)]
Merge pull request #140 from nakengelhardt/junit_jny

junit: use write_jny instead of write_json

2 years agojunit: use write_jny instead of write_json
N. Engelhardt [Thu, 10 Mar 2022 16:46:08 +0000 (17:46 +0100)]
junit: use write_jny instead of write_json

2 years agoMerge pull request #155 from jix/invalid_ff_dcinit_merge
Miodrag Milanović [Sun, 3 Apr 2022 10:15:58 +0000 (12:15 +0200)]
Merge pull request #155 from jix/invalid_ff_dcinit_merge

Regression test: do not merge FFs with unconstrained initvals

2 years agoRegression test: do not merge FFs with unconstrained initvals
Jannis Harder [Fri, 1 Apr 2022 17:25:09 +0000 (19:25 +0200)]
Regression test: do not merge FFs with unconstrained initvals

Currently done by `opt -keepdc` via `opt_merge` but not valid in a
formal context.

2 years agoMerge pull request #154 from jix/sby_design-fixes
Jannis Harder [Thu, 31 Mar 2022 14:35:40 +0000 (16:35 +0200)]
Merge pull request #154 from jix/sby_design-fixes

sby_design fixes

2 years agoFix design_hierarchy handling of $paramod cells
Jannis Harder [Thu, 31 Mar 2022 13:51:58 +0000 (15:51 +0200)]
Fix design_hierarchy handling of $paramod cells

2 years agoFix variable name in find_property_by_cellname's error path
Jannis Harder [Thu, 31 Mar 2022 11:12:15 +0000 (13:12 +0200)]
Fix variable name in find_property_by_cellname's error path

2 years agoMerge pull request #151 from jix/prefer-first-trace
Jannis Harder [Wed, 30 Mar 2022 12:48:04 +0000 (14:48 +0200)]
Merge pull request #151 from jix/prefer-first-trace

Prefer the first tracefile for each failing assertion

2 years agoPrefer the first tracefile for each failing assertion
Jannis Harder [Wed, 30 Mar 2022 11:35:57 +0000 (13:35 +0200)]
Prefer the first tracefile for each failing assertion

2 years agoMerge pull request #150 from nakengelhardt/fix_junit_type_assignment
N. Engelhardt [Wed, 30 Mar 2022 10:53:48 +0000 (12:53 +0200)]
Merge pull request #150 from nakengelhardt/fix_junit_type_assignment

note unexpected return statuses in junit

2 years agoMerge pull request #147 from jix/smtbmc-keepgoing
Jannis Harder [Wed, 30 Mar 2022 09:42:48 +0000 (11:42 +0200)]
Merge pull request #147 from jix/smtbmc-keepgoing

Support and tests for smtbmc `--keep-going`

2 years agoTests for `--keep-going`
Jannis Harder [Thu, 24 Mar 2022 15:36:59 +0000 (16:36 +0100)]
Tests for `--keep-going`

This also changes the test Makefile to run `.check.py` files after
running the corresponding `.sby` file to allow more precise testing of
the keep going feature.

2 years agonote unexpected return statuses in junit
N. Engelhardt [Tue, 29 Mar 2022 17:10:29 +0000 (19:10 +0200)]
note unexpected return statuses in junit

2 years agoMerge pull request #148 from nakengelhardt/docs_updates
N. Engelhardt [Mon, 28 Mar 2022 14:34:00 +0000 (16:34 +0200)]
Merge pull request #148 from nakengelhardt/docs_updates

documentation updates

2 years agoMerge pull request #145 from nakengelhardt/fix_junit_tracefile
N. Engelhardt [Mon, 28 Mar 2022 14:32:54 +0000 (16:32 +0200)]
Merge pull request #145 from nakengelhardt/fix_junit_tracefile

junit: handle multiple asserts failing with the same trace

2 years agoMerge pull request #142 from nakengelhardt/fix_backslash_smt2
N. Engelhardt [Mon, 28 Mar 2022 14:32:10 +0000 (16:32 +0200)]
Merge pull request #142 from nakengelhardt/fix_backslash_smt2

translate backslashes in cell names the same way as smt2 backend does

2 years agoMerge pull request #146 from jix/aim_vs_smt2_nonzero_start_offset
Miodrag Milanović [Sat, 26 Mar 2022 07:20:57 +0000 (08:20 +0100)]
Merge pull request #146 from jix/aim_vs_smt2_nonzero_start_offset

Test and fix signals with nonzero start offsets in aim files with smtbmc

2 years agodocument btor engine, add overview of mode/engine/solver combinations, remove unimple...
N. Engelhardt [Fri, 25 Mar 2022 17:01:09 +0000 (18:01 +0100)]
document btor engine, add overview of mode/engine/solver combinations, remove unimplemented modes

2 years agoTest signals with nonzero start offsets in aim files with smtbmc
Jannis Harder [Thu, 24 Mar 2022 12:12:25 +0000 (13:12 +0100)]
Test signals with nonzero start offsets in aim files with smtbmc

2 years agoUse `-no-startoffset`, avoiding index mismatch between aiger and smt2
Jannis Harder [Fri, 25 Mar 2022 10:38:22 +0000 (11:38 +0100)]
Use `-no-startoffset`, avoiding index mismatch between aiger and smt2

2 years agoInitial support for the new smtbmc --keep-going option
Jannis Harder [Mon, 21 Mar 2022 17:36:09 +0000 (18:36 +0100)]
Initial support for the new smtbmc --keep-going option

So far this only passes on the option and adjusts the trace_prefix to
support multiple numbered traces. Further changes are needed to
correctly associate individual traces with the assertions failing in
that trace.

2 years agojunit: handle multiple asserts failing with the same trace
N. Engelhardt [Tue, 22 Mar 2022 15:16:02 +0000 (16:16 +0100)]
junit: handle multiple asserts failing with the same trace

2 years agotranslate backslashes in cell names the same way as smt2 backend does
N. Engelhardt [Fri, 18 Mar 2022 15:36:41 +0000 (16:36 +0100)]
translate backslashes in cell names the same way as smt2 backend does

2 years agoMerge pull request #120 from ythoma/patch-1
Claire Xen [Tue, 15 Mar 2022 15:33:46 +0000 (16:33 +0100)]
Merge pull request #120 from ythoma/patch-1

Update install.rst

2 years agoMerge pull request #139 from nakengelhardt/housekeeping
N. Engelhardt [Tue, 15 Mar 2022 15:06:52 +0000 (16:06 +0100)]
Merge pull request #139 from nakengelhardt/housekeeping

housekeeping

2 years agoci housekeeping
N. Engelhardt [Tue, 15 Mar 2022 14:12:59 +0000 (15:12 +0100)]
ci housekeeping

2 years agoMerge pull request #133 from nakengelhardt/sby_junit
N. Engelhardt [Mon, 7 Mar 2022 15:25:47 +0000 (16:25 +0100)]
Merge pull request #133 from nakengelhardt/sby_junit

improve SBY JUnit report

2 years agofix ci
N. Engelhardt [Mon, 7 Mar 2022 07:34:01 +0000 (08:34 +0100)]
fix ci

2 years agoadd testcase for overall run result
N. Engelhardt [Thu, 24 Feb 2022 21:44:11 +0000 (22:44 +0100)]
add testcase for overall run result

2 years agovalidate junit files (with extra attributes added to schema)
N. Engelhardt [Tue, 22 Feb 2022 15:16:37 +0000 (16:16 +0100)]
validate junit files (with extra attributes added to schema)

2 years agofix induction
N. Engelhardt [Mon, 7 Feb 2022 21:01:52 +0000 (22:01 +0100)]
fix induction

2 years agofix junit error/failure/skipped count
N. Engelhardt [Mon, 7 Feb 2022 18:20:29 +0000 (19:20 +0100)]
fix junit error/failure/skipped count

2 years agohandle unreached cover properties
N. Engelhardt [Mon, 7 Feb 2022 14:29:36 +0000 (15:29 +0100)]
handle unreached cover properties

2 years agorefactor junit print into own function
N. Engelhardt [Mon, 7 Feb 2022 11:29:27 +0000 (12:29 +0100)]
refactor junit print into own function

2 years agohandle status of cover properties
N. Engelhardt [Sun, 6 Feb 2022 08:15:44 +0000 (09:15 +0100)]
handle status of cover properties

2 years agorefactor model to have single base
N. Engelhardt [Mon, 31 Jan 2022 11:35:56 +0000 (12:35 +0100)]
refactor model to have single base

2 years agoparse solver location output for assert failures (cover not functional yet)
N. Engelhardt [Thu, 27 Jan 2022 12:41:07 +0000 (13:41 +0100)]
parse solver location output for assert failures (cover not functional yet)

2 years agoadd fallback if solver can't tell which property fails
N. Engelhardt [Fri, 21 Jan 2022 14:18:53 +0000 (15:18 +0100)]
add fallback if solver can't tell which property fails

2 years agocreate json export and read in properties
N. Engelhardt [Wed, 19 Jan 2022 18:34:11 +0000 (19:34 +0100)]
create json export and read in properties

2 years agoWIP change junit print to conform to schema; needs additional data, currently printin...
N. Engelhardt [Tue, 7 Dec 2021 19:16:15 +0000 (20:16 +0100)]
WIP change junit print to conform to schema; needs additional data, currently printing dummy info

Signed-off-by: N. Engelhardt <nak@yosyshq.com>
2 years agoadd JUnit schema and validator
N. Engelhardt [Tue, 7 Dec 2021 19:14:06 +0000 (20:14 +0100)]
add JUnit schema and validator

Signed-off-by: N. Engelhardt <nak@yosyshq.com>
2 years agoMerge pull request #138 from YosysHQ/mmicko/ci
Miodrag Milanović [Wed, 12 Jan 2022 13:24:51 +0000 (14:24 +0100)]
Merge pull request #138 from YosysHQ/mmicko/ci

Added CI

2 years agoAdded CI
Miodrag Milanovic [Wed, 12 Jan 2022 13:18:17 +0000 (14:18 +0100)]
Added CI

2 years agoMerge pull request #136 from nakengelhardt/fix_pono
Miodrag Milanović [Wed, 12 Jan 2022 12:46:25 +0000 (13:46 +0100)]
Merge pull request #136 from nakengelhardt/fix_pono

use --witness option when calling pono

2 years agocreate only a single bad when using pono solver; workaround for #137
N. Engelhardt [Wed, 12 Jan 2022 12:18:54 +0000 (13:18 +0100)]
create only a single bad when using pono solver; workaround for #137

2 years agoadd testcase exposing #137
N. Engelhardt [Wed, 12 Jan 2022 10:06:05 +0000 (11:06 +0100)]
add testcase exposing #137

2 years agouse --witness option when calling pono
N. Engelhardt [Wed, 12 Jan 2022 09:48:32 +0000 (10:48 +0100)]
use --witness option when calling pono