diff options
author | Ian Lance Taylor <ian@airs.com> | 1996-12-12 22:41:22 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1996-12-12 22:41:22 +0000 |
commit | 8dd6fde3e5ea3909e3a29be820a7b12925f90329 (patch) | |
tree | 05a6867757ee8d6fb06d79c206f13af283ac80a0 /gas | |
parent | d0d5edba84930baf71277350a33839ea42f45eac (diff) | |
download | gdb-8dd6fde3e5ea3909e3a29be820a7b12925f90329.zip gdb-8dd6fde3e5ea3909e3a29be820a7b12925f90329.tar.gz gdb-8dd6fde3e5ea3909e3a29be820a7b12925f90329.tar.bz2 |
* config/obj-coff.c (fixup_segment): Make sure that symbols are
resolved; expression symbols may have been skipped.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 1 | ||||
-rw-r--r-- | gas/config/obj-coff.c | 9 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 743073e..ff72464 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -2,6 +2,7 @@ Thu Dec 12 16:40:47 1996 Ian Lance Taylor <ian@cygnus.com> * write.c (adjust_reloc_syms): Make sure that symbols are resolved; expression symbols may have been skipped. + * config/obj-coff.c (fixup_segment): Likewise. Thu Dec 12 15:18:21 1996 Michael Meissner <meissner@tiktok.cygnus.com> diff --git a/gas/config/obj-coff.c b/gas/config/obj-coff.c index eea84bc..d06212e 100644 --- a/gas/config/obj-coff.c +++ b/gas/config/obj-coff.c @@ -22,7 +22,6 @@ #include "as.h" #include "obstack.h" #include "subsegs.h" -#include "libiberty.h" /* I think this is probably always correct. */ #ifndef KEEP_RELOC_INFO @@ -1654,6 +1653,7 @@ do_relocs_for (abfd, h, file_cursor) /* Turn the segment of the symbol into an offset. */ if (symbol_ptr) { + resolve_symbol_value (symbol_ptr); if (! symbol_ptr->sy_resolved) { char *file; @@ -3840,6 +3840,13 @@ fixup_segment (segP, this_segment_type) } #endif + /* Make sure the symbols have been resolved; this may not have + happened if these are expression symbols. */ + if (add_symbolP != NULL && ! add_symbolP->sy_resolved) + resolve_symbol_value (add_symbolP); + if (sub_symbolP != NULL && ! sub_symbolP->sy_resolved) + resolve_symbol_value (sub_symbolP); + if (add_symbolP != NULL && add_symbolP->sy_mri_common) { |