Commit Graph

579 Commits

Author SHA1 Message Date
Ulrich Drepper
c31e278f86 Update.
2004-03-07  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
	_dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
	dl-procinfo.c from _rtld_global to _rtld_global_ro.
	* elf/rtld.c: Adjust initializer for _rtld_global_ro.
	* elf/dl-close.c: Use GLRO instead of GL where appropriate.
	* elf/dl-libc.c: Likewise.
	* elf/dl-load.c: Likewise.
	* sysdeps/i386/dl-procinfo.h: Likewise.
	* sysdeps/i386/i686/hp-timing.h: Likewise.
	* sysdeps/ia64/hp-timing.h: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
	* sysdeps/sparc/sparc64/hp-timing.h: Likewise.
	* sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
2004-03-07 08:39:57 +00:00
Ulrich Drepper
154d10bdf1 Update.
* elf/Versions: Remove functions which are not exported anymore.
	* dlfcn/dlerror.c: Call ld.so functions through GLSO.
	* dlfcn/dlinfo.c: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-libc.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
	* elf/dl-debug.c: Remove *_internal definition.  Don't use INTUSE for
	functions which are not exported anymore.
	* elf/dl-deps.c: Likewise.
	* elf/dl-dst.h: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-misc.c: Likewise.
	* elf/dl-profile.c: Likewise.
	* elf/dl-profstub.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/do-lookup.h: Likewise.
	* include/dlfcn.h: Likewise.
	* sysdeps/generic/dl-cache.c: Likewise.
	* sysdeps/generic/dl-fptr.c: Likewise.
	* sysdeps/generic/dl-origin.c: Likewise.
	* sysdeps/generic/dl-sysdep.c: Likewise.
	* sysdeps/generic/dl-tls.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
	* sysdeps/i386/dl-tls.h: Likewise.
	* sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
	* elf/rtld.c: Likewise.  Export function though _rtld_global_ro.

	* generic/dl-fptr.c: Likewise.
	* mach/hurd/dl-sysdep.c: Likewise.
	* unix/sysv/linux/ia64/dl-static.c: Likewise.
	* unix/sysv/linux/ia64/getpagesize.c: Likewise.
	* unix/sysv/linux/m68k/getpagesize.c: Likewise.
	* unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
2004-03-06 08:19:29 +00:00
Ulrich Drepper
afdca0f2a3 Update.
* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/s390/s390-64/dl-machine.h: Likewise.
	* sysdeps/s390/s390-32/dl-machine.h: Likewise.
	* sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
	* sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/ia64/dl-machine.h: Likewise.
	* sysdeps/arm/dl-machine.h: Likewise.
	* sysdeps/alpha/dl-machine.h: Likewise.
