diff gcc/testsuite/c-c++-common/dfp/pr31385.c @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc/testsuite/c-c++-common/dfp/pr31385.c	Fri Oct 27 22:46:09 2017 +0900
@@ -0,0 +1,30 @@
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+typedef float fp_t __attribute__((mode(SD)));
+
+extern fp_t g(fp_t);
+
+fp_t
+bug(fp_t x)
+{
+    fp_t result;
+    int n;
+    fp_t f, f3, y, z;
+
+    n = 0;
+    y = 1.DF;
+    f = g(x);
+
+    if (f < 0.DF)
+        f = -f;
+
+    f3 = 2.DF;
+
+    z = (y + y + f / (y * y));
+    y = (z + z) / (9.DF) + f3 / (z * z);
+
+    result = y;
+
+    return (result);
+}