gas fixup_segment tidy

Alan Modra amodra@gmail.com
Mon Feb 4 12:33:00 GMT 2013


The return from fixup_segment has been ignored ever since non-BFD gas
support was removed, so..

	* write.c (fixup_segment): Return void.  Delete seg_reloc_count
	related code.
	(TC_ADJUST_RELOC_COUNT): Delete.
	* config/tc-i960.h (TC_ADJUST_RELOC_COUNT): Delete.

Index: gas/write.c
===================================================================
RCS file: /cvs/src/src/gas/write.c,v
retrieving revision 1.153
diff -u -p -r1.153 write.c
--- gas/write.c	10 Jan 2013 19:51:54 -0000	1.153
+++ gas/write.c	4 Feb 2013 10:27:40 -0000
@@ -30,10 +30,6 @@
 #include "libbfd.h"
 #include "compress-debug.h"
 
-#ifndef TC_ADJUST_RELOC_COUNT
-#define TC_ADJUST_RELOC_COUNT(FIX, COUNT)
-#endif
-
 #ifndef TC_FORCE_RELOCATION
 #define TC_FORCE_RELOCATION(FIX)		\
   (generic_force_reloc (FIX))
@@ -890,15 +886,12 @@ adjust_reloc_syms (bfd *abfd ATTRIBUTE_U
    handled now.  (These consist of fixS where we have since discovered
    the value of a symbol, or the address of the frag involved.)
    For each one, call md_apply_fix to put the fix into the frag data.
+   Ones that we couldn't completely handle here will be output later
+   by emit_relocations.  */
 
-   Result is a count of how many relocation structs will be needed to
-   handle the remaining fixS's that we couldn't completely handle here.
-   These will be output later by emit_relocations().  */
-
-static long
+static void
 fixup_segment (fixS *fixP, segT this_segment)
 {
-  long seg_reloc_count = 0;
   valueT add_number;
   fragS *fragP;
   segT add_symbol_segment = absolute_section;
@@ -928,10 +921,8 @@ fixup_segment (fixS *fixP, segT this_seg
 	    symbol_mark_used_in_reloc (fixP->fx_addsy);
 	    if (fixP->fx_subsy != NULL)
 	      symbol_mark_used_in_reloc (fixP->fx_subsy);
-	    seg_reloc_count++;
 	  }
-      TC_ADJUST_RELOC_COUNT (fixP, seg_reloc_count);
-      return seg_reloc_count;
+      return;
     }
 
   for (; fixP; fixP = fixP->fx_next)
@@ -1073,7 +1064,6 @@ fixup_segment (fixS *fixP, segT this_seg
 
       if (!fixP->fx_done)
 	{
-	  ++seg_reloc_count;
 	  if (fixP->fx_addsy == NULL)
 	    fixP->fx_addsy = abs_section_sym;
 	  symbol_mark_used_in_reloc (fixP->fx_addsy);
@@ -1126,9 +1116,6 @@ fixup_segment (fixS *fixP, segT this_seg
       print_fixup (fixP);
 #endif
     }				/* For each fixS in this segment.  */
-
-  TC_ADJUST_RELOC_COUNT (fixP, seg_reloc_count);
-  return seg_reloc_count;
 }
 
 static void
Index: gas/config/tc-i960.h
===================================================================
RCS file: /cvs/src/src/gas/config/tc-i960.h,v
retrieving revision 1.19
diff -u -p -r1.19 tc-i960.h
--- gas/config/tc-i960.h	2 Sep 2009 07:24:20 -0000	1.19
+++ gas/config/tc-i960.h	4 Feb 2013 10:27:40 -0000
@@ -147,12 +147,6 @@ extern int reloc_callj (struct fix *);
 /* We store the bal information in the sy_tc field.  */
 #define TC_SYMFIELD_TYPE symbolS *
 
-#define TC_ADJUST_RELOC_COUNT(FIX,COUNT) \
-  { fixS *tcfixp = (FIX); \
-    for (;tcfixp;tcfixp=tcfixp->fx_next) \
-      if (tcfixp->fx_tcbit && tcfixp->fx_addsy != 0) \
-	++(COUNT); \
-  }
 #endif
 
 extern int i960_validate_fix (struct fix *, segT);

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list