------- Comment #3 from rguenth at gcc dot gnu dot org  2009-04-21 10:18 -------
Confirmed.

static const double internalEndianMagic = 7.949928895127363e-275;
static const unsigned char ieee_754_mantissa_mask[] = { 0x00, 0x0F, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF };
static inline int 
trio_isnan (double number)
{
  int has_mantissa = 0;
  unsigned int i;
  unsigned char current;
  for (i = 0; i < (unsigned int)sizeof(double); i++)
    {
      current = ((unsigned char *)&number)[(((unsigned char
*)&internalEndianMagic)[7-(i)])];
      has_mantissa |= (current & ieee_754_mantissa_mask[i]);
    }
  return has_mantissa;
}
void
xmlXPathEqualNodeSetFloat(int nodeNr, double v)
{
  int i;
  for (i=0; i<nodeNr; i++)
    if (!trio_isnan(v))
      break;
}


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
      Known to work|                            |4.4.0
   Last reconfirmed|0000-00-00 00:00:00         |2009-04-21 10:18:27
               date|                            |
            Summary|ice in fold-const.c         |[4.5 Regression] ice in
                   |                            |fold-const.c
   Target Milestone|---                         |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39824

Reply via email to