summaryrefslogtreecommitdiffstats
path: root/qemu/tests/tcg/cris/check_gcctorture_pr28634.c
blob: a0c525497d72815278629e16d7df45bfd27e304d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* PR rtl-optimization/28634.  On targets with delayed branches,
   dbr_schedule could do the next iteration's addition in the
   branch delay slot, then subtract the value again if the branch
   wasn't taken.  This can lead to rounding errors.  */
double x = -0x1.0p53;
double y = 1;
int
main (void)
{
  while (y > 0)
    y += x;
  if (y != x + 1)
    abort ();
  exit (0);
}