diff options
author | Polina Dudnik <pdudnik@gmail.com> | 2009-08-14 15:30:07 -0500 |
---|---|---|
committer | Polina Dudnik <pdudnik@gmail.com> | 2009-08-14 15:30:07 -0500 |
commit | 0b0f47ec1664fc6338f5cfe793f8199de4828184 (patch) | |
tree | 886bfe5540078dfc4bd8fcacb09988f50829f8c5 /src/mem/slicc/symbols | |
parent | de25decf37a7b0e2986da3345e8d4eb8b4a85fed (diff) | |
download | gem5-0b0f47ec1664fc6338f5cfe793f8199de4828184.tar.xz |
Added proc_id to CacheMsg for SMT.
Not yet necessary, but in case each of the threads
is allowed to initiate an atomic, will come in handy
Diffstat (limited to 'src/mem/slicc/symbols')
-rw-r--r-- | src/mem/slicc/symbols/Type.cc | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/mem/slicc/symbols/Type.cc b/src/mem/slicc/symbols/Type.cc index eb53cc7b9..5afe53423 100644 --- a/src/mem/slicc/symbols/Type.cc +++ b/src/mem/slicc/symbols/Type.cc @@ -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; |