[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commits] r24734 - in /fsf/trunk/libc: ./ malloc/ nptl/ nptl/sysdeps/unix/sysv/linux/i386/i486/ ports/ ports/sysdeps/m68k/m680x0/fpu/ ...



Author: eglibc
Date: Tue Dec 10 00:02:12 2013
New Revision: 24734

Log:
Import glibc-mainline for 2013-12-10

Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/NEWS
    fsf/trunk/libc/Versions.def
    fsf/trunk/libc/malloc/arena.c
    fsf/trunk/libc/malloc/hooks.c
    fsf/trunk/libc/malloc/malloc.c
    fsf/trunk/libc/nptl/ChangeLog
    fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
    fsf/trunk/libc/ports/ChangeLog.m68k
    fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h
    fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Tue Dec 10 00:02:12 2013
@@ -1,3 +1,26 @@
+2013-12-09  Adhemerval Zanella  <azanella@xxxxxxxxxxxxxxxxxx>
+
+	* Versions.def (libm): Add GLIBC_2.3 and GLIBC_2.19.
+
+2013-12-09  OndÃÂej BÃÂlka  <neleai@xxxxxxxxx>
+
+	* malloc/malloc.c (alloc_perturb, free_perturb): Convert from
+	macro to a function.  Check for zero perturb_byte.
+	(_int_malloc, _int_free): Remove zero perturb_byte checks.
+
+2013-12-09  OndÃÂej BÃÂlka  <neleai@xxxxxxxxx>
+
+	* malloc/malloc.c: (force_reg): Remove.
+	(__malloc_assert, __libc_malloc, __libc_free, __libc_realloc,
+	_mid_memalign, __libc_calloc, sysmalloc, systrim): Replace
+	force_reg by atomic_forced_read.
+	* malloc/arena.c (ptmalloc_init): Likewise.
+	* malloc/hooks.c (top_check): Likewise.
+
+2013-12-09  Adhemerval Zanella  <azanella@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
 2013-12-09  Markus Trippelsdorf  <markus@xxxxxxxxxxxxxxx>
 
 	* sysdeps/x86_64/fpu/libm-test-ulps: Update.

Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Tue Dec 10 00:02:12 2013
@@ -15,13 +15,13 @@
   15089, 15218, 15268, 15277, 15308, 15362, 15374, 15400, 15425, 15427,
   15483, 15522, 15531, 15532, 15601, 15608, 15609, 15610, 15632, 15640,
   15670, 15672, 15680, 15681, 15723, 15734, 15735, 15736, 15748, 15749,
-  15754, 15760, 15763, 15764, 15797, 15799, 15825, 15844, 15847, 15849,
-  15855, 15856, 15857, 15859, 15867, 15886, 15887, 15890, 15892, 15893,
-  15895, 15897, 15901, 15905, 15909, 15915, 15917, 15919, 15921, 15923,
-  15939, 15941, 15948, 15963, 15966, 15985, 15988, 15997, 16032, 16034,
-  16036, 16037, 16038, 16041, 16055, 16071, 16072, 16074, 16077, 16078,
-  16103, 16112, 16143, 16144, 16146, 16150, 16151, 16153, 16167, 16172,
-  16195, 16214, 16245, 16271, 16274, 16283, 16289.
+  15754, 15760, 15763, 15764, 15797, 15799, 15825, 15843, 15844, 15847,
+  15849, 15855, 15856, 15857, 15859, 15867, 15886, 15887, 15890, 15892,
+  15893, 15895, 15897, 15901, 15905, 15909, 15915, 15917, 15919, 15921,
+  15923, 15939, 15941, 15948, 15963, 15966, 15985, 15988, 15997, 16032,
+  16034, 16036, 16037, 16038, 16041, 16055, 16071, 16072, 16074, 16077,
+  16078, 16103, 16112, 16143, 16144, 16146, 16150, 16151, 16153, 16167,
+  16172, 16195, 16214, 16245, 16271, 16274, 16283, 16289.
 
 * The public headers no longer use __unused nor __block.  This change is to
   support compiling programs that are derived from BSD sources and use

Modified: fsf/trunk/libc/Versions.def
==============================================================================
--- fsf/trunk/libc/Versions.def (original)
+++ fsf/trunk/libc/Versions.def Tue Dec 10 00:02:12 2013
@@ -56,10 +56,12 @@
   GLIBC_2.1
   GLIBC_2.2
   GLIBC_2.2.3
