components/binutils/patches/gas.write.c.patch
changeset 5057 ab1b43bf588f
parent 5056 7581a14240ad
child 5058 2d501f209a1a
--- a/components/binutils/patches/gas.write.c.patch	Tue Nov 03 15:51:03 2015 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
---- binutils-2.23.1/gas/write.c	2011-11-21 01:29:29.000000000 -0800
-+++ binutils-2.23.1/gas/write.c	2012-08-28 10:51:49.991653399 -0700
-@@ -808,6 +808,22 @@
- 	    sym = newsym;
- 	  }
- 
-+	/* Also convert fx_subsy if present */
-+	if (fixp->fx_subsy != NULL)
-+	  {
-+	    symbolS *sub_sym = fixp->fx_subsy;
-+	    while (symbol_equated_reloc_p (sub_sym)
-+		    || S_IS_WEAKREFR (sub_sym))
-+	      {
-+		symbolS *newsym = symbol_get_value_expression (sub_sym)->X_add_symbol;
-+		if (sub_sym == newsym)
-+		    break;
-+		fixp->fx_offset -= symbol_get_value_expression (sub_sym)->X_add_number;
-+		fixp->fx_subsy = newsym;
-+		sub_sym = newsym;
-+	      }
-+	  }
-+
- 	if (symbol_mri_common_p (sym))
- 	  {
- 	    fixp->fx_offset += S_GET_VALUE (sym);