aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2012-10-24 11:09:28 +0000
committerH.J. Lu <hjl.tools@gmail.com>2012-10-24 11:09:28 +0000
commit4f9d22a0b15a371db7df4b41c1633fde25932ff1 (patch)
treeaa6979c634219b862efa215bac762baf06d62365 /include
parent35c813e2242319efee1bad5c7cdd6e7e224ce94e (diff)
downloadfsf-binutils-gdb-4f9d22a0b15a371db7df4b41c1633fde25932ff1.zip
fsf-binutils-gdb-4f9d22a0b15a371db7df4b41c1633fde25932ff1.tar.gz
fsf-binutils-gdb-4f9d22a0b15a371db7df4b41c1633fde25932ff1.tar.bz2
Move disable_target_specific_optimizations to bfd_link_info
include/ * bfdlink.h (bfd_link_info): Add disable_target_specific_optimizations. ld/ * ld.h (command_line): Remove disable_target_specific_optimizations. (RELAXATION_DISABLED_BY_DEFAULT): Removed. (RELAXATION_DISABLED_BY_USER): Likewise. (RELAXATION_ENABLED): Likewise. (DISABLE_RELAXATION): Likewise. (ENABLE_RELAXATION): Likewise. * ldmain.c (main): Updated. * ldmain.h (RELAXATION_DISABLED_BY_DEFAULT): New macro. (RELAXATION_DISABLED_BY_USER): Likewise. (RELAXATION_ENABLED): Likewise. (DISABLE_RELAXATION): Likewise. (ENABLE_RELAXATION): Likewise.
Diffstat (limited to 'include')
-rw-r--r--include/ChangeLog5
-rw-r--r--include/bfdlink.h18
2 files changed, 23 insertions, 0 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index e4b1a2d..d83ca9c 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+2012-10-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfdlink.h (bfd_link_info): Add
+ disable_target_specific_optimizations.
+
2012-10-23 Nathan Sidwell <nathan@codesourcery.com>
* bfdlink.h (struct bfd_link_info): Add stacksize option.
diff --git a/include/bfdlink.h b/include/bfdlink.h
index 3ff1c92..bf44dee 100644
--- a/include/bfdlink.h
+++ b/include/bfdlink.h
@@ -420,6 +420,24 @@ struct bfd_link_info
means explicitly zero-sized. */
bfd_signed_vma stacksize;
+ /* Enable or disable target specific optimizations.
+
+ Not all targets have optimizations to enable.
+
+ Normally these optimizations are disabled by default but some targets
+ prefer to enable them by default. So this field is a tri-state variable.
+ The values are:
+
+ zero: Enable the optimizations (either from --relax being specified on
+ the command line or the backend's before_allocation emulation function.
+
+ positive: The user has requested that these optimizations be disabled.
+ (Via the --no-relax command line option).
+
+ negative: The optimizations are disabled. (Set when initializing the
+ args_type structure in ldmain.c:main. */
+ signed int disable_target_specific_optimizations;
+
/* Function callbacks. */
const struct bfd_link_callbacks *callbacks;