To fix bug 3487, Jie committed a patch to bfin_fix_adjustable, which
slightly overshot the mark. We have to return 0 for R_got relocs, as
the linker is not prepared to handle relocs of the form
"[EMAIL PROTECTED]", it needs a symbol. This was another cause for
shared-flat not working, other than the uClinux build system breakage.
Again - why didn't this show up in testing?
Shared-flat is still not working 100%; some programs get segfaults
during bootup.
Bernd
--
This footer brought to you by insane German lawmakers.
Analog Devices GmbH Wilhelm-Wagenfeld-Str. 6 80807 Muenchen
Sitz der Gesellschaft Muenchen, Registergericht Muenchen HRB 40368
Geschaeftsfuehrer Thomas Wessel, William A. Martin, Margaret Seif
Index: gas/config/tc-bfin.c
===================================================================
--- gas/config/tc-bfin.c (revision 1793)
+++ gas/config/tc-bfin.c (working copy)
@@ -808,6 +808,7 @@ bfin_fix_adjustable (fixS *fixP)
switch (fixP->fx_r_type)
{
/* Adjust_reloc_syms doesn't know about the GOT. */
+ case BFD_RELOC_BFIN_GOT:
case BFD_RELOC_BFIN_PLTPC:
/* We need the symbol name for the VTABLE entries. */
case BFD_RELOC_VTABLE_INHERIT:
Index: gas/ChangeLog.bfin
===================================================================
--- gas/ChangeLog.bfin (revision 1811)
+++ gas/ChangeLog.bfin (working copy)
@@ -1,3 +1,8 @@
+2007-09-28 Bernd Schmidt <[EMAIL PROTECTED]>
+
+ * config/tc-bfin.c (bfin_fix_adjustable): Partially revert the
+ 2007-08-23 change; BFD_RELOC_BFIN_GOT is not adjustable.
+
2007-09-18 Bernd Schmidt <[EMAIL PROTECTED]>
* config/bfin-parse.y (asm_1): Slightly improve error messages
_______________________________________________
Toolchain-devel mailing list
[email protected]
http://blackfin.uclinux.org/mailman/listinfo/toolchain-devel