Added proc_id to CacheMsg for SMT.
authorPolina Dudnik <pdudnik@gmail.com>
Fri, 14 Aug 2009 20:30:07 +0000 (15:30 -0500)
committerPolina Dudnik <pdudnik@gmail.com>
Fri, 14 Aug 2009 20:30:07 +0000 (15:30 -0500)
Not yet necessary, but in case each of the threads
is allowed to initiate an atomic, will come in handy

src/mem/slicc/symbols/Type.cc

index eb53cc7b9ed4311028888fdb437e85d85c7ca37c..5afe53423b0cf353df79d84f170356743cce0ce6 100644 (file)
@@ -277,6 +277,11 @@ void Type::printTypeH(string path) const
       string id = m_data_member_ident_vec[i];
       out << "const " << type->cIdent() << "& local_" << id;
     }
+
+    if (isMessage()) {
+      out << ", const unsigned local_proc_id" << flush;
+    }
+
     out << ")" << endl;
 
     // Call superclass constructor
@@ -293,7 +298,9 @@ void Type::printTypeH(string path) const
         string next_line_value = m_data_member_pairs_vec[i].lookup("nextLineCallHack");
         out << "    m_" << id << next_line_value << ";" << endl;
       }
-
+    }
+    if (isMessage()) {
+      out << "    proc_id = local_proc_id;" << endl << flush;
     }
     out << "  }" << endl;
   } // end of if(!isGlobal())
@@ -428,6 +435,10 @@ void Type::printTypeH(string path) const
     }
   }
 
+  if (isMessage()) {
+    out << "  unsigned proc_id;" << endl << flush;
+  }
+
   out << "};" << endl;  // End class
 
   out << "// Output operator declaration" << endl;