summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/execute/regstack-1.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/regstack-1.c')
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/regstack-1.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/regstack-1.c b/gcc/testsuite/gcc.c-torture/execute/regstack-1.c
new file mode 100644
index 000000000..51fb858cf
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/regstack-1.c
@@ -0,0 +1,26 @@
+long double C = 5;
+long double U = 1;
+long double Y2 = 11;
+long double Y1 = 17;
+long double X, Y, Z, T, R, S;
+main ()
+{
+ X = (C + U) * Y2;
+ Y = C - U - U;
+ Z = C + U + U;
+ T = (C - U) * Y1;
+ X = X - (Z + U);
+ R = Y * Y1;
+ S = Z * Y2;
+ T = T - Y;
+ Y = (U - Y) + R;
+ Z = S - (Z + U + U);
+ R = (Y2 + U) * Y1;
+ Y1 = Y2 * Y1;
+ R = R - Y2;
+ Y1 = Y1 - 0.5L;
+ if (Z != 68. || Y != 49. || X != 58. || Y1 != 186.5 || R != 193. || S != 77.
+ || T != 65. || Y2 != 11.)
+ abort ();
+ exit (0);
+}