diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2006-04-06 18:52:46 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2006-04-06 18:52:46 +0000 |
commit | fbbc375958301d22e296eccef0ff31b36c75d9ca (patch) | |
tree | 5978463f47363265740b2ab8986a62a69ad9faa8 /include | |
parent | 7f198e01c2e54f523e8f27c8b485a81643801a0b (diff) | |
download | fsf-binutils-gdb-fbbc375958301d22e296eccef0ff31b36c75d9ca.zip fsf-binutils-gdb-fbbc375958301d22e296eccef0ff31b36c75d9ca.tar.gz fsf-binutils-gdb-fbbc375958301d22e296eccef0ff31b36c75d9ca.tar.bz2 |
bfd/
2006-04-06 H.J. Lu <hongjiu.lu@intel.com>
* elfxx-ia64.c (elfNN_ia64_relax_section): Skip unneeded passes
with the skip_relax_pass_0 and skip_relax_pass_1 bits in the
section structure.
include/
2006-04-06 H.J. Lu <hongjiu.lu@intel.com>
* bfdlink.h (bfd_link_info): Replace need_relax_finalize with
relax_pass.
ld/
2006-04-06 H.J. Lu <hongjiu.lu@intel.com>
* emultempl/ia64elf.em: Set link_info.relax_pass to 2. Remove
link_info.need_relax_finalize.
* ldlang.c (relax_sections): New.
(lang_process): Use. Call relax_sections link_info.relax_pass
times.
* ldmain.c (main): Set link_info.relax_pass to 1. Remove
link_info.need_relax_finalize.
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 5 | ||||
-rw-r--r-- | include/bfdlink.h | 9 |
2 files changed, 11 insertions, 3 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 4af593f..af4eb6d 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,8 @@ +2006-04-06 H.J. Lu <hongjiu.lu@intel.com> + + * bfdlink.h (bfd_link_info): Replace need_relax_finalize with + relax_pass. + 2006-03-25 Bernd Schmidt <bernd.schmidt@analog.com> * elf/bfin.h (R_BFIN_GOT17M4, R_BFIN_GOTHI, R_BFIN_GOTLO, diff --git a/include/bfdlink.h b/include/bfdlink.h index 3c978e8..f4b7aa7 100644 --- a/include/bfdlink.h +++ b/include/bfdlink.h @@ -301,9 +301,6 @@ struct bfd_link_info /* TRUE if global symbols in discarded sections should be stripped. */ unsigned int strip_discarded: 1; - /* TRUE if the final relax pass is needed. */ - unsigned int need_relax_finalize: 1; - /* TRUE if generating a position independent executable. */ unsigned int pie: 1; @@ -398,6 +395,12 @@ struct bfd_link_info unloaded. */ const char *fini_function; + /* Number of relaxation passes. Usually only one relaxation pass + is needed. But a backend can have as many relaxation passes as + necessary. During bfd_relax_section call, it is set to the + current pass, starting from 0. */ + int relax_pass; + /* Non-zero if auto-import thunks for DATA items in pei386 DLLs should be generated/linked against. Set to 1 if this feature is explicitly requested by the user, -1 if enabled by default. */ |