about summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2004-11-02 12:26:42 +0000
committerJakub Jelinek <jakub@redhat.com>2004-11-02 12:26:42 +0000
commit80c96e8e6f452d6d9803f5a2e17030658f30afc4 (patch)
treeef584f35ed7167c7a680783415a66799c3789233 /elf
parent0b5cfa4e0b7c9dc2cd81635307613c86c0f5e200 (diff)
downloadglibc-80c96e8e6f452d6d9803f5a2e17030658f30afc4.tar.gz
glibc-80c96e8e6f452d6d9803f5a2e17030658f30afc4.tar.xz
glibc-80c96e8e6f452d6d9803f5a2e17030658f30afc4.zip
Updated to fedora-glibc-20041102T1153
Diffstat (limited to 'elf')
-rw-r--r--elf/dl-load.c2
-rw-r--r--elf/dl-open.c2
-rw-r--r--elf/elf.h29
3 files changed, 31 insertions, 2 deletions
diff --git a/elf/dl-load.c b/elf/dl-load.c
index 27f6e3f641..ea287cddcc 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -1875,7 +1875,7 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
 	    {
 	      l = GL(dl_ns)[LM_ID_BASE]._ns_loaded;
 	      if (l && l->l_type != lt_loaded && l != loader
-		  && l->l_rpath_dirs.dirs != (void *) -1)
+		  && cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH"))
 		fd = open_path (name, namelen, preloaded, &l->l_rpath_dirs,
 				&realname, &fb);
 	    }
diff --git a/elf/dl-open.c b/elf/dl-open.c
index 294a523aac..7e890ad7f7 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -506,7 +506,7 @@ cannot create TLS data structures"));
   /* Bump the generation number if necessary.  */
   if (any_tls)
     if (__builtin_expect (++GL(dl_tls_generation) == 0, 0))
-      __libc_fatal (_("TLS generation counter wrapped!  Please send report with the 'glibcbug' script."));
+      __libc_fatal (_("TLS generation counter wrapped!  Please report this."));
 #endif
 
   /* Run the initializer functions of new objects.  */
diff --git a/elf/elf.h b/elf/elf.h
index 2eb092ab6c..db95254f74 100644
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -2464,6 +2464,35 @@ typedef Elf32_Addr Elf32_Conflict;
 #define R_X86_64_NUM		24
 
 
+/* AM33 relocations.  */
+#define R_MN10300_NONE		0	/* No reloc.  */
+#define R_MN10300_32		1	/* Direct 32 bit.  */
+#define R_MN10300_16		2	/* Direct 16 bit.  */
+#define R_MN10300_8		3	/* Direct 8 bit.  */
+#define R_MN10300_PCREL32	4	/* PC-relative 32-bit.  */
+#define R_MN10300_PCREL16	5	/* PC-relative 16-bit signed.  */
+#define R_MN10300_PCREL8	6	/* PC-relative 8-bit signed.  */
+#define R_MN10300_GNU_VTINHERIT	7	/* Ancient C++ vtable garbage... */
+#define R_MN10300_GNU_VTENTRY	8	/* ... collection annotation.  */
+#define R_MN10300_24		9	/* Direct 24 bit.  */
+#define R_MN10300_GOTPC32	10	/* 32-bit PCrel offset to GOT.  */
+#define R_MN10300_GOTPC16	11	/* 16-bit PCrel offset to GOT.  */
+#define R_MN10300_GOTOFF32	12	/* 32-bit offset from GOT.  */
+#define R_MN10300_GOTOFF24	13	/* 24-bit offset from GOT.  */
+#define R_MN10300_GOTOFF16	14	/* 16-bit offset from GOT.  */
+#define R_MN10300_PLT32		15	/* 32-bit PCrel to PLT entry.  */
+#define R_MN10300_PLT16		16	/* 16-bit PCrel to PLT entry.  */
+#define R_MN10300_GOT32		17	/* 32-bit offset to GOT entry.  */
+#define R_MN10300_GOT24		18	/* 24-bit offset to GOT entry.  */
+#define R_MN10300_GOT16		19	/* 16-bit offset to GOT entry.  */
+#define R_MN10300_COPY		20	/* Copy symbol at runtime.  */
+#define R_MN10300_GLOB_DAT	21	/* Create GOT entry.  */
+#define R_MN10300_JMP_SLOT	22	/* Create PLT entry.  */
+#define R_MN10300_RELATIVE	23	/* Adjust by program base.  */
+
+#define R_MN10300_NUM		24
+
+
 /* M32R relocs.  */
 #define R_M32R_NONE		0	/* No reloc. */
 #define R_M32R_16		1	/* Direct 16 bit. */