unwind-generic.h (_sleb128_t, _uleb128_t): Don't use HAVE_LONG_LONG to decide, but...
authorRichard Henderson <rth@redhat.com>
Thu, 29 Mar 2007 23:35:33 +0000 (16:35 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 29 Mar 2007 23:35:33 +0000 (16:35 -0700)
        * unwind-generic.h (_sleb128_t, _uleb128_t): Don't use HAVE_LONG_LONG
        to decide, but __SIZEOF_LONG_LONG__.

From-SVN: r123352

gcc/ChangeLog
gcc/unwind-generic.h

index 5af2da30d3d6fb5ed9b4cee186f22414f52d677d..31cddc01829a55257fc61fc49a99ce0a17988ab6 100644 (file)
@@ -1,3 +1,8 @@
+2007-03-29  Richard Henderson  <rth@redhat.com>
+
+       * unwind-generic.h (_sleb128_t, _uleb128_t): Don't use HAVE_LONG_LONG
+       to decide, but __SIZEOF_LONG_LONG__.
+
 2007-03-29  Richard Henderson  <rth@redhat.com>
 
        * emutls.c (struct __emutls_array): New.
index 1218d8c2b5397c4908d11e4f45397acd42b4f54f..4d5d14df105753e61b49832636fd1378924fd357 100644 (file)
@@ -247,16 +247,14 @@ extern void * _Unwind_FindEnclosingFunction (void *pc);
    except when a unsigned long data type on the target machine is not
    capable of storing a pointer.  */
 
-#if __SIZEOF_LONG__ < __SIZEOF_POINTER__
-#ifdef HAVE_LONG_LONG
+#if __SIZEOF_LONG__ >= __SIZEOF_POINTER__
+  typedef long _sleb128_t;
+  typedef unsigned long _uleb128_t;
+#elif __SIZEOF_LONG_LONG__ >= __SIZEOF_POINTER__
   typedef long long _sleb128_t;
   typedef unsigned long long _uleb128_t;
 #else
-  #error "long long data type is needed to define _sleb128_t"
-#endif
-#else
-  typedef long _sleb128_t;
-  typedef unsigned long _uleb128_t;
+# error "What type shall we use for _sleb128_t?"
 #endif
 
 #ifdef __cplusplus