mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-22 19:00:07 +00:00
Update.
* sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date alse if only PF_INET address is needed. * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in case of an error.
This commit is contained in:
parent
ad316adfa6
commit
2ce1a10fd6
@ -1,5 +1,11 @@
|
|||||||
2003-06-12 Ulrich Drepper <drepper@redhat.com>
|
2003-06-12 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date alse
|
||||||
|
if only PF_INET address is needed.
|
||||||
|
|
||||||
|
* nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
|
||||||
|
case of an error.
|
||||||
|
|
||||||
* scripts/config.guess: Update from upstream version.
|
* scripts/config.guess: Update from upstream version.
|
||||||
* scripts/config.sub: Likewise.
|
* scripts/config.sub: Likewise.
|
||||||
|
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
2003-06-12 Steven Munroe <sjmunroe@us.ibm.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
|
||||||
|
(SINGLE_THREAD_P): Replace @ got notation with @toc.
|
||||||
|
|
||||||
2003-06-11 Ulrich Drepper <drepper@redhat.com>
|
2003-06-11 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
* sysdeps/powerpc/pspinlock.c (__pthread_spin_init): Fix
|
* sysdeps/powerpc/pspinlock.c (__pthread_spin_init): Fix
|
||||||
|
@ -89,7 +89,11 @@ extern int __local_multiple_threads attribute_hidden;
|
|||||||
# define SINGLE_THREAD_P __builtin_expect (__local_multiple_threads == 0, 1)
|
# define SINGLE_THREAD_P __builtin_expect (__local_multiple_threads == 0, 1)
|
||||||
# else
|
# else
|
||||||
# define SINGLE_THREAD_P \
|
# define SINGLE_THREAD_P \
|
||||||
ld 10,__local_multiple_threads@got(2); \
|
.section ".toc","aw"; \
|
||||||
|
.LC__local_multiple_threads:; \
|
||||||
|
.tc __local_multiple_threads[TC],__local_multiple_threads; \
|
||||||
|
.previous; \
|
||||||
|
ld 10,.LC__local_multiple_threads@toc(2); \
|
||||||
ld 10,0(10); \
|
ld 10,0(10); \
|
||||||
cmpdi 10,0
|
cmpdi 10,0
|
||||||
# endif
|
# endif
|
||||||
|
@ -247,12 +247,14 @@ done:
|
|||||||
#ifdef POSTPROCESS
|
#ifdef POSTPROCESS
|
||||||
POSTPROCESS;
|
POSTPROCESS;
|
||||||
#endif
|
#endif
|
||||||
return (status != NSS_STATUS_TRYAGAIN ? 0
|
return (status == NSS_STATUS_SUCCESS ? 0
|
||||||
|
: (status != NSS_STATUS_TRYAGAIN
|
||||||
#ifdef NEED_H_ERRNO
|
#ifdef NEED_H_ERRNO
|
||||||
/* These functions only set errno if h_errno is NETDB_INTERNAL. */
|
/* These functions only set errno if h_errno is
|
||||||
: *h_errnop != NETDB_INTERNAL ? EAGAIN
|
NETDB_INTERNAL. */
|
||||||
|
&& *h_errnop == NETDB_INTERNAL
|
||||||
#endif
|
#endif
|
||||||
: errno);
|
? errno : EAGAIN));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -671,7 +671,10 @@ gaih_inet (const char *name, const struct gaih_service *service,
|
|||||||
no_inet6_data = no_data;
|
no_inet6_data = no_data;
|
||||||
}
|
}
|
||||||
else if (req->ai_family == AF_INET)
|
else if (req->ai_family == AF_INET)
|
||||||
gethosts (AF_INET, struct in_addr);
|
{
|
||||||
|
gethosts (AF_INET, struct in_addr);
|
||||||
|
no_inet6_data = no_data;
|
||||||
|
}
|
||||||
|
|
||||||
if (no_data != 0 && no_inet6_data != 0)
|
if (no_data != 0 && no_inet6_data != 0)
|
||||||
{
|
{
|
||||||
|
@ -239,6 +239,18 @@ elf_machine_dynamic (void)
|
|||||||
"_dl_start_user:\n" \
|
"_dl_start_user:\n" \
|
||||||
" .quad ._dl_start_user, .TOC.@tocbase, 0\n" \
|
" .quad ._dl_start_user, .TOC.@tocbase, 0\n" \
|
||||||
" .previous\n" \
|
" .previous\n" \
|
||||||
|
" .section \".toc\",\"aw\"\n" \
|
||||||
|
".LC__dl_starting_up:\n" \
|
||||||
|
" .tc _dl_starting_up_internal[TC],_dl_starting_up_internal\n" \
|
||||||
|
".LC__rtld_global:\n" \
|
||||||
|
" .tc _rtld_global[TC],_rtld_global\n" \
|
||||||
|
".LC__dl_argc:\n" \
|
||||||
|
" .tc _dl_argc[TC],_dl_argc\n" \
|
||||||
|
".LC__dl_argv:\n" \
|
||||||
|
" .tc _dl_argv_internal[TC],_dl_argv_internal\n" \
|
||||||
|
".LC__dl_fini:\n" \
|
||||||
|
" .tc _dl_fini[TC],_dl_fini\n" \
|
||||||
|
" .previous\n" \
|
||||||
" .globl ._dl_start_user\n" \
|
" .globl ._dl_start_user\n" \
|
||||||
" .type ._dl_start_user,@function\n" \
|
" .type ._dl_start_user,@function\n" \
|
||||||
/* Now, we do our main work of calling initialisation procedures. \
|
/* Now, we do our main work of calling initialisation procedures. \
|
||||||
@ -250,9 +262,9 @@ elf_machine_dynamic (void)
|
|||||||
/* the address of _start in r30. */ \
|
/* the address of _start in r30. */ \
|
||||||
" mr 30,3\n" \
|
" mr 30,3\n" \
|
||||||
/* &_dl_argc in 29, &_dl_argv in 27, and _dl_loaded in 28. */ \
|
/* &_dl_argc in 29, &_dl_argv in 27, and _dl_loaded in 28. */ \
|
||||||
" ld 28,_rtld_global@got(2)\n" \
|
" ld 28,.LC__rtld_global@toc(2)\n" \
|
||||||
" ld 29,_dl_argc@got(2)\n" \
|
" ld 29,.LC__dl_argc@toc(2)\n" \
|
||||||
" ld 27,_dl_argv@got(2)\n" \
|
" ld 27,.LC__dl_argv@toc(2)\n" \
|
||||||
/* _dl_init (_dl_loaded, _dl_argc, _dl_argv, _dl_argv+_dl_argc+1). */ \
|
/* _dl_init (_dl_loaded, _dl_argc, _dl_argv, _dl_argv+_dl_argc+1). */ \
|
||||||
" ld 3,0(28)\n" \
|
" ld 3,0(28)\n" \
|
||||||
" lwa 4,0(29)\n" \
|
" lwa 4,0(29)\n" \
|
||||||
@ -279,8 +291,8 @@ elf_machine_dynamic (void)
|
|||||||
" addi 6,6,8\n" \
|
" addi 6,6,8\n" \
|
||||||
/* Pass a termination function pointer (in this case _dl_fini) in \
|
/* Pass a termination function pointer (in this case _dl_fini) in \
|
||||||
r7. */ \
|
r7. */ \
|
||||||
" ld 7,_dl_fini@got(2)\n" \
|
" ld 7,.LC__dl_fini@toc(2)\n" \
|
||||||
" ld 26,_dl_starting_up@got(2)\n" \
|
" ld 26,.LC__dl_starting_up@toc(2)\n" \
|
||||||
/* Pass the stack pointer in r1 (so far so good), pointing to a NULL \
|
/* Pass the stack pointer in r1 (so far so good), pointing to a NULL \
|
||||||
value. This lets our startup code distinguish between a program \
|
value. This lets our startup code distinguish between a program \
|
||||||
linked statically, which linux will call with argc on top of the \
|
linked statically, which linux will call with argc on top of the \
|
||||||
|
@ -34,11 +34,16 @@
|
|||||||
.pushsection; \
|
.pushsection; \
|
||||||
.section ".data"; \
|
.section ".data"; \
|
||||||
.align ALIGNARG(2); \
|
.align ALIGNARG(2); \
|
||||||
0: .long 0; \
|
__mcount: \
|
||||||
|
.long 0; \
|
||||||
|
.previous; \
|
||||||
|
.section ".toc","aw"; \
|
||||||
|
.LC__mcount:; \
|
||||||
|
.tc __mcount[TC],__mcount; \
|
||||||
.previous; \
|
.previous; \
|
||||||
mflr r0; \
|
mflr r0; \
|
||||||
std r0,16(r1); \
|
std r0,16(r1); \
|
||||||
ld r0,0b@got(r2); \
|
ld r0,.LC__mcount@toc(r2); \
|
||||||
bl JUMPTARGET(_mcount);
|
bl JUMPTARGET(_mcount);
|
||||||
#else /* SYSV_ELF_PROFILING */
|
#else /* SYSV_ELF_PROFILING */
|
||||||
#define CALL_MCOUNT \
|
#define CALL_MCOUNT \
|
||||||
@ -52,11 +57,16 @@
|
|||||||
.pushsection; \
|
.pushsection; \
|
||||||
.section ".data"; \
|
.section ".data"; \
|
||||||
.align ALIGNARG(2); \
|
.align ALIGNARG(2); \
|
||||||
0: .long 0; \
|
__mcount: \
|
||||||
|
.long 0; \
|
||||||
|
.previous; \
|
||||||
|
.section ".toc","aw"; \
|
||||||
|
.LC__mcount:; \
|
||||||
|
.tc __mcount[TC],__mcount; \
|
||||||
.previous; \
|
.previous; \
|
||||||
mflr r0; \
|
mflr r0; \
|
||||||
std r0,16(r1); \
|
std r0,16(r1); \
|
||||||
ld r0,0b@got(r2); \
|
ld r0,.LC__mcount@toc(r2); \
|
||||||
bl JUMPTARGET(_mcount);
|
bl JUMPTARGET(_mcount);
|
||||||
#else /* SYSV_ELF_PROFILING */
|
#else /* SYSV_ELF_PROFILING */
|
||||||
#define CALL_MCOUNT \
|
#define CALL_MCOUNT \
|
||||||
|
@ -24,6 +24,9 @@
|
|||||||
#include <bp-asm.h>
|
#include <bp-asm.h>
|
||||||
|
|
||||||
.comm __curbrk,8,8
|
.comm __curbrk,8,8
|
||||||
|
.section ".toc","aw"
|
||||||
|
.LC__curbrk:
|
||||||
|
.tc __curbrk[TC],__curbrk
|
||||||
.section ".text"
|
.section ".text"
|
||||||
ENTRY (BP_SYM (__brk))
|
ENTRY (BP_SYM (__brk))
|
||||||
DISCARD_BOUNDS (r3) /* the bounds are meaningless, so toss 'em. */
|
DISCARD_BOUNDS (r3) /* the bounds are meaningless, so toss 'em. */
|
||||||
@ -32,7 +35,7 @@ ENTRY (BP_SYM (__brk))
|
|||||||
std r3,48(r1)
|
std r3,48(r1)
|
||||||
DO_CALL(SYS_ify(brk))
|
DO_CALL(SYS_ify(brk))
|
||||||
ld r6,48(r1)
|
ld r6,48(r1)
|
||||||
ld r5,__curbrk@got(r2)
|
ld r5,.LC__curbrk@toc(r2)
|
||||||
std r3,0(r5)
|
std r3,0(r5)
|
||||||
cmpld r6,r3
|
cmpld r6,r3
|
||||||
addi r1,r1,64
|
addi r1,r1,64
|
||||||
|
Loading…
Reference in New Issue
Block a user