diff options
author | Timothy Pearson <tpearson@raptorengineering.com> | 2019-05-11 15:12:49 -0500 |
---|---|---|
committer | Timothy Pearson <tpearson@raptorengineering.com> | 2019-05-11 15:12:49 -0500 |
commit | 9e80202352dd49bdd9e67b8b906d86f058431505 (patch) | |
tree | 5673c17aad6e3833da8c4ff21b5a11f666ec9fbe /src/tests/tcg/cris/check_gcctorture_pr28634-1.c | |
download | hqemu-master.zip hqemu-master.tar.gz |
Diffstat (limited to 'src/tests/tcg/cris/check_gcctorture_pr28634-1.c')
-rw-r--r-- | src/tests/tcg/cris/check_gcctorture_pr28634-1.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/tests/tcg/cris/check_gcctorture_pr28634-1.c b/src/tests/tcg/cris/check_gcctorture_pr28634-1.c new file mode 100644 index 0000000..45ecd15 --- /dev/null +++ b/src/tests/tcg/cris/check_gcctorture_pr28634-1.c @@ -0,0 +1,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); +} |