yosys/passes
Mohamed Gaber 46ba89059a splitlarge: new pass to split wide arithmetic operators
Adds a new pass, `splitlarge`, that recursively divides $add/$sub
cells into smaller cells until each cell's width doesn't exceed a
given max_width (128 by default.) An $add/$sub cell's width for
this purpose is defined as the higher of the widths of its two
inputs.

A test was written in Tcl for it, which tests this matrix:
- cell: $add/$sub
- b: unsigned, signed
- a: unsigned, signed

This is the first test for a Silimate pass in Tcl and thus
`run-test.sh` was modified to include it.
2025-05-15 17:45:08 +03:00
..
cmds Merge branch 'YosysHQ:main' into main 2025-04-10 14:28:10 -07:00
equiv Add equiv_opt -post 2025-02-04 20:02:55 -08:00
fsm io: refactor string and file work into new unit 2025-03-19 13:43:42 +01:00
hierarchy Merge branch 'YosysHQ:main' into main 2025-04-10 14:28:10 -07:00
memory Revert "Represent memory size with size_t" 2025-04-04 03:20:07 -07:00
opt Merge branch 'YosysHQ:main' into main 2025-04-10 14:28:10 -07:00
pmgen Merge nice gzip refactor 2025-03-20 16:47:12 -07:00
proc Revert "Represent memory size with size_t" 2025-04-04 03:20:07 -07:00
sat Merge branch 'YosysHQ:main' into main 2025-04-10 14:28:10 -07:00
silimate splitlarge: new pass to split wide arithmetic operators 2025-05-15 17:45:08 +03:00
techmap Merge branch 'YosysHQ:main' into main 2025-04-10 14:28:10 -07:00
tests macc: Stop using the B port 2025-01-08 13:03:35 +01:00