about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2005-03-05 13:03:35 +0000
committerJakub Jelinek <jakub@redhat.com>2005-03-05 13:03:35 +0000
commit2a626c2bd2bdea74d59553bd9fad9d17959b3aab (patch)
treef24419785fc8c7320bd33d92e9930eb7538eb5aa
parente6826c2b972f8e267228c885a1069576ef02d15b (diff)
downloadglibc-2a626c2bd2bdea74d59553bd9fad9d17959b3aab.tar.gz
glibc-2a626c2bd2bdea74d59553bd9fad9d17959b3aab.tar.xz
glibc-2a626c2bd2bdea74d59553bd9fad9d17959b3aab.zip
* sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define
	unconditionally to (defined RTLD_BOOTSTRAP).
	* sysdeps/arm/dl-machine.h (ELF_MACHINE_NO_RELA): Likewise.
linuxthreads/
	* sysdeps/powerpc/tcb-offsets.sym (thread_offsetof): Rework for GCC 4.
-rw-r--r--ChangeLog6
-rw-r--r--linuxthreads/ChangeLog4
-rw-r--r--linuxthreads/sysdeps/powerpc/tcb-offsets.sym2
-rw-r--r--sysdeps/arm/dl-machine.h4
-rw-r--r--sysdeps/i386/dl-machine.h4
-rw-r--r--sysdeps/i386/i486/Makefile4
6 files changed, 17 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index b973d58b46..fdbd4521c1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2005-03-05  Jakub Jelinek  <jakub@redhat.com>
+
+	* sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define
+	unconditionally to (defined RTLD_BOOTSTRAP).
+	* sysdeps/arm/dl-machine.h (ELF_MACHINE_NO_RELA): Likewise.
+
 2005-03-01  H.J. Lu  <hongjiu.lu@intel.com>
 
 	[BZ #776]
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index 4cbcfbb7a3..d55879a479 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,7 @@
+2005-03-05  Jakub Jelinek  <jakub@redhat.com>
+
+	* sysdeps/powerpc/tcb-offsets.sym (thread_offsetof): Rework for GCC 4.
+
 2005-02-09  Daniel Jacobowitz  <dan@codesourcery.com>
 
 	* descr.h (__pthread_find_self, thread_self): Mark as pure
diff --git a/linuxthreads/sysdeps/powerpc/tcb-offsets.sym b/linuxthreads/sysdeps/powerpc/tcb-offsets.sym
index b526b62336..7c5cca01ea 100644
--- a/linuxthreads/sysdeps/powerpc/tcb-offsets.sym
+++ b/linuxthreads/sysdeps/powerpc/tcb-offsets.sym
@@ -8,7 +8,7 @@
 -- Abuse tls.h macros to derive offsets relative to the thread register.
 #  undef __thread_register
 #  define __thread_register	((void *) 0)
-#  define thread_offsetof(mem)	((void *) &THREAD_SELF->p_##mem - (void *) 0)
+#  define thread_offsetof(mem)	((ptrdiff_t) THREAD_SELF + offsetof (struct _pthread_descr_struct, p_##mem))
 
 # else
 
diff --git a/sysdeps/arm/dl-machine.h b/sysdeps/arm/dl-machine.h
index e8015ac5fe..7ddd81234b 100644
--- a/sysdeps/arm/dl-machine.h
+++ b/sysdeps/arm/dl-machine.h
@@ -353,9 +353,7 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rel *reloc,
 
 /* ARM never uses Elf32_Rela relocations for the dynamic linker.
    Prelinked libraries may use Elf32_Rela though.  */
-#ifdef RTLD_BOOTSTRAP
-# define ELF_MACHINE_NO_RELA 1
-#endif
+#define ELF_MACHINE_NO_RELA (defined RTLD_BOOTSTRAP)
 
 #ifdef RESOLVE
 
diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h
index a965a4a5fc..367a4fb1a8 100644
--- a/sysdeps/i386/dl-machine.h
+++ b/sysdeps/i386/dl-machine.h
@@ -301,9 +301,7 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rel *reloc,
 
 /* The i386 never uses Elf32_Rela relocations for the dynamic linker.
    Prelinked libraries may use Elf32_Rela though.  */
-#ifdef RTLD_BOOTSTRAP
-# define ELF_MACHINE_NO_RELA 1
-#endif
+#define ELF_MACHINE_NO_RELA (defined RTLD_BOOTSTRAP)
 
 #ifdef RESOLVE_MAP
 
diff --git a/sysdeps/i386/i486/Makefile b/sysdeps/i386/i486/Makefile
new file mode 100644
index 0000000000..930731a166
--- /dev/null
+++ b/sysdeps/i386/i486/Makefile
@@ -0,0 +1,4 @@
+# Temporary workaround for GCC4 PR debug/19345
+ifeq ($(subdir),string)
+CFLAGS-string-inlines.c += -g0
+endif