void drivenBit (int bit, int width) { UINFO(9, "set d["<<(bit+width-1)<<":"<<bit<<"] "<<m_varp->name()<<endl); for (int i=0; i<width; i++) { if (bitNumOk(bit+i)) { m_flags[(bit+i)*FLAGS_PER_BIT + FLAG_DRIVEN] = true; } } }
bool isUsedNotDrivenBit (int bit, int width) const { for (int i=0; i<width; i++) { if (bitNumOk(bit+i) && (m_usedWhole || m_flags[(bit+i)*FLAGS_PER_BIT + FLAG_USED]) && !(m_drivenWhole || m_flags[(bit+i)*FLAGS_PER_BIT + FLAG_DRIVEN])) return true; } return false; }