Do not set finalize_syms until after the segments have been sized.
Some backends may still need to access the syms's frags in order to adjust relaxed frags.
This commit is contained in:
parent
9f22353f5b
commit
38b87a1b80
2 changed files with 11 additions and 3 deletions
|
@ -1,5 +1,10 @@
|
||||||
2001-06-27 Nick Clifton <nickc@cambridge.redhat.com>
|
2001-06-27 Nick Clifton <nickc@cambridge.redhat.com>
|
||||||
|
|
||||||
|
* write.c (write_object_file): Do not set finalize_syms until
|
||||||
|
after the segments have been sized. Some backends may still
|
||||||
|
need to access the syms's frags in order to adjust relaxed
|
||||||
|
frags.
|
||||||
|
|
||||||
* config/tc-arm.c (do_ldst): Use MVN to build simple inverted
|
* config/tc-arm.c (do_ldst): Use MVN to build simple inverted
|
||||||
constants.
|
constants.
|
||||||
|
|
||||||
|
|
|
@ -1574,15 +1574,18 @@ write_object_file ()
|
||||||
if (!changed)
|
if (!changed)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
/* Relaxation has completed. Freeze all syms. */
|
|
||||||
finalize_syms = 1;
|
|
||||||
|
|
||||||
|
/* Note - we do not set finalize_syms here because some targets
|
||||||
|
do not finish sizing all of their frags until after size_seg
|
||||||
|
has completed. */
|
||||||
bfd_map_over_sections (stdoutput, size_seg, (char *) 0);
|
bfd_map_over_sections (stdoutput, size_seg, (char *) 0);
|
||||||
#else
|
#else
|
||||||
relax_and_size_all_segments ();
|
relax_and_size_all_segments ();
|
||||||
finalize_syms = 1;
|
|
||||||
#endif /* BFD_ASSEMBLER */
|
#endif /* BFD_ASSEMBLER */
|
||||||
|
|
||||||
|
/* Relaxation has completed. Freeze all syms. */
|
||||||
|
finalize_syms = 1;
|
||||||
|
|
||||||
#if defined (BFD_ASSEMBLER) && defined (OBJ_COFF) && defined (TE_GO32)
|
#if defined (BFD_ASSEMBLER) && defined (OBJ_COFF) && defined (TE_GO32)
|
||||||
/* Now that the segments have their final sizes, run through the
|
/* Now that the segments have their final sizes, run through the
|
||||||
sections and set their vma and lma. !BFD gas sets them, and BFD gas
|
sections and set their vma and lma. !BFD gas sets them, and BFD gas
|
||||||
|
|
Loading…
Add table
Reference in a new issue