------- Additional Comments From pinskia at gcc dot gnu dot org  2005-06-22 
03:53 -------
Confirmed, reduced testcase:
double rint (double __x) __attribute__ ((__nothrow__));
void process_C(unsigned char *udst, unsigned char *usrc,
               int w, float hue)
{
 int i;
 int c = rint(hue);
  for (i = 0; i<w; i++)
  {
   int u = usrc[i];
   int new_u = c*u;
   if(new_u & 1) new_u= (-new_u)>>31;
   udst[i]= new_u;
  }
}

rint is importrant.

-O1 -ffast-math is enough to reproduce this.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |uros at kss-loka dot si
             Status|WAITING                     |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-06-22 03:53:54
               date|                            |
            Summary|vf_hue.c:54: internal       |[4.1 Regression]
                   |compiler error: in          |vf_hue.c:54: internal
                   |final_scan_insn, at         |compiler error: in
                   |final.c:2419                |final_scan_insn, at
                   |                            |final.c:2419
   Target Milestone|---                         |4.1.0


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

Reply via email to