summaryrefslogtreecommitdiff
path: root/src/arch/arm/linux/linux.hh
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2009-07-27 00:51:20 -0700
committerAli Saidi <saidi@eecs.umich.edu>2009-07-27 00:51:20 -0700
commite7640227cac9432c689491f29c996d9168bfb330 (patch)
tree924d551787ce724277004c9799bc569e77ee55bc /src/arch/arm/linux/linux.hh
parent70dedd1d35feae3ca06736b3e71f90e376843a8c (diff)
downloadgem5-e7640227cac9432c689491f29c996d9168bfb330.tar.xz
ARM: Fix fstat/fstat64 structs to match EABI definitions.
Diffstat (limited to 'src/arch/arm/linux/linux.hh')
-rw-r--r--src/arch/arm/linux/linux.hh42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/arch/arm/linux/linux.hh b/src/arch/arm/linux/linux.hh
index 16bcee47a..cc3b620ee 100644
--- a/src/arch/arm/linux/linux.hh
+++ b/src/arch/arm/linux/linux.hh
@@ -123,6 +123,48 @@ class ArmLinux : public Linux
TGT_RLIMIT_LOCKS = 10
};
+ typedef struct {
+ uint32_t st_dev;
+ uint32_t st_ino;
+ uint16_t st_mode;
+ uint16_t st_nlink;
+ uint16_t st_uid;
+ uint16_t st_gid;
+ uint32_t st_rdev;
+ uint32_t st_size;
+ uint32_t st_blksize;
+ uint32_t st_blocks;
+ uint32_t st_atimeX;
+ uint32_t st_atime_nsec;
+ uint32_t st_mtimeX;
+ uint32_t st_mtime_nsec;
+ uint32_t st_ctimeX;
+ uint32_t st_ctime_nsec;
+ } tgt_stat;
+
+ typedef struct {
+ uint64_t st_dev;
+ uint8_t __pad0[4];
+ uint32_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[4];
+ int64_t __attribute__ ((aligned (8))) st_size;
+ uint32_t st_blksize;
+ uint64_t __attribute__ ((aligned (8))) st_blocks;
+ uint32_t st_atimeX;
+ uint32_t st_atime_nsec;
+ uint32_t st_mtimeX;
+ uint32_t st_mtime_nsec;
+ uint32_t st_ctimeX;
+ uint32_t st_ctime_nsec;
+ uint64_t st_ino;
+ } tgt_stat64;
+
+
};
#endif