summaryrefslogtreecommitdiff
path: root/ld/ldmain.h
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2012-10-24 11:09:27 +0000
committerH.J. Lu <hjl.tools@gmail.com>2012-10-24 11:09:27 +0000
commitbba868954a8cff7ace8922ee8c6fe95cdb068ecf (patch)
tree5cbe5cafdf591446725302499f4aad8258814740 /ld/ldmain.h
parent6d511a02cdf3a78ab855b0b2125250a78158d873 (diff)
downloadbinutils-redhat-bba868954a8cff7ace8922ee8c6fe95cdb068ecf.tar.gz
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 'ld/ldmain.h')
-rw-r--r--ld/ldmain.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/ld/ldmain.h b/ld/ldmain.h
index 4d6bb04000..69928f8207 100644
--- a/ld/ldmain.h
+++ b/ld/ldmain.h
@@ -39,6 +39,17 @@ extern const char *output_filename;
extern struct bfd_link_info link_info;
extern int overflow_cutoff_limit;
+#define RELAXATION_DISABLED_BY_DEFAULT \
+ (link_info.disable_target_specific_optimizations < 0)
+#define RELAXATION_DISABLED_BY_USER \
+ (link_info.disable_target_specific_optimizations > 0)
+#define RELAXATION_ENABLED \
+ (link_info.disable_target_specific_optimizations == 0)
+#define DISABLE_RELAXATION \
+ do { link_info.disable_target_specific_optimizations = 1; } while (0)
+#define ENABLE_RELAXATION \
+ do { link_info.disable_target_specific_optimizations = 0; } while (0)
+
extern void add_ysym (const char *);
extern void add_wrap (const char *);
extern void add_ignoresym (struct bfd_link_info *, const char *);