subtract the value from fx_addnumber to since
bfd_perform_relocation is going to add it in.
+Thu Feb 3 21:29:42 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * config/tc-mips.c (md_apply_fix): If this is an undefined symbol,
+ subtract the value from fx_addnumber to since
+ bfd_perform_relocation is going to add it in.
+
Wed Feb 2 13:55:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
* Makefile.in: Avoid bug in losing hpux sed.
value = *valueP;
fixP->fx_addnumber = value; /* Remember value for tc_gen_reloc */
+ /* bfd_perform_relocation is going to add in the symbol value. If
+ this is an external symbol, it will have a non-zero value, but we
+ do not want to add in. Therefore, we subtract it out of
+ fx_addnumber. FIXME: relocations in gas are very confusing. */
+ if (fixP->fx_addsy != (symbolS *) NULL
+ && fixP->fx_addsy->ecoff_undefined)
+ fixP->fx_addnumber -= S_GET_VALUE (fixP->fx_addsy);
+
switch (fixP->fx_r_type)
{
case BFD_RELOC_32: