Commit Graph

9593 Commits

Author SHA1 Message Date
Ulrich Drepper d5ddad4ff4 (log_cleanup): New function. (openlog): Use log_cleanup instead of __libc_mutex_unlock. (closelog): Likewise. 2002-12-06 11:31:06 +00:00
Roland McGrath fde89ad009 * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
* malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
	(malloc_starter, memalign_starter, free_starter): Don't define these.
	* malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
	Don't declare them either.
	* malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
	__pthread_initialize, so no need to set hooks to *_starter.
	(ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
	[_LIBC && SHARED && USE_TLS && !USE___THREAD]
	(__libc_malloc_pthread_startup): New function.
	* malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.

	* malloc/hooks.c (memalign_starter): New function.
	* malloc/malloc.c: Declare it.
	* malloc/arena.c (save_memalign_hook): New variable.
	(ptmalloc_init): Set __memalign_hook to memalign_starter.

	* elf/dl-minimal.c (free): Clear the memory.
	(calloc): Just call malloc, knowing all memory it returns is cleared.

	* sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
	malloc and memset; calloc can avoid the zeroing when redundant.
	(_dl_tls_setup): Likewise.
	* elf/dl-load.c (decompose_rpath): Likewise.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
	call, since memory from sbrk at startup is already zero.

	* elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
	error string for failure, null for success.  Update callers.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
	* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
2002-12-06 11:15:07 +00:00
Roland McGrath d58847f952 2002-12-06 Roland McGrath <roland@redhat.com>
* malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
	(malloc_starter, memalign_starter, free_starter): Don't define these.
	* malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
	Don't declare them either.
	* malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
	__pthread_initialize, so no need to set hooks to *_starter.
	(ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
	[_LIBC && SHARED && USE_TLS && !USE___THREAD]
	(__libc_malloc_pthread_startup): New function.
	* malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
2002-12-06 11:11:08 +00:00
Ulrich Drepper c4737dc91f Also ignore names such as autom4te-2.53.cache. 2002-12-06 11:07:54 +00:00
Roland McGrath 9cf6fef171 * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
args to i:iipi.
	(readahead): Change args to i:iii.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
	Change args to i:iii.
	* sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
	args to i:iiii.
2002-12-05 23:47:33 +00:00
Roland McGrath ca4961c095 * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
call all functions rather than none.
	Reported by Mark P. Mitchell <mark@codesourcery.com>.
2002-12-05 22:34:59 +00:00
Roland McGrath 11767d4767 * sysdeps/unix/sysv/linux/i386/createthread.c (create_thread): Add
missing & here too.
2002-12-05 20:56:43 +00:00
Roland McGrath 9702f15190 2002-12-05 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/i386/createthread.c (create_thread): Add
	missing & here too.
2002-12-05 20:56:25 +00:00
Ulrich Drepper 440d8bc2cd Update.
2002-12-05  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove
	lowlevellock.
	* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: New file.
	* sysdeps/unix/sysv/linux/i386/i586/libc-lowlevellock.S: New file.
	* sysdeps/unix/sysv/linux/i386/i686/libc-lowlevellock.S: New file.
	* sysdeps/pthread/bits/libc-lock.h: Use lowlevellock implementation
	for __libc_lock_* macros.
	* Makefile (routines): Add libc-lowlevellock.

2002-10-09  Roland McGrath  <roland@redhat.com>

	* sysdeps/pthread/bits/libc-lock.h (__libc_maybe_call): New macro.
	Under [__PIC__], call the function via the pointer fetched for
	comparison rather than a call by name that uses the PLT.
	(__libc_lock_init, __libc_rwlock_init, __libc_lock_fini)
	(__libc_rwlock_fini, __libc_lock_lock, __libc_rwlock_rdlock)
	(__libc_rwlock_wrlock, __libc_lock_trylock, __libc_rwlock_tryrdlock)
	(__libc_rwlock_trywrlock, __libc_lock_unlock, __libc_rwlock_unlock)
	(__libc_key_create, __libc_getspecific, __libc_setspecific): Use it.
2002-12-05 20:04:54 +00:00
Ulrich Drepper 240a3c78ea Low level locks for i486 in libc. 2002-12-05 19:46:41 +00:00
Roland McGrath cbf949bb71 * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
on _nl_current_LC_* variables.
2002-12-05 11:06:49 +00:00
Roland McGrath 556a97c145 2002-12-04 Roland McGrath <roland@redhat.com>
* locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
	on _nl_current_LC_* variables.
2002-12-05 11:03:55 +00:00
Ulrich Drepper bf6fc6c1a5 Update.
2002-12-05  Ulrich Drepper  <drepper@redhat.com>

	* dirent/bug-readdir1.c (main): Don't call closedir, just close on
	the file descriptor.  This is testing what the bug report was about.
2002-12-05 10:45:13 +00:00
Ulrich Drepper d8d317454d Update.
* po/be.po: New file.
2002-12-05 06:14:03 +00:00
Ulrich Drepper c061eebed1 Belarusian translation for GNU libc messages. 2002-12-05 06:12:07 +00:00
Roland McGrath d5ed0118ca * forward.c (pthread_self): Use FORWARD3 macro to correct return type.
* sysdeps/i386/td_ta_map_lwp2thr.c: Moved from ../nptl_db.
	* sysdeps/generic/td_ta_map_lwp2thr.c: New file.

	* pthread_create.c (start_thread): Add missing & on __nptl_last_event.
2002-12-05 05:15:35 +00:00
Roland McGrath ac110745dc * td_thr_get_info.c (td_thr_get_info): ti_tid is pthread_t, not a PID.
* thread_db.h (td_thrinfo_t): Comment fix.

	* td_ta_map_lwp2thr.c: Moved to ../nptl/sysdeps/i386/.
2002-12-05 03:45:55 +00:00
Roland McGrath 44de49707e 2002-12-04 Roland McGrath <roland@redhat.com>
* td_thr_get_info.c (td_thr_get_info): ti_tid is pthread_t, not a PID.
2002-12-05 03:45:22 +00:00
Ulrich Drepper eaa4099fd6 Update.
* sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
	Change type of _attribute to void*.
	* sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
2002-12-05 01:09:19 +00:00
Ulrich Drepper 33b5d0cc7f Update.
2002-12-05  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/tls.h: Include stdlib.h.
	* sysdeps/x86_64/tls.h: Likewise.
2002-12-05 00:44:01 +00:00
Ulrich Drepper abbd6175b4 Update.
2002-12-04  Ulrich Drepper  <drepper@redhat.com>

	* td_ta_thr_iter.c (iterate_thread_list): At end of iteration read
	pointer to the next element from inferior.
2002-12-04 23:42:21 +00:00
Ulrich Drepper c4a6d85994 Update.
2002-12-04  Ulrich Drepper  <drepper@redhat.com>

	* argp/Makefile (tests): Add tst-argp1.
2002-12-04 19:53:08 +00:00
Ulrich Drepper ed6e8c2e68 Bump to 0.11. 2002-12-04 19:10:58 +00:00
Roland McGrath 216455bc28 * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
members to the end, so a libpthread compiled with !USE_TLS will still
	find other members properly.

	* sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
	operand for DEST memory.  Fix dummy input operand to use SRC.
	Reported by Davin McCall <davmac@ozonline.com.au>.

	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
	alignment when initializing the DTV entry.

	* elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
	when TLS has not been set up, try to set it up if we can.
	* elf/tst-tls4.c: Revert last change.
	* elf/tst-tls5.c: Likewise.
	* elf/tst-tls6.c: Likewise.
	* elf/tst-tls7.c: Likewise.
	* elf/tst-tls8.c: Likewise.
	* elf/tst-tls9.c: Likewise.

	* sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
	* sysdeps/generic/ldsodefs.h: Declare it.
	* elf/Versions (ld: GLIBC_PRIVATE): Add it.
	* sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
	function, broken out of __libc_setup_tls.
	(init_static_tls): Likewise.
	(__libc_setup_tls): Call them.
	(_dl_tls_setup): New function, uses new subroutines.

	* elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
	Clear the pointer when returning true.
	(libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
	first element of the slotinfo list too.

	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
	[SHARED].

	* sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
	(_dl_determine_tlsoffset): Likewise.

	* elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
	startup_error_tsd, made global.
	(dl_main): Update initialization.
	* elf/dl-tsd.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Declare it.
2002-12-04 12:30:40 +00:00
Roland McGrath 68dc80ca28 2002-12-04 Roland McGrath <roland@redhat.com>
* sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
	members to the end, so a libpthread compiled with !USE_TLS will still
	find other members properly.
	* sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
	* sysdeps/generic/ldsodefs.h: Declare it.
	* elf/Versions (ld: GLIBC_PRIVATE): Add it.
	* sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
	function, broken out of __libc_setup_tls.
	(init_static_tls): Likewise.
	(__libc_setup_tls): Call them.
	(_dl_tls_setup): New function, uses new subroutines.
	* sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
	(_dl_determine_tlsoffset): Likewise.
	* elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
	startup_error_tsd, made global.
	(dl_main): Update initialization.
	* elf/dl-tsd.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Declare it.
2002-12-04 12:27:20 +00:00
Ulrich Drepper 7a5cdb30e3 Update.
2002-12-04  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Mark asms as
	volatile and add memory clobbers to lock operations.
2002-12-04 09:52:26 +00:00
Ulrich Drepper d16055ee52 Update.
2002-12-03  Ulrich Drepper  <drepper@redhat.com>

	* manual/texinfo.tex: Update from latest upstream version.
2002-12-04 06:33:29 +00:00
Ulrich Drepper 2f5b1124f8 Update from latest upstream version. 2002-12-04 06:08:27 +00:00
Roland McGrath 852ce9bc38 * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
area surplus in calculation for sbrk call.
2002-12-04 04:20:40 +00:00
Roland McGrath e7e6e437da 2002-12-03 Roland McGrath <roland@redhat.com>
* sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
	area surplus in calculation for sbrk call.
2002-12-04 04:20:07 +00:00
Ulrich Drepper 69cae3cfaf Update.
* sysdeps/i386/i686/bits/atomic.h: Use i486 version.
	* sysdeps/i386/i486/bits/atomic.h: New file.
	* sysdeps/i386/i586/bits/atomic.h: New file.
	* sysdeps/i386/i686/pthread_spin_trylock.S: Define HAVE_CMOV and
	include i486 version.
	* sysdeps/i386/i486/pthread_spin_trylock.S: New file.
	* sysdeps/i386/i586/pthread_spin_trylock.S: New file.
	Patch by Marjin Ros <marjin@mad.scientist.com>.
2002-12-04 00:55:29 +00:00
Ulrich Drepper b1473c3238 i486 specific atomic operations. 2002-12-04 00:54:06 +00:00
Roland McGrath b15c9395a8 * iconvdata/cp1125.c: New file.
* iconvdata/Makefile (distribute): Add it.
	(modules): Add CP1125.
	(gen-8bit-gap-modules): Add cp1125.
	* iconvdata/gconv-modules: Add CP1125, alias RUSCII.
	* iconvdata/tst-tables.sh: Add CP1125 to the list to test.
2002-12-03 21:52:23 +00:00
Roland McGrath d82b68075d 2002-12-03 Roland McGrath <roland@redhat.com>
* charmaps/CP1125: New file.
	* CHECKSUMS: Add it.
2002-12-03 20:56:06 +00:00
Ulrich Drepper 20b839bf12 Define HAVE_CMOV and include i486 version. 2002-12-03 20:21:08 +00:00
Ulrich Drepper e4044c0178 Update.
* allocatestack.c (get_cached_stack): Don't crash if we first
	found a stack with a larger size then needed.
	Reported by Hui Huang <hui.huang@sun.com>.
2002-12-03 20:07:12 +00:00
Ulrich Drepper 5cfc88a718 (get_cached_stack): Don't crash if we first found a stack with a larger size then needed. 2002-12-03 20:06:21 +00:00
Andreas Jaeger 347ae8d421 * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated. 2002-12-03 15:39:42 +00:00
Andreas Jaeger 43d218d55b Regenerated. 2002-12-03 15:39:37 +00:00
Ulrich Drepper d82d5d12a6 Update.
2002-12-03  Ulrich Drepper  <drepper@redhat.com>

	* Makefile (tests): Add tst-sysconf.
	* tst-sysconf.c: New file.

	* sysdeps/unix/sysv/linux/bits/local_lim.h: Undefine
	PTHREAD_THREADS_MAX.
2002-12-03 10:34:23 +00:00
Ulrich Drepper 918bd861cb Update.
2002-12-03  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/posix/system.c (do_system): Make signal handler
	installation thread safe.
2002-12-03 09:01:03 +00:00
Ulrich Drepper 87293ddce8 Correct rule to create tst-locale1. 2002-12-03 08:57:59 +00:00
Roland McGrath b8d7c8c1e8 * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
caller from EXTRA to -.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
2002-12-03 07:28:17 +00:00
Roland McGrath 91c0a70cc5 2002-12-02 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
	caller from EXTRA to -.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
2002-12-03 07:28:09 +00:00
Ulrich Drepper c22b52fa11 Update.
* Makefile (tests): Add tst-locale1.  If buid-static is yes link
	statically.
	* tst-locale1.c: New file.
2002-12-03 06:27:43 +00:00
Ulrich Drepper a3a238a978 Test use of locale functions in statically linked apps. 2002-12-03 06:01:38 +00:00
Roland McGrath fa9a4ff0ba * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
bits of RM are cleared.
2002-12-03 02:50:58 +00:00
Roland McGrath 2d14868942 * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
TLS setup is required.
	* elf/tst-tls5.c: Likewise.
	* elf/tst-tls6.c: Likewise.
	* elf/tst-tls7.c: Likewise.
	* elf/tst-tls8.c: Likewise.
	* elf/tst-tls9.c: Likewise.

	* elf/rtld.c (dl_main): Remove [! SHARED] conditional from
	`if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
	* elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
	for being null before calling free_slotinfo.
	* elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
	dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
2002-12-03 01:51:07 +00:00
Roland McGrath f87277f2cd Add some items, tweak another. 2002-12-03 00:54:55 +00:00
Ulrich Drepper f9ad060c7a Update.
2002-11-30  Bruno Haible  <bruno@clisp.org>

	* iconv/gconv.h (__gconv_btowc_fct): New typedef.
	(struct __gconv_step): New field __btowc_fct.
	* wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
	* iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
	__BUILTIN_TRANS.
	(__gconv_btwoc_ascii): New declaration.
	* iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
	(__gconv_btwoc_ascii): New function.
	* iconv/gconv_builtin.h: Add BtowcFct argument to all
	BUILTIN_TRANSFORMATION invocations.
	* iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
	* iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
	* iconv/gconv_builtin.c (map): New field btowc_fct.
	(BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
	btowc_fct field.
	(__gconv_get_builtin_trans): Initialize __btowc_fct field.
	* iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
	* iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
	* wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
	* iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
	(gconv_init): Initialize __btowc_fct field.
	Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
	* iconv/loop.c: Document ONEBYTE_BODY.
	(gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
	Undefine ONEBYTE_BODY at the end.
	* iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
	* iconvdata/8bit-gap.c (NONNUL): New macro.
	(BODY for FROM_LOOP): Use it.
	(ONEBYTE_BODY): New macro.
	* iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
	(NONNUL): New macro.
	* iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
	* iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
	* iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
	* iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
	* iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
	* iconvdata/big5.c (ONEBYTE_BODY): New macro.
	* iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
	* iconvdata/gbk.c (ONEBYTE_BODY): New macro.
	* iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
	* iconvdata/ibm932.c: Include <stdbool.h>.
	(TRUE, FALSE): Remove macros.
	(BODY for FROM_LOOP): Remove unused variable rp1.
	(ONEBYTE_BODY): New macro.
	(BODY for TO_LOOP): Use bool.
	* iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
	* iconvdata/ibm943.c: Include <stdbool.h>.
	(TRUE, FALSE): Remove macros.
	(BODY for FROM_LOOP): Remove unused variable rp1.
	(ONEBYTE_BODY): New macro.
	(BODY for TO_LOOP): Use bool.
	* iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
	* iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
	* iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
	* iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
	* iconvdata/johab.c (ONEBYTE_BODY): New macro.
	* iconvdata/sjis.c (ONEBYTE_BODY): New macro.
	* iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
	* iconvdata/t.61.c (ONEBYTE_BODY): New macro.
	* iconvdata/uhc.c (ONEBYTE_BODY): New macro.
	* iconvdata/gbbig5.c: Tweak comment.
2002-12-02 22:39:58 +00:00