386.c (md_estimate_size_before_relax): Revert
authorDJ Delorie <dj@redhat.com>
Sun, 25 Jun 2000 01:33:31 +0000 (01:33 +0000)
committerDJ Delorie <dj@redhat.com>
Sun, 25 Jun 2000 01:33:31 +0000 (01:33 +0000)
more changes from Sept 1999
(tc_i386_fix_adjustable): ditto
(md_apply_fix3): ditto

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

index 379302cd886ee9fe4e78bb401d4eaa1decdd6139..b42a6063851a34d52426a3b5f9e6a9a44ce014f6 100644 (file)
@@ -1,3 +1,10 @@
+2000-06-24  DJ Delorie  <dj@cygnus.com>
+
+       * config/tc-i386.c (md_estimate_size_before_relax): Revert
+       more changes from Sept 1999
+       (tc_i386_fix_adjustable): ditto
+       (md_apply_fix3): ditto
+
 2000-06-24  Frank Ch. Eigler  <fche@redhat.com>
  
        * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf.
index 6ab93c5ac98e0fd71da39406df406f3e69eea11e..eebd49fe11a57068bc6086e36d07555b3bd3ffa6 100644 (file)
@@ -1023,7 +1023,7 @@ int
 tc_i386_fix_adjustable (fixP)
      fixS * fixP;
 {
-#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) || defined (TE_PE)
+#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)
   /* Prevent all adjustments to global symbols, or else dynamic
      linking will not work correctly.  */
   if (S_IS_EXTERNAL (fixP->fx_addsy)
@@ -3776,7 +3776,7 @@ md_estimate_size_before_relax (fragP, segment)
      an externally visible symbol, because it may be overridden by a
      shared library.  */
   if (S_GET_SEGMENT (fragP->fr_symbol) != segment
-#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) || defined (TE_PE)
+#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)
       || S_IS_EXTERNAL (fragP->fr_symbol)
       || S_IS_WEAK (fragP->fr_symbol)
 #endif
@@ -4038,34 +4038,8 @@ md_apply_fix3 (fixP, valp, seg)
         address offset for a PC relative symbol.  */
       if (S_GET_SEGMENT (fixP->fx_addsy) != seg)
        value += md_pcrel_from (fixP);
-      else if (S_IS_EXTERNAL (fixP->fx_addsy)
-              || S_IS_WEAK (fixP->fx_addsy))
-       {
-         /* We are generating an external relocation for this defined
-             symbol.  We add the address, because
-             bfd_install_relocation will subtract it.  VALUE already
-             holds the symbol value, because fixup_segment added it
-             in.  We subtract it out, and then we subtract it out
-             again because bfd_install_relocation will add it in
-             again.  */
-         value += md_pcrel_from (fixP);
-         value -= 2 * S_GET_VALUE (fixP->fx_addsy);
-       }
 #endif
     }
-#ifdef TE_PE
-  else if (fixP->fx_addsy != NULL
-          && S_IS_DEFINED (fixP->fx_addsy)
-          && (S_IS_EXTERNAL (fixP->fx_addsy)
-              || S_IS_WEAK (fixP->fx_addsy)))
-    {
-      /* We are generating an external relocation for this defined
-         symbol.  VALUE already holds the symbol value, and
-         bfd_install_relocation will add it in again.  We don't want
-         either addition.  */
-      value -= 2 * S_GET_VALUE (fixP->fx_addsy);
-    }
-#endif
 
   /* Fix a few things - the dynamic linker expects certain values here,
      and we must not dissappoint it. */