2002-10-05 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
2002-10-03 Ulrich Drepper <drepper@redhat.com>
* version.h (RELEASE): Change to stable.
See ChangeLog.13 for earlier changes.
* sysdeps/unix/sysv/linux/powerpc/bits/ipc.h (struct ipc_perm):
Use __uint32_t and __uint64_t for __seq, __pad1, __unused[12] fields
so they are consistent between PPC32 and PPC64.
* sysdeps/unix/sysv/linux/xstatconv.c [STAT_IS_KERNEL_STAT]:
Conditionalize the function definitions on this.
* sysdeps/unix/sysv/linux/xstat.c (__xstat) [STAT_IS_KERNEL_STAT]:
Don't use xstat_conv, just fail if VERS != _STAT_VER_KERNEL.
* sysdeps/unix/sysv/linux/fxstat.c (__fxstat) [STAT_IS_KERNEL_STAT]:
Likewise.
* sysdeps/unix/sysv/linux/lxstat.c (__lxstat) [STAT_IS_KERNEL_STAT]:
Likewise.
2002-10-02 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/pt-machine.h: Make C code ifndef'ed with __ASSEMBLER__.
* sysdeps/sh/tls.h: Likewise.
* sysdeps/unix/sysv/linux/sh/smp.h: New file.
2002-10-01 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ,
SIGSTKSZ): Changed to match kernel.
* sysdeps/unix/sysv/linux/sparc/bits/sigstack.h: New file.
* sysdeps/unix/x86_64/sysdep.S [USE_TLS && HAVE___THREAD] [! PIC]:
Use direct-%fs form of TLS access for errno.
* sysdeps/unix/sysv/linux/i386/i686/sysdep.h: File removed, since
the i386 version has all the same asm now.
* sysdeps/i386/elf/configure.in: Add @GOTNTPOFF and @NTPOFF uses to
the TLS support check.
* sysdeps/i386/elf/configure: Regenerated.
* sysdeps/unix/sysv/linux/i386/sysdep.h [USE_TLS && HAVE___THREAD]
(SYSCALL_ERROR_HANDLER): Use direct-%gs form of TLS access for errno.
* sysdeps/unix/i386/sysdep.S (syscall_error)
[USE_TLS && HAVE___THREAD]: Use TLS access for errno.
2002-09-30 Andreas Jaeger <aj@suse.de>
* iconvdata/tst-e2big.c (test): Use %td in printf for ptrdiff_t.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
Store 4 bytes into errno, not 8 bytes.
Define errno in .tbss.
* sysdeps/unix/x86_64/sysdep.S [USE_TLS && HAVE___THREAD]: Use TLS
access for setting errno.
* sysdeps/unix/x86_64/sysdep.S: Store 32 bits at errno, not 64 bits.
AFAICT, it was just blind luck that the word following errno in .bss
was just alignment padding and not some other variable to be clobbered.
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_SETRESUID_SYSCALL): On the sparc, define to 1, not empty.
2002-09-29 Jakub Jelinek <jakub@redhat.com>
(__NR_pread, __NR_pwrite): Define these to __NR_pread64, __NR_pwrite64
if not defined.
* sysdeps/unix/sysv/linux/powerpc/lchown.S
[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]: Use this condition
on chown compatibility symbol; use compat_symbol, not symbol_version.
* sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_DL_HWCAP_PLATFORM):
Correct the value so it covers all platforms, and is computed
from _DL_PLATFORMS_COUNT rather than hard-wired.
From Andrew Suffield <asuffield@debian.org>.
* sysdeps/powerpc/powerpc32/sysdep.h: New file. Define powerpc32
specific macros copied from sysdeps/powerpc/sysdep.h.
* sysdeps/powerpc/powerpc64/sysdep.h: New file. Define powerpc64
specific macros.
* sysdeps/unix/powerpc/sysdep.h: Include <bits/wordsize.h>.
[__WORDSIZE==64]: Include sysdeps/powerpc/powerpc64/sysdep.h.
[!__WORDSIZE==64]: Include sysdeps/powerpc/powerpc32/sysdep.h.
* sysdeps/unix/sysv/linux/ifreq.h (__if_nextreq): New function.
* sysdeps/mach/hurd/ifreq.h (__if_nextreq): New function.
* sysdeps/gnu/ifaddrs.c (getifaddrs): Use __if_nextreq
for iterating through the list of interfaces.
* resolv/res_hconf.c (_res_hconf_reorder_addrs): Likewise.
* sysdeps/unix/grantpt.c (pts_name): Set errno when __ptsname_r fails.
Reported by Bruno Haible <bruno@clisp.org>.
* sysdeps/unix/bsd/isatty.c (__isatty): Don't save and restore errno.
* sysdeps/unix/bsd/ptsname.c (__ptsname_r): Return errno value from
isatty unmodified. Reported by Bruno Haible <bruno@clisp.org>.
* sysdeps/powerpc/bits/wordsize.h: New file.
* sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Change long
array to int array for 32-/64-bit compatibility.
2002-09-20 Roland McGrath <roland@redhat.com>
* login/programs/utmpdump.c: Don't include <error.h>, <errno.h>.
* sysdeps/generic/utimes.c (__utimes): Don't check TVP for null.
Reported by Bruno Haible <bruno@clisp.org>.
* sysdeps/generic/ifreq.h (__ifreq): Compute termination condition
before doubling RQ_LEN.
* sysdeps/unix/sysv/linux/ifreq.h (__ifreq): Likewise.
Reported by Bruno Haible <bruno@clisp.org>.
2002-09-18 Bruno Haible <bruno@clisp.org>
* login/logout.c (logout): Don't assume ut_time has the same size as
a time_t.
* login/logwtmp.c (logwtmp): Likewise.
* sysdeps/pthread/configure: New file, moved here from
linuxthreads/sysdeps/unix/sysv/linux/configure.
* sysdeps/unix/sysv/linux/_exit.c: Include <errno.h>.
(_exit): Don't use ABORT_INSTRUCTION if it is not defined.
Reported by Glen Nakamura <glen@imodulo.com>.
* sysdeps/unix/sysv/linux/sigaction.c: If SIGCANCEL is defined
define sigaction and __sigaction as wrappers around
__libc_sigaction which rejects changing SIGCANCEL.
* sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
Ported to PowerPC64 running Linux.
* sysdeps/powerpc/powerpc64/Dist: New file.
* sysdeps/powerpc/powerpc64/Implies: New file.
* sysdeps/powerpc/powerpc64/Makefile: New file.
* sysdeps/powerpc/powerpc64/__longjmp.S: New file.
* sysdeps/powerpc/powerpc64/atomicity.h: New file.
* sysdeps/powerpc/powerpc64/backtrace.c: New file.
* sysdeps/powerpc/powerpc64/bp-asm.h: New file.
* sysdeps/powerpc/powerpc64/bsd-_setjmp.S: New file.
* sysdeps/powerpc/powerpc64/bsd-setjmp.S: New file.
* sysdeps/powerpc/powerpc64/dl-dtprocnum.h: New file.
* sysdeps/powerpc/powerpc64/dl-lookupcfg.h: New file.
* sysdeps/powerpc/powerpc64/dl-machine.c: New file.
* sysdeps/powerpc/powerpc64/dl-machine.h: New file.
* sysdeps/powerpc/powerpc64/memset.S: New file.
* sysdeps/powerpc/powerpc64/ppc-mcount.S: New file.
* sysdeps/powerpc/powerpc64/register-dump.h: New file.
* sysdeps/powerpc/powerpc64/setjmp.S: New file.
* sysdeps/powerpc/powerpc64/stpcpy.S: New file.
* sysdeps/powerpc/powerpc64/strchr.S: New file.
* sysdeps/powerpc/powerpc64/strcmp.S: New file.
* sysdeps/powerpc/powerpc64/strcpy.S: New file.
* sysdeps/powerpc/powerpc64/strlen.S: New file.
* sysdeps/powerpc/powerpc64/elf/bzero.S: New file.
* sysdeps/powerpc/powerpc64/elf/start.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_copysign.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_copysignf.S: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: New File.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/glob64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: New file.
(__ASSUME_TRUNCATE64_SYSCALL, __ASSUME_STAT64_SYSCALL, __ASSUME_IPC64,
__ASSUME_FCNTL64, __ASSUME_MMAP2_SYSCALL): Don't define these.
PowerPC64 does not have separate 64-bit syscalls.
2002-09-14 Ulrich Drepper <drepper@redhat.com>
* include/unistd.h: Declare __exit_thread.
* sysdeps/generic/libc-start.c: Remove dummy_addr.
Wrap call to main in setjmp if HAVE_CANCELBUF is defined.
* sysdeps/unix/sysv/linux/exit-thread.S: New file.
* sysdeps/unix/sysv/linux/_exit.c: New file.
* sysdeps/unix/sysv/linux/i386/_exit.S: New file.
* sysdeps/unix/sysv/linux/Makefile [subdir==posix] (sysdep_routines):
Add exit-thread.
* configure.in: Add dl_iterate_phdr to test using -nostdlib.
* elf/cache.c (print_entry): Add case for FLAG_POWERPC_LIB64.
Remove per-machine conditionals for FLAG_* cases.
* sysdeps/unix/sysv/linux/powerpc/ldconfig.h: New file.
* sysdeps/unix/sysv/linux/powerpc/readelflib.c: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/dl-cache.h: New file.
instead of __NR_pread.
* sysdeps/unix/sysv/linux/pread64.c: Likewise.
* sysdeps/unix/sysv/linux/pwrite.c: __NR_pwrite64 may be defined
instead of __NR_pwrite.
* sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
2002-07-29 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/__longjmp.S: Moved to...
* sysdeps/powerpc/powerpc32/__longjmp.S: ...here.
* sysdeps/powerpc/add_n.S: Moved to...
* sysdeps/powerpc/powerpc32/add_n.S: ...here.
* sysdeps/powerpc/addmul_1.S: Moved to...
* sysdeps/powerpc/powerpc32/addmul_1.S: ...here.
* sysdeps/powerpc/atomicity.h: Moved to...
* sysdeps/powerpc/powerpc32/atomicity.h: ...here.
* sysdeps/powerpc/backtrace.c: Moved to...
* sysdeps/powerpc/powerpc32/backtrace.c: ...here.
* sysdeps/powerpc/bp-asm.h: Moved to...
* sysdeps/powerpc/powerpc32/bp-asm.h: ...here.
* sysdeps/powerpc/bsd-_setjmp.S: Moved to...
* sysdeps/powerpc/powerpc32/bsd-_setjmp.S: ...here.
* sysdeps/powerpc/bsd-setjmp.S: Moved to...
* sysdeps/powerpc/powerpc32/bsd-setjmp.S: ...here.
* sysdeps/powerpc/dl-machine.c: Moved to...
* sysdeps/powerpc/powerpc32/dl-machine.c: ...here.
* sysdeps/powerpc/dl-machine.h: Moved to...
* sysdeps/powerpc/powerpc32/dl-machine.h: ...here.
* sysdeps/powerpc/dl-start.S: Moved to...
* sysdeps/powerpc/powerpc32/dl-start.S: ...here.
* sysdeps/powerpc/gprrest0.S: Moved to...
* sysdeps/powerpc/powerpc32/gprrest0.S: ...here.
* sysdeps/powerpc/gprrest1.S: Moved to...
* sysdeps/powerpc/powerpc32/gprrest1.S: ...here.
* sysdeps/powerpc/gprsave0.S: Moved to...
* sysdeps/powerpc/powerpc32/gprsave0.S: ...here.
* sysdeps/powerpc/gprsave1.S: Moved to...
* sysdeps/powerpc/powerpc32/gprsave1.S: ...here.
* sysdeps/powerpc/lshift.S: Moved to...
* sysdeps/powerpc/powerpc32/lshift.S: ...here.
* sysdeps/powerpc/memset.S: Moved to...
* sysdeps/powerpc/powerpc32/memset.S: ...here.
* sysdeps/powerpc/mul_1.S: Moved to...
* sysdeps/powerpc/powerpc32/mul_1.S: ...here.
* sysdeps/powerpc/ppc-mcount.S: Moved to...
* sysdeps/powerpc/powerpc32/ppc-mcount.S: ...here.
* sysdeps/powerpc/register-dump.h: Moved to...
* sysdeps/powerpc/powerpc32/register-dump.h: ...here.
* sysdeps/powerpc/rshift.S: Moved to...
* sysdeps/powerpc/powerpc32/rshift.S: ...here.
* sysdeps/powerpc/setjmp.S: Moved to...
* sysdeps/powerpc/powerpc32/setjmp.S: ...here.
* sysdeps/powerpc/stpcpy.S: Moved to...
* sysdeps/powerpc/powerpc32/stpcpy.S: ...here.
* sysdeps/powerpc/strchr.S: Moved to...
* sysdeps/powerpc/powerpc32/strchr.S: ...here.
* sysdeps/powerpc/strcmp.S: Moved to...
* sysdeps/powerpc/powerpc32/strcmp.S: ...here.
* sysdeps/powerpc/strcpy.S: Moved to...
* sysdeps/powerpc/powerpc32/strcpy.S: ...here.
* sysdeps/powerpc/strlen.S: Moved to...
* sysdeps/powerpc/powerpc32/strlen.S: ...here.
* sysdeps/powerpc/sub_n.S: Moved to...
* sysdeps/powerpc/powerpc32/sub_n.S: ...here.
* sysdeps/powerpc/submul_1.S: Moved to...
* sysdeps/powerpc/powerpc32/submul_1.S: ...here.
* sysdeps/powerpc/elf/bzero.S: Moved to...
* sysdeps/powerpc/powerpc32/elf/bzero.S: ...here.
* sysdeps/powerpc/elf/start.S: Moved to...
* sysdeps/powerpc/powerpc32/elf/start.S: ...here.
* sysdeps/powerpc/fpu/__longjmp.S: Moved to...
* sysdeps/powerpc/powerpc32/fpu/__longjmp.S: ...here.
* sysdeps/powerpc/fpu/fprrest.S: Moved to...
* sysdeps/powerpc/powerpc32/fpu/fprrest.S: ...here.
* sysdeps/powerpc/fpu/fprsave.S: Moved to...
* sysdeps/powerpc/powerpc32/fpu/fprsave.S: ...here.
* sysdeps/powerpc/fpu/setjmp.S: Moved to...
* sysdeps/powerpc/powerpc32/fpu/setjmp.S: ...here.
* sysdeps/powerpc/fpu/s_copysign.S: Moved to...
* sysdeps/powerpc/powerpc32/fpu/s_copysign.S: ...here.
* sysdeps/powerpc/fpu/s_copysignf.S: Moved to...
* sysdeps/powerpc/powerpc32/fpu/s_copysignf.S: ...here.
* sysdeps/unix/sysv/linux/powerpc/brk.S: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: ...here.
* sysdeps/unix/sysv/linux/powerpc/clone.S: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: ...here.
* sysdeps/unix/sysv/linux/powerpc/glob64.c: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
* sysdeps/unix/sysv/linux/powerpc/kernel_stat.h: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: ...here.
* sysdeps/unix/sysv/linux/powerpc/socket.S: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: ...here.
* sysdeps/unix/sysv/linux/powerpc/sysdep.h: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: ...here.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Moved to...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: ...here.
Support PowerPC64. Separate powerpc into powerpc/powerpc32 and
powerpc/powerpc64.
2002-07-29 Steven Munroe <sjmunroe@us.ibm.com>
* FAQ.in: Add powerpc64 to supported targets list. Also state the
minimum gcc version is 3.2
* README: Add powerpc64 to supported targets list.
* configure.in: Change machine=powerpc to machine=powerpc/powerpc32.
Add powerpc64 and machine=powerpc/powerpc64.
(HAVE_ASM_GLOBAL_DOT_NAME): Define if linux*powerpc/powerpc64*.
* shlib-versions: Set DEFAULT version to 2.2.5 for powerpc64.
* sysdeps/powerpc/Dist: Remove dl-machine.c, dl-start.S, ppc-mcount.S,
gprsave1.S, gprsave0.S, gprrest1.S, and gprrest0.S.
* sysdeps/powerpc/powerpc32/Dist: New file.
* sysdeps/powerpc/Implies: Remove wordsize-32 and powerpc/soft-fp.
* sysdeps/powerpc/powerpc32/Implies: New file.
* sysdeps/powerpc/Makefile(cflags): Remove powerpc32 specific cflags.
($(with-fp) = no): Move test to powerpc32/Makefile.
($(subdir) = misc): Move to powerpc32/Makefile.
($(build-shared) = yes): Move to powerpc32/Makefile.
($(subdir) = csu): Move to powerpc32/Makefile.
(sysdep-rtld-routines): Remove dl-start. Moved these bits to ...
* sysdeps/powerpc/powerpc32/Makefile: New file.
* sysdeps/powerpc/Versions: Remove libgcc functions.
* sysdeps/powerpc/powerpc32/Versions: New file.
* sysdeps/powerpc/fpu/Makefile: Remove fprsave and fprrest.
* sysdeps/powerpc/powerpc32/fpu/Makefile: New file.
* sysdeps/unix/sysv/linux/configure.in (powerpc*):
Set arch_minimum_kernel=2.4.19 for powerpc/powerpc64. Also set
libc_cv_gcc_unwind_find_fde=yes only if !powerpc/powerpc64.
($machine): Add powerpc/powerpc64 to if ... | for
libc_cv_slibdir=/libc64.
(powerpc*): Set ldd_rewrite_script.
* sysdeps/unix/sysv/linux/powerpc/ldd-rewrite.sed: New file.
* sysdeps/unix/sysv/linux/powerpc/Dist: Remove clone.S.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: New file.
Add clone.S.
* sysdeps/unix/sysv/linux/powerpc/Makefile: Remove oldgetrlimit64.
* sysdeps/unix/sysv/linux/powerpc/Versions: Remove GLIBC_2.0
functions. Remove GLIBC_2.2 functions except getrlimit and
setrlimit. Moved them to ...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: New file.
2002-09-04 Ulrich Drepper <drepper@redhat.com>
* libio/tst-atime.c: Include <errno.h>.
(do_test): Only perform fstatvfs check if ST_NOATIME is defined.
2002-09-03 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c (regcomp): Append "__restrict" modifier to avoid
warnings of some compilers.
(build_collating_symbol): Change the type of characters from
"unsigned char" to "char", and append a cast to "char*" pointer in
array subscript.
(build_collating_symbol): Likewise.
(build_equiv_class): Likewise.
(build_charclass): Likewise.
(re_compile_pattern): Remove incorrect cast.
(re_compile_fastmap_iter): Change the type of characters from
"unsigned char" to "char", and append a cast to "char*" pointer
in array subscript.
(parse_bracket_exp): Likewise.
* posix/regex_internal.c (re_string_construct_common): Likewise.
(re_string_allocate): Likewise.
(re_string_construct): Likewise.
(re_string_realloc_buffers): Likewise.
(build_wcs_buffer): Likewise.
(re_string_reconstruct): Likewise.
* posix/regex_internal.h: Change the type of characters in
re_string_t and bracket_elem_t from "unsigned char" to "char".
* posix/regexec.c (regexec): Append "__restrict" modifier to avoid
warnings of some compilers.
(transit_state_bkref_loop): Change the type of characters from
"unsigned char" to "char", and append a cast to "char*" pointer in
array subscript.
(check_node_accept_bytes): Likewise.
(find_collation_sequence_value): Likewise.
__pthread_initialize_minimal and __libc_check_standard_fds to
match the generic version.
* sysdeps/powerpc/Makefile (CFLAGS-pt-initfini.s): New variable.
* sysdeps/unix/sysv/linux/shmat.c (shmat): Add a cast to avoid a
warning when INLINE_SYSCALL macro uses the __syscall_ipc function.
* locale/localeconv.c (__localeconv): Cast -1 to char to avoid
warnings on platorms where char is unsigned.
2002-08-31 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/x86_64/Makefile (sysdep_routines): Add
__start_context.
* sysdeps/unix/sysv/linux/x86_64/__start_context.S: New file.
* sysdeps/unix/sysv/linux/x86_64/makecontext.c: New file.
* sysdeps/unix/sysv/linux/x86_64/ucontext_i.h: Add defines for
registers used for passing args.
* sysdeps/unix/sysv/linux/x86_64/swapcontext.S: Save and restore
all needed registers.
* sysdeps/unix/sysv/linux/x86_64/setcontext.S: Restore all
registers.
* sysdeps/unix/sysv/linux/x86_64/getcontext.S: Save all needed
registers.
* sysdeps/mach/hurd/pwrite64.c: No libc_hidden_def (__libc_pwrite64).
* sysdeps/mach/hurd/dl-sysdep.c (__GI_abort): Define alias for abort.
* include/assert.h (__assert_perror_fail): Declare it, do hidden_proto.
* assert/assert-perr.c: Add libc_hidden_def.
* elf/dl-minimal.c [! NDEBUG] (__assert_perror_fail): New function.
* sysdeps/gnu/errlist-compat.awk: Don't fail if there are no versions
found at all.
* sysdeps/gnu/Versions: File removed. Moved all #errlist-compat
sys_errlist stuff to ...
* sysdeps/unix/sysv/linux/Versions: ... here.
* mach/mach.h: Include <features.h>.
* sysdeps/generic/ldsodefs.h (__rtld_global_attribute__): Define.
(_rtld_global): Use it.
* sysdeps/gnu/Dist: Remove errlist-compat.c.
* sysdeps/gnu/Makefile (errlist-compat.c): Build this file in the
object directory. Pass all Versions files to the awk script.
* sysdeps/gnu/errlist-compat.c: Removed.
* sysdeps/gnu/errlist.awk: Use #errlist-compat comments from the
first Versions file in the search path which has them.
Allow multiple errlist symbol versions to have the same count of
errors.
* sysdeps/gnu/errlist-compat.awk: Include <errlist-compat.c> instead
of "errlist-compat.c".
* sysdeps/gnu/errlist.c: Regenerated.
* sysdeps/unix/sysv/linux/mips/Versions (libc): Add #errlist-compat
comments at GLIBC_2.0, GLIBC_2.1 and GLIBC_2.3.
* sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
(librt): Add aio_cancel and aio_cancel64 as GLIBC_2.3.
* sysdeps/unix/sysv/linux/hppa/Versions: Likewise.
* sysdeps/unix/sysv/linux/sparc/Versions: New file.
* sysdeps/unix/sysv/linux/alpha/bits/errno.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/errno.h (ECANCELED): Define to
ECANCELLED if not defined by kernel headers.
* sysdeps/unix/sysv/linux/bits/errno.h: Don't redefine ECANCELED if
already defined by kernel headers.
* sysdeps/unix/sysv/linux/sparc/bits/errno.h: New file.
* sysdeps/pthread/aio_cancel.c: Don't include aio.h and its
aio_cancel64 renaming hack nor provide weak_alias if aio_cancel
is a macro.
* Versions.def (GLIBC_2.3) [librt]: Add.
* sysdeps/unix/sysv/linux/alpha/pipe.S: New file.
2002-08-28 Ulrich Drepper <drepper@redhat.com>
* include/libc-symbols.h [!__ASSEMBLER__] (declare_symbol_1): Add
missing comma to .type directive.
2002-08-28 Jakub Jelinek <jakub@redhat.com>
2002-08-27 Ulrich Drepper <drepper@redhat.com>
* sysdeps/arm/Dist: Add bits/link.h.
* sunrpc/Makefile: Distribute thrsvc.
* stdio-common/Makefile: Remove more left-overs from old stdio.
* include/linewrap.h: Removed.
* libio/bug-mmap-fflush.c: Rewrite to not touch source directory.
* intl/Makefile (distribute): Add plural-eval.c.
* stdio-common/Makefile (headers): Remove bits/stdio_lim.h. This
file isn't distributed. Add special rules to install bits/stdio_lim.h.
* Make-dist: Remove traces of old stdio.
* Makeconfig: Likewise.
* locale/Makefile (localedef-aux): New variable. Only md5
assigned to it. These files are not ddistributed in this directory.
* sysdeps/unix/sysv/linux/s390/Dist: Add sys/procfs.h.
* sysdeps/unix/sysv/linux/s390/s390-64/Dist: Remove sys/procfs.h.
* sysdeps/unix/sysv/linux/s390/s390-32/Dist: Likewise.
* sysdeps/unix/sysv/linux/Dist: Remove sys/sendfile.h.
* sysdeps/gnu/Versions: New file.
* sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.1): Remove
_sys_errlist; sys_errlist; _sys_nerr; sys_nerr; from here.
* sysdeps/gnu/Makefile ($(..)sysdeps/gnu/errlist-compat.c): New target.
($(objpfx)errlist.d): Depend on $(..)sysdeps/gnu/errlist-compat.c.
* sysdeps/gnu/errlist.awk: Make output define _sys_errlist_internal
and _sys_nerr_internal instead of anything else. Make it include
"errlist-compat.c" if [!NOT_IN_libc && !ERRLIST_NO_COMPAT].
Make it emit some asm magic if [EMIT_ERR_MAX].
* sysdeps/gnu/errlist.c: Regenerated.
* sysdeps/gnu/errlist-compat.awk: New file.
* sysdeps/gnu/errlist-compat.c: New file (generated).
* sysdeps/mach/hurd/errlist.c (ERRLIST_NO_COMPAT): New macro.
(_sys_errlist_internal): Define this as a macro for _hurd_errlist.
(_sys_nerr_internal): Define this is a macro for _hurd_nerr.
(SYS_ERRLIST, SYS_NERR): Macros removed.
(sys_nerr, _sys_nerr): Remove these weak aliases.
* sysdeps/unix/sysv/linux/errlist.c: File removed.
* sysdeps/unix/sysv/linux/errlist.h: File removed.
* sysdeps/unix/sysv/linux/arm/errlist.c: File removed.
* sysdeps/ieee754/dbl-64/e_pow.c (log1): Define and initialize
two52 locally.
(log2): Likewise.
* sysdeps/ieee754/dbl-64/upow.h: Remove definition of two52.
Patch by Simon Gee <simong@agile.tv>.
* sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf):
Prefer reading /proc/stat since it is more uniform across
architectures.1
* manual/texinfo.tex: Update to latest official version.
* sysdeps/powerpc/elf/libc-start.c
(__cache_line_size): Declare.
(__aux_init_cache): New.
(__libc_start_main): Change type of `auxvec' parameter to
`ElfW(auxv_t) *'. Correct walking of aux vector. Call
__aux_init_cache.
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
(__cache_line_size): Declare.
(__aux_init_cache): New.
(DL_PLATFORM_INIT): Define.
* sysdeps/powerpc/memset.S: Define __cache_line_size and use its
value to select the correct stride for dcbz.
2002-08-22 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/elf/libc-start.c
(__cache_line_size): Declare.
(__aux_init_cache): New.
(__libc_start_main): Change type of `auxvec' parameter to
`ElfW(auxv_t) *'. Correct walking of aux vector. Call
__aux_init_cache.
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
(__cache_line_size): Declare.
(__aux_init_cache): New.
(DL_PLATFORM_INIT): Define.
* sysdeps/powerpc/memset.S: Define __cache_line_size and use its
value to select the correct stride for dcbz.
2002-08-15 Ulrich Drepper <drepper@redhat.com>
* csu/Makefile: Define elide-routines.os not static-only-routines.
* include/sched.h (__clone): Add varargs at the end.
* elf/rtld.c (_dl_start): All TLS_INIT_TP to fail and stop in that
case.
(TLS_INIT_HELPER): If defined use it.
* sysdeps/generic/libc-tls.c (TLS_INIT_HELPER): Likewise.
* locale/loadarchive.c (archfname): Add missing slash.
* sysdeps/generic/strtold.c (__strtold_internal): Add libc_hidden_def.
* wcsmbs/wcstold.c (__wcstold_internal): Add libc_hidden_def.
2002-05-24 Robert Love <rml@tech9.net>
* posix/Makefile (routines): Add sched_getaffinity and
sched_setaffinity.
* posix/sched.h: Add declarations for sched_getaffinity and
sched_setaffinity.
* sysdeps/generic/sched_getaffinity.c: New file.
* sysdeps/generic/sched_setaffinity.c: New file.
* sysdeps/unix/sysv/linux/syscalls.list: Add sched_getaffinity and
sched_setaffinity.
2002-08-06 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/utime.c: If TIMES is NULL pass it through to utimes.
2002-08-04 Ulrich Drepper <drepper@redhat.com>
* stdio-common/psignal.c: Declare _sys_siglist_internal. Use USEINT
to access _sys_siglist.
* string/strsignal.c: Likewise.
* sysdeps/generic/siglist.c: Add _sys_siglist_internal alias.
* sysdeps/gnu/siglist.c: Likewise.
* sysdeps/unix/siglist.c: Likewise.
* sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.
* libio/fileops.c: Add missing INTUSEs for _IO_file_jumps.
* libio/wfileops.c: Add missing INTUSE for _IO_file_close.
* intl/dcigettext.c: Define _nl_default_dirname_internal as hidden
alias and use it.
* intl/bindtextdom.c: Use _nl_default_dirname_internal.
* include/netinet/in.h: Add declaration of in6addr_loopback_internal.
* inet/in6_addr.c: Add INTVARDEF for in6addr_loopback.
* sysdeps/posix/getaddrinfo.c: Use INTUSE for in6addr_loopback access.
* include/time.h: Add libc_hidden_proto for __gmtime_r.
* time/gmtime.c (__gmtime_r): Add libc_hidden_def.
* iconv/Versions: Replace __gconv_alias_db, __gconv_modules_db,
and __gconv_cache with __gconv_get_alias_db, __gconv_get_modules_db,
and __gconv_get_cache respectively.
* iconv/gconv_cache.c (gconv_cache): Renamed for __gconv_cache and
defined static. Change all users.
(__gconv_get_cache): New function.
* iconv/gconv_db.c (__gconv_get_modules_db): New function.
(__gconv_get_alias_db): New function.
* iconv/gconv_int.h (__gconv_alias_db): Declare as hidden.
(__conv_modules_db): Likewise.
Add prototypes for __gconv_get_cache, __gconv_get_modules_db,
and __gconv_get_alias_db.
* iconv/iconv_prog.c: Use the new functions instead of accessing the
variables.
* include/stdlib.h: Add prototype and libc_hidden_proto for
__default_morecore.
* sysdeps/generic/morecore.c: Include <stdlib.h>.
* malloc/obstack.c: Remove fputs macro.
* malloc/mtrace.c: Remove fopen macro.
* include/libc-symbols.h: Fix [__ASSEMBLY__] -> [__ASSEMBLER__].
[__ASSEMBLER__] (hidden_weak): Define using hidden_def, or to empty.
[__ASSEMBLER__] (HIDDEN_JUMPTARGET): New macro.
* sysdeps/unix/sysv/linux/i386/makecontext.S: Use it for exit.
[USE_TLS && HAVE___THREAD]: Just include the sysdeps/generic file,
which does the right thing when __thread support is available.
* descr.h (struct _pthread_descr_struct) [USE_TLS && HAVE___THREAD]:
Omit `p_libc_specific', `p_errnop', `p_errno', `p_h_errnop',
`p_h_errno', `p_resp', and `p_res' members.
* pthread.c (__pthread_initialize_minimal) [USE_TLS && HAVE___THREAD]:
Don't initialize `p_errnop' and `p_h_errnop' members.
(__pthread_reset_main_thread): Likewise.
(__pthread_initialize_manager): Likewise.
* manager.c (__pthread_manager, pthread_handle_create): Likewise.
* pthread.c (pthread_initialize) [USE_TLS && HAVE___THREAD]:
Don't initialize `p_resp' member.
(__pthread_reset_main_thread): Likewise.
* manager.c (pthread_handle_create): Likewise.
* specific.c (libc_internal_tsd_set, libc_internal_tsd_get):
Conditionalize these on [!(USE_TLS && HAVE___THREAD)].
* errno.c [USE_TLS && HAVE___THREAD]
(__h_errno_location, __res_state): Don't define these at all.
* sysdeps/i386/tls.h (INSTALL_DTV): Add parens around arguments!
(INSTALL_NEW_DTV, GET_DTV): Likewise.
* sysdeps/sh/tls.h (INSTALL_DTV, INSTALL_NEW_DTV, GET_DTV): Likewise.
* weaks.c: Don't include <errno.h> here.
2002-08-01 Roland McGrath <roland@redhat.com>
* sysdeps/i386/tls.h (TLS_DO_MODIFY_LDT): New macro, broken out of
TLS_INIT_TP.
(TLS_DO_SET_THREAD_AREA): New macro, uses thread_set_area syscall.
(TLS_SETUP_GS_SEGMENT): New macro, try one or the other or both.
(TLS_INIT_TP): Use that.
* libio/stdio.h (sys_errlist, sys_nerr, _sys_errlist, _sys_nerr):
Declarations moved to <bits/sys_errlist.h>. Include that file.
* libio/Makefile (headers): Add bits/sys_errlist.h to the list.
* sysdeps/generic/bits/sys_errlist.h: New file. This does *not*
declare sys_errlist and sys_nerr.
* sysdeps/unix/sysv/linux/bits/sys_errlist.h: New file. Does
provide declarations.
2002-07-15 Alexandre Oliva <aoliva@redhat.com>
* configure.in (static_nss): Set to `yes' if --disable-shared.
2002-07-23 Bruno Haible <bruno@clisp.org>
* intl/loadmsgcat.c (PRI*): Redefine the macros if PRI_MACROS_BROKEN
is set.
2002-07-25 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/ia64/profil-counter.h: Fix profil_counter
arguments.
2002-07-25 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/alpha/adjtime.c (__adjtimex_internal): Add
alias.
2002-07-21 Bruno Haible <bruno@clisp.org>
* intl/libintl.h (__GNU_GETTEXT_SUPPORTED_REVISION): New macro.
* intl/gettext.h (struct mo_file_header): New fields n_sysdep_segments,
sysdep_segments_offset, n_sysdep_strings, orig_sysdep_tab_offset,
trans_sysdep_tab_offset.
(struct sysdep_segment): New type.
(struct sysdep_string): New type.
(SEGMENTS_END): New macro.
* intl/gettextP.h (struct sysdep_string_desc): New type.
(struct loaded_domain): New fields malloced, n_sysdep_strings,
orig_sysdep_tab, trans_sysdep_tab, must_swap_hash_tab. Make fields
orig_tab, trans_tab, hash_tab to const pointers because they point
into read-only memory.
* intl/loadmsgcat.c: Include stdint.h, inttypes.h, hash-string.h.
(PRI*): Define fallback values.
(get_sysdep_segment_value): New function.
(_nl_load_domain): Distinguish major and minor revision parts. Add
support for minor revision 1 with system dependent strings.
(_nl_unload_domain): Also free the 'malloced' field.
* intl/dcigettext.c (_nl_find_msg): Remove test for domain->hash_size,
now done in loadmsgcat.c. Add support for system dependent strings.
This implementation supports only IPv4.
* inet/ifaddrs.h: New file.
* sysdeps/generic/ifaddrs.c: New file.
* sysdeps/gnu/ifaddrs.c: New file.
* inet/test-ifaddrs.c: New file.
* inet/Makefile (routines): Add ifaddrs.
(headers): Add ifaddrs.h here.
(tests): Add test-ifaddrs.
* inet/Versions (GLIBC_2.3): New set, add getifaddrs and freeifaddrs.
* resolv/res_hconf.c (_res_hconf_reorder_addrs): Use an explicit
socket call to get an AF_INET socket, instead of using __opensock.
The SIOCGIFNETMASK ioctl will work only with a PF_INET socket.
* sysdeps/generic/ifreq.h (__ifreq): Take third argument SOCKFD,
if not -1 use it instead of calling __opensock.
* sysdeps/unix/sysv/linux/ifreq.h (__ifreq): Likewise.
* sysdeps/mach/hurd/ifreq.h (__ifreq): Take new argument and ignore it.
* resolv/res_hconf.c (_res_hconf_reorder_addrs): Pass new argument.
* sysdeps/mach/hurd/ifreq.h: New file.
* sysdeps/generic/ifreq.h (__if_freereq): Take second argument NUM_IFS.
* sysdeps/unix/sysv/linux/ifreq.h (__if_freereq): Likewise.
* resolv/res_hconf.c (_res_hconf_reorder_addrs): Update caller.
2002-07-24 Philip Blundell <philb@gnu.org>
* sysdeps/unix/arm/brk.S: Improve schedule.
* sysdeps/unix/sysv/linux/arm/socket.S (PUSHARGS_1): Use more
efficient instruction.
(__socket): Optimize return sequence.
* locale/hashval.h: Make more self-contained by defining LONG_BITS.
2002-07-22 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/errlist.c: Remove extra weak alias
definiton of _old_sys_nerr. Define _old_sys_errlist as strong
alias.
* sysdeps/unix/sysv/linux/ldsodefs.h (HAVE_AUX_XID): Define if
__ASSUME_AT_XID is defined.
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_XID): Define
for 2.4.1 and up.
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Optimize handling
of AT_UID, AT_EUID, AT_GID, and AT_EGID.
2002-07-18 Jakub Jelinek <jakub@redhat.com>
* resource/sys/resource.h (__rlimit_resource_t, __rusage_who_t,
__priority_which_t): Always typedef to int for C++.
2002-07-02 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/atomicity.h: Don't include <sgidefs.h>. Always
use ll/sc.
* sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
* sysdeps/unix/sysv/linux/configure.in: Set arch_minimum_kernel
to 2.4.0 for mips.
TLS fail if USE_TLS is not defined.
2002-07-06 Bruno Haible <bruno@clisp.org>
* sysdeps/i386/fpu/libm-test-ulps: Add some ulps for AMD K7.
* rt/Makefile (tests): Don't add tst-aio* in a single-threaded build.
* sysdeps/unix/bsd/sun/sunos4/bits/utsname.h: Test for _SYS_UTSNAME_H,
not _UTSNAME_H.
* sysdeps/unix/bsd/ultrix4/bits/utsname.h: Likewise.
* sysdeps/generic/bits/stropts.h: Protect against direct inclusion.
* sysdeps/generic/bits/ustat.h: Likewise.
* sysdeps/unix/sysv/linux/bits/statvfs.h (ST_NODIRATIME): Set to
2048.
2002-05-17 David S. Miller <davem@redhat.com>
* sysdeps/unix/sysv/linux/sparc/fork.S: Define _internal aliases.
2002-05-16 David S. Miller <davem@redhat.com>
* sysdeps/sparc/sparc32/dl-machine.h (LOAD_PIC_REG): Define.
(elf_machine_dynamic): Use it to force PIC register to be loaded.
(elf_machine_load_address): Likewise.
* sysdeps/sparc/sparc64/dl-machine.h: Mirror sparc32 changes.
* sysdeps/sparc/sparc64/strncmp.S: When second argument pointer
is unaligned, do not forget to fully initialize %g1 magic value.
* sysdeps/unix/sysv/linux/sparc/sys/procfs.h: Fix 64-bit elf
register definitions and provide 32-bit variants of structures
during 64-bit builds.
* soft-fp/op-1.h (_FP_FRAC_CLEAR_OVERP_1): Define.
* soft-fp/op-2.h (_FP_FRAC_CLEAR_OVERP_2): Define.
* soft-fp/op-4.h (_FP_FRAC_CLEAR_OVERP_4): Define.
* soft-fp/op-common.h (_FP_PACK_CANONICAL): After rounding, if
_FP_FRAC_OVERP_X is set, use _FP_FRAC_CLEAR_OVERP_X to clear it.
(_FP_FROM_INT): Perform right shifts on unsigned integer type.
Do not clear implicit one bit here, it must be done post-rounding.
Only pad to the left using left shift if value uses less than the
available fractional bits.
2002-05-12 Bruno Haible <bruno@clisp.org>
* iconvdata/testdata/EUC-JISX0213: New file.
* iconvdata/testdata/EUC-JISX0213..UTF8: New file.
* iconvdata/testdata/SHIFT_JISX0213: New file.
* iconvdata/testdata/SHIFT_JISX0213..UTF8: New file.
* iconvdata/testdata/ISO-2022-JP-3: New file.
* iconvdata/testdata/ISO-2022-JP-3..UTF8: New file.
* iconvdata/TESTS: Add EUC-JISX0213, SHIFT_JISX0213, ISO-2022-JP-3.
* iconvdata/run-iconv-test.sh: Skip the charmap test if the charmap
contains comments indicating precomposed characters.
2002-04-21 Bruno Haible <bruno@clisp.org>
* iconvdata/iso-2022-jp-3.c: New file.
* iconvdata/gconv-modules (ISO-2022-JP-3): New module.
* iconvdata/Makefile (modules): Add ISO-2022-JP-3.
(LDFLAGS-ISO-2022-JP-3.so): New variable.
(ISO-2022-JP-3.so): Depend on libJIS.so and libJISX0213.so.
(distribute): Add iso-2022-jp-3.c.
2002-05-12 Bruno Haible <bruno@clisp.org>
* iconvdata/tst-table-to.c (main): Restore handling of
transliterations, broken by last patch.
2002-05-12 Bruno Haible <bruno@clisp.org>
* iconvdata/TESTS: Add IBM922, IBM1124, IBM1129.
2002-05-12 Bruno Haible <bruno@clisp.org>
* iconvdata/euc-jisx0213.c (BODY for FROM_LOOP): Don't advance inptr
when there is not enough room in the output buffer.
* iconvdata/shift_jisx0213.c (BODY for FROM_LOOP): Likewise.
2002-04-20 Bruno Haible <bruno@clisp.org>
* iconv/skeleton.c ({FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}): New
macros.
(RESET_INPUT_BUFFER): Use them instead of {MIN,MAX}_NEEDED_{FROM,TO}.
Also make this macro work if FROM_DIRECTION evaluates to 0.
(gconv_init): Use the new macros instead of {MIN,MAX}_NEEDED_{FROM,TO}.
(FUNCTION_NAME): Likewise, in the handling of unaligned accesses and
of consume_incomplete.
* iconvdata/cp1255.c: Define {FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}
instead of {MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_TO to
4, not 8.
* iconvdata/cp1258.c: Likewise.
* iconvdata/ibm930.c: Define {FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}
instead of {MIN,MAX}_NEEDED_{FROM,TO}. Set TO_LOOP_MAX_NEEDED_TO to 3,
not 2.
* iconvdata/ibm933.c: Likewise.
* iconvdata/ibm935.c: Likewise.
* iconvdata/ibm937.c: Likewise.
* iconvdata/ibm939.c: Likewise.
* iconvdata/iso-2022-cn.c: Define
{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
{MIN,MAX}_NEEDED_{FROM,TO}. Set TO_LOOP_MAX_NEEDED_TO to 6, not 4.
* iconvdata/iso-2022-cn-ext.c: Likewise.
* iconvdata/iso-2022-jp.c: Define
{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
{MIN,MAX}_NEEDED_{FROM,TO}.
* iconvdata/tcvn5712-1.c: Define
{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
{MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_FROM to 1, not 2.
* iconvdata/euc-jisx0213.c: Define
{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
{MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_TO to 8, not 4.
* iconvdata/shift_jisx0213.c: Likewise.
2002-05-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/powerpc/Makefile (sysdeps_routines): Add divdi3, cmpdi2,
shdi3, fixdfdi, fixsfdi in csu dir.
(shared-only-routines): Likewise.
* sysdeps/wordsize-32/cmpdi2.c: New file.
* sysdeps/wordsize-32/shdi3.c: New file.
* sysdeps/wordsize-32/fixdfdi.c: New file.
* sysdeps/wordsize-32/fixsfdi.c: New file.
* sysdeps/powerpc/Versions (__divdi3, __moddi3, __udivdi3, __umoddi3,
__ashldi3, __ashrdi3, __lshrdi3, __cmpdi2, __ucmpdi2, __fixdfdi,
__fixsfdi, __fixunsdfdi, __fixunssfdi): Export at GLIBC_2.0.
* sysdeps/unix/sysv/linux/semctl.c (__old_semctl, __new_semctl):
Only use va_arg if the argument will be used [PR libc/3259].
2002-05-06 Michael A. Schmidt <mmaass@us.ibm.com>
* catgets/catgets.c (catopen): Free buffer if internal catalog
open fails.
2002-05-14 Ulrich Drepper <drepper@redhat.com>
* debug/xtrace.sh: Make more robust. For realtime tracking use
non-buffering methods.
* debug/pcprofiledump.c: Implement -u option.
Patch by Roger Luethi <rl@hellgate.ch>.
2002-04-27 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ia64/fxstat.c: Fix a few issues with the
_internal symbol handling.
* sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
2002-04-26 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c (re_compile_fastmap_iter): Fix fastmap in case of
not _LIBC and RE_ENABLE_I18N.
(build_range_exp): Implement for not _LIBC.
(build_collating_symbol): Likewise.
(parse_bracket_exp): Unify redundant error handlings.
Don't erase mbcset for non matching list in multibyte envs.
(build_word_op): Add '_' to matching list for \w operator.
* posix/regex_internal.c (re_string_construct): Invoke
build_upper_buffer in case of not RE_ENABLE_I18N.
(re_string_reconstruct): Don't touch cur_state in case of not
RE_ENABLE_I18N.
* posix/regex_internal.h (attribute_hidden): New macro in case of
not _LIBC.
(re_charset_t): Define range_starts/ends in case of not _LIBC.
* posix/regexec.c (sift_states_iter_mb): Hide in case of not
RE_ENABLE_I18N.
(transit_state_mb): Likewise.
(check_node_accept_bytes): Implement the code evaluating range
expression in case of not _LIBC.
(find_collation_sequence_value): Hide in case of not _LIBC.
2002-04-26 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c: Copied from
i386/semctl.c.
(__old_semctl, __new_semctl): Only use va_arg if the argument will
be used.
2002-04-18 Bruno Haible <bruno@clisp.org>
* iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT, BODY for
FROM_DIRECTION): Make the FROM direction stateless.
* iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT, BODY for
FROM_DIRECTION): Likewise.
* iconvdata/cvs11643l1.c: Update comments.
* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
* include/sys/socket.h: Declare __libc_sa_len_internal and define
SA_LEN macro to use it if not NOT_IN_libc.
* sysdeps/unix/sysv/linux/sa_len.c: Use INTDEF for __libc_sa_len.
* include/fcntl.h: Declare __open_internal and define __open and
__libc_open macros if not NOT_IN_libc.
* sysdeps/generic/open.c: Use INTDEF for __open.
* sysdeps/mach/hurd/open.c: Likewise.
* sysdeps/unix/sysv/aix/open.c: Likewise.
* sysdeps/unix/syscalls.list: Add __open_internal alias.
* sysdeps/generic/check_fds.c: Make sure newly opened file descriptor
has correct number.
* include/fcntl.h: Define __libc_fcntl macro if not NOT_IN_libc.
* sysdeps/mach/hurd/fcntl.c: Undefine __libc_fcntl as well.
* sysdeps/unix/sysv/aix/fcntl.c: Likewise.
* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
* include/wctype.h: Declare __iswalpha_l_internal,
__iswdigit_l_internal, __iswspace_l_internal,
__iswxdigit_l_internal, and __iswctype_internal. Define
__iswalpha_l, __iswctype, __iswdigit_l, __iswspace_l, and
__iswxdigit_l macros if not NOT_IN_libc.
* wctype/iswctype.c: Use INTDEF for __iswctype.
* wctype/wcfuncs_l.c: Use INTDEF for all __iswXXX_l.
* sysdeps/mach/hurd/chown.c: Use INTDEF for __chown.
* sysdeps/unix/sysv/aix/chown.c: Likewise.
* sysdeps/unix/grantpt.c: Use INTUSE for __chown calls.
* sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
* sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define
__chown_internal.
* sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise.
* intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext.
* intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE.
* intl/ngettext.c: Likewise.
* include/sys/socket.h: Declare __connect_internal and define
__connect macro if not NOT_IN_libc.
* sysdeps/mach/hurd/connect.c: Use INTDEF for __connect.
* sysdeps/unix/sysv/aix/connect.c: Likewise.
* sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias.
* include/unistd.h: Declare __close_internal and define __close macro
if not NOT_IN_libc.
* libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2,
WJUMP3): Add extra parenthesis to avoid expanding element names with
macors like __close.
* sysdeps/unix/syscalls.list: Add __close_internal alias.
* include/unistd.h: Declare __dup2_internal and define __dup2 macro
if not NOT_IN_libc.
* sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2.
* sysdeps/posix/dup2.c: Use INTDEF for __dup2.
* sysdeps/unix/syscalls.list: Add __dup2_internal alias.
* include/unistd.h: Declare __fork_internal and define __fork macro
if not NOT_IN_libc.
* sysdeps/mach/hurd/fork.c: Use INTDEF for __fork.
* sysdeps/unix/sysv/aix/fork.c: Likewise.
* sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias.
* include/stdio_ext.h: Declare __fsetlocking_internal and define
__fsetlocking macro to use it if not NOT_IN_libc.
* libio/__fsetlocking.c: Use INTDEF for __fsetlocking.
* libio/__fbufsize.c: Correct copyright.
* libio/__flbf.c: Likewise.
* libio/__fpending.c: Likewise.
* libio/__fpurge.c: Likewise.
* libio/__freadable.c: Likewise.
* libio/__freading.c: Likewise.
* libio/__fsetlocking.c: Likewise.
* libio/__fwritable.c: Likewise.
* libio/__fwriting.c: Likewise.
* include/stdio.h: Declare __asprintf_internal and define __asprintf
macro to use it if not NOT_IN_libc.
* stdio-common/asprintf.c: Use INTDEF for __asprintf.
* include/mntent.h: Declare __setmntent_internal,
__getmntent_r_internal, __endmntent_internal. Define __setmntent,
__getmntent_r, and __endmntent macros to use these functions if not
NOT_IN_libc.
* misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and
__endmntent.
* include/math.h: Declare __finite_internal, __finitef_internal, and
__finitel_internal. Redefine isfinite macro if in libc or libm using
these functions.
* sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls.
* sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls.
* sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls.
* sysdeps/i386/fpu/s_finite.S: Define _internal alias.
* sysdeps/i386/fpu/s_finitef.S: Likewise.
* sysdeps/i386/fpu/s_finitel.S: Likewise.
* sysdeps/ieee754/dbl-64/s_finite.c: Likewise.
* sysdeps/ieee754/flt-32/s_finitef.c: Likewise.
* sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise.
* sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise.
* include/fcntl.h: Declare __fcntl_internal. Define __fcntl macro
to use this function if not NOT_IN_libc.
* libio/iofdopen.c (_IO_fcntl): Use INTUSE.
* sysdeps/generic/fcntl.c: Use INTDEF for __fcntl.
* sysdeps/mach/hurd/fcntl.c: Likewise.
* sysdeps/unix/sysv/aix/fcntl.c: Likewise.
* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
* include/argz.h: Declare __argz_count_internal and
__argz_stringify_internal.
* intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and
__argz_stringify.
* string/argz-count.c: Use INTDEF for __argz_count.
* string/argz-stringify.c: Use INTDEF for __argz_stringify.
* include/stdlib.h: Declare __cxa_atexit_internal and define
__cxa_atexit macro if not NOT_IN_libc.
* stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit.
* dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c.
* assert/assert.c: Use INTDEF for __assert_fail.
* assert/__assert.c: Use INTUSE for call to __assert_fail.
* include/assert.h: Declare __assert_fail_internal.
2002-04-04 Andreas Jaeger <aj@suse.de>
* sysdeps/x86_64/fpu/e_sqrt.c: New file.
* sysdeps/x86_64/fpu/e_sqrtf.c: New file.
* sysdeps/x86_64/fpu/s_fabs.c: New file.
* sysdeps/x86_64/fpu/s_fabsf.c: New file.
* sysdeps/x86_64/fpu/s_fabsl.c: New file.
* sysdeps/unix/sysv/linux/x86_64/time.S: New file.
* sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: New file.
* sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/time.S: Removed.
* configure.in: Handle all mips entries the same.
* sysdeps/mips/dec/bits/endian.h: Removed since arch is not
supported.
* sysdeps/mips/mips3/*: Likewise.
* sysdeps/mips/p40/bits/endian.h: Likewise.
2002-03-21 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h (struct
_fpstate): Add separate struct for x86-64.
* sysdeps/unix/sysv/linux/x86_64/sys/user.h (struct
user_fpregs_struct): Change member names to follow kernel.
2002-03-13 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ttyname.c: Comment out definition and
use of __ttyname.
* posix/regcomp.c (__re_error_msgid): Renamed from re_error_msgid.
Define as hidden.
(__re_error_msgid_idx): Renamed from re_error_msgid_idx. Define as
hidden. Change all users of these variables.
* posix/regex_internal.h (__re_error_msgid): Renamed from
re_error_msgid. Declare as hidden.
(__re_error_msgid_idx): Renamed from re_error_msgid_idx. Declare as
hidden.
* stdio-common/reg-printf.c (__printf_arginfo_table): Define as hidden.
(__printf_function_table): Likewise.
* stdio-common/printf-parse.h (__printf_arginfo_table): Declare as
hidden.
(__printf_function_table): Likewise.
* nscd/nscd_proto.h: Declare __nss_not_use_nscd_passwd,
__nss_not_use_nscd_group, and __nss_not_use_nscd_hosts as hidden.
* nss/XXX-lookup.c (DATABASE_NAME_SYMBOL): Define as hidden.
* nss/nsswitch.c: Declare _nss_*_database as hidden.
* stdlib/wctomb.c (__no_r_state): Declare as hidden.
* stdlib/mbtowc.c (__no_r_state): Define as hidden.
2002-03-11 Ulrich Drepper <drepper@redhat.com>
* gmon/Makefile (elide-routines.os): Add bb_init_func and bb_exit_func.
They were never exported anyway.
* gmon/gmon.c (_gmonparam): Add attribute_hidden.
* gmon/sys/gmon.h: Remove declaration of _gmonparam. It wasn't
exported.
* include/sys/gmon.h: Declare _gmonparam.
* sysdeps/unix/sysv/linux/i386/getdents64.c: Don't define compatibility
symbols for getdents64. They were never exported.
2002-03-03 Andreas Jaeger <aj@suse.de>
* elf/nodlopenmod2.c: Provide prototype to avoid warning.
* elf/tst-tlsmod1.c: Likewise.
* posix/regcomp.c: Get regex.h from include dir for internal
prototypes.
* sysdeps/unix/sysv/linux/init-first.c: Move __init_misc prototype
to libc-internal.h and include it.
* include/libc-internal.h: Add __init_misc.
* misc/init-misc.c: Include libc-internal.h for prototypes.
* sysdeps/wordsize-32/divdi3.c: Add prototypes to avoid warnings.
* misc/error.c [_LIBC]: Include libioP.h for prototype of
_IO_putc_internal.
2002-02-14 Ulrich Drepper <drepper@redhat.com>
* stdlib/test-a64l.c (tests): Add more test cases.
* sunrpc/rtime.c (rtime): Change type of thetime to uint32_t.
Reported by Walter Harms <WHarms@bfs.de>.
2002-02-11 Jes Sorensen <jes@trained-monkey.org>
* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Add sc_flag bit
definitions for struct sigcontext.
Suggested by David Mosberger-Tang.
2001-11-15 H.J. Lu <hjl@gnu.org>
* sysdeps/unix/sysv/linux/mips/sys/procfs.h: Don't include
<signal.h>, <sys/ucontext.h> nor <asm/elf.h>. Updated for gdb.
* sysdeps/unix/sysv/linux/mips/sys/user.h: New.
2002-02-07 Andreas Schwab <schwab@suse.de>
* configure.in: Fix check for -zcombreloc.
2002-02-06 H.J. Lu <hjl@gnu.org>
* config.h.in (HAVE_BUILTIN_MEMSET): New.
* configure.in: Check if __builtin_memset really works.
* elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of
__GNUC_PREREQ (2, 96) before using __builtin_memset.
2002-02-06 Jakub Jelinek <jakub@redhat.com>
* io/bug-ftw3.c (main): Don't try the test if root.
2002-02-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly
constraints.
* sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS):
Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS.
* sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS):
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone
a weak alias for __clone.
* sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo.
* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate.
* sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file.
* sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap
a weak alias for __mmap64.
* sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely.
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
* sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
2002-02-01 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/atomicity.h (exchange_and_add): Use branch
likely.
(atomic_add): Likewise.
(compare_and_swap): Return 0 only when failed to compare. Use
branch likely.
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Use
branch likely.
2002-02-03 kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/dl-machine.h (elf_machine_rela): Fix a typo.
2002-02-02 Ulrich Drepper <drepper@redhat.com>
* elf/dl-minimal.c (__strsep): New minimal implementation.
* elf/dl-object.c (_dl_new_object): Avoid using strrchr. We have
more information.
* elf/rtld.c (dl_main): Avoid strrchr.
* sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use the
result of readlink. Search from the back for '/'.
2002-01-23 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/Makefile (pic-ccflag): New variable.
2002-01-28 Ulrich Drepper <drepper@redhat.com>
* string/strxfrm.c: Allocate one more byte for rulearr and clear
this element [PR libc/2855].
* string/strcoll.c: Handle zero-length arguments specially
[PR libc/2856].
2002-01-23 Jakub Jelinek <jakub@redhat.com>
* string/bits/string2.h (__mempcpy): For gcc 3.0+, don't use
__mempcpy_small but instead use __builtin_memcpy ( , , n) + n for
short lengths and constant src.
(strcpy): Don't optimize for gcc 3.0+.
(__stpcpy): For gcc 3.0+, don't use
__stpcpy_small but instead use __builtin_strcpy (, src) + strlen (src)
for short string literal src.
2002-01-23 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
* sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
Set for arm, too.
2001-01-22 Paul Eggert <eggert@twinsun.com>
* manual/llio.texi (Linked Channels, Cleaning Streams):
Make it clearer that a just-opened input stream might need cleaning.
2002-01-21 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC):
Don't use label at end of compound statement.
2001-12-31 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Always use C
locale to parse /proc/loadavg.
2001-12-31 Jakub Jelinek <jakub@redhat.com>
* elf/dl-conflict.c: Include sys/param.h.
(RESOLVE_CONFLICT_FIND_MAP): Cast r_offset to ElfW(Addr).
* sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Avoid
warning.
(TRAMPOLINE_TEMPLATE, RTLD_START): Don't use multi-line string
literals to avoid warnings.
* configure.in: Don't check for gsed since we do not use it anywhere.
2001-12-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/profil-counter.h: Move/copy to ...
* sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: ... here,
remove high order bit from the program counter.
* sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h: ... and here.
2001-12-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove
unnecessary code and add missing reloc types.
* sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Add empty
case for reloc type R_390_NONE.
2001-12-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (clone): Subtract
stack bias from child stack pointer before passing it to clone syscall.
2001-12-18 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/sysconf.c (__sysconf): Respect POSIX minimum for
_SC_TZNAME_MAX.
* sysdeps/generic/sysconf.c (__sysconf): Likewise.
Reported by Thorsten Kukuk <kukuk@suse.de>.
* sysdeps/unix/grantpt.c (grantpt): Correct typo in comment and
add some casts.
* sysdeps/unix/sysv/linux/grantpt.c: Make __unix_grantpt static.
2001-12-18 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/unix/sysv/linux/grantpt.c: Make errno results standard
conforming: return EBADF if file descriptor is invalid and EINVAL
if file descriptor is no valid tty.
* login/tst-grantpt.c: New file.
* login/Makefile (tests): Add tst-grantpt.