diff options
author | clairexen <claire@symbioticeda.com> | 2020-05-29 16:37:23 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-29 16:37:23 +0200 |
commit | 94c10353897c6b2b3f960bdd6647a5da9c1d9f2c (patch) | |
tree | 695ca7d8b26c8c4268498c76e09c157d9846bde0 /backends/smv/smv.cc | |
parent | af36afe722dc35b129351af592ef340e512e0292 (diff) | |
parent | f88bef767263590c94e157d0989afa91db3ccdb0 (diff) | |
download | yosys-94c10353897c6b2b3f960bdd6647a5da9c1d9f2c.tar.gz yosys-94c10353897c6b2b3f960bdd6647a5da9c1d9f2c.tar.bz2 yosys-94c10353897c6b2b3f960bdd6647a5da9c1d9f2c.zip |
Merge pull request #1885 from Xiretza/mod-rem-cells
Fix modulo/remainder semantics
Diffstat (limited to 'backends/smv/smv.cc')
-rw-r--r-- | backends/smv/smv.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/backends/smv/smv.cc b/backends/smv/smv.cc index 7113ebc97..2fc7099f4 100644 --- a/backends/smv/smv.cc +++ b/backends/smv/smv.cc @@ -358,7 +358,8 @@ struct SmvWorker continue; } - if (cell->type.in(ID($div), ID($mod))) + // SMV has a "mod" operator, but its semantics don't seem to be well-defined - to be safe, don't generate it at all + if (cell->type.in(ID($div)/*, ID($mod), ID($modfloor)*/)) { int width_y = GetSize(cell->getPort(ID::Y)); int width = max(width_y, GetSize(cell->getPort(ID::A))); @@ -366,7 +367,7 @@ struct SmvWorker string expr_a, expr_b, op; if (cell->type == ID($div)) op = "/"; - if (cell->type == ID($mod)) op = "mod"; + //if (cell->type == ID($mod)) op = "mod"; if (cell->getParam(ID::A_SIGNED).as_bool()) { |