+  GLIBC_2.3
   GLIBC_2.3.4
   GLIBC_2.4
   GLIBC_2.15
   GLIBC_2.18
+  GLIBC_2.19
 }
 libnsl {
   GLIBC_2.0

Modified: fsf/trunk/libc/malloc/arena.c
==============================================================================
--- fsf/trunk/libc/malloc/arena.c (original)
+++ fsf/trunk/libc/malloc/arena.c Tue Dec 10 00:02:12 2013
@@ -457,7 +457,7 @@
     if (check_action != 0)
       __malloc_check_init();
   }
-  void (*hook) (void) = force_reg (__malloc_initialize_hook);
+  void (*hook) (void) = atomic_forced_read (__malloc_initialize_hook);
   if (hook != NULL)
     (*hook)();
   __malloc_initialized = 1;

Modified: fsf/trunk/libc/malloc/hooks.c
==============================================================================
--- fsf/trunk/libc/malloc/hooks.c (original)
+++ fsf/trunk/libc/malloc/hooks.c Tue Dec 10 00:02:12 2013
@@ -236,7 +236,7 @@
       return -1;
     }
   /* Call the `morecore' hook if necessary.  */
-  void (*hook) (void) = force_reg (__after_morecore_hook);
+  void (*hook) (void) = atomic_forced_read (__after_morecore_hook);
   if (hook)
     (*hook) ();
   main_arena.system_mem = (new_brk - mp_.sbrk_base) + sbrk_size;

Modified: fsf/trunk/libc/malloc/malloc.c
==============================================================================
--- fsf/trunk/libc/malloc/malloc.c (original)
+++ fsf/trunk/libc/malloc/malloc.c Tue Dec 10 00:02:12 2013
@@ -405,13 +405,6 @@
 
 
 #include <string.h>
-
-
-/* Force a value to be in a register and stop the compiler referring
-   to the source (mostly memory location) again.  */
-#define force_reg(val) \
-  ({ __typeof (val) _v; asm ("" : "=r" (_v) : "0" (val)); _v; })
-
 
 /*
   MORECORE-related declarations. By default, rely on sbrk
@@ -1877,8 +1870,20 @@
 
 static int perturb_byte;
 
-#define alloc_perturb(p, n) memset (p, (perturb_byte ^ 0xff) & 0xff, n)
-#define free_perturb(p, n) memset (p, perturb_byte & 0xff, n)
+static inline void
+alloc_perturb (char *p, size_t n)
+{
+  if (__glibc_unlikely (perturb_byte))
+    memset (p, perturb_byte ^ 0xff, n);
+}
+
+static inline void
+free_perturb (char *p, size_t n)
+{
+  if (__glibc_unlikely (perturb_byte))
+    memset (p, perturb_byte, n);
+}
+
 
 
 #include <stap-probe.h>
@@ -2448,7 +2453,7 @@
 
   if (brk != (char*)(MORECORE_FAILURE)) {
     /* Call the `morecore' hook if necessary.  */
-    void (*hook) (void) = force_reg (__after_morecore_hook);
+    void (*hook) (void) = atomic_forced_read (__after_morecore_hook);
     if (__builtin_expect (hook != NULL, 0))
       (*hook) ();
   } else {
@@ -2586,7 +2591,7 @@
 	  snd_brk = (char*)(MORECORE(0));
 	} else {
 	  /* Call the `morecore' hook if necessary.  */
-	  void (*hook) (void) = force_reg (__after_morecore_hook);
+	  void (*hook) (void) = atomic_forced_read (__after_morecore_hook);
 	  if (__builtin_expect (hook != NULL, 0))
 	    (*hook) ();
 	}
@@ -2740,7 +2745,7 @@
 
     MORECORE(-extra);
     /* Call the `morecore' hook if necessary.  */
-    void (*hook) (void) = force_reg (__after_morecore_hook);
+    void (*hook) (void) = atomic_forced_read (__after_morecore_hook);
     if (__builtin_expect (hook != NULL, 0))
       (*hook) ();
     new_brk = (char*)(MORECORE(0));
@@ -2844,7 +2849,7 @@
   void *victim;
 
   void *(*hook) (size_t, const void *)
-    = force_reg (__malloc_hook);
+    = atomic_forced_read (__malloc_hook);
   if (__builtin_expect (hook != NULL, 0))
     return (*hook)(bytes, RETURN_ADDRESS (0));
 
@@ -2876,7 +2881,7 @@
   mchunkptr p;                          /* chunk corresponding to mem */
 
   void (*hook) (void *, const void *)
