diff options
author | Jannis Harder <me@jix.one> | 2022-05-24 14:32:14 +0200 |
---|---|---|
committer | Zachary Snow <zachary.j.snow@gmail.com> | 2022-05-24 23:03:31 -0400 |
commit | cffec1f95f0ac4bad1deb24bf7f921bd93145a16 (patch) | |
tree | c66eeb0e812b0519e8f72791c70e2b6dc44d7df3 /frontends/ast | |
parent | c525b5f91925bd51194ead99a4ecace313f9945c (diff) | |
download | yosys-cffec1f95f0ac4bad1deb24bf7f921bd93145a16.tar.gz yosys-cffec1f95f0ac4bad1deb24bf7f921bd93145a16.tar.bz2 yosys-cffec1f95f0ac4bad1deb24bf7f921bd93145a16.zip |
verilog: fix signedness when removing unreachable cases
Diffstat (limited to 'frontends/ast')
-rw-r--r-- | frontends/ast/simplify.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/frontends/ast/simplify.cc b/frontends/ast/simplify.cc index bd3e09c4b..4d7c4f522 100644 --- a/frontends/ast/simplify.cc +++ b/frontends/ast/simplify.cc @@ -1531,6 +1531,7 @@ bool AstNode::simplify(bool const_fold, bool at_zero, bool in_lvalue, int stage, detectSignWidth(width_hint, sign_hint); while (children[0]->simplify(const_fold, at_zero, in_lvalue, stage, width_hint, sign_hint, in_param)) { } if (children[0]->type == AST_CONSTANT && children[0]->bits_only_01()) { + children[0]->is_signed = sign_hint; RTLIL::Const case_expr = children[0]->bitsAsConst(width_hint, sign_hint); std::vector<AstNode*> new_children; new_children.push_back(children[0]); |