Re-installed 2001-01-09's patch:
authorAlexandre Oliva <aoliva@redhat.com>
Thu, 3 May 2001 11:58:43 +0000 (11:58 +0000)
committerAlexandre Oliva <aoliva@gcc.gnu.org>
Thu, 3 May 2001 11:58:43 +0000 (11:58 +0000)
* hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
if it's wider than long and the target's long is wider than the
host's.

From-SVN: r41785

gcc/ChangeLog
gcc/hwint.h

index a1418e8b348154e6077872d0f8b425427c133b76..794cb1f6af042a60bcffd2cca80ebd700d24b10f 100644 (file)
@@ -1,3 +1,10 @@
+2001-05-03  Alexandre Oliva  <aoliva@redhat.com>
+
+       Re-installed 2001-01-09's patch:
+       * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
+       if it's wider than long and the target's long is wider than the
+       host's.
+
 2001-05-02  David O'Brien  <obrien@FreeBSD.org>
 
        * config.gcc, config/rs6000/aix51.h, config/rs6000/mach.h:  Do not
index e4ec51cba7ab3efa2e7f0b789209956830c133fc..9551dc5ccd9f2d035f43e5efe35319ef94e04367 100644 (file)
 
 /* Find the largest host integer type and set its size and type.  */
 
+/* Use long long on the host if the target has a wider long type than
+   the host.  */
+
+#if ! defined HOST_BITS_PER_WIDE_INT \
+    && defined HOST_BITS_PER_LONGLONG \
+    && (HOST_BITS_PER_LONGLONG > HOST_BITS_PER_LONG) \
+    && (defined (LONG_LONG_MAX) || defined (LONGLONG_MAX) \
+        || defined (LLONG_MAX) || defined (__GNUC__))
+
+# ifdef MAX_LONG_TYPE_SIZE
+#  if MAX_LONG_TYPE_SIZE > HOST_BITS_PER_LONG
+#   define HOST_BITS_PER_WIDE_INT HOST_BITS_PER_LONGLONG
+#   define HOST_WIDE_INT long long
+#  endif
+# else
+#  if LONG_TYPE_SIZE > HOST_BITS_PER_LONG
+#   define HOST_BITS_PER_WIDE_INT HOST_BITS_PER_LONGLONG
+#   define HOST_WIDE_INT long long
+#  endif
+# endif
+
+#endif
+
 #ifndef HOST_BITS_PER_WIDE_INT
 
 # if HOST_BITS_PER_LONG > HOST_BITS_PER_INT