Update.
* elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily duplicated variable c. * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL if possible. Add hack to prevent the compiler from clobbering the signal context.
This commit is contained in:
parent
f44476711d
commit
cc12f2a442
10
ChangeLog
10
ChangeLog
@ -1,15 +1,17 @@
|
||||
2002-10-11 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use
|
||||
INTERNAL_SYSCALL is possible.
|
||||
* elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
|
||||
duplicated variable c.
|
||||
|
||||
* sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
|
||||
if possible.
|
||||
|
||||
* sysdeps/unix/sysv/linux/i386/sysdep.h
|
||||
(INTERNAL_SYSCALL_ERROR_P): New define.
|
||||
(INTERNAL_SYSCALL_ERRNO): Likewise.
|
||||
|
||||
* sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
|
||||
Add hack to prevent the compiler from clobbering the signal
|
||||
context.
|
||||
Add hack to prevent the compiler from clobbering the signal context.
|
||||
|
||||
2002-10-11 Roland McGrath <roland@redhat.com>
|
||||
|
||||
|
@ -916,29 +916,27 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp,
|
||||
goto call_lose;
|
||||
}
|
||||
|
||||
{
|
||||
struct loadcmd *c = &loadcmds[nloadcmds++];
|
||||
c->mapstart = ph->p_vaddr & ~(ph->p_align - 1);
|
||||
c->mapend = ((ph->p_vaddr + ph->p_filesz + GL(dl_pagesize) - 1)
|
||||
& ~(GL(dl_pagesize) - 1));
|
||||
c->dataend = ph->p_vaddr + ph->p_filesz;
|
||||
c->allocend = ph->p_vaddr + ph->p_memsz;
|
||||
c->mapoff = ph->p_offset & ~(ph->p_align - 1);
|
||||
c = &loadcmds[nloadcmds++];
|
||||
c->mapstart = ph->p_vaddr & ~(ph->p_align - 1);
|
||||
c->mapend = ((ph->p_vaddr + ph->p_filesz + GL(dl_pagesize) - 1)
|
||||
& ~(GL(dl_pagesize) - 1));
|
||||
c->dataend = ph->p_vaddr + ph->p_filesz;
|
||||
c->allocend = ph->p_vaddr + ph->p_memsz;
|
||||
c->mapoff = ph->p_offset & ~(ph->p_align - 1);
|
||||
|
||||
/* Optimize a common case. */
|
||||
/* Optimize a common case. */
|
||||
#if (PF_R | PF_W | PF_X) == 7 && (PROT_READ | PROT_WRITE | PROT_EXEC) == 7
|
||||
c->prot = (PF_TO_PROT
|
||||
>> ((ph->p_flags & (PF_R | PF_W | PF_X)) * 4)) & 0xf;
|
||||
c->prot = (PF_TO_PROT
|
||||
>> ((ph->p_flags & (PF_R | PF_W | PF_X)) * 4)) & 0xf;
|
||||
#else
|
||||
c->prot = 0;
|
||||
if (ph->p_flags & PF_R)
|
||||
c->prot |= PROT_READ;
|
||||
if (ph->p_flags & PF_W)
|
||||
c->prot |= PROT_WRITE;
|
||||
if (ph->p_flags & PF_X)
|
||||
c->prot |= PROT_EXEC;
|
||||
c->prot = 0;
|
||||
if (ph->p_flags & PF_R)
|
||||
c->prot |= PROT_READ;
|
||||
if (ph->p_flags & PF_W)
|
||||
c->prot |= PROT_WRITE;
|
||||
if (ph->p_flags & PF_X)
|
||||
c->prot |= PROT_EXEC;
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
|
||||
case PT_TLS:
|
||||
|
@ -316,7 +316,7 @@ asm (".L__X'%ebx = 1\n\t"
|
||||
(int) resultvar; })
|
||||
|
||||
#undef INTERNAL_SYSCALL_ERROR_P
|
||||
#define INTERNAL_SYSCALL_ERROR_P(val) ((val) >= 0xfffff001)
|
||||
#define INTERNAL_SYSCALL_ERROR_P(val) ((unsigned int) (val) >= 0xfffff001u)
|
||||
|
||||
#undef INTERNAL_SYSCALL_ERRNO
|
||||
#define INTERNAL_SYSCALL_ERRNO(val) (-(val))
|
||||
|
Loading…
Reference in New Issue
Block a user