-    = force_reg (__free_hook);
+    = atomic_forced_read (__free_hook);
   if (__builtin_expect (hook != NULL, 0)) {
     (*hook)(mem, RETURN_ADDRESS (0));
     return;
@@ -2917,7 +2922,7 @@
   void* newp;             /* chunk to return */
 
   void *(*hook) (void *, size_t, const void *) =
-    force_reg (__realloc_hook);
+    atomic_forced_read (__realloc_hook);
   if (__builtin_expect (hook != NULL, 0))
     return (*hook)(oldmem, bytes, RETURN_ADDRESS (0));
 
@@ -3018,7 +3023,7 @@
   void *p;
 
   void *(*hook) (size_t, size_t, const void *) =
-    force_reg (__memalign_hook);
+    atomic_forced_read (__memalign_hook);
   if (__builtin_expect (hook != NULL, 0))
     return (*hook)(alignment, bytes, address);
 
@@ -3128,7 +3133,7 @@
   }
 
   void *(*hook) (size_t, const void *) =
-    force_reg (__malloc_hook);
+    atomic_forced_read (__malloc_hook);
   if (__builtin_expect (hook != NULL, 0)) {
     sz = bytes;
     mem = (*hook)(sz, RETURN_ADDRESS (0));
@@ -3294,8 +3299,7 @@
 	}
       check_remalloced_chunk(av, victim, nb);
       void *p = chunk2mem(victim);
-      if (__builtin_expect (perturb_byte, 0))
-	alloc_perturb (p, bytes);
+      alloc_perturb (p, bytes);
       return p;
     }
   }
@@ -3330,8 +3334,7 @@
 	  victim->size |= NON_MAIN_ARENA;
 	check_malloced_chunk(av, victim, nb);
 	void *p = chunk2mem(victim);
-	if (__builtin_expect (perturb_byte, 0))
-	  alloc_perturb (p, bytes);
+	alloc_perturb (p, bytes);
 	return p;
       }
     }
@@ -3410,8 +3413,7 @@
 
 	check_malloced_chunk(av, victim, nb);
 	void *p = chunk2mem(victim);
-	if (__builtin_expect (perturb_byte, 0))
-	  alloc_perturb (p, bytes);
+	alloc_perturb (p, bytes);
 	return p;
       }
 
@@ -3427,8 +3429,7 @@
 	  victim->size |= NON_MAIN_ARENA;
 	check_malloced_chunk(av, victim, nb);
 	void *p = chunk2mem(victim);
-	if (__builtin_expect (perturb_byte, 0))
-	  alloc_perturb (p, bytes);
+	alloc_perturb (p, bytes);
 	return p;
       }
 
@@ -3552,8 +3553,7 @@
 	}
 	check_malloced_chunk(av, victim, nb);
 	void *p = chunk2mem(victim);
-	if (__builtin_expect (perturb_byte, 0))
-	  alloc_perturb (p, bytes);
+	alloc_perturb (p, bytes);
 	return p;
       }
     }
@@ -3656,8 +3656,7 @@
 	}
 	check_malloced_chunk(av, victim, nb);
 	void *p = chunk2mem(victim);
-	if (__builtin_expect (perturb_byte, 0))
-	  alloc_perturb (p, bytes);
+	alloc_perturb (p, bytes);
 	return p;
       }
     }
@@ -3691,8 +3690,7 @@
 
       check_malloced_chunk(av, victim, nb);
       void *p = chunk2mem(victim);
-      if (__builtin_expect (perturb_byte, 0))
-	alloc_perturb (p, bytes);
+      alloc_perturb (p, bytes);
       return p;
     }
 
@@ -3712,7 +3710,7 @@
     */
     else {
       void *p = sysmalloc(nb, av);
-      if (p != NULL && __builtin_expect (perturb_byte, 0))
+      if (p != NULL)
 	alloc_perturb (p, bytes);
       return p;
     }
@@ -3805,8 +3803,7 @@
 	  }
       }
 
-    if (__builtin_expect (perturb_byte, 0))
-      free_perturb (chunk2mem(p), size - 2 * SIZE_SZ);
+    free_perturb (chunk2mem(p), size - 2 * SIZE_SZ);
 
     set_fastchunks(av);
     unsigned int idx = fastbin_index(size);
@@ -3888,8 +3885,7 @@
 	goto errout;
       }
 
