* config/tc-ppc.c (md_apply_fix <ELF>): Don't warn on overflow
authorAlan Modra <amodra@gmail.com>
Tue, 2 Aug 2005 03:28:43 +0000 (03:28 +0000)
committerAlan Modra <amodra@gmail.com>
Tue, 2 Aug 2005 03:28:43 +0000 (03:28 +0000)
if emitting a reloc.

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

index 5eeb6842977e31c222d3478f59a8e5152fdf9c71..e4ff266bf25d80f83f1a16310f727d97fe11bb0e 100644 (file)
@@ -1,3 +1,8 @@
+2005-08-02  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/tc-ppc.c (md_apply_fix <ELF>): Don't warn on overflow
+       if emitting a reloc.
+
 2005-07-29  Thiemo Seufer  <ths@networkno.de>
 
        * config/tc-mips.c (s_mips_globl): Allow multiple symbols per .globl.
index 65f395a44e715b99bd8731418298d390eb4dcf63..b0c136c6e25f9aea3972d20e66298a7bb75c6fc1 100644 (file)
@@ -6014,6 +6014,13 @@ md_apply_fix (fixP, valP, seg)
 
 #ifdef OBJ_ELF
   fixP->fx_addnumber = value;
+
+  /* PowerPC uses RELA relocs, ie. the reloc addend is stored separately
+     from the section contents.  If we are going to be emitting a reloc
+     then the section contents are immaterial, so don't warn if they
+     happen to overflow.  Leave such warnings to ld.  */
+  if (!fixP->fx_done)
+    fixP->fx_no_overflow = 1;
 #else
   if (fixP->fx_r_type != BFD_RELOC_PPC_TOC16)
     fixP->fx_addnumber = 0;