summaryrefslogtreecommitdiffstats
path: root/qemu/tests/tcg/cris/check_gcctorture_pr28634-1.c
blob: 45ecd159b3caf586b3998198ee83ccd14690a94f (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.  */
int x = -1;
int y = 1;
int
main (void)
{
  while (y > 0)
    y += x;
  if (y != x + 1)
    abort ();
  exit (0);
}