-    if (__builtin_expect (perturb_byte, 0))
-      free_perturb (chunk2mem(p), size - 2 * SIZE_SZ);
+    free_perturb (chunk2mem(p), size - 2 * SIZE_SZ);
 
     /* consolidate backward */
     if (!prev_inuse(p)) {

Modified: fsf/trunk/libc/nptl/ChangeLog
==============================================================================
--- fsf/trunk/libc/nptl/ChangeLog (original)
+++ fsf/trunk/libc/nptl/ChangeLog Tue Dec 10 00:02:12 2013
@@ -1,3 +1,10 @@
+2013-12-09  Andreas Schwab  <schwab@xxxxxxx>
+
+	[BZ #15843]
+	* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
+	(__pthread_cond_timedwait): Remove wrong cfi_adjust_cfa_offset
+	before __condvar_tw_cleanup2 label.
+
 2013-12-04  Ulrich Weigand  <Ulrich.Weigand@xxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h

Modified: fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
==============================================================================
--- fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S (original)
+++ fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S Tue Dec 10 00:02:12 2013
@@ -505,9 +505,9 @@
 #endif
 	call	__lll_unlock_wake
 	jmp	11b
+
+#ifndef __ASSUME_FUTEX_CLOCK_REALTIME
 	cfi_adjust_cfa_offset(-FRAME_SIZE)
-
-#ifndef __ASSUME_FUTEX_CLOCK_REALTIME
 .Lreltmo:
 	/* Get internal lock.  */
 	movl	$1, %edx
@@ -742,7 +742,6 @@
 # endif
 	call	__lll_lock_wait
 	jmp	106b
-	cfi_adjust_cfa_offset(-FRAME_SIZE)
 #endif
 
 	.size	__pthread_cond_timedwait, .-__pthread_cond_timedwait

Modified: fsf/trunk/libc/ports/ChangeLog.m68k
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.m68k (original)
+++ fsf/trunk/libc/ports/ChangeLog.m68k Tue Dec 10 00:02:12 2013
@@ -1,9 +1,25 @@
+2013-12-10  Andreas Schwab  <schwab@xxxxxxxxxxxxxx>
+
+	* sysdeps/m68k/m680x0/fpu/s_nextafterl.c (__nextafterl): Use
+	math_force_eval.
+
+	* sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h
+	(FUTEX_WAIT_REQEUE_PI, FUTEX_CMP_REQEUE_PI)
+	(lll_futex_wait_requeue_pi, lll_futex_timed_wait_requeue_pi)
+	(lll_futex_cmp_requeue_pi): Define.
+
+	* sysdeps/unix/sysv/linux/m68k/kernel-features.h
+	(__ASSUME_REQUEUE_PI, __ASSUME_SET_ROBUST_LIST): Undefine before
+	3.10.
+
 2013-11-28  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/m68k/fpu/fegetround.c (fegetround): Use libm_hidden_def.
 
 2013-11-26  OndÃÂej BÃÂlka  <neleai@xxxxxxxxx>
-	* sysdeps/unix/sysv/linux/m68k/bits/stat.h: Use __glibc_reserved instead __unused.
+
+	* sysdeps/unix/sysv/linux/m68k/bits/stat.h: Use __glibc_reserved
+	instead of __unused.
 
 2013-10-30  Mike Frysinger  <vapier@xxxxxxxxxx>
 

Modified: fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c (original)
+++ fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c Tue Dec 10 00:02:12 2013
@@ -46,7 +46,8 @@
 	if((ix|hx|lx)==0) {			/* x == 0 */
 	    SET_LDOUBLE_WORDS(x,esy&0x8000,0,1);/* return +-minsubnormal */
 	    y = x*x;
-	    if(y==x) return y; else return x;	/* raise underflow flag */
+	    math_force_eval (y);		/* raise underflow flag */
+	    return x;
 	}
 	if(esx>=0) {			/* x > 0 */
 	    if(esx>esy||((esx==esy) && (hx>hy||((hx==hy)&&(lx>ly))))) {
@@ -91,10 +92,7 @@
 	if(esy==0x7fff) return x+x;	/* overflow  */
 	if(esy==0 && (hx & 0x80000000) == 0) { /* underflow */
 	    y = x*x;
-	    if(y!=x) {		/* raise underflow flag */
-	        SET_LDOUBLE_WORDS(y,esx,hx,lx);
-		return y;
-	    }
+	    math_force_eval (y);		/* raise underflow flag */
 	}
 	SET_LDOUBLE_WORDS(x,esx,hx,lx);
 	return x;

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h Tue Dec 10 00:02:12 2013
@@ -47,3 +47,9 @@
 # undef __ASSUME_PSELECT
 # undef __ASSUME_PPOLL
 #endif
+
+/* No support for PI futexes or robust mutexes before 3.10 for m68k.  */
+#if __LINUX_KERNEL_VERSION < 0x030a00
+# undef __ASSUME_REQUEUE_PI
+# undef __ASSUME_SET_ROBUST_LIST
+#endif

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h Tue Dec 10 00:02:12 2013
@@ -38,6 +38,8 @@
 #define FUTEX_TRYLOCK_PI	8
 #define FUTEX_WAIT_BITSET	9
 #define FUTEX_WAKE_BITSET	10
+#define FUTEX_WAIT_REQEUE_PI	11
+#define FUTEX_CMP_REQEUE_PI	12
 #define FUTEX_PRIVATE_FLAG	128
 #define FUTEX_CLOCK_REALTIME	256
 
@@ -142,6 +144,33 @@
     INTERNAL_SYSCALL_ERROR_P (__ret, __err);				      \
   })
 
+/* Priority Inheritance support.  */
+#define lll_futex_wait_requeue_pi(futexp, val, mutex, private) \
+  lll_futex_timed_wait_requeue_pi (futexp, val, NULL, 0, mutex, private)
+
+#define lll_futex_timed_wait_requeue_pi(futexp, val, timespec, clockbit,      \
+					mutex, private)			      \
+  ({									      \
+    INTERNAL_SYSCALL_DECL (__err);					      \
+    long int __ret;							      \
+    int __op = FUTEX_WAIT_REQUEUE_PI | clockbit;			      \
+									      \
+    __ret = INTERNAL_SYSCALL (futex, __err, 5, (futexp),		      \
+			      __lll_private_flag (__op, private),	      \
+			      (val), (timespec), mutex);		      \
+    __ret;								      \
+  })
+
+#define lll_futex_cmp_requeue_pi(futexp, nr_wake, nr_move, mutex, val, priv)  \
+  ({									      \
+    INTERNAL_SYSCALL_DECL (__err);					      \
+    long int __ret;							      \
+    __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp),		      \
+			      __lll_private_flag (FUTEX_CMP_REQUEUE_PI, priv),\
+			      (nr_wake), (nr_move), (mutex), (val));	      \
+    INTERNAL_SYSCALL_ERROR_P (__ret, __err);				      \
+  })
+
 #define lll_trylock(lock)				\
   atomic_compare_and_exchange_val_acq (&(lock), 1, 0)
 

