From cb8f855f347da751d65eb002f80247d107b25e96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Povi=C5=A1er?= Date: Fri, 24 Jan 2025 12:35:23 +0100 Subject: [PATCH] rtlil: Fix macc_v2 cell check --- kernel/rtlil.cc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/kernel/rtlil.cc b/kernel/rtlil.cc index 29a7ebf3e..c10e879c5 100644 --- a/kernel/rtlil.cc +++ b/kernel/rtlil.cc @@ -1472,16 +1472,16 @@ namespace { error(__LINE__); if (param(ID::NADDENDS) <= 0) error(__LINE__); - param_bits(ID::PRODUCT_NEGATED, min(param(ID::NPRODUCTS), 1)); - param_bits(ID::ADDEND_NEGATED, min(param(ID::NADDENDS), 1)); - param_bits(ID::A_SIGNED, min(param(ID::NPRODUCTS), 1)); - param_bits(ID::B_SIGNED, min(param(ID::NPRODUCTS), 1)); - param_bits(ID::C_SIGNED, min(param(ID::NADDENDS), 1)); + param_bits(ID::PRODUCT_NEGATED, max(param(ID::NPRODUCTS), 1)); + param_bits(ID::ADDEND_NEGATED, max(param(ID::NADDENDS), 1)); + param_bits(ID::A_SIGNED, max(param(ID::NPRODUCTS), 1)); + param_bits(ID::B_SIGNED, max(param(ID::NPRODUCTS), 1)); + param_bits(ID::C_SIGNED, max(param(ID::NADDENDS), 1)); if (cell->getParam(ID::A_SIGNED) != cell->getParam(ID::B_SIGNED)) error(__LINE__); - param_bits(ID::A_WIDTHS, min(param(ID::NPRODUCTS) * 16, 1)); - param_bits(ID::B_WIDTHS, min(param(ID::NPRODUCTS) * 16, 1)); - param_bits(ID::C_WIDTHS, min(param(ID::NADDENDS) * 16, 1)); + param_bits(ID::A_WIDTHS, max(param(ID::NPRODUCTS) * 16, 1)); + param_bits(ID::B_WIDTHS, max(param(ID::NPRODUCTS) * 16, 1)); + param_bits(ID::C_WIDTHS, max(param(ID::NADDENDS) * 16, 1)); const Const &a_width = cell->getParam(ID::A_WIDTHS); const Const &b_width = cell->getParam(ID::B_WIDTHS); const Const &c_width = cell->getParam(ID::C_WIDTHS);