verilog: fix buf/not primitives with multiple outputs
authorXiretza <xiretza@xiretza.xyz>
Tue, 16 Mar 2021 23:18:36 +0000 (00:18 +0100)
committerZachary Snow <zachary.j.snow@gmail.com>
Wed, 17 Mar 2021 15:44:03 +0000 (11:44 -0400)
commit092e923330ce23adffa7843a27bdba8a0b139e58
tree08bed305ed18522ae38b0718de8fdffa04814d1f
parentdd6d34f461910a120ac95c485fe34cca6485b95e
verilog: fix buf/not primitives with multiple outputs

From IEEE1364-2005, section 7.3 buf and not gates:

> These two logic gates shall have one input and one or more outputs.
> The last terminal in the terminal list shall connect to the input of the
> logic gate, and the other terminals shall connect to the outputs of
> the logic gate.

yosys does not follow this and instead interprets the first argument as
the output, the second as the input and ignores the rest.
frontends/ast/simplify.cc
tests/simple/verilog_primitives.v [new file with mode: 0644]