1999-09-11 Donn Terry <donn@interix.com>
authorIan Lance Taylor <ian@airs.com>
Sun, 12 Sep 1999 03:18:54 +0000 (03:18 +0000)
committerIan Lance Taylor <ian@airs.com>
Sun, 12 Sep 1999 03:18:54 +0000 (03:18 +0000)
* config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
relocations against global symbols if TE_PE.

gas/ChangeLog
gas/config/tc-i386.c

index 075e8c4b764cb2c09bf181f02401b362f1ccc004..c41533d51f9a21fd5adae34c50880ea7b4a3aeae 100644 (file)
@@ -5,6 +5,9 @@
 
 1999-09-11  Donn Terry  <donn@interix.com>
 
+       * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
+       relocations against global symbols if TE_PE.
+
        * config/obj-coff.c (obj_coff_ident): Add BFD_ASSEMBLER version.
        (obj_pseudo_table): Always handle ".ident" with obj-coff_ident.
 
index 0148f72fb4ddc15e6927bd39ed2e645667c5dddc..7b1ac0843656147022774c03274c95b53dc811ec 100644 (file)
@@ -941,8 +941,9 @@ int
 tc_i386_fix_adjustable(fixP)
      fixS * fixP;
 {
-#ifdef OBJ_ELF
-  /* Prevent all adjustments to global symbols. */
+#if defined (OBJ_ELF) || defined (TE_PE)
+  /* Prevent all adjustments to global symbols, or else dynamic
+     linking will not work correctly.  */
   if (S_IS_EXTERN (fixP->fx_addsy))
     return 0;
   if (S_IS_WEAK (fixP->fx_addsy))