OSDN Git Service

* config/fp-bit.c (isnan, isinf, pack_d, unpack_d): Use
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 28 Nov 2005 13:42:32 +0000 (13:42 +0000)
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 28 Nov 2005 13:42:32 +0000 (13:42 +0000)
__builtin_expect.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107603 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/fp-bit.c

index 2320e10..1dd5299 100644 (file)
@@ -1,5 +1,10 @@
 2005-11-28  Joseph S. Myers  <joseph@codesourcery.com>
 
 2005-11-28  Joseph S. Myers  <joseph@codesourcery.com>
 
+       * config/fp-bit.c (isnan, isinf, pack_d, unpack_d): Use
+       __builtin_expect.
+
+2005-11-28  Joseph S. Myers  <joseph@codesourcery.com>
+
        * config/fp-bit.h (LSHIFT): Take shift count parameter.
        * config/fp-bit.c (_fpadd_parts): Shift in one go instead of one
        bit at a time.
        * config/fp-bit.h (LSHIFT): Take shift count parameter.
        * config/fp-bit.c (_fpadd_parts): Shift in one go instead of one
        bit at a time.
index cf943da..ef7437d 100644 (file)
@@ -160,14 +160,15 @@ INLINE
 static int
 isnan ( fp_number_type *  x)
 {
 static int
 isnan ( fp_number_type *  x)
 {
-  return x->class == CLASS_SNAN || x->class == CLASS_QNAN;
+  return __builtin_expect (x->class == CLASS_SNAN || x->class == CLASS_QNAN,
+                          0);
 }
 
 INLINE
 static int
 isinf ( fp_number_type *  x)
 {
 }
 
 INLINE
 static int
 isinf ( fp_number_type *  x)
 {
-  return x->class == CLASS_INFINITY;
+  return __builtin_expect (x->class == CLASS_INFINITY, 0);
 }
 
 #endif /* NO_NANS */
 }
 
 #endif /* NO_NANS */
@@ -249,7 +250,7 @@ pack_d ( fp_number_type *  src)
     }
   else
     {
     }
   else
     {
-      if (src->normal_exp < NORMAL_EXPMIN)
+      if (__builtin_expect (src->normal_exp < NORMAL_EXPMIN, 0))
        {
 #ifdef NO_DENORMALS
          /* Go straight to a zero representation if denormals are not
        {
 #ifdef NO_DENORMALS
          /* Go straight to a zero representation if denormals are not
@@ -296,7 +297,7 @@ pack_d ( fp_number_type *  src)
 #endif /* NO_DENORMALS */
        }
       else if (!LARGEST_EXPONENT_IS_NORMAL (FRAC_NBITS)
 #endif /* NO_DENORMALS */
        }
       else if (!LARGEST_EXPONENT_IS_NORMAL (FRAC_NBITS)
-              && src->normal_exp > EXPBIAS)
+              && __builtin_expect (src->normal_exp > EXPBIAS, 0))
        {
          exp = EXPMAX;
          fraction = 0;
        {
          exp = EXPMAX;
          fraction = 0;
@@ -560,7 +561,8 @@ unpack_d (FLO_union_type * src, fp_number_type * dst)
          dst->fraction.ll = fraction;
        }
     }
          dst->fraction.ll = fraction;
        }
     }
-  else if (!LARGEST_EXPONENT_IS_NORMAL (FRAC_NBITS) && exp == EXPMAX)
+  else if (!LARGEST_EXPONENT_IS_NORMAL (FRAC_NBITS)
+          && __builtin_expect (exp == EXPMAX, 0))
     {
       /* Huge exponent*/
       if (fraction == 0)
     {
       /* Huge exponent*/
       if (fraction == 0)