Modified: fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps Tue Dec 10 00:02:12 2013
@@ -7075,6 +7075,17 @@
 Test "gamma (-0x1p-5)":
 double: 1
 idouble: 1
+Test "gamma (-0x2p-16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "gamma (-0x4p-12)":
+double: 1
+idouble: 1
+Test "gamma (-0x8p-8)":
+double: 1
+idouble: 1
 Test "gamma (0.7)":
 double: 1
 float: 1
@@ -7084,6 +7095,18 @@
 float: 1
 ifloat: 1
 Test "gamma (0x1p-30)":
+double: 1
+idouble: 1
+Test "gamma (0x4p-12)":
+float: 1
+ifloat: 1
+Test "gamma (0x4p-32)":
+double: 1
+idouble: 1
+Test "gamma (0xb.333333333333p-4)":
+double: 1
+idouble: 1
+Test "gamma (0xb.33333p-4)":
 double: 1
 idouble: 1
 Test "gamma (1.2)":
@@ -7473,6 +7496,17 @@
 Test "lgamma (-0x1p-5)":
 double: 1
 idouble: 1
+Test "lgamma (-0x2p-16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "lgamma (-0x4p-12)":
+double: 1
+idouble: 1
+Test "lgamma (-0x8p-8)":
+double: 1
+idouble: 1
 Test "lgamma (0.7)":
 double: 1
 float: 1
@@ -7482,6 +7516,18 @@
 float: 1
 ifloat: 1
 Test "lgamma (0x1p-30)":
+double: 1
+idouble: 1
+Test "lgamma (0x4p-12)":
+float: 1
+ifloat: 1
+Test "lgamma (0x4p-32)":
+double: 1
+idouble: 1
+Test "lgamma (0xb.333333333333p-4)":
+double: 1
+idouble: 1
+Test "lgamma (0xb.33333p-4)":
 double: 1
 idouble: 1
 Test "lgamma (1.2)":

_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits