summaryrefslogtreecommitdiff
path: root/src/arch/sparc/process.hh
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2007-10-04 12:24:16 -0700
committerGabe Black <gblack@eecs.umich.edu>2007-10-04 12:24:16 -0700
commit2848ef669632c6d8a8863aac8a5d7ee575c3fd1a (patch)
treee9d32696e0c88904894833046fcf921cd9697eaa /src/arch/sparc/process.hh
parent50e2d20cb876a054f53162e7b01306039c213457 (diff)
downloadgem5-2848ef669632c6d8a8863aac8a5d7ee575c3fd1a.tar.xz
SPARC: Make software trap 3 flush the register windows like the ABI specifies.
--HG-- extra : convert_revision : 8ff43617b56dcca5783d6cc490f87140fc20a36d
Diffstat (limited to 'src/arch/sparc/process.hh')
-rw-r--r--src/arch/sparc/process.hh3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/arch/sparc/process.hh b/src/arch/sparc/process.hh
index 2512441c6..f4e823a9a 100644
--- a/src/arch/sparc/process.hh
+++ b/src/arch/sparc/process.hh
@@ -66,6 +66,7 @@ class SparcLiveProcess : public LiveProcess
Addr readSpillStart()
{ return spillStart; }
+ virtual void flushWindows(ThreadContext *tc) = 0;
};
struct M5_32_auxv_t
@@ -116,6 +117,7 @@ class Sparc32LiveProcess : public SparcLiveProcess
void argsInit(int intSize, int pageSize);
+ void flushWindows(ThreadContext *tc);
};
struct M5_64_auxv_t
@@ -169,6 +171,7 @@ class Sparc64LiveProcess : public SparcLiveProcess
void argsInit(int intSize, int pageSize);
+ void flushWindows(ThreadContext *tc);
};
#endif // __SPARC_PROCESS_HH__