diff options
-rw-r--r-- | CHANGELOG | 6 | ||||
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | backends/smt2/smt2.cc | 8 | ||||
-rw-r--r-- | manual/command-reference-manual.tex | 3 |
4 files changed, 14 insertions, 5 deletions
@@ -4,6 +4,12 @@ List of major changes and improvements between releases Yosys 0.19 .. Yosys 0.19-dev -------------------------- + * New commands and options + - Added option "-wb" to "read_liberty" pass + + * Various + - Added support for $modfloor operator to cxxrtl backend + - Support build on OpenBSD Yosys 0.18 .. Yosys 0.19 -------------------------- @@ -131,7 +131,7 @@ LDLIBS += -lrt endif endif -YOSYS_VER := 0.19+42 +YOSYS_VER := 0.19+45 # Note: We arrange for .gitcommit to contain the (short) commit hash in # tarballs generated with git-archive(1) using .gitattributes. The git repo diff --git a/backends/smt2/smt2.cc b/backends/smt2/smt2.cc index 7481e0510..f6c3560c1 100644 --- a/backends/smt2/smt2.cc +++ b/backends/smt2/smt2.cc @@ -449,7 +449,7 @@ struct Smt2Worker bool is_signed = cell->getParam(ID::A_SIGNED).as_bool(); int width = GetSize(sig_y); - if (type == 's' || type == 'd' || type == 'b') { + if (type == 's' || type == 'S' || type == 'd' || type == 'b') { width = max(width, GetSize(cell->getPort(ID::A))); if (cell->hasPort(ID::B)) width = max(width, GetSize(cell->getPort(ID::B))); @@ -462,7 +462,7 @@ struct Smt2Worker if (cell->hasPort(ID::B)) { sig_b = cell->getPort(ID::B); - sig_b.extend_u0(width, is_signed && !(type == 's')); + sig_b.extend_u0(width, (type == 'S') || (is_signed && !(type == 's'))); } std::string processed_expr; @@ -619,8 +619,8 @@ struct Smt2Worker if (cell->type.in(ID($shift), ID($shiftx))) { if (cell->getParam(ID::B_SIGNED).as_bool()) { return export_bvop(cell, stringf("(ite (bvsge P #b%0*d) " - "(bvlshr A B) (bvlshr A (bvneg B)))", - GetSize(cell->getPort(ID::B)), 0), 's'); + "(bvlshr A B) (bvshl A (bvneg B)))", + GetSize(cell->getPort(ID::B)), 0), 'S'); // type 'S' sign extends B } else { return export_bvop(cell, "(bvlshr A B)", 's'); } diff --git a/manual/command-reference-manual.tex b/manual/command-reference-manual.tex index 644f81d95..411feb05d 100644 --- a/manual/command-reference-manual.tex +++ b/manual/command-reference-manual.tex @@ -4011,6 +4011,9 @@ Read cells from liberty file as modules into current design. -lib only create empty blackbox modules + -wb + mark imported cells as whiteboxes + -nooverwrite ignore re-definitions of modules. (the default behavior is to create an error message if the existing module is not a blackbox |