summaryrefslogtreecommitdiff
path: root/src/sim/process.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/sim/process.cc')
-rw-r--r--src/sim/process.cc14
1 files changed, 4 insertions, 10 deletions
diff --git a/src/sim/process.cc b/src/sim/process.cc
index 62b9b7002..f28b1f1ca 100644
--- a/src/sim/process.cc
+++ b/src/sim/process.cc
@@ -77,15 +77,6 @@
using namespace std;
using namespace TheISA;
-//
-// The purpose of this code is to fake the loader & syscall mechanism
-// when there's no OS: thus there's no resone to use it in FULL_SYSTEM
-// mode when we do have an OS
-//
-#if FULL_SYSTEM
-#error "process.cc not compatible with FULL_SYSTEM"
-#endif
-
// current number of allocated processes
int num_processes = 0;
@@ -579,6 +570,7 @@ LiveProcess::LiveProcess(LiveProcessParams * params, ObjectFile *_objFile)
void
LiveProcess::syscall(int64_t callnum, ThreadContext *tc)
{
+#if !FULL_SYSTEM
num_syscalls++;
SyscallDesc *desc = getDesc(callnum);
@@ -586,6 +578,7 @@ LiveProcess::syscall(int64_t callnum, ThreadContext *tc)
fatal("Syscall %d out of range", callnum);
desc->doSyscall(callnum, this, tc);
+#endif
}
IntReg
@@ -611,6 +604,7 @@ LiveProcess::create(LiveProcessParams * params)
"executables are supported!\n Please recompile your "
"executable as a static binary and try again.\n");
+#if !FULL_SYSTEM
#if THE_ISA == ALPHA_ISA
if (objFile->getArch() != ObjectFile::Alpha)
fatal("Object file architecture does not match compiled ISA (Alpha).");
@@ -721,7 +715,7 @@ LiveProcess::create(LiveProcessParams * params)
#else
#error "THE_ISA not set"
#endif
-
+#endif
if (process == NULL)
fatal("Unknown error creating process object.");