gcc 3.4 doesn't work with glibc on x86
Andreas Jaeger
aj@suse.de
Tue Mar 9 06:40:00 GMT 2004
I used the appended hack,
Andreas
============================================================
Index: sysdeps/i386/dl-machine.h
--- sysdeps/i386/dl-machine.h 5 Mar 2004 10:14:49 -0000 1.124
+++ sysdeps/i386/dl-machine.h 9 Mar 2004 06:38:28 -0000
@@ -154,11 +154,13 @@ elf_machine_runtime_setup (struct link_m
destroys the passed register information. */
/* GKM FIXME: Fix trampoline to pass bounds so we can do
without the `__unbounded' qualifier. */
+#define FIXUP_ATTRIBUTE __attribute__ ((regparm (2), unused))
+#define PROFILE_FIXUP_ATTRIBUTE __attribute__ ((regparm (3), unused))
static ElfW(Addr) fixup (struct link_map *__unbounded l, ElfW(Word) reloc_offset)
- __attribute__ ((regparm (2), unused));
+ FIXUP_ATTRIBUTE;
static ElfW(Addr) profile_fixup (struct link_map *l, ElfW(Word) reloc_offset,
ElfW(Addr) retaddr)
- __attribute__ ((regparm (3), unused));
+ PROFILE_FIXUP_ATTRIBUTE;
# endif
/* This code is used in dl-runtime.c to call the `fixup' function
============================================================
Index: elf/dl-runtime.c
--- elf/dl-runtime.c 7 Mar 2004 05:21:01 -0000 1.64
+++ elf/dl-runtime.c 9 Mar 2004 06:38:28 -0000
@@ -47,6 +47,9 @@
#ifndef ELF_MACHINE_NO_PLT
static ElfW(Addr)
__attribute ((used, noinline))
+#ifdef FIXUP_ATTRIBUTE
+ FIXUP_ATTRIBUTE
+#endif
fixup (
# ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS
ELF_MACHINE_RUNTIME_FIXUP_ARGS,
@@ -123,6 +126,9 @@ fixup (
static ElfW(Addr)
__attribute ((used, noinline))
+#ifdef PROFILE_FIXUP_ATTRIBUTE
+ PROFILE_FIXUP_ATTRIBUTE
+#endif
profile_fixup (
#ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS
ELF_MACHINE_RUNTIME_FIXUP_ARGS,
--
Andreas Jaeger, aj@suse.de, http://www.suse.de/~aj
SuSE Linux AG, Maxfeldstr. 5, 90409 Nürnberg, Germany
GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 188 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20040309/aa06f2b3/attachment.sig>
More information about the Libc-alpha
mailing list