diff options
author | Ian Lance Taylor <ian@airs.com> | 1993-03-25 22:09:27 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1993-03-25 22:09:27 +0000 |
commit | 61001d969df165f3637663c1c9d336faae72dab6 (patch) | |
tree | 13140860617e0cae1750e68ba2706e3e8369d6c3 /gas/config | |
parent | 5f2912ccceab356e4da79d3f6d6358c7c45e2d92 (diff) | |
download | gdb-61001d969df165f3637663c1c9d336faae72dab6.zip gdb-61001d969df165f3637663c1c9d336faae72dab6.tar.gz gdb-61001d969df165f3637663c1c9d336faae72dab6.tar.bz2 |
* 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.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/obj-coffbfd.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/gas/config/obj-coffbfd.c b/gas/config/obj-coffbfd.c index 2cce1ae..2ab28a6 100644 --- a/gas/config/obj-coffbfd.c +++ b/gas/config/obj-coffbfd.c @@ -434,14 +434,6 @@ DEFUN (do_relocs_for, (abfd, h, file_cursor), /* 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++; } @@ -2513,8 +2505,14 @@ DEFUN (fixup_segment, (segP, this_segment_type), 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: |