This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [ia64-tools] Re: A glibc ia64 patch for math


>>>>> H J Lu writes:

 > On Thu, Sep 21, 2000 at 09:04:41AM +0200, Andreas Jaeger wrote:
>> >>>>> H J Lu writes:
>> 
HJ> With this patch, I only got
HJ> make[2]: *** [/home/work/build/glibc/math/test-ldouble.out] Error 1
HJ> make[2]: *** [/home/work/build/glibc/math/test-ildoubl.out] Error 1
>> 
HJ> for "make check" on ia64. Those long double functions are not
HJ> implemented. I assume we will get them in libm from Intel. With all
>> Which functions are missing?  I might be able to handle that in the
>> tests.
>> 

 > Here is the list. I hope I didn't miss anything.

 > Thanks.


 > H.J.
 > ---
 > __atanl not implemented
 > __erfcl not implemented
 > __erfl not implemented
 > __expm1l not implemented
 > __ieee754_acosl not implemented
 > __ieee754_asinl not implemented
 > __ieee754_exp2l not implemented
 > __ieee754_expl not implemented
 > __ieee754_fmodl not implemented
 > __ieee754_j0l not implemented
 > __ieee754_j1l not implemented
 > __ieee754_jnl not implemented
 > __ieee754_lgammal_r not implemented
 > __ieee754_log10l not implemented
 > __ieee754_logl not implemented
 > __ieee754_powl not implemented
 > __ieee754_rem_pio2l not implemented
 > __ieee754_sqrtl not implemented
 > __ieee754_y0l not implemented
 > __ieee754_y1l not implemented
 > __ieee754_ynl not implemented
 > __kernel_cosl not implemented
 > __kernel_sinl not implemented
 > __kernel_tanl not implemented
 > __log1pl not implemented
 > __log2l not implemented

Here's a patch - I'll commit it later.  Please test it and tell me if
this fixes the issues.  I hope I didn't introduce any copy&paste
errors :-(.

Andreas

2000-09-21  Andreas Jaeger  <aj@suse.de>

	* math/libm-test.inc (atan_test): 
	(expm1_test): Likewise.
	(acos_test): Likewise.
	(asin_test): Likewise.
	(exp_test): Likewise.
	(fmod_test): Likewise.
	(log10_test): Likewise.
	(log_test): Likewise.
	(pow_test): Likewise.
	(sqrt_test): Likewise.
	(cos_test): Likewise.
	(sin_test): Likewise.
	(tan_test): Likewise.
	(log1p_test): Likewise.
	(log2_test): Likewise.

============================================================
Index: math/libm-test.inc
--- math/libm-test.inc	2000/06/21 05:53:50	1.12
+++ math/libm-test.inc	2000/09/21 15:00:01
@@ -693,6 +693,12 @@
 static void
 acos_test (void)
 {
+  errno = 0;
+  FUNC(acos) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (acos);
 
   TEST_f_f (acos, plus_infty, nan_value, INVALID_EXCEPTION);
@@ -734,6 +740,11 @@
 static void
 asin_test (void)
 {
+  errno = 0;
+  FUNC(asin) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
 
   START (asin);
 
@@ -776,6 +787,11 @@
 static void
 atan_test (void)
 {
+  errno = 0;
+  FUNC(atan) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
 
   START (atan);
 
@@ -1749,6 +1765,12 @@
 static void
 cos_test (void)
 {
+  errno = 0;
+  FUNC(cos) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (cos);
 
   TEST_f_f (cos, 0, 1);
@@ -2185,6 +2207,12 @@
 static void
 exp_test (void)
 {
+  errno = 0;
+  FUNC(exp) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (exp);
 
   TEST_f_f (exp, 0, 1);
@@ -2260,6 +2288,12 @@
 static void
 expm1_test (void)
 {
+  errno = 0;
+  FUNC(expm1) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (expm1);
 
   TEST_f_f (expm1, 0, 0);
@@ -2451,6 +2485,11 @@
 static void
 fmod_test (void)
 {
+  errno = 0;
+  FUNC(fmod) (0, 0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
 
   START (fmod);
 
@@ -2880,6 +2919,11 @@
 static void
 log_test (void)
 {
+  errno = 0;
+  FUNC(log) (1);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
   START (log);
 
   TEST_f_f (log, 0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION);
@@ -2903,6 +2947,12 @@
 static void
 log10_test (void)
 {
+  errno = 0;
+  FUNC(log10) (1);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (log10);
 
   TEST_f_f (log10, 0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION);
@@ -2930,6 +2980,12 @@
 static void
 log1p_test (void)
 {
+  errno = 0;
+  FUNC(log1p) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (log1p);
 
   TEST_f_f (log1p, 0, 0);
@@ -2952,6 +3008,12 @@
 static void
 log2_test (void)
 {
+  errno = 0;
+  FUNC(log2) (1);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (log2);
 
   TEST_f_f (log2, 0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION);
@@ -3167,6 +3229,12 @@
 pow_test (void)
 {
 
+  errno = 0;
+  FUNC(pow) (0, 0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (pow);
 
   TEST_ff_f (pow, 0, 0, 1);
@@ -3546,6 +3614,12 @@
 static void
 sin_test (void)
 {
+  errno = 0;
+  FUNC(sin) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (sin);
 
   TEST_f_f (sin, 0, 0);
@@ -3608,6 +3682,12 @@
 static void
 sqrt_test (void)
 {
+  errno = 0;
+  FUNC(sqrt) (1);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (sqrt);
 
   TEST_f_f (sqrt, 0, 0);
@@ -3635,6 +3715,12 @@
 static void
 tan_test (void)
 {
+  errno = 0;
+  FUNC(tan) (0);
+  if (errno == ENOSYS)
+    /* Function not implemented.  */
+    return;
+
   START (tan);
 
   TEST_f_f (tan, 0, 0);

-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de
    http://www.suse.de/~aj

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]