yosys/passes/opt
Jannis Harder c77b7343d0 Consistent $mux undef handling
* Change simlib's $mux cell to use the ternary operator as $_MUX_
  already does
* Stop opt_expr -keepdc from changing S=x to S=0
* Change const eval of $mux and $pmux to match the updated simlib
  (fixes sim)
* The sat behavior of $mux already matches the updated simlib

The verilog frontend uses $mux for the ternary operators and this
changes all interpreations of the $mux cell (that I found) to match the
verilog simulation behavior for the ternary operator. For 'if' and
'case' expressions the frontend may also use $mux but uses $eqx if the
verilog simulation behavior is requested with the '-ifx' option.

For $pmux there is a remaining mismatch between the sat behavior and the
simlib behavior. Resolving this requires more discussion, as the $pmux
cell does not directly correspond to a specific verilog construct.
2022-10-24 12:03:01 +02:00
..
Makefile.inc Add opt_ffinv pass. 2022-05-13 23:02:30 +02:00
muxpack.cc Fixing old e-mail addresses and deadnames 2021-06-08 00:39:36 +02:00
opt.cc opt_merge: Add `-keepdc` option required for formal verification 2022-04-01 21:03:20 +02:00
opt_clean.cc Add the $anyinit cell and the formalff pass 2022-08-16 13:37:30 +02:00
opt_demorgan.cc Fixing old e-mail addresses and deadnames 2021-06-08 00:39:36 +02:00
opt_dff.cc Fitting help messages to 80 character width 2022-08-24 10:40:57 +12:00
opt_expr.cc Consistent $mux undef handling 2022-10-24 12:03:01 +02:00
opt_ffinv.cc opt_ffinv: Fix use after free. 2022-06-13 14:04:04 +02:00
opt_lut.cc opt_lut: Allow more than one -dlogic per cell type. 2021-07-29 17:30:07 +02:00
opt_lut_ins.cc gowin: widelut support (#3042) 2021-11-06 16:09:30 +01:00
opt_mem.cc opt_mem: Remove constant-value bit lanes. 2022-05-07 23:13:16 +02:00
opt_mem_feedback.cc kernel/mem: Introduce transparency masks. 2021-08-11 00:04:16 +02:00
opt_mem_priority.cc opt_mem_priority: Fix non-ascii char in help message. 2021-12-09 00:56:14 +01:00
opt_mem_widen.cc Add opt_mem_widen pass. 2021-08-14 01:06:23 +02:00
opt_merge.cc opt_merge: Add `-keepdc` option required for formal verification 2022-04-01 21:03:20 +02:00
opt_muxtree.cc opt_muxtree: Update port_off and port_idx even for constant bits 2021-06-11 12:06:35 +01:00
opt_reduce.cc opt_reduce: Fix use-after-free. 2022-07-23 17:27:26 +02:00
opt_share.cc Fixing old e-mail addresses and deadnames 2021-06-08 00:39:36 +02:00
pmux2shiftx.cc Fixing old e-mail addresses and deadnames 2021-06-08 00:39:36 +02:00
rmports.cc Fixing old e-mail addresses and deadnames 2021-06-08 00:39:36 +02:00
share.cc Add v2 memory cells. 2021-08-11 13:34:10 +02:00
wreduce.cc wreduce: Keep more x-bits with -keepdc 2022-08-16 13:37:30 +02:00