From f9fef5d00bef4810c9e8b46beeb04dd2870d70d6 Mon Sep 17 00:00:00 2001 From: Johann Klammer Date: Sat, 11 Apr 2015 21:25:11 +0200 Subject: [PATCH] driven_mask... --- link_const.cc | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/link_const.cc b/link_const.cc index ccc38801e..86db02760 100644 --- a/link_const.cc +++ b/link_const.cc @@ -275,11 +275,18 @@ vector Nexus::driven_mask(void) const } const NetPartSelect*obj_ps = dynamic_cast(obj); - if (obj_ps && obj_ps->dir()==NetPartSelect::VP) - continue; - if (obj_ps && cur->get_pin()!=1) - continue; - if (obj_ps) { + if(obj_ps) { + if (obj_ps->dir()==NetPartSelect::VP) { + if(cur->get_pin()!=0) + continue; + for (size_t idx = 0 ; idx < mask.size() ; idx += 1) + mask[idx] = true; + return mask; + } + else { + if (cur->get_pin()!=1) + continue; + } for (unsigned idx = 0 ; idx < obj_ps->width() ; idx += 1) { size_t bit = idx + obj_ps->base(); ivl_assert(*obj, bit < mask.size());