driven_mask...

This commit is contained in:
Johann Klammer 2015-04-11 21:25:11 +02:00 committed by Cary R
parent 891399185f
commit f9fef5d00b
1 changed files with 12 additions and 5 deletions

View File

@ -275,11 +275,18 @@ vector<bool> Nexus::driven_mask(void) const
} }
const NetPartSelect*obj_ps = dynamic_cast<const NetPartSelect*>(obj); const NetPartSelect*obj_ps = dynamic_cast<const NetPartSelect*>(obj);
if (obj_ps && obj_ps->dir()==NetPartSelect::VP) if(obj_ps) {
continue; if (obj_ps->dir()==NetPartSelect::VP) {
if (obj_ps && cur->get_pin()!=1) if(cur->get_pin()!=0)
continue; continue;
if (obj_ps) { 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) { for (unsigned idx = 0 ; idx < obj_ps->width() ; idx += 1) {
size_t bit = idx + obj_ps->base(); size_t bit = idx + obj_ps->base();
ivl_assert(*obj, bit < mask.size()); ivl_assert(*obj, bit < mask.size());