mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Update.
* math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed. 2003-06-15 Andreas Jaeger <aj@suse.de> * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting of MXCSR. * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise. * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise. Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>. * math/tgmath.h (carg): Handle real arguments. (conj): Likewise. (cproj): Likewise. (cimag): Likewise. (creal): Likewise. * math/Makefile (CFLAGS-test-tgmath-ret.c): New. (tests): Add test-tgmath-ret. * math/test-tgmath-ret.c: New file. * math/tgmath.h (ilogb): Return always an int. 2003-06-16 Ulrich Drepper <drepper@redhat.com> computation so that prelinking works.
This commit is contained in:
@ -175,19 +175,6 @@
|
||||
} \
|
||||
__tgmres; }))
|
||||
|
||||
/* XXX This definition has to be changed as soon as the compiler understands
|
||||
the imaginary keyword. */
|
||||
# define __TGMATH_UNARY_IMAG_ONLY(Val, Fct) \
|
||||
(__extension__ ({ __tgmath_real_type (Val) __tgmres; \
|
||||
if (sizeof (Val) == sizeof (__complex__ double) \
|
||||
|| __builtin_classify_type (__real__ (Val)) != 8) \
|
||||
__tgmres = Fct (Val); \
|
||||
else if (sizeof (Val) == sizeof (__complex__ float)) \
|
||||
__tgmres = Fct##f (Val); \
|
||||
else \
|
||||
__tgmres = __tgml(Fct) (Val); \
|
||||
__tgmres; }))
|
||||
|
||||
/* XXX This definition has to be changed as soon as the compiler understands
|
||||
the imaginary keyword. */
|
||||
# define __TGMATH_BINARY_REAL_IMAG(Val1, Val2, Fct, Cfct) \
|
||||
@ -400,7 +387,7 @@
|
||||
__TGMATH_BINARY_FIRST_REAL_ONLY (Val1, Val2, scalbln)
|
||||
|
||||
/* Return the binary exponent of X, which must be nonzero. */
|
||||
#define ilogb(Val) __TGMATH_UNARY_REAL_ONLY (Val, ilogb)
|
||||
#define ilogb(Val) __TGMATH_UNARY_REAL_RET_ONLY (Val, int, ilogb)
|
||||
|
||||
|
||||
/* Return positive difference between X and Y. */
|
||||
@ -421,21 +408,21 @@
|
||||
/* Absolute value, conjugates, and projection. */
|
||||
|
||||
/* Argument value of Z. */
|
||||
#define carg(Val) __TGMATH_UNARY_IMAG_ONLY (Val, carg)
|
||||
#define carg(Val) __TGMATH_UNARY_REAL_IMAG (Val, carg, carg)
|
||||
|
||||
/* Complex conjugate of Z. */
|
||||
#define conj(Val) __TGMATH_UNARY_IMAG_ONLY (Val, conj)
|
||||
#define conj(Val) __TGMATH_UNARY_REAL_IMAG (Val, conj, conj)
|
||||
|
||||
/* Projection of Z onto the Riemann sphere. */
|
||||
#define cproj(Val) __TGMATH_UNARY_IMAG_ONLY (Val, cproj)
|
||||
#define cproj(Val) __TGMATH_UNARY_REAL_IMAG (Val, cproj, cproj)
|
||||
|
||||
|
||||
/* Decomposing complex values. */
|
||||
|
||||
/* Imaginary part of Z. */
|
||||
#define cimag(Val) __TGMATH_UNARY_IMAG_ONLY (Val, cimag)
|
||||
#define cimag(Val) __TGMATH_UNARY_REAL_IMAG (Val, cimag, cimag)
|
||||
|
||||
/* Real part of Z. */
|
||||
#define creal(Val) __TGMATH_UNARY_IMAG_ONLY (Val, creal)
|
||||
#define creal(Val) __TGMATH_UNARY_REAL_IMAG (Val, creal, creal)
|
||||
|
||||
#endif /* tgmath.h */
|
||||
|
Reference in New Issue
Block a user