Commit Graph

16733 Commits

Author SHA1 Message Date
Krystine Sherwin ad32d66553
symfpu_convert: Handle signed ints
Use input wire `is_signed` to select between signed and unsigned handling.
2026-03-11 12:58:59 +13:00
Krystine Sherwin f95a5ac7df
symfpu: Use ubv for convert flags 2026-03-11 12:58:59 +13:00
Krystine Sherwin e6e8075b3a
symfpu: Convert with flags 2026-03-11 12:58:59 +13:00
Krystine Sherwin 43c1b82e64
symfpu: Add symfpu_convert
Convert one input to three outputs (int -> float, float -> int, float -> float).
No rounding mode, no flags (yet).
2026-03-11 12:58:58 +13:00
Krystine Sherwin 7f2f681e85
symfpu: Test comparisons 2026-03-11 12:58:58 +13:00
Krystine Sherwin 53de8b6abe
symfpu: Add -compare mode
Also `min` and `max` ops.  RISC-V uses IEEE 754-2019 semantics where `min(+0,-0) == -0` and `max(+0,-0) == +0` so we do the same here.  We could make it optional, but as I understand it the newer behavior is still backwards compatible (since previously it was valid to have selected either).
2026-03-11 12:58:58 +13:00
Krystine Sherwin 529df986b0
Add symfpu -classify
Add description text for standard `symfpu` signature.
2026-03-11 12:58:58 +13:00
Krystine Sherwin 1f598c7383
tests/symfpu: Extra muladd tests
Switch inputs back to `anyseq`, and add coverage for muladd with constant multiplier output and varying addend (also an assertion).
Use an `ifdef` to control clocked properties (because of the assertion, it's no longer just covers that are clocked).
2026-03-11 12:58:57 +13:00
Krystine Sherwin 6333cf7bc9
tests/symfpu: Testing sqrt
Coverage supports `sqrt`, including new general rounding detection instead of just inf/ebmin/zero (since they aren't possible with `sqrt`).
More `sqrt` assertions, as well as the addition of `altsqrt` verification.
Some adjustments of macros.
2026-03-11 12:58:57 +13:00
Krystine Sherwin 5372cf5047
symfpu: Add altsqrt
No denormalization here.  That can be a problem for later (or not at all).
2026-03-11 12:58:57 +13:00
Krystine Sherwin 8a764230af
symfpu: Add alt2div
`altdiv` but without denormalization, because as it turns out HardFloat unpacks subnorms in the same way, so lets just support both styles.
2026-03-11 12:58:56 +13:00
Krystine Sherwin 1312668092
symfpu: Add altdiv 2026-03-11 12:58:56 +13:00
Krystine Sherwin 57e6baf287
tests/symfpu: Add cover checks
Include mask/map for abc inputs (and switch to `anyconst` instead of `anyseq`).
Add false divide check for mantissa.
Covers aren't currently being tested by anything (and have to be removed for `sat`), but I've been using it locally with SBY to confirm that the different edge cases are able to be verified (e.g. when verifying HardFloat against symfpu while using the masked inputs to reduce solver time).
2026-03-11 12:58:56 +13:00
Krystine Sherwin 6fd4bde7e6
Fix tininess when rounding to ebmin 2026-03-11 12:58:56 +13:00
Krystine Sherwin f0bfc87e27
tests/symfpu: UF to ebmin is valid 2026-03-11 12:58:55 +13:00
Krystine Sherwin b4186e2295
Don't raise DZ when left is inf 2026-03-11 12:58:55 +13:00
Krystine Sherwin 7b270a79c0
symfpu: Dynamic rounding mode 2026-03-11 12:58:55 +13:00
Krystine Sherwin 9cb347a1a6
symfpu: Tidying output
Also switching to cleaner library branch
2026-03-11 12:58:54 +13:00
Krystine Sherwin cc4e9e52a8
symfpu: floatWithStatusFlags
Now with verified muladd exceptions.
2026-03-11 12:58:54 +13:00
Krystine Sherwin a0a0b2ce84
symfpu: Verifying rounding modes
Works for everything but muladd.
Which I saw coming, but am still frustrated by.
2026-03-11 12:58:54 +13:00
Krystine Sherwin cd28709b81
symfpu: Configurable rounding modes
Including tests, but currently only testing rounding modes on multiply.
Also missing the ...01 case.
2026-03-11 12:58:54 +13:00
Krystine Sherwin ae5ac17e3f
Makefile: run-test.mk depends on .sh
Also make the run-test part explicit.
2026-03-11 12:58:53 +13:00
Krystine Sherwin c1bc302174
symfpu: Add flags
Use symfpu fork.
Add tests for symfpu properties and extra edge case checking for flags.
2026-03-11 12:58:53 +13:00
Krystine Sherwin 77f3248a11
symfpu: Configurable op 2026-03-11 12:58:53 +13:00
Krystine Sherwin e7588492a0
symfpu: Configurable eb and sb 2026-03-11 12:58:52 +13:00
Jannis Harder 25848020cc
wip: symfpu pass 2026-03-11 12:58:52 +13:00
Miodrag Milanovic 70a11c6bf0 Release version 0.63 2026-03-04 07:46:57 +01:00
Miodrag Milanovic b7d013e6bf Fix help message for equiv passes 2026-03-04 07:46:40 +01:00
KrystalDelusion 1d3f9b7905
Merge pull request #5687 from YosysHQ/nella/pdr-doc
Update help text for rename -witness and write_aiger -ywmap
2026-03-02 09:29:25 +13:00
Miodrag Milanović 687a36af38
Merge pull request #5711 from YosysHQ/gowin_warning
gowin: remove spurious warning
2026-02-27 14:04:27 +01:00
Miodrag Milanovic 7f1f247c56 gowin: remove spurious warning 2026-02-27 13:12:32 +01:00
Miodrag Milanović 2dd71c3ba2
Merge pull request #5709 from YosysHQ/update_abc
Update ABC as per 2026-02-27
2026-02-27 08:32:34 +01:00
Miodrag Milanovic b3caec1a93 Update ABC as per 2026-02-27 2026-02-27 07:55:34 +01:00
nella 2c52546e2a Fix docs. 2026-02-25 16:42:05 +01:00
Emil J 5f8489d36d
Merge pull request #5666 from YosysHQ/emil/equiv_induct-missing-model-errors
equiv_induct: error on missing model
2026-02-25 15:39:31 +01:00
Miodrag Milanović fd1ac58767
Merge pull request #5706 from YosysHQ/remove-flake-lock
Remove already disabled CI job
2026-02-25 11:15:33 +01:00
Miodrag Milanovic 31f7d0d92d Remove already disabled CI job 2026-02-25 10:36:46 +01:00
Miodrag Milanović 53d8eb43ff
Merge pull request #5702 from YosysHQ/verific_build_all
Check verific configurations
2026-02-23 09:41:59 +01:00
Miodrag Milanovic b51110a50b Build various Verific configurations 2026-02-23 09:01:55 +01:00
Krystine Sherwin fd311c5501 tests/arch/gowin: Add wr_en test 2026-02-22 09:00:37 +01:00
Krystine Sherwin 2386923b8f gowin: Fix bram ADA byte enables 2026-02-22 09:00:37 +01:00
Miodrag Milanović fb653c4181
Merge pull request #5700 from YosysHQ/wasi_speedup
CI: WASI - Applying YoWASP changes to script
2026-02-20 18:00:24 +01:00
Miodrag Milanovic 68e47ebcfe CI: WASI - Applying YoWASP changes to script 2026-02-20 15:23:45 +01:00
Miodrag Milanović 0ed7c5ad53
Merge pull request #5620 from YosysHQ/lofty/abc9-verify
abc9: verify post-mapping equivalence by default
2026-02-20 13:41:11 +01:00
Krystine Sherwin 094481739f memory_libmap: Add -force-params
Reduce complexity for adi brams by unconditionally providing the WIDTH and ABITS parameters.
2026-02-20 10:57:00 +00:00
Emil J 13795203a1
Merge pull request #5680 from YosysHQ/emi/aiger-add-bounds-checks
aigerparse: add some bounds checks
2026-02-20 11:53:49 +01:00
Emil J 74f7b0cf92
Merge pull request #5685 from chathhorn-galois/chathhorn/issue5684
Fix segfault from shift with 0-width signed arg.
2026-02-20 11:53:05 +01:00
Emil J 53509a9b2a
Merge pull request #5692 from YosysHQ/emil/modtools-fix-db-port-deletion
modtools: fix database sanity
2026-02-20 10:49:28 +01:00
Miodrag Milanović 679156d323
Merge pull request #5686 from YosysHQ/version_bump
Automatic version bump
2026-02-19 09:52:22 +01:00
Emil J. Tywoniak abc7563a35 modtools: add ModIndex unit test 2026-02-18 22:15:44 +01:00