aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/i386/dl-procinfo.h2
-rw-r--r--sysdeps/sh/dl-machine.h28
-rw-r--r--sysdeps/unix/sysv/linux/alpha/adjtime.c8
-rw-r--r--sysdeps/unix/sysv/linux/alpha/oldglob.c4
-rw-r--r--sysdeps/unix/sysv/linux/alpha/wordexp.c3
-rw-r--r--sysdeps/unix/sysv/linux/msgctl.c4
-rw-r--r--sysdeps/unix/sysv/linux/posix_fadvise64.c3
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S10
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S8
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c3
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S10
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S10
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/chown.c3
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c3
-rw-r--r--sysdeps/unix/sysv/linux/semctl.c4
-rw-r--r--sysdeps/unix/sysv/linux/shmctl.c4
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c4
17 files changed, 74 insertions, 37 deletions
diff --git a/sysdeps/i386/dl-procinfo.h b/sysdeps/i386/dl-procinfo.h
index e6b7faf..d114fec 100644
--- a/sysdeps/i386/dl-procinfo.h
+++ b/sysdeps/i386/dl-procinfo.h
@@ -57,7 +57,7 @@ enum
HWCAP_I386_AMD3D = 1 << 31,
/* XXX Which others to add here? */
- HWCAP_IMPORTANT = (HWCAP_I386_MMX)
+ HWCAP_IMPORTANT = (HWCAP_I386_XMM2)
};
diff --git a/sysdeps/sh/dl-machine.h b/sysdeps/sh/dl-machine.h
index 304fbf9..a0852a4 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.
diff --git a/sysdeps/unix/sysv/linux/alpha/adjtime.c b/sysdeps/unix/sysv/linux/alpha/adjtime.c
index e036896..f8b272e 100644
--- a/sysdeps/unix/sysv/linux/alpha/adjtime.c
+++ b/sysdeps/unix/sysv/linux/alpha/adjtime.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000, 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 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
@@ -58,7 +58,7 @@ struct timex32 {
#define TIMEVAL timeval32
#define TIMEX timex32
-#define ADJTIME __adjtime_tv32
+#define ADJTIME attribute_compat_text_section __adjtime_tv32
#define ADJTIMEX(x) INLINE_SYSCALL (old_adjtimex, 1, x)
#define ADJTIMEX32(x) INLINE_SYSCALL (old_adjtimex, 1, x)
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
@@ -72,7 +72,9 @@ LINKAGE int ADJTIME (const struct TIMEVAL *itv, struct TIMEVAL *otv);
#include <sysdeps/unix/sysv/linux/adjtime.c>
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
-int __adjtimex_tv32 (struct timex32 *tx) { return ADJTIMEX (tx); }
+int
+attribute_compat_text_section
+__adjtimex_tv32 (struct timex32 *tx) { return ADJTIMEX (tx); }
strong_alias (__adjtimex_tv32, __adjtimex_tv32_1);
strong_alias (__adjtimex_tv32, __adjtimex_tv32_2);
compat_symbol (libc, __adjtimex_tv32_1, __adjtimex, GLIBC_2_0);
diff --git a/sysdeps/unix/sysv/linux/alpha/oldglob.c b/sysdeps/unix/sysv/linux/alpha/oldglob.c
index 68cda76..9d39176 100644
--- a/sysdeps/unix/sysv/linux/alpha/oldglob.c
+++ b/sysdeps/unix/sysv/linux/alpha/oldglob.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 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
@@ -44,6 +44,7 @@ typedef struct
int
+attribute_compat_text_section
__old_glob (const char *pattern, int flags,
int (*errfunc) (const char *, int),
old_glob_t *pglob)
@@ -82,6 +83,7 @@ compat_symbol (libc, __old_glob, glob, GLIBC_2_0);
/* Free storage allocated in PGLOB by a previous `glob' call. */
void
+attribute_compat_text_section
__old_globfree (old_glob_t *pglob)
{
glob_t correct;
diff --git a/sysdeps/unix/sysv/linux/alpha/wordexp.c b/sysdeps/unix/sysv/linux/alpha/wordexp.c
index 1027204..1921a03 100644
--- a/sysdeps/unix/sysv/linux/alpha/wordexp.c
+++ b/sysdeps/unix/sysv/linux/alpha/wordexp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 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
@@ -38,6 +38,7 @@ typedef struct
int
+attribute_compat_text_section
__old_wordexp (const char *words, old_wordexp_t *pwordexp, int flags)
{
wordexp_t we;
diff --git a/sysdeps/unix/sysv/linux/msgctl.c b/sysdeps/unix/sysv/linux/msgctl.c
index 24c87d3..700591b 100644
--- a/sysdeps/unix/sysv/linux/msgctl.c
+++ b/sysdeps/unix/sysv/linux/msgctl.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1995, 1997, 1998, 2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1997, 1998, 2000, 2002, 2004
+ Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@@ -55,6 +56,7 @@ int __new_msgctl (int, int, struct msqid_ds *);
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
int
+attribute_compat_text_section
__old_msgctl (int msqid, int cmd, struct __old_msqid_ds *buf)
{
return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, msqid, cmd, 0, CHECK_1 (buf));
diff --git a/sysdeps/unix/sysv/linux/posix_fadvise64.c b/sysdeps/unix/sysv/linux/posix_fadvise64.c
index 350a026..3555ae8 100644
--- a/sysdeps/unix/sysv/linux/posix_fadvise64.c
+++ b/sysdeps/unix/sysv/linux/posix_fadvise64.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003 Free Software Foundation, Inc.
+/* Copyright (C) 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
@@ -69,6 +69,7 @@ __posix_fadvise64_l64 (int fd, off64_t offset, off64_t len, int advise)
#if SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_3_3)
int
+attribute_compat_text_section
__posix_fadvise64_l32 (int fd, off64_t offset, size_t len, int advise)
{
return __posix_fadvise64_l64 (fd, offset, len, advise);
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
index 0c04df5..baade0b 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
@@ -244,12 +244,13 @@ L(no_vec):
addi r1,r1,16
mtlr r0
blr
-PSEUDO_END(__getcontext)
+END(__getcontext)
versioned_symbol (libc, __getcontext, getcontext, GLIBC_2_3_4)
#if SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)
+ compat_text_section
ENTRY(__novec_getcontext)
/*
* Since we are not attempting to save the altivec registers,
@@ -355,7 +356,8 @@ ENTRY(__novec_getcontext)
addi r1,r1,16
mtlr r0
blr
-PSEUDO_END(__novec_getcontext)
+END(__novec_getcontext)
+ .previous
compat_symbol (libc, __novec_getcontext, getcontext, GLIBC_2_3_3)
@@ -366,10 +368,12 @@ compat_symbol (libc, __novec_getcontext, getcontext, GLIBC_2_3_3)
#define _ERRNO_H 1
#include <bits/errno.h>
+ compat_text_section
ENTRY (__getcontext_stub)
li r3,ENOSYS
b JUMPTARGET(__syscall_error)
- END (__getcontext_stub)
+END (__getcontext_stub)
+ .previous
compat_symbol (libc, __getcontext_stub, getcontext, GLIBC_2_1)
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
index 9f34357..5615718 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
@@ -111,6 +111,7 @@ versioned_symbol (libc, __makecontext, makecontext, GLIBC_2_3_4)
#if SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)
+ compat_text_section
ENTRY(__novec_makecontext)
/* Set up the first 7 args to the function in its registers */
addi r11,r3,_UC_REG_SPACE
@@ -191,7 +192,8 @@ L(novec_exitcode):
4: bl HIDDEN_JUMPTARGET(exit)
b 4b
-END(__makecontext)
+END(__novec_makecontext)
+ .previous
compat_symbol (libc, __novec_makecontext, makecontext, GLIBC_2_3_3)
#endif
@@ -201,10 +203,12 @@ compat_symbol (libc, __novec_makecontext, makecontext, GLIBC_2_3_3)
#define _ERRNO_H 1
#include <bits/errno.h>
+ compat_text_section
ENTRY (__makecontext_stub)
li r3,ENOSYS
b JUMPTARGET(__syscall_error)
- END (__makecontext_stub)
+END (__makecontext_stub)
+ .previous
compat_symbol (libc, __makecontext_stub, makecontext, GLIBC_2_1)
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
index edc21f6..c97bbbe 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003 Free Software Foundation, Inc.
+/* Copyright (C) 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
@@ -65,6 +65,7 @@ __posix_fadvise64_l64 (int fd, off64_t offset, off64_t len, int advise)
#if SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_3_3)
int
+attribute_compat_text_section
__posix_fadvise64_l32 (int fd, off64_t offset, size_t len, int advise)
{
return __posix_fadvise64_l64 (fd, offset, len, advise);
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
index 16d5a3b..ea0669d 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
@@ -261,12 +261,13 @@ L(do_sigret):
sc
/* NOTREACHED */
-PSEUDO_END (__setcontext)
+END (__setcontext)
versioned_symbol (libc, __setcontext, setcontext, GLIBC_2_3_4)
#if SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)
+ compat_text_section
ENTRY(__novec_setcontext)
mflr r0
stwu r1,-16(r1)
@@ -388,7 +389,8 @@ L(novec_do_sigret):
sc
/* NOTREACHED */
-PSEUDO_END (__setcontext)
+END (__novec_setcontext)
+ .previous
compat_symbol (libc, __novec_setcontext, setcontext, GLIBC_2_3_3)
@@ -399,10 +401,12 @@ compat_symbol (libc, __novec_setcontext, setcontext, GLIBC_2_3_3)
#define _ERRNO_H 1
#include <bits/errno.h>
+ compat_text_section
ENTRY (__setcontext_stub)
li r3,ENOSYS
b JUMPTARGET(__syscall_error)
- END (__setcontext_stub)
+END (__setcontext_stub)
+ .previous
compat_symbol (libc, __setcontext_stub, setcontext, GLIBC_2_1)
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
index 607f282..1bf3f51 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
@@ -467,12 +467,13 @@ L(do_sigret):
sc
/* NOTREACHED */
-PSEUDO_END(__swapcontext)
+END(__swapcontext)
versioned_symbol (libc, __swapcontext, swapcontext, GLIBC_2_3_4)
#if SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)
+ compat_text_section
ENTRY(__novec_swapcontext)
/* Save the current context */
addi r3,r3,_UC_REG_SPACE
@@ -682,7 +683,8 @@ L(novec_do_sigret):
sc
/* NOTREACHED */
-PSEUDO_END(__novec_swapcontext)
+END(__novec_swapcontext)
+ .previous
compat_symbol (libc, __novec_swapcontext, swapcontext, GLIBC_2_3_3)
@@ -693,10 +695,12 @@ compat_symbol (libc, __novec_swapcontext, swapcontext, GLIBC_2_3_3)
#define _ERRNO_H 1
#include <bits/errno.h>
+ compat_text_section
ENTRY (__swapcontext_stub)
li r3,ENOSYS
b JUMPTARGET(__syscall_error)
- END (__swapcontext_stub)
+END (__swapcontext_stub)
+ .previous
compat_symbol (libc, __swapcontext_stub, swapcontext, GLIBC_2_1)
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/chown.c b/sysdeps/unix/sysv/linux/s390/s390-32/chown.c
index 1c7b7ab..0656b39 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/chown.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/chown.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 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
@@ -97,6 +97,7 @@ __real_chown (const char *file, uid_t owner, gid_t group)
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
/* Compiling for compatibiity. */
int
+attribute_compat_text_section
__chown_is_lchown (const char *file, uid_t owner, gid_t group)
{
return __lchown (file, owner, group);
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c b/sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
index 6c539cd..e0fed24 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003 Free Software Foundation, Inc.
+/* Copyright (C) 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
@@ -78,6 +78,7 @@ __posix_fadvise64_l64 (int fd, off64_t offset, off64_t len, int advise)
#if SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_3_3)
int
+attribute_compat_text_section
__posix_fadvise64_l32 (int fd, off64_t offset, size_t len, int advise)
{
return __posix_fadvise64_l64 (fd, offset, len, advise);
diff --git a/sysdeps/unix/sysv/linux/semctl.c b/sysdeps/unix/sysv/linux/semctl.c
index 07b1e6b..ecd23ce 100644
--- a/sysdeps/unix/sysv/linux/semctl.c
+++ b/sysdeps/unix/sysv/linux/semctl.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1995, 1997, 1998, 2000, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1997, 1998, 2000, 2003, 2004
+ Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@@ -63,6 +64,7 @@ int __new_semctl (int semid, int semnum, int cmd, ...);
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
int
+attribute_compat_text_section
__old_semctl (int semid, int semnum, int cmd, ...)
{
union semun arg;
diff --git a/sysdeps/unix/sysv/linux/shmctl.c b/sysdeps/unix/sysv/linux/shmctl.c
index 2bd9246..5561cca 100644
--- a/sysdeps/unix/sysv/linux/shmctl.c
+++ b/sysdeps/unix/sysv/linux/shmctl.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1995, 1997, 1998, 2000, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1997, 1998, 2000, 2003, 2004
+ Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@@ -62,6 +63,7 @@ int __new_shmctl (int, int, struct shmid_ds *);
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
int
+attribute_compat_text_section
__old_shmctl (int shmid, int cmd, struct __old_shmid_ds *buf)
{
return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid,
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c b/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c
index ebf9f52..b28f009 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c
@@ -1,5 +1,6 @@
/* Semctl for architectures where word sized unions are passed indirectly
- Copyright (C) 1995,1997,1998,2000,2002,2003 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1997, 1998, 2000, 2002, 2003, 2004
+ Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@@ -72,6 +73,7 @@ int __new_semctl (int semid, int semnum, int cmd, ...);
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
int
+attribute_compat_text_section
__old_semctl (int semid, int semnum, int cmd, ...)
{
union semun arg;