2004-03-05 10:29:47 +00:00
Ulrich Drepper
f8fbb4c451 Update.
2004-02-28  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/i686/memcmp.S: Move table to .rodata.  Patch by HJ Lu.
2004-02-28 19:33:17 +00:00
Ulrich Drepper
221c6b37b5 memcmp optimized for i686. 2004-02-10 01:55:34 +00:00
Ulrich Drepper
ff136edd32 [BZ #10]
Update.
2004-02-09  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
	other than the status bits [BZ #10].
2004-02-09 08:21:19 +00:00
Ulrich Drepper
eed242a60f (atomic_add): Fix test for using atomic_decrement. 2004-01-17 18:35:16 +00:00
Roland McGrath
4e142297fd * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
with omitted middle operand.
2003-12-24 01:10:17 +00:00
Ulrich Drepper
07449987c9 Update.
2003-12-07  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
	* sysdeps/i386/fpu/s_nexttoward.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
	* math/Makefile (tests): Add bug-nexttoward.
	* math/bug-nexttowward.c: New file.

	* sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
	* sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
	* math/bug-nextafter.c (main): Add tests for overflow and negative
	values.
2003-12-07 21:22:46 +00:00
Ulrich Drepper
0135bde432 Update.
2003-11-25  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
	Define it appropriately after last change.  Use it where __sqrtl
	was used.
2003-11-26 06:23:45 +00:00
Ulrich Drepper
6d316b07f1 Update.
2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>

	* sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
	sqrt for gcc 3.3 and above.
2003-11-26 05:38:12 +00:00
Ulrich Drepper
c70a86b618 Update.
2003-10-03  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
	* sysdeps/i386/elf/setjmp.S: Likewise.
2003-10-03 20:29:57 +00:00
Ulrich Drepper
26721ed62e Update.
2003-09-25  Jakub Jelinek  <jakub@redhat.com>

	* misc/syslog.c: Include locale.h.
	(vsyslog): Add date always in C locale %h %e %T format.
2003-09-25 15:34:03 +00:00
Roland McGrath
fca9d8e489 * sysdeps/mach/hurd/bits/libc-lock.h
(__libc_cleanup_push, __libc_cleanup_pop): New macros.

2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>

	* sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
	#include_next dl-procinfo.h to get them.
	(_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
	(_DL_PLATFORMS_COUNT): Likewise.
	(_DL_FIRST_PLATFORM): Likewise.
	(_DL_HWCAP_PLATFORM): Likewise.
	(HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
	HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
	HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
	HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
	HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
	HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
	HWCAP_IMPORTANT): Likewise.
	(_DL_PROCINFO_H_): Likewise.
	(_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
	(_dl_string_platform): Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
	* sysdeps/i386/dl-procinfo.c: ... here, new file.
2003-09-25 03:55:10 +00:00
Ulrich Drepper
9771695416 Update.
2003-09-24  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
	__libc_stack_end.  Patch by David Mosberger.

2003-09-24  Jakub Jelinek  <jakub@redhat.com>

	* elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
	__libc_stack_end@GLIBC_PRIVATE.

	* sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
	(_dl_sysdep_start): Set __libc_stack_end here.
	* sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
	__libc_stack_end.
	* sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
	* sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
	(RTLD_START): Remove setting of __libc_stack_end.
	* sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
	(RTLD_START): Remove setting of __libc_stack_end.

2003-09-24  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
	function definitions.  Adjust macro expansions accordingly.
	* sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
	minor, makedev name.
	* sysdeps/unix/sysv/linux/makedev.c: Likewise.

2003-09-24  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
	Add __THROW.
2003-09-24 21:13:55 +00:00
Roland McGrath
2abf9ff113 * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
calling _dl_start, using GOTOFF access.

	* configure.in (libc_cv_z_execstack): New check.
	* configure: Regenerated.
	* config.make.in (have-z-execstack): New variable set by it.
	* elf/tst-execstack.c: New file.
	* elf/tst-execstack-mod.c: New file.
	* elf/tst-execstack-needed.c: New file.
	* elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
	variables.
	(tests, modules-names): Conditionally include them.
	(distribute): Add tst-execstack-mod.c here.
	($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
	(LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
	($(objpfx)tst-execstack-needed): New target.
	(LDFLAGS-tst-execstack-needed): New variable.

	* sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
	and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
	* elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
	(dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
	Initialize _dl_make_stack_executable_hook.
	* elf/dl-support.c: Define those new variables.
	(_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
	(_dl_phdr): Fix type.
	* elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
	enable execute permission for the stack if necessary.
	* sysdeps/generic/dl-execstack.c: New file.
	* elf/Makefile (dl-routines): Add it.
	* elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
	* sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2003-09-23 12:07:26 +00:00
Ulrich Drepper
06f6ca9019 Update.
2003-09-17  Philip Blundell  <philb@gnu.org>

	* sysdeps/unix/sysv/linux/arm/vfork.S: Branch to fork if
	libpthread is loaded.  Elide backwards compatibility code when not
	required.
2003-09-17 18:23:49 +00:00
Ulrich Drepper
65af7e6142 Update.
2003-09-17  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/Makefile (stack-align-test-flags): Add
	-malign-double -mpreferred-stack-boundary=4.
2003-09-17 09:39:59 +00:00
Ulrich Drepper
a4db3439f1 Update.
2003-09-15  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
	subdir, add -mpreferred-stack-boundary=4, with few exceptions.

2003-09-17  Jakub Jelinek  <jakub@redhat.com>

	* Makeconfig (stack-align-test-flags): Set.
	* stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
	$(stack-align-test-flags).
	* stdlib/tst-bsearch.c: Include tst-stack-align.h.
	(align_check): New var.
	(comp): Use TEST_STACK_ALIGN macro.
	(do_test): Fail if align_check != 1.
	* sysdeps/generic/tst-stack-align.h: New file.
	* sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
	* sysdeps/i386/i686/tst-stack-align.h: New file.
2003-09-17 08:47:44 +00:00
Andreas Jaeger
b7f75e247b Update.
* sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
	to make it conforming C.
	* sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
2003-09-05 10:03:19 +00:00
Alexandre Oliva
87d254a7bf * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Don't assume reloc_addr is aligned. * sysdeps/alpha/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Adjust. * sysdeps/cris/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/hppa/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Adjust. * sysdeps/ia64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/m68k/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/mips/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela_relative, elf_machine_rela): Adjust. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): * sysdeps/sh/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/x86_64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust.
2003-07-31  Alexandre Oliva  <aoliva@redhat.com>

	* elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
	elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
	reloc_addr is aligned.
	* sysdeps/alpha/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
	elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
	* sysdeps/cris/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/hppa/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
	elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
	* sysdeps/ia64/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/m68k/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/mips/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/powerpc/powerpc64/dl-machine.h
	(elf_machine_rela_relative, elf_machine_rela): Adjust.
	* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): 
	* sysdeps/sh/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
	* sysdeps/x86_64/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative): Adjust.
2003-07-31 06:33:53 +00:00
Ulrich Drepper
11bf8ce1d6 Update.
2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>

	* elf/dl-support.c (_dl_hwcap): New variable.
	(_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.

	* sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
	and <dl-procinfo.h>.
	(__feclearexcept): Clear MXCSR if needed.
	* sysdeps/i386/fpu/fsetexcptflg.c: Likewise.

	* sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
	that newer hardware needs more than these macros.

	* sysdeps/i386/setfpucw.c: New file.

2003-07-22  Jakub Jelinek  <jakub@redhat.com>

	* elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
	* elf/ldconfig.c: Include dl-procinfo.c.
	(PROCINFO_CLASS): Define.
	* sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
	* sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
	* sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
	* sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
	Define if not yet defined.  Use it instead of EXTERN.  Undefine
	at the end of the file.
	* sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
	Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
	(PROCINFO_CLASS): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
	(PROCINFO_CLASS): Likewise.

2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>

	* elf/ldconfig.c (main): Issue a fatal error if relative path
	is used to build cache.

2003-07-22  Ulrich Drepper  <drepper@redhat.com>

	* elf/readlib.c (process_file): Avoid possible overflow in assignment.
2003-07-22 22:28:07 +00:00
Ulrich Drepper
2775fdb512 Update.
* sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
	stmxcsr and ldmxcsr.
2003-07-22 03:19:23 +00:00
Ulrich Drepper
b72e048f19 Update.
* sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
	* sysdeps/i386/fpu/feenablxcpt.c: Likewise.
	* sysdeps/i386/fpu/feholdexcpt.c: Likewise.
	* sysdeps/i386/fpu/fesetround.c: Likewise.
	* sysdeps/i386/fpu/ftestexcept.c: Likewise.
2003-07-22 00:14:36 +00:00
Ulrich Drepper
2417696712 Update.
2003-05-19  Ed Connell  <ed.connell@sas.com>

	* sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
	floating point mask.
	* sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
2003-06-24 09:02:16 +00:00
Ulrich Drepper
50441a984d Update.
* sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
	Fix completely broken impleentation.  The second parameter is of
	type struct ucontext*.

	* sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
	inline.

	* sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
	* sysdeps/generic/dl-hash.h: Likewise.

	* sysdeps/generic/memcmp.c: Remove inline from
	memcmp_common_alignment and memcmp_not_common_alignment definition.
2003-06-18 19:34:34 +00:00
Ulrich Drepper
301a6724af 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.
2003-06-16 08:03:44 +00:00
Ulrich Drepper
2236d6e124 Update.
* sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
	also for P4.
2003-06-12 01:35:15 +00:00
Ulrich Drepper
9c7ff11a5c Update.
2003-06-11  Ulrich Drepper  <drepper@redhat.com>

	* time/tzfile.c: Add a couple of __builtin_expect.

	Remove warnings gcc 3.3 shows.
	* argp/argp-help.c (hol_entry_short_iterate): Don't inline.
	* elf/dl-load.c (fillin_rpath): Likewise.
	(add_path): Likewise.
	* elf/dl-version.c (find_needed): Always inline.
	* elf/do-lookup.c (FCT): Don't inline.
	* iconv/Makefile: Extend vpath to intl subdir.
	(iconvconfig-modules): Add hash-string.
	* iconv/gconv_charset.h (strip): Don't inline.
	(upstr): Always inline.
	Move __gconv_compare_alias prototype to...
	* iconv/gconv_int.h: ...here.
	* iconv/gconv_db.c: Don't include gconv_charset.h.
	* iconv/gconv_conf.c (add_alias): Don't inline.
	(insert_module): Likewise.
	* iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
	(internal_ucs4_loop_unaligned): Likewise.
	(internal_ucs4_loop_single): Likewise.
	(ucs4_internal_loop): Likewise.
	(ucs4_internal_loop_unaligned): Likewise.
	(ucs4_internal_loop_single): Likewise.
	(internal_ucs4le_loop): Always inline.
	(internal_ucs4le_loop_unaligned): Likewise.
	(internal_ucs4le_loop_single): Likewise.
	(ucs4le_internal_loop): Likewise.
	(ucs4le_internal_loop_unaligned): Likewise.
	(ucs4le_internal_loop_single): Likewise.
	* iconv/loop.c: Always inline the defined functions.
	* iconvdata/cns11642.h: Likewise.
	* iconvdata/cns11642l1.h: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/gb2312.h: Likewise.
	* iconvdata/jis0201.h: Likewise.
	* iconvdata/jis0208.h: Likewise.
	* iconvdata/jis0212.h: Likewise.
	* iconvdata/jisx0213.h: Likewise.
	* iconvdata/ksc5601.h: Likewise.
	* iconvdata/utf-7.c (base64): Don't inline.
	* include/libc-symbols.h (symbol_set_first_element): Add cast
	(symbol_set_end_p): Likewise.
	* include/set-hooks (RUN_HOOK): Likewise.
	* inet/Makefile (aux): Add ifreq.
	* intl/Makefile (aux): Add some entries from routines.  Add
	hash-string.
	* intl/hash-string.c: New file.
	* intl/hash-string.h: Remove hash_string definition.  Declare
	__hash_string.
	* iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
	* iconv/iconvconfig.c (new_name): Likewise.
	* intl/dcigettext.c (_nl_find_msg): Likewise.
	* intl/loadmsgcat.c (_nl_load_domain): Likewise.
	* io/ftw.c (open_dir_stream): Always inline.
	(process_entry): Don't inline.
	* locale/findlocale.c: Include gconv_int.h.
	* locale/setlocale.c (new_composite_name): Don't inline.
	* locale/weight.h (findidx): Always inline.
	* locale/weightwc.h (findidx): Likewise.
	* locale/programs/linereader.c (lr_ignore_rest): Define here.
	* locale/programs/linereader.h (lr_ignore_rest): Don't define here,
	just declare it.
	(lr_getc): Always inline.
	(lr_ungetc): Likewise.
	* nss/nss_files/files-parse.c (parse_list): Likewise.
	* stdio-common/Makefile (aux): Add printf-parsemb and
	printf-parsewc.
	* stdio-common/_itoa.h (_itoa_word): Always inline.
	(_fitoa_word, _fitoa): Don't define here, only declare.
	* stdio-common/_itoa.c (_iftoa_word): Add here.
	(_fitoa): Likewise.
	* stdio-common/_itowa.h (_itowa_word): Always inline.
	* stdio-common/printf-parse.h (read_int): Don't inline.
	(find_spec): Don't define.
	Declare __find_specmb and __find_specwc.
	(parse_one_spec): Don't define.
	Declare __parse_one_specmb and __parse_one_specwc.
	* stdio-common/printf-parsemb.c: New file.
	* stdio-common/printf-parsewc.c: New file.
	* stdio-common/vfprintf.c: Update calls to find_spec and
	parse_one_spec for new names.
	* stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
	* stdlib/Makefile (aux): Add grouping and groupingwc.
	* stdlib/grouping.c: New file.
	* stdlib/groupingwc.c: New file.
	* stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
	Just prototype.
	* stdlib/rpmatch.c (try): Don't inline.
	* stdlib/strtod.c (round_and_return): Don't line.
	(str_to_mpn): Likewise.
	(__mpn_lshift_1): Always inline.  Optimize only for constant count.
	Adjust for name change of correctly_grouped_prefix.
	* sysdeps/generic/strtol.c: Adjust for name change of
	correctly_grouped_prefix.
	* string/strxfrm.c (utf8_encode): Don't inline.
	* sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
	* sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
	* sysdeps/generic/ifreq.c: New file.
	* sysdeps/unix/sysv/linux/ifreq.c: New file.
	* sysdeps/generic/ifreq.h (__ifreq): Only declare here.
	* sysdeps/unix/sysv/linux/ifreq.h: Likewise.
	* sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
	* sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
	(fde_split): Likewise.
	(fde_merge): Likewise.
	(end_fde_sort): Likewise.
	(init_object): Likewise.
	(binary_search_unencoded_fdes): Likewise.
	(binary_search_single_encoding_fdes): Likewise.
	(binary_search_mixed_encoding_fdes): Likewise.
	* sysdeps/generic/wordexp.c (w_addchar): Don't inline.
	* sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
	* sysdeps/posix/sprofil.c (profil_count): Don't inline.
	* sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
	Add xstatconv.
	* sysdeps/unix/sysv/linux/xstatconv.h: New file.
	* sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
	Export them.  Prepend __ to name.
	* sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
	* sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
	conversion functions.
	* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/lxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/xstat.c: Likewise.
	* sysdeps/unix/sysv/linux/xstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
	* sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
	__statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
	to name.  Change callers.
	* sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
	__statfs_filesize_max, __statfs_symlinks): Don't define here, just
	declare.
	* sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
	* time/tzfile.c (decode): Always inline.
	* wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
	Remove cast in tomb function call.
	* wcsmbs/wcsrtombs.c Likewise.
	* wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
	tomb function call.
2003-06-11 23:22:36 +00:00
Ulrich Drepper
35915ec87b Regenerated. 2003-06-04 21:41:25 +00:00
Ulrich Drepper
dfb87dc812 (sqrt, __sqrtl, ldexp, ldexpf, ldexpl): Only define if __FAST_MATH__. 2003-06-02 22:39:19 +00:00
Roland McGrath
7b09d09d7a 2003-06-01 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/dl-machine.h: Include <sysdep.h>.
2003-06-02 18:20:22 +00:00
Ulrich Drepper
06e2e0a747 Update.
2003-05-31  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
	New function.
	(elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
	RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
	call elf_machine_plt_conflict instead of elf_machine_fixup_plt.

	* sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
	CFI directives.

	* csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
2003-06-01 01:32:04 +00:00
Ulrich Drepper
bc4647a17c Update.
2003-05-28  Ulrich Drepper  <drepper@redhat.com>

	* include/libc-symbols.h: Define hidden attribute for real also if
	LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.

	* csu/Makefile: Add rules to build Scrt1.o.
	* sysdeps/i386/elf/start.S: Make code compilable with SHARED.
2003-05-28 19:56:24 +00:00
Ulrich Drepper
949ec76407 Update.
* posix/sched.h: Change prototypes of sched_getaffinity and
	sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
	* sysdeps/generic/sched_getaffinity.c: Adjust definition.
	* sysdeps/generic/sched_setaffinity.c: Likewise.
	* sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
	__CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
	__CPU_CLR, and __CPU_ISSET.
	* sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
	* sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
	* sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.

	* include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
	(atomic_exchange_rel): New #define.
	* sysdeps/ia64/bits/atomic.h: Likewise.
	* sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
	atomic_exchange.
	* sysdeps/m68k/m68020/bits/atomic.h: Likewise.
	* sysdeps/powerpc/bits/atomic.h: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
	* sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
	* sysdeps/x86_64/bits/atomic.h: Likewise.
	* csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
2003-05-10 05:36:37 +00:00
Ulrich Drepper
85dd100310 Update.
* sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.

	* include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
	* signal/sigaddset.c: Add libc_hidden_def.
	* signal/sigdelset.c: Likewise.

2003-04-29  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
	to the end of the file.

	* configure.in: Change __oline__ to $LINENO.
	(HAVE_BUILTIN_REDIRECTION): New check.
	* config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
	* include/libc-symbols.h (libc_hidden_builtin_proto,
	libc_hidden_builtin_def, libc_hidden_builtin_weak,
	libc_hidden_builtin_ver): Define.
	* include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
	strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
	strspn, strstr): Add libc_hidden_builtin_proto.
	* intl/plural.y: Include string.h.
	* sysdeps/alpha/alphaev6/memchr.S (memchr): Add
	libc_hidden_builtin_def.
	* sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
	* sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
	* sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
	* sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
	* sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
	* sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
	* sysdeps/alpha/memchr.S (memchr): Likewise.
	* sysdeps/alpha/memset.S (memset): Likewise.
	* sysdeps/alpha/strcat.S (strcat): Likewise.
	* sysdeps/alpha/strchr.S (strchr): Likewise.
	* sysdeps/alpha/strcmp.S (strcmp): Likewise.
	* sysdeps/alpha/strcpy.S (strcpy): Likewise.
	* sysdeps/alpha/strlen.S (strlen): Likewise.
	* sysdeps/alpha/strncmp.S (strncmp): Likewise.
	* sysdeps/alpha/strncpy.S (strncpy): Likewise.
	* sysdeps/alpha/strrchr.S (strrchr): Likewise.
	* sysdeps/arm/memset.S (memset): Likewise.
	* sysdeps/arm/strlen.S (strlen): Likewise.
	* sysdeps/generic/memchr.c (memchr): Likewise.
	* sysdeps/generic/memcpy.c (memcpy): Likewise.
	* sysdeps/generic/memmove.c (memmove): Likewise.
	* sysdeps/generic/memset.c (memset): Likewise.
	* sysdeps/generic/strcat.c (strcat): Likewise.
	* sysdeps/generic/strchr.c (strchr): Likewise.
	* sysdeps/generic/strcmp.c (strcmp): Likewise.
	* sysdeps/generic/strcpy.c (strcpy): Likewise.
	* sysdeps/generic/strcspn.c (strcspn): Likewise.
	* sysdeps/generic/strlen.c (strlen): Likewise.
	* sysdeps/generic/strncmp.c (strncmp): Likewise.
	* sysdeps/generic/strncpy.c (strncpy): Likewise.
	* sysdeps/generic/strpbrk.c (strpbrk): Likewise.
	* sysdeps/generic/strrchr.c (strrchr): Likewise.
	* sysdeps/generic/strspn.c (strspn): Likewise.
	* sysdeps/generic/strstr.c (strstr): Likewise.
	* sysdeps/i386/i486/strcat.S (strcat): Likewise.
	* sysdeps/i386/i486/strlen.S (strlen): Likewise.
	* sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
	* sysdeps/i386/i586/memset.S (memset): Likewise.
	* sysdeps/i386/i586/strchr.S (strchr): Likewise.
	* sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
	* sysdeps/i386/i586/strlen.S (strlen): Likewise.
	* sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
	* sysdeps/i386/i686/memmove.S (memmove): Likewise.
	* sysdeps/i386/i686/memset.S (memset): Likewise.
	* sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
	* sysdeps/i386/memchr.S (memchr): Likewise.
	* sysdeps/i386/memset.c (memset): Likewise.
	* sysdeps/i386/strchr.S (strchr): Likewise.
	* sysdeps/i386/strcspn.S (strcspn): Likewise.
	* sysdeps/i386/strlen.c (strlen): Likewise.
	* sysdeps/i386/strpbrk.S (strpbrk): Likewise.
	* sysdeps/i386/strrchr.S (strrchr): Likewise.
	* sysdeps/i386/strspn.S (strspn): Likewise.
	* sysdeps/ia64/memchr.S (memchr): Likewise.
	* sysdeps/ia64/memcpy.S (memcpy): Likewise.
	* sysdeps/ia64/memmove.S (memmove): Likewise.
	* sysdeps/ia64/memset.S (memset): Likewise.
	* sysdeps/ia64/strcat.S (strcat): Likewise.
	* sysdeps/ia64/strchr.S (strchr): Likewise.
	* sysdeps/ia64/strcmp.S (strcmp): Likewise.
	* sysdeps/ia64/strcpy.S (strcpy): Likewise.
	* sysdeps/ia64/strlen.S (strlen): Likewise.
	* sysdeps/ia64/strncmp.S (strncmp): Likewise.
	* sysdeps/ia64/strncpy.S (strncpy): Likewise.
	* sysdeps/m68k/memchr.S (memchr): Likewise.
	* sysdeps/m68k/strchr.S (strchr): Likewise.
	* sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
	* sysdeps/mips/mips64/memset.S (memset): Likewise.
	* sysdeps/mips/memcpy.S (memcpy): Likewise.
	* sysdeps/mips/memset.S (memset): Likewise.
	* sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
	* sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
	* sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
	* sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
	* sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
	* sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
	* sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
	* sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
	* sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
	* sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
	* sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
	* sysdeps/powerpc/strcat.c (strcat): Likewise.
	* sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
	* sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
	* sysdeps/sparc/sparc32/memset.S (memset): Likewise.
	* sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
	* sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
	* sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
	* sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
	* sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
	* sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
	* sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
	* sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
	* sysdeps/sparc/sparc64/memset.S (memset): Likewise.
	* sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
	* sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
	* sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
	* sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
	* sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
	* sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
	* sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
	* sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
	* sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
	* sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
	* sysdeps/sh/memcpy.S (memcpy): Likewise.
	* sysdeps/sh/memset.S (memset): Likewise.
	* sysdeps/sh/strlen.S (strlen): Likewise.
	* sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
	* sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
	* sysdeps/s390/s390-32/memset.S (memset): Likewise.
	* sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
	* sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
	* sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
	* sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
	* sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
	* sysdeps/s390/s390-64/memset.S (memset): Likewise.
	* sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
	* sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
	* sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
	* sysdeps/x86_64/memcpy.S (memcpy): Likewise.
	* sysdeps/x86_64/memset.S (memset): Likewise.
	* sysdeps/x86_64/strcat.S (strcat): Likewise.
	* sysdeps/x86_64/strchr.S (strchr): Likewise.
	* sysdeps/x86_64/strcmp.S (strcmp): Likewise.
	* sysdeps/x86_64/strcpy.S (strcpy): Likewise.
	* sysdeps/x86_64/strcspn.S (strcspn): Likewise.
	* sysdeps/x86_64/strlen.S (strlen): Likewise.
	* sysdeps/x86_64/strspn.S (strspn): Likewise.
	* string/string-inlines.c: Move...
	* sysdeps/generic/string-inlines.c: ...here.
	(__memcpy_g, __strchr_g): Remove.
	(__NO_INLINE__): Define before including <string.h>,
	undefine after.  Include bits/string.h and bits/string2.h.
	* sysdeps/i386/i486/string-inlines.c: New file.
	* sysdeps/i386/string-inlines.c: New file.
	* sysdeps/i386/i486/Versions: Remove.
	All GLIBC_2.1.1 symbols moved...
	* sysdeps/i386/Versions (libc): ...here.

2003-04-29  Ulrich Drepper  <drepper@redhat.com>
2003-04-29 22:49:58 +00:00
Ulrich Drepper
e40468fa25 Update.
2003-04-29  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/fpu/Makefile: New file.
	* sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
	* sysdeps/i386/fpu/feenablxcpt.c: Likewise.
	* sysdeps/i386/fpu/feholdexcpt.c: Likewise.
	* sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
	[PR libc/4987].
2003-04-29 07:18:57 +00:00
Roland McGrath
8e27f45e05 * elf/dl-reloc.c (allocate_static_tls): Rename to...
(_dl_allocate_static_tls): ... this function.  No longer static.
	(CHECK_STATIC_TLS): Adjust.
	* sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
	* sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
	Add SYM_MAP argument.
	(elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
	Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
	TLS relocs here.  #ifdef out relocs which never appear in
	.gnu.conflict section from dl-conflict.c processing.
	* sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
	Add SYM_MAP argument.  Handle 16-bit TLS relocs here.

	* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
	out relocs which never appear in .gnu.conflict section from
	dl-conflict.c processing.
	* sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
	Use r_type in RESOLVE macro.
2003-04-24 17:11:08 +00:00
Ulrich Drepper
0b3df49e8d Update.
2003-04-19  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
	__len to size_t to avoid warnings.
2003-04-19 19:19:11 +00:00
Ulrich Drepper
bd4f43b462 Update.
2003-04-14  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
	* sysdeps/x86_64/bits/atomic.h: Likewise.

2003-04-14  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
	POPARGS_1 to emit labels for the mov instructions.

2003-04-14  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
2003-04-14 17:30:34 +00:00
Ulrich Drepper
09d65ff393 Update.
2003-04-11  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
	Remove HAVE_CANCELBUF code.  Replace with code using the new
	initializers for unwind-based cleanup handling.
	* sysdeps/generic/unwind.h: Update from latest gcc version.
	* sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
	places to allow unwind data generation.
	* sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
	* sysdeps/x86_64/bits/setjmp.h: Likewise.
	* sysdeps/sh/bits/setjmp.h: Likewise.
	* sysdeps/powerpc/bits/setjmp.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
	* sysdeps/alpha/bits/setjmp.h: Likewise.
2003-04-12 00:58:26 +00:00
Andreas Jaeger
34f8ef1b4b Update
2003-03-21  Andreas Jaeger  <aj@suse.de>

	* sysdeps/i386/fpu/libm-test-ulps: Update.

	* math/libm-test.inc (tgamma_test): Recompute some constants with
	36 digits precision.
	(lgamma_test): Likewise.
	(ccos_test): Likewise.
	(ccosh_test): Likewise.
	(clog10_test): Likewise.
	(csin_test): Likewise.
	(csinh_test): Likewise.
	(ctan_test): Likewise.
	(ctanh_test): Likewise.

2003-03-19  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
2003-03-22 06:14:37 +00:00
Roland McGrath
002ff85305 2003-03-21 Roland McGrath <roland@redhat.com>
* sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
	constraint to permit non-constant BIT argument.
	(atomic_bit_test_set): Likewise.
	* sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
	(atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
	For quadword case, use "i" constraint if __builtin_constant_p and < 32
	or "r" constraint otherwise.
2003-03-22 00:05:02 +00:00
Roland McGrath
26f24355d4 2003-03-21 Roland McGrath <roland@redhat.com>
* sysdeps/i386/i486/bits/atomic.h
	(__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
	version of the macro to avoid compile-time warnings.
	[! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
	(__arch_compare_and_exchange_bool_64_acq): New macro.
	(atomic_exchange_and_add, atomic_add): Fix name and usage of it.
	(atomic_increment, atomic_decrement): Likewise.
2003-03-21 11:14:51 +00:00
Ulrich Drepper
4541b483a9 Update.
2003-03-21  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
	* sysdeps/i386/i486/bits/atomic.h: Likewise.
2003-03-21 09:51:39 +00:00
Ulrich Drepper
5a3ab2fc18 Update.
2003-03-21  Ulrich Drepper  <drepper@redhat.com>

	* cancellation.c: Adjust for new form of compare&exchange macros.
	* cleanup_defer.c: Likewise.
	* init.c: Likewise.
	* libc-cancellation.c: Likewise.
	* old_pthread_cond_broadcast.c: Likewise.
	* old_pthread_cond_signal.c: Likewise.
	* old_pthread_cond_timedwait.c: Likewise.
	* old_pthread_cond_wait.c: Likewise.
	* pthread_cancel.c: Likewise.
	* pthread_create.c: Likewise.
	* pthread_detach.c: Likewise.
	* pthread_join.c: Likewise.
	* pthread_key_delete.c: Likewise.
	* pthread_setcancelstate.c: Likewise.
	* pthread_setcanceltype.c: Likewise.
	* pthread_timedjoin.c: Likewise.
	* pthread_tryjoin.c: Likewise.
	* sysdeps/pthread/createthread.c: Likewise.
2003-03-21 08:03:25 +00:00
Ulrich Drepper
f79466a8e9 Update.
2003-03-20  Ulrich Drepper  <drepper@redhat.com>

	* include/atomic.h: Define atomic_exchange and
	atomic_decrement_if_positive if not already defined.  Add some
	__builtin_expect.
	* sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
	* sysdeps/x86_64/bits/atomic.h: Likewise.
	* sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
	* sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
	atomic_exchange, atomic_exchange_and_add, and
	atomic_decrement_if_positive
2003-03-20 10:18:24 +00:00
Ulrich Drepper
3dbe0d9517 Change atomic_exchange_and_add to return the old value. 2003-03-20 09:03:23 +00:00
Ulrich Drepper
4009bf4044 Update.
2003-03-19  Ulrich Drepper  <drepper@redhat.com>

	* Makefile (distribute): Add include/atomic.h and bits/atomic.h.
	* include/atomic.h: New file.
	* sysdeps/i386/i486/bits/atomic.h: New file.
	* sysdeps/x86_64/bits/atomic.h: New file.
	* sysdeps/s390/bits/atomic.h: New file.
	* sysdeps/sh/bits/atomic.h: New file.
	* sysdeps/ia64/bits/atomic.h: New file.
	* sysdeps/powerpc/bits/atomic.h: New file.
	* sysdeps/generic/bits/atomic.h: New file.
	* sysdeps/i386/i486/atomicity.h: Removed.
	* sysdeps/x86_64/atomicity.h: Removed.
	* sysdeps/s390/s390-32/atomicity.h: Removed.
	* sysdeps/s390/s390-64/atomicity.h: Removed.
	* sysdeps/ia64/atomicity.h: Removed.
	* sysdeps/powerpc/powerpc32/atomicity.h: Removed.
	* sysdeps/powerpc/powerpc64/atomicity.h: Removed.
	* elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
	use of macros from atomicity.h to new names and semantics.
	* gmon_mcount.c: Likewise.
	* malloc/set-freeres.c: Likewise.
	* nscd/cache.c: Likewise.
	* stdlib/cxa_finalize.c: Likewise.
	* sysdeps/unix/sysv/linux/getsysstats.c: Likewise.

	* sysdeps/mips/ieee754.h: New file, suitable to replace both
	* stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
2003-03-20 07:19:17 +00:00
Roland McGrath
e48f96382f * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
assembler command.
	* sysdeps/unix/Makefile (compile-syscall): New variable.
	Pass -g0 to compiler for assembling syscall stubs from stdin.

	* sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
	(STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
	Define these to do nothing.

	* configure.in: New check for -g on .S files.
	* configure: Regenerated.
	* config.make.in (have-cpp-asm-debuginfo): New variable.
	* config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
	* Makeconfig (ASFLAGS): New variable, if undefined and
	$(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
	* Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
2003-03-10 09:11:13 +00:00