From d3a4a571c42d14ad2dfbe8c06bdf02b74d012e94 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 10 Mar 2004 19:28:58 +0000 Subject: Update. 2004-03-10 Jakub Jelinek * include/libc-symbols.h [__ASSEMBLY__] (compat_text_section, compat_data_section): Define. * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): Add attribute_compat_text_section. * sysdeps/unix/sysv/linux/alpha/wordexp.c (__old_wordexp): Likewise. * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob, __old_globfree): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown_is_lchown): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c (__posix_fadvise64_l32): Likewise. * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c (__posix_fadvise64_l32): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (__old_semctl): Likewise. * sysdeps/unix/sysv/linux/semctl.c (__old_semctl): Likewise. * sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l32): Likewise. * sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl): Likewise. * hurd/compat-20.c (_hurd_proc_init_compat_20): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S (__swapcontext, __novec_swapcontext): Use END instead of PSEUDO_END. (__novec_swapcontext, __swapcontext_stub): Add compat_text_section. * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S (__makecontext_stub): Likewise. (__novec_makecontext): Likewise. Fix name in END () to match function name. * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S (__setcontext): Use END instead of PSEUDO_END. (__novec_setcontext): Add compat_text_section. Use END instead of PSEUDO_END, fix the name in END () to match function name. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S (__getcontext, __novec_getcontext): Use END instead of PSEUDO_END. (__novec_getcontext, __getcontext_stub): Add compat_text_section. 2004-03-10 Kaz Kojima * sysdeps/sh/dl-machine.h: Don't use GL macro if not appropriate. (COPY_UNALIGNED_WORD): Remove cast used as lvalue. 2004-03-10 Ulrich Drepper * sysdeps/i386/dl-procinfo.h (HWCAP_IMPORTANT): Remove mmx, add sse2. --- sysdeps/sh/dl-machine.h | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) (limited to 'sysdeps/sh') diff --git a/sysdeps/sh/dl-machine.h b/sysdeps/sh/dl-machine.h index 304fbf98f7..a0852a4e71 100644 --- a/sysdeps/sh/dl-machine.h +++ b/sysdeps/sh/dl-machine.h @@ -1,5 +1,6 @@ /* Machine-dependent ELF dynamic relocation inline functions. SH version. - Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 + Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -417,9 +418,9 @@ _dl_start_user:\n\ static inline void __attribute__ ((unused)) dl_platform_init (void) { - if (GL(dl_platform) != NULL && *GL(dl_platform) == '\0') + if (GLRO(dl_platform) != NULL && *GLRO(dl_platform) == '\0') /* Avoid an empty string which would disturb us. */ - GL(dl_platform) = NULL; + GLRO(dl_platform) = NULL; } static inline Elf32_Addr @@ -460,20 +461,23 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc, #define COPY_UNALIGNED_WORD(swp, twp, align) \ { \ void *__s = (swp), *__t = (twp); \ + unsigned char *__s1 = __s, *__t1 = __t; \ + unsigned short *__s2 = __s, *__t2 = __t; \ + unsigned long *__s4 = __s, *__t4 = __t; \ switch ((align)) \ { \ case 0: \ - *(unsigned long *) __t = *(unsigned long *) __s; \ + *__t4 = *__s4; \ break; \ case 2: \ - *((unsigned short *) __t)++ = *((unsigned short *) __s)++; \ - *((unsigned short *) __t) = *((unsigned short *) __s); \ + *__t2++ = *__s2++; \ + *__t2 = *__s2; \ break; \ default: \ - *((unsigned char *) __t)++ = *((unsigned char *) __s)++; \ - *((unsigned char *) __t)++ = *((unsigned char *) __s)++; \ - *((unsigned char *) __t)++ = *((unsigned char *) __s)++; \ - *((unsigned char *) __t) = *((unsigned char *) __s); \ + *__t1++ = *__s1++; \ + *__t1++ = *__s1++; \ + *__t1++ = *__s1++; \ + *__t1 = *__s1; \ break; \ } \ } @@ -525,7 +529,7 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc, found. */ break; if (sym->st_size > refsym->st_size - || (sym->st_size < refsym->st_size && GL(dl_verbose))) + || (sym->st_size < refsym->st_size && GLRO(dl_verbose))) { const char *strtab; @@ -593,7 +597,7 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc, rtld.c contains the common defn for _dl_rtld_map, which is incompatible with a weak decl in the same file. */ # ifndef SHARED - weak_extern (GL(dl_rtld_map)); + weak_extern (_dl_rtld_map); # endif if (map == &GL(dl_rtld_map)) /* Undo the relocation done here during bootstrapping. -- cgit v1.2.3