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]

[PATCH] Kill warnings, fix test-tgmath on sparc64


Hi!

This patch kills a bunch of warnings and does not define sqrt* nor fdim*
if __NO_MATH_INLINES is defined.
I've tested current CVS on i386/i686/alpha/alphaev6 without problems, ia64
is running ATM, sparc64 failed due to the issues below and because a linker
error on test-ildoubl (but that's not glibc fault and when I fixed ld it
worked).

2001-02-09  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/pthread/pt-initfini.c (call_initialize_minimal): Add
	__pthread_initialize_minimal prototype.

	* sysdeps/generic/setenv.c (unsetenv): Remove const from len.
	* sysdeps/sparc/fpu/bits/mathinline.h (sqrt, fdim): Don't define if
	__NO_MATH_INLINES.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Only declare refsym
	if not RTLD_BOOTSTRAP.
	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise.

--- libc/linuxthreads/sysdeps/pthread/pt-initfini.c.jj	Fri Feb  2 07:21:58 2001
+++ libc/linuxthreads/sysdeps/pthread/pt-initfini.c	Fri Feb  9 13:28:55 2001
@@ -65,6 +65,8 @@ asm ("\n/*@_init_PROLOG_BEGINS*/");
 static void
 call_initialize_minimal (void)
 {
+  extern void __pthread_initialize_minimal (void);
+
   __pthread_initialize_minimal ();
 }
 
--- libc/sysdeps/generic/setenv.c.jj	Wed Jan 31 16:35:06 2001
+++ libc/sysdeps/generic/setenv.c	Fri Feb  9 13:16:58 2001
@@ -267,7 +267,7 @@ int
 unsetenv (name)
      const char *name;
 {
-  const size_t len;
+  size_t len;
   char **ep;
 
   if (name == NULL || *name == '\0' || strchr (name, '=') != NULL)
--- libc/sysdeps/i386/dl-machine.h.jj	Mon Dec  4 15:12:48 2000
+++ libc/sysdeps/i386/dl-machine.h	Fri Feb  9 13:56:18 2001
@@ -319,7 +319,9 @@ elf_machine_rel (struct link_map *map, c
     }
   else if (ELF32_R_TYPE (reloc->r_info) != R_386_NONE)
     {
+#ifndef RTLD_BOOTSTRAP
       const Elf32_Sym *const refsym = sym;
+#endif
       Elf32_Addr value = RESOLVE (&sym, version, ELF32_R_TYPE (reloc->r_info));
       if (sym)
 	value += sym->st_value;
--- libc/sysdeps/sparc/fpu/bits/mathinline.h.jj	Thu Nov  2 08:52:20 2000
+++ libc/sysdeps/sparc/fpu/bits/mathinline.h	Fri Feb  9 16:58:13 2001
@@ -142,6 +142,8 @@ __signbitl (long double __x) __THROW
 
 #endif /* sparc64 */
 
+#ifndef __NO_MATH_INLINES
+
 __MATH_INLINE double
 sqrt(double __x) __THROW
 {
@@ -169,6 +171,8 @@ sqrtl(long double __x) __THROW
 }
 #endif /* sparc64 */
 
+#endif
+
 /* This code is used internally in the GNU libc.  */
 #ifdef __LIBC_INTERNAL_MATH_INLINES
 __MATH_INLINE double
@@ -202,6 +206,8 @@ __ieee754_sqrtl(long double __x)
 
 #ifdef __USE_ISOC99
 
+#ifndef __NO_MATH_INLINES
+
 __MATH_INLINE double fdim (double __x, double __y);
 __MATH_INLINE double
 fdim (double __x, double __y)
@@ -216,6 +222,7 @@ fdimf (float __x, float __y)
   return __x < __y ? 0 : __x - __y;
 }
 
+#endif /* !__NO_MATH_INLINES */
 #endif /* __USE_ISOC99 */
 #endif /* !__NO_MATH_INLINES && __OPTIMIZE__ */
 #endif /* __GNUC__ */
--- libc/sysdeps/sparc/sparc32/dl-machine.h.jj	Thu Nov 30 13:17:30 2000
+++ libc/sysdeps/sparc/sparc32/dl-machine.h	Fri Feb  9 13:57:00 2001
@@ -362,7 +362,9 @@ elf_machine_rela (struct link_map *map, 
     }
   else
     {
+#ifndef RTLD_BOOTSTRAP
       const Elf32_Sym *const refsym = sym;
+#endif
       Elf32_Addr value;
       if (sym->st_shndx != SHN_UNDEF &&
 	  ELF32_ST_BIND (sym->st_info) == STB_LOCAL)
--- libc/sysdeps/sparc/sparc64/dl-machine.h.jj	Thu Nov 30 13:17:30 2000
+++ libc/sysdeps/sparc/sparc64/dl-machine.h	Fri Feb  9 13:56:39 2001
@@ -197,7 +197,9 @@ elf_machine_rela (struct link_map *map, 
     }
   else if (ELF64_R_TYPE_ID (reloc->r_info) != R_SPARC_NONE) /* Who is Wilbur? */
     {
+#ifndef RTLD_BOOTSTRAP
       const Elf64_Sym *const refsym = sym;
+#endif
       Elf64_Addr value;
       if (sym->st_shndx != SHN_UNDEF &&
 	  ELF64_ST_BIND (sym->st_info) == STB_LOCAL)

	Jakub


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