From f43dea8084f7ce989c17d2a00b643aac5b404325 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Tue, 16 Nov 2010 17:29:39 +0000 Subject: * libc/include/sys/types.h: Add _mode_t for __rtems__. * libc/sys/rtems/machine/_types.h: Provide _mode_t, _fpos_t, _off_t. Add _ssize_t for 64bit sparc. Let arm, i386, m68k, mips, PPC, sparc use 64bit _off_t, _fpos_t. --- newlib/libc/sys/rtems/machine/_types.h | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'newlib/libc/sys') diff --git a/newlib/libc/sys/rtems/machine/_types.h b/newlib/libc/sys/rtems/machine/_types.h index e1c6ba671..2e0204335 100644 --- a/newlib/libc/sys/rtems/machine/_types.h +++ b/newlib/libc/sys/rtems/machine/_types.h @@ -20,6 +20,9 @@ typedef signed int _ssize_t; typedef long signed int _ssize_t; #endif #define __ssize_t_defined 1 +#elif defined(__sparc__) && defined(__LP64__) +typedef long signed int _ssize_t; +#define __ssize_t_defined 1 #elif defined(__AVR__) || defined(__lm32__) || defined(__m32c__) || defined(__mips__) || defined(__moxie__) || defined(__PPC__) || defined(__sparc__) || defined(__sh__) typedef signed int _ssize_t; #define __ssize_t_defined 1 @@ -31,4 +34,24 @@ typedef signed int _ssize_t; typedef __int32_t blksize_t; typedef __int32_t blkcnt_t; + +#if defined(__arm__) || defined(__i386__) || defined(__m68k__) || defined(__mips__) || defined(__PPC__) || defined(__sparc__) +/* Use 64bit types */ +typedef __int64_t _off_t; +#define __off_t_defined 1 + +typedef __int64_t _fpos_t; +#define __fpos_t_defined 1 +#else +/* Use 32bit types */ +typedef __int32_t _off_t; +#define __off_t_defined 1 + +typedef __int32_t _fpos_t; +#define __fpos_t_defined 1 +#endif + +typedef __uint32_t _mode_t; +#define __mode_t_defined 1 + #endif -- cgit v1.2.3