summaryrefslogtreecommitdiff
path: root/src/sim
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2011-10-16 05:06:40 -0700
committerGabe Black <gblack@eecs.umich.edu>2011-10-16 05:06:40 -0700
commitca36c01f7e515d8042b141c7912e0f090b121e6e (patch)
tree8c3a5b1d412564ba1c7b7bd1e14a6c219f03e448 /src/sim
parent464c485d0c7189e886d241ec36294d8d6b7c196e (diff)
downloadgem5-ca36c01f7e515d8042b141c7912e0f090b121e6e.tar.xz
SE/FS: Make some system funcs available in SE and FS.
Diffstat (limited to 'src/sim')
-rw-r--r--src/sim/system.cc15
-rw-r--r--src/sim/system.hh13
2 files changed, 8 insertions, 20 deletions
diff --git a/src/sim/system.cc b/src/sim/system.cc
index 81a8a0574..f8e9b31b8 100644
--- a/src/sim/system.cc
+++ b/src/sim/system.cc
@@ -65,14 +65,12 @@ vector<System *> System::systemList;
int System::numSystemsRunning = 0;
System::System(Params *p)
- : SimObject(p), physmem(p->physmem), _numContexts(0),
+ : SimObject(p), physmem(p->physmem), _numContexts(0), pagePtr(0),
#if FULL_SYSTEM
init_param(p->init_param),
loadAddrMask(p->load_addr_mask),
-#else
- pagePtr(0),
- nextPID(0),
#endif
+ nextPID(0),
memoryMode(p->mem_mode),
workItemsBegin(0),
workItemsEnd(0),
@@ -273,7 +271,6 @@ System::replaceThreadContext(ThreadContext *tc, int context_id)
remoteGDB[context_id]->replaceThreadContext(tc);
}
-#if !FULL_SYSTEM
Addr
System::new_page()
{
@@ -296,8 +293,6 @@ System::freeMemSize()
return physmem->size() - (pagePtr << LogVMPageSize);
}
-#endif
-
bool
System::isMemory(const Addr addr) const
{
@@ -321,10 +316,9 @@ System::serialize(ostream &os)
{
#if FULL_SYSTEM
kernelSymtab->serialize("kernel_symtab", os);
-#else // !FULL_SYSTEM
+#endif
SERIALIZE_SCALAR(pagePtr);
SERIALIZE_SCALAR(nextPID);
-#endif
}
@@ -333,10 +327,9 @@ System::unserialize(Checkpoint *cp, const string &section)
{
#if FULL_SYSTEM
kernelSymtab->unserialize("kernel_symtab", cp, section);
-#else // !FULL_SYSTEM
+#endif
UNSERIALIZE_SCALAR(pagePtr);
UNSERIALIZE_SCALAR(nextPID);
-#endif
}
void
diff --git a/src/sim/system.hh b/src/sim/system.hh
index 5b48b5242..37729a397 100644
--- a/src/sim/system.hh
+++ b/src/sim/system.hh
@@ -113,6 +113,8 @@ class System : public SimObject
*/
bool isMemory(const Addr addr) const;
+ Addr pagePtr;
+
#if FULL_SYSTEM
uint64_t init_param;
@@ -144,9 +146,7 @@ class System : public SimObject
*/
Addr loadAddrMask;
-#else
-
- Addr pagePtr;
+#endif // FULL_SYSTEM
protected:
uint64_t nextPID;
@@ -163,9 +163,6 @@ class System : public SimObject
/** Amount of physical memory that exists */
Addr memSize();
-
-#endif // FULL_SYSTEM
-
protected:
Enums::MemoryMode memoryMode;
uint64_t workItemsBegin;
@@ -284,12 +281,10 @@ class System : public SimObject
*/
Addr getKernelEntry() const { return kernelEntry; }
-#else
+#endif
Addr new_page();
-#endif // FULL_SYSTEM
-
int registerThreadContext(ThreadContext *tc, int assigned=-1);
void replaceThreadContext(ThreadContext *tc, int context_id);