Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
+ * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
+ (fixup_segment): Add a29k special case; the linker is not prepared
+ to see a segment offset here.
+
* app.c (do_scrub_next_char): Added new state, 10, modifying state
9 to only keep a space in between identifier characters.
/* now emit the second bit */
intr.r_type = R_IHCONST;
intr.r_symndx = fix_ptr->fx_addnumber;
-
- /* The offset to the segment holding the symbol
- has already been counted in the R_IHIHALF.
- We don't want to add it in again for the
- R_IHCONST. */
- if (symbol_ptr)
- intr.r_symndx -=
- segment_info[S_GET_SEGMENT (symbol_ptr)].scnhdr.s_paddr;
(void) bfd_coff_swap_reloc_out (abfd, &intr, ext_ptr);
ext_ptr++;
}
break;
default:
+#ifdef TC_A29K
+ /* This really should be handled in the linker, but
+ backward compatibility forbids. */
+ add_number += S_GET_VALUE (add_symbolP);
+#else
add_number += S_GET_VALUE (add_symbolP) +
segment_info[S_GET_SEGMENT (add_symbolP)].scnhdr.s_paddr;
+#endif
break;
case SEG_UNKNOWN: