summaryrefslogtreecommitdiff
path: root/src/arch/sparc/linux/linux.hh
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2007-03-09 17:14:24 -0500
committerGabe Black <gblack@eecs.umich.edu>2007-03-09 17:14:24 -0500
commit03ff1c31678dbc292f7885fef9c6cd3f58a2989b (patch)
tree803eb133631bc8da3696cd23d695adaf4bd042f0 /src/arch/sparc/linux/linux.hh
parentc40d95e4c470ba585316d85cb67d36f5ca9e0bd0 (diff)
downloadgem5-03ff1c31678dbc292f7885fef9c6cd3f58a2989b.tar.xz
Split the syscall table, SPARC specific syscall implementations, and the 32 bit syscall table into it's own file. Corrected problems with the stat structure. These should be tested on 64 bit x86 and SPARC machines.
--HG-- extra : convert_revision : 5d9fe19e031b92e111069c6b89c3dbeb29975b8a
Diffstat (limited to 'src/arch/sparc/linux/linux.hh')
-rw-r--r--src/arch/sparc/linux/linux.hh28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/arch/sparc/linux/linux.hh b/src/arch/sparc/linux/linux.hh
index fefd27197..f396eb5cd 100644
--- a/src/arch/sparc/linux/linux.hh
+++ b/src/arch/sparc/linux/linux.hh
@@ -79,4 +79,32 @@ class SparcLinux : public Linux
static const unsigned TGT_MAP_ANONYMOUS = 0x20;
};
+class Sparc32Linux : public SparcLinux
+{
+ public:
+
+ typedef struct {
+ uint64_t st_dev;
+ uint64_t st_ino;
+ uint32_t st_mode;
+ uint32_t st_nlink;
+ uint32_t st_uid;
+ uint32_t st_gid;
+ uint64_t st_rdev;
+ uint8_t __pad3[8];
+ int64_t st_size;
+ int32_t st_blksize;
+ uint8_t __pad4[8];
+ int64_t st_blocks;
+ uint64_t st_atimeX;
+ uint64_t st_atime_nsec;
+ uint64_t st_mtimeX;
+ uint64_t st_mtime_nsec;
+ uint64_t st_ctimeX;
+ uint64_t st_ctime_nsec;
+ uint32_t __unused4;
+ uint32_t __unused5;
+ } tgt_stat64;
+};
+
#endif