summaryrefslogtreecommitdiff
path: root/elf
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2005-11-15 08:22:03 +0000
committerJakub Jelinek <jakub@redhat.com>2005-11-15 08:22:03 +0000
commit22d7fbdbae4032639461a7a081762a05deee0529 (patch)
treeff70bd4613f1f05823b2417b2687449d73ac45b0 /elf
parent1beea155aecf2e7d6bfa1399b7c0f4f53dde408c (diff)
Updated to fedora-glibc-20051115T0809
Diffstat (limited to 'elf')
-rw-r--r--elf/dl-conflict.c6
-rw-r--r--elf/dl-open.c6
-rw-r--r--elf/elf.h1
-rw-r--r--elf/soinit.c9
4 files changed, 5 insertions, 17 deletions
diff --git a/elf/dl-conflict.c b/elf/dl-conflict.c
index 4ced40f75e..9b49e77d28 100644
--- a/elf/dl-conflict.c
+++ b/elf/dl-conflict.c
@@ -1,5 +1,5 @@
/* Resolve conflicts against already prelinked libraries.
- Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@redhat.com>, 2001.
@@ -34,8 +34,8 @@ _dl_resolve_conflicts (struct link_map *l, ElfW(Rela) *conflict,
{
#if ! ELF_MACHINE_NO_RELA
if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_RELOC, 0))
- _dl_printf ("\nconflict processing: %s\n",
- l->l_name[0] ? l->l_name : rtld_progname);
+ _dl_debug_printf ("\nconflict processing: %s\n",
+ l->l_name[0] ? l->l_name : rtld_progname);
{
/* Do the conflict relocation of the object and library GOT and other
diff --git a/elf/dl-open.c b/elf/dl-open.c
index 984f4a4ec6..930400c420 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -35,12 +35,6 @@
#include <dl-dst.h>
-#ifndef SHARED
-/* Giving this initialized value preallocates some surplus bytes in the
- static TLS area, see __libc_setup_tls (libc-tls.c). */
-size_t _dl_tls_static_size = 2048;
-#endif
-
extern ElfW(Addr) _dl_sysdep_start (void **start_argptr,
void (*dl_main) (const ElfW(Phdr) *phdr,
ElfW(Word) phnum,
diff --git a/elf/elf.h b/elf/elf.h
index 5f44f1b65a..c98bb5233d 100644
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -2569,6 +2569,7 @@ typedef Elf32_Addr Elf32_Conflict;
#define R_M32R_SDA16_RELA 42 /* 16 bit offset in SDA */
#define R_M32R_RELA_GNU_VTINHERIT 43
#define R_M32R_RELA_GNU_VTENTRY 44
+#define R_M32R_REL32 45 /* PC relative 32 bit. */
#define R_M32R_GOT24 48 /* 24 bit GOT entry */
#define R_M32R_26_PLTREL 49 /* 26 bit PC relative to PLT shifted */
diff --git a/elf/soinit.c b/elf/soinit.c
index 2015ea2d66..29e4707ceb 100644
--- a/elf/soinit.c
+++ b/elf/soinit.c
@@ -78,14 +78,8 @@ __libc_global_ctors (void)
/* This function becomes the DT_FINI termination function
for the C library. */
-#ifndef HAVE_INITFINI_ARRAY
-void _fini (void) __attribute__ ((section (".fini"))); /* Just for kicks. */
-void
-_fini (void)
-#else
void
__libc_fini (void)
-#endif
{
/* Call destructor functions. */
run_hooks (__DTOR_LIST__);
@@ -101,7 +95,6 @@ __libc_fini (void)
# endif
#endif
}
-#ifdef HAVE_INITFINI_ARRAY
+
void (*_fini_ptr) (void) __attribute__ ((section (".fini_array")))
= &__libc_fini;
-#endif