mirror of
https://github.com/verilator/verilator.git
synced 2026-09-04 08:33:38 +02:00
Internals: Use explicit std:: instead of using namespace std. No functional change intended.
This commit is contained in:
+14
-14
@@ -81,7 +81,7 @@ private:
|
||||
// State cleared on each module
|
||||
AstNodeModule* m_modp; // Current MODULE
|
||||
int m_modTables; // Number of tables created in this module
|
||||
deque<AstVarScope*> m_modTableVscs; // All tables created
|
||||
std::deque<AstVarScope*> m_modTableVscs; // All tables created
|
||||
|
||||
// State cleared on each scope
|
||||
AstScope* m_scopep; // Current SCOPE
|
||||
@@ -90,12 +90,12 @@ private:
|
||||
bool m_assignDly; // Consists of delayed assignments instead of normal assignments
|
||||
int m_inWidth; // Input table width
|
||||
int m_outWidth; // Output table width
|
||||
deque<AstVarScope*> m_inVarps; // Input variable list
|
||||
deque<AstVarScope*> m_outVarps; // Output variable list
|
||||
deque<bool> m_outNotSet; // True if output variable is not set at some point
|
||||
std::deque<AstVarScope*> m_inVarps; // Input variable list
|
||||
std::deque<AstVarScope*> m_outVarps; // Output variable list
|
||||
std::deque<bool> m_outNotSet; // True if output variable is not set at some point
|
||||
|
||||
// When creating a table
|
||||
deque<AstVarScope*> m_tableVarps; // Table being created
|
||||
std::deque<AstVarScope*> m_tableVarps; // Table being created
|
||||
|
||||
// METHODS
|
||||
static int debug() {
|
||||
@@ -210,7 +210,7 @@ private:
|
||||
|
||||
// Collapse duplicate tables
|
||||
chgVscp = findDuplicateTable(chgVscp);
|
||||
for (deque<AstVarScope*>::iterator it = m_tableVarps.begin(); it!=m_tableVarps.end(); ++it) {
|
||||
for (std::deque<AstVarScope*>::iterator it = m_tableVarps.begin(); it!=m_tableVarps.end(); ++it) {
|
||||
*it = findDuplicateTable(*it);
|
||||
}
|
||||
|
||||
@@ -232,7 +232,7 @@ private:
|
||||
|
||||
void createTableVars(AstNode* nodep) {
|
||||
// Create table for each output
|
||||
for (deque<AstVarScope*>::iterator it = m_outVarps.begin(); it!=m_outVarps.end(); ++it) {
|
||||
for (std::deque<AstVarScope*>::iterator it = m_outVarps.begin(); it!=m_outVarps.end(); ++it) {
|
||||
AstVarScope* outvscp = *it;
|
||||
AstVar* outvarp = outvscp->varp();
|
||||
FileLine* fl = nodep->fileline();
|
||||
@@ -258,7 +258,7 @@ private:
|
||||
// Concat inputs into a single temp variable (inside always)
|
||||
// First var in inVars becomes the LSB of the concat
|
||||
AstNode* concatp = NULL;
|
||||
for (deque<AstVarScope*>::iterator it = m_inVarps.begin(); it!=m_inVarps.end(); ++it) {
|
||||
for (std::deque<AstVarScope*>::iterator it = m_inVarps.begin(); it!=m_inVarps.end(); ++it) {
|
||||
AstVarScope* invscp = *it;
|
||||
AstVarRef* refp = new AstVarRef (nodep->fileline(), invscp, false);
|
||||
if (concatp) {
|
||||
@@ -278,14 +278,14 @@ private:
|
||||
// There may be a simulation path by which the output doesn't change value.
|
||||
// We could bail on these cases, or we can have a "change it" boolean.
|
||||
// We've choosen the later route, since recirc is common in large FSMs.
|
||||
for (deque<AstVarScope*>::iterator it = m_outVarps.begin(); it!=m_outVarps.end(); ++it) {
|
||||
for (std::deque<AstVarScope*>::iterator it = m_outVarps.begin(); it!=m_outVarps.end(); ++it) {
|
||||
m_outNotSet.push_back(false);
|
||||
}
|
||||
uint32_t inValueNextInitArray=0;
|
||||
TableSimulateVisitor simvis (this);
|
||||
for (uint32_t inValue=0; inValue <= VL_MASK_I(m_inWidth); inValue++) {
|
||||
// Make a new simulation structure so we can set new input values
|
||||
UINFO(8," Simulating "<<hex<<inValue<<endl);
|
||||
UINFO(8," Simulating "<<std::hex<<inValue<<endl);
|
||||
|
||||
// Above simulateVisitor clears user 3, so
|
||||
// all outputs default to NULL to mean 'recirculating'.
|
||||
@@ -293,7 +293,7 @@ private:
|
||||
|
||||
// Set all inputs to the constant
|
||||
uint32_t shift = 0;
|
||||
for (deque<AstVarScope*>::iterator it = m_inVarps.begin(); it!=m_inVarps.end(); ++it) {
|
||||
for (std::deque<AstVarScope*>::iterator it = m_inVarps.begin(); it!=m_inVarps.end(); ++it) {
|
||||
AstVarScope* invscp = *it;
|
||||
// LSB is first variable, so extract it that way
|
||||
simvis.newNumber(invscp, VL_MASK_I(invscp->width()) & (inValue>>shift));
|
||||
@@ -310,7 +310,7 @@ private:
|
||||
// If a output changed, add it to table
|
||||
int outnum = 0;
|
||||
V3Number outputChgMask (nodep->fileline(), m_outVarps.size(), 0);
|
||||
for (deque<AstVarScope*>::iterator it = m_outVarps.begin(); it!=m_outVarps.end(); ++it) {
|
||||
for (std::deque<AstVarScope*>::iterator it = m_outVarps.begin(); it!=m_outVarps.end(); ++it) {
|
||||
AstVarScope* outvscp = *it;
|
||||
V3Number* outnump = simvis.fetchOutNumberNull(outvscp);
|
||||
AstNode* setp;
|
||||
@@ -345,7 +345,7 @@ private:
|
||||
// See if another table we've created is identical, if so use it for both.
|
||||
// (A more 'modern' way would be to instead use V3Hashed::findDuplicate)
|
||||
AstVar* var1p = vsc1p->varp();
|
||||
for (deque<AstVarScope*>::iterator it = m_modTableVscs.begin(); it!=m_modTableVscs.end(); ++it) {
|
||||
for (std::deque<AstVarScope*>::iterator it = m_modTableVscs.begin(); it!=m_modTableVscs.end(); ++it) {
|
||||
AstVarScope* vsc2p= *it;
|
||||
AstVar* var2p = vsc2p->varp();
|
||||
if (var1p->width() == var2p->width()
|
||||
@@ -371,7 +371,7 @@ private:
|
||||
// elimination will remove it for us.
|
||||
// Set each output from array ref into our table
|
||||
int outnum = 0;
|
||||
for (deque<AstVarScope*>::iterator it = m_outVarps.begin(); it!=m_outVarps.end(); ++it) {
|
||||
for (std::deque<AstVarScope*>::iterator it = m_outVarps.begin(); it!=m_outVarps.end(); ++it) {
|
||||
AstVarScope* outvscp = *it;
|
||||
AstNode* alhsp = new AstVarRef(nodep->fileline(), outvscp, true);
|
||||
AstNode* arhsp = new AstArraySel(nodep->fileline(),
|
||||
|
||||
Reference in New Issue
Block a user