kernel: require \B_SIGNED=0 on $shl, $sshl, $shr, $sshr.
authorwhitequark <whitequark@whitequark.org>
Wed, 4 Dec 2019 11:59:36 +0000 (11:59 +0000)
committerwhitequark <whitequark@whitequark.org>
Wed, 4 Dec 2019 11:59:36 +0000 (11:59 +0000)
commite97e33d00df9d702643a82152aa1becc611ef823
treed6a56f374db5ee9dda0fb6af63cc7dd932106c65
parentec4c9267b384030b487e66a77e4cc4ef600e876f
kernel: require \B_SIGNED=0 on $shl, $sshl, $shr, $sshr.

Before this commit, these cells would accept any \B_SIGNED and in
case of \B_SIGNED=1, would still treat the \B input as unsigned.

Also fix the Verilog frontend to never emit such constructs.
frontends/verilog/verilog_parser.y
kernel/rtlil.cc