Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Jan 2008 18:24:25 GMT
From:      Olivier Houchard <cognet@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 134402 for review
Message-ID:  <200801291824.m0TIOPE6097604@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=134402

Change 134402 by cognet@kanar on 2008/01/29 18:24:08

	2nd try to support both 32 and 64 bits.
	Use fixed size types, to make sure gcc doesn't moan about
	int vs long.

Affected files ...

.. //depot/projects/mips2-jnpr/src/sys/mips/include/_types.h#7 edit

Differences ...

==== //depot/projects/mips2-jnpr/src/sys/mips/include/_types.h#7 (text+ko) ====

@@ -54,6 +54,10 @@
 typedef	int			__int32_t;
 typedef	unsigned int		__uint32_t;
 
+#ifdef __mips64
+typedef	long			__int64_t;
+typedef	unsigned long		__uint64_t;
+#else
 #if defined(lint)
 /* LONGLONG */
 typedef	long long		__int64_t;
@@ -68,18 +72,28 @@
 /* LONGLONG */
 typedef	unsigned long long	__uint64_t;
 #endif
+#endif
 
 /*
  * Standard type definitions.
  */
-typedef	unsigned long	__clock_t;		/* clock()... */
+typedef	__int32_t	__clock_t;		/* clock()... */
 typedef	unsigned int	__cpumask_t;
+#ifdef __mips64
+typedef	__int64_t	__critical_t;
+#else
 typedef	__int32_t	__critical_t;
+#endif
 typedef	double		__double_t;
 typedef	double		__float_t;
-typedef	long		__intfptr_t;
+#ifdef __mips64
+typedef	__int64_t	__intfptr_t;
+typedef	__int64_t	__intptr_t;
+#else
+typedef	__int32_t	__intfptr_t;
+typedef	__int32_t	__intptr_t;
+#endif
 typedef	__int64_t	__intmax_t;
-typedef	long		__intptr_t;
 typedef	__int32_t	__int_fast8_t;
 typedef	__int32_t	__int_fast16_t;
 typedef	__int32_t	__int_fast32_t;
@@ -88,16 +102,27 @@
 typedef	__int16_t	__int_least16_t;
 typedef	__int32_t	__int_least32_t;
 typedef	__int64_t	__int_least64_t;
+#ifdef __mips64
+typedef	__int64_t	__ptrdiff_t;
+typedef	__int64_t	__register_t;
+typedef	__int64_t	__segsz_t;
+typedef	__uint64_t	__size_t;
+typedef	__int64_t	__ssize_t;
+typedef	__uint64_t	__uintfptr_t;
+typedef	__uint64_t	__uintptr_t;
+typedef	__int64_t	f_register_t;
+#else
 typedef	__int32_t	__ptrdiff_t;		/* ptr1 - ptr2 */
 typedef	__int32_t	__register_t;
-typedef	__int32_t	f_register_t;
 typedef	__int32_t	__segsz_t;		/* segment size (in pages) */
 typedef	__uint32_t	__size_t;		/* sizeof() */
 typedef	__int32_t	__ssize_t;		/* byte count or error */
-typedef	__int32_t	__time_t;		/* time()... */
-typedef	unsigned long	__uintfptr_t;
+typedef	__uint32_t	__uintfptr_t;
+typedef	__uint32_t	__uintptr_t;
+typedef	__int32_t	f_register_t;
+#endif
+typedef	__int64_t	__time_t;		/* time()... */
 typedef	__uint64_t	__uintmax_t;
-typedef	__uint32_t	__uintptr_t;
 typedef	__uint32_t	__uint_fast8_t;
 typedef	__uint32_t	__uint_fast16_t;
 typedef	__uint32_t	__uint_fast32_t;
@@ -106,12 +131,19 @@
 typedef	__uint16_t	__uint_least16_t;
 typedef	__uint32_t	__uint_least32_t;
 typedef	__uint64_t	__uint_least64_t;
+#ifdef __mips64
+typedef	__uint64_t	__u_register_t;
+typedef	__uint64_t	__vm_offset_t;
+typedef	__uint64_t	__vm_paddr_t;
+typedef	__uint64_t	__vm_size_t;
+#else
 typedef	__uint32_t	__u_register_t;
 typedef	__uint32_t	__vm_offset_t;
+typedef	__uint32_t	__vm_paddr_t;
+typedef	__uint32_t	__vm_size_t;
+#endif
 typedef	__int64_t	__vm_ooffset_t;
-typedef	__uint32_t	__vm_paddr_t;
 typedef	__uint64_t	__vm_pindex_t;
-typedef	unsigned long	__vm_size_t;
 
 /*
  * Unusual type definitions.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200801291824.m0TIOPE6097604>