1
0
mirror of synced 2026-01-23 19:17:15 +00:00
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
..
2022-05-13 23:02:30 +02:00
2022-10-24 12:03:01 +02:00
2022-06-13 14:04:04 +02:00
2021-11-06 16:09:30 +01:00
2021-08-14 01:06:23 +02:00
2022-07-23 17:27:26 +02:00
2021-08-11 13:34:10 +02:00