summary refs log tree commit diff
path: root/math
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-05-07 02:14:18 +0000
committerUlrich Drepper <drepper@redhat.com>2004-05-07 02:14:18 +0000
commitf1debaf68214cb898f67355ee83169cc135e14e9 (patch)
tree784ded5c488856bc159d3c158c19983d5894d4d7 /math
parenta9dd9ea3cd0b8dbf0514320841e61ec0abb6d0f5 (diff)
downloadglibc-f1debaf68214cb898f67355ee83169cc135e14e9.tar.gz
glibc-f1debaf68214cb898f67355ee83169cc135e14e9.tar.xz
glibc-f1debaf68214cb898f67355ee83169cc135e14e9.zip
Update.
2004-05-06  Ulrich Drepper  <drepper@redhat.com>

	* math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
	(carg): Likewise.
	Patch by Lev S Bishop <lev.bishop@yale.edu>.

	* math/bug-tgmath1.c (main): Test fabs and carg as well.

2004-05-06  Richard Henderson  <rth@redhat.com>

	* elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
	AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
	* sysdeps/unix/sysv/linux/alpha/Versions: Export
	__libc_alpha_cache_shape as a private symbol.
	* sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
	* sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.

	* sysdeps/alpha/divl.S: Use them.
	* sysdeps/alpha/divq.S: Likewise.
	* sysdeps/alpha/divqu.S: Likewise.
	* sysdeps/alpha/reml.S: Likewise.
	* sysdeps/alpha/remq.S: Likewise.
	* sysdeps/alpha/remqu.S: Likewise.
Diffstat (limited to 'math')
-rw-r--r--math/bug-tgmath1.c14
-rw-r--r--math/tgmath.h4
2 files changed, 16 insertions, 2 deletions
diff --git a/math/bug-tgmath1.c b/math/bug-tgmath1.c
index 8a457fa252..16db9d17a1 100644
--- a/math/bug-tgmath1.c
+++ b/math/bug-tgmath1.c
@@ -29,5 +29,19 @@ main (void)
   TEST (cimag (1.0f), sizeof (float));
   TEST (cimag (1.0f + 1.0fi), sizeof (float));
 
+  TEST (fabs (1.0), sizeof (double));
+  TEST (fabs (1.0 + 1.0i), sizeof (double));
+  TEST (fabs (1.0l), sizeof (long double));
+  TEST (fabs (1.0l + 1.0li), sizeof (long double));
+  TEST (fabs (1.0f), sizeof (float));
+  TEST (fabs (1.0f + 1.0fi), sizeof (float));
+
+  TEST (carg (1.0), sizeof (double));
+  TEST (carg (1.0 + 1.0i), sizeof (double));
+  TEST (carg (1.0l), sizeof (long double));
+  TEST (carg (1.0l + 1.0li), sizeof (long double));
+  TEST (carg (1.0f), sizeof (float));
+  TEST (carg (1.0f + 1.0fi), sizeof (float));
+
   return retval;
 }
diff --git a/math/tgmath.h b/math/tgmath.h
index 0202e100bc..ab2cc929ad 100644
--- a/math/tgmath.h
+++ b/math/tgmath.h
@@ -346,7 +346,7 @@
 #define ceil(Val) __TGMATH_UNARY_REAL_ONLY (Val, ceil)
 
 /* Absolute value of X.  */
-#define fabs(Val) __TGMATH_UNARY_REAL_IMAG (Val, fabs, cabs)
+#define fabs(Val) __TGMATH_UNARY_REAL_IMAG_RET_REAL (Val, fabs, cabs)
 
 /* Largest integer not greater than X.  */
 #define floor(Val) __TGMATH_UNARY_REAL_ONLY (Val, floor)
@@ -439,7 +439,7 @@
 /* Absolute value, conjugates, and projection.  */
 
 /* Argument value of Z.  */
-#define carg(Val) __TGMATH_UNARY_REAL_IMAG (Val, carg, carg)
+#define carg(Val) __TGMATH_UNARY_REAL_IMAG_RET_REAL (Val, carg, carg)
 
 /* Complex conjugate of Z.  */
 #define conj(Val) __TGMATH_UNARY_REAL_IMAG (Val, conj, conj)