summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog22
-rw-r--r--tests/test-acosl.c4
-rw-r--r--tests/test-asinl.c4
-rw-r--r--tests/test-atanl.c4
-rw-r--r--tests/test-cosl.c4
-rw-r--r--tests/test-expl.c4
-rw-r--r--tests/test-logl.c4
-rw-r--r--tests/test-sinl.c4
-rw-r--r--tests/test-sqrtl.c4
-rw-r--r--tests/test-tanl.c4
10 files changed, 49 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index 6b0735259d..f2a0c7b288 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,27 @@
2010-01-24 Bruno Haible <bruno@clisp.org>
+ Tests: Defeat inlining of math functions by GCC >= 4.3.0.
+ * tests/test-acosl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+ * tests/test-asinl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+ * tests/test-atanl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+ * tests/test-cosl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+ * tests/test-expl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+ * tests/test-logl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+ * tests/test-sinl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+ * tests/test-sqrtl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+ * tests/test-tanl.c (x): New variable.
+ (main): Store argument in x and fetch it from x.
+
+2010-01-24 Bruno Haible <bruno@clisp.org>
+
Provide EXEEXT and srcdir in TESTS_ENVIRONMENT by default.
* gnulib-tool (func_emit_tests_Makefile_am): Add EXEEXT and srcdir
assignments to the initial TESTS_ENVIRONMENT.
diff --git a/tests/test-acosl.c b/tests/test-acosl.c
index 5f95919745..9533def5c2 100644
--- a/tests/test-acosl.c
+++ b/tests/test-acosl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (acosl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = acosl (0.6L);
+ x = 0.6L;
+ y = acosl (x);
ASSERT (y >= 0.9272952180L && y <= 0.9272952181L);
return 0;
diff --git a/tests/test-asinl.c b/tests/test-asinl.c
index 811f2d0ded..8b60457347 100644
--- a/tests/test-asinl.c
+++ b/tests/test-asinl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (asinl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = asinl (0.6L);
+ x = 0.6L;
+ y = asinl (x);
ASSERT (y >= 0.6435011087L && y <= 0.6435011088L);
return 0;
diff --git a/tests/test-atanl.c b/tests/test-atanl.c
index e78e823273..c365401647 100644
--- a/tests/test-atanl.c
+++ b/tests/test-atanl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (atanl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = atanl (0.6L);
+ x = 0.6L;
+ y = atanl (x);
ASSERT (y >= 0.5404195002L && y <= 0.5404195003L);
return 0;
diff --git a/tests/test-cosl.c b/tests/test-cosl.c
index 5e63fdd355..a13e75f84e 100644
--- a/tests/test-cosl.c
+++ b/tests/test-cosl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (cosl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = cosl (0.6L);
+ x = 0.6L;
+ y = cosl (x);
ASSERT (y >= 0.8253356149L && y <= 0.8253356150L);
return 0;
diff --git a/tests/test-expl.c b/tests/test-expl.c
index fe671c8bdf..440bc0ef60 100644
--- a/tests/test-expl.c
+++ b/tests/test-expl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (expl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = expl (0.6L);
+ x = 0.6L;
+ y = expl (x);
ASSERT (y >= 1.822118800L && y <= 1.822118801L);
return 0;
diff --git a/tests/test-logl.c b/tests/test-logl.c
index 12bf62425d..357df92de2 100644
--- a/tests/test-logl.c
+++ b/tests/test-logl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (logl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = logl (0.6L);
+ x = 0.6L;
+ y = logl (x);
ASSERT (y >= -0.5108256238L && y <= -0.5108256237L);
return 0;
diff --git a/tests/test-sinl.c b/tests/test-sinl.c
index 19e7e62ff8..8d69b26cee 100644
--- a/tests/test-sinl.c
+++ b/tests/test-sinl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (sinl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = sinl (0.6L);
+ x = 0.6L;
+ y = sinl (x);
ASSERT (y >= 0.5646424733L && y <= 0.5646424734L);
return 0;
diff --git a/tests/test-sqrtl.c b/tests/test-sqrtl.c
index 2bf34fa004..a7baef783c 100644
--- a/tests/test-sqrtl.c
+++ b/tests/test-sqrtl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (sqrtl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = sqrtl (0.6L);
+ x = 0.6L;
+ y = sqrtl (x);
ASSERT (y >= 0.7745966692L && y <= 0.7745966693L);
return 0;
diff --git a/tests/test-tanl.c b/tests/test-tanl.c
index 3d692fc6ce..6e105cb4b6 100644
--- a/tests/test-tanl.c
+++ b/tests/test-tanl.c
@@ -26,6 +26,7 @@ SIGNATURE_CHECK (tanl, long double, (long double));
#include "fpucw.h"
#include "macros.h"
+volatile long double x;
long double y;
int
@@ -36,7 +37,8 @@ main ()
BEGIN_LONG_DOUBLE_ROUNDING ();
/* A particular value. */
- y = tanl (0.6L);
+ x = 0.6L;
+ y = tanl (x);
ASSERT (y >= 0.6841368083L && y <= 0.6841368084L);
return 0;