aboutsummaryrefslogtreecommitdiff
path: root/gold
diff options
context:
space:
mode:
authorCary Coutant <ccoutant@gmail.com>2015-11-05 12:59:02 -0800
committerCary Coutant <ccoutant@gmail.com>2015-11-05 12:59:19 -0800
commit96f9814df23564e16909bb5ba00de4a202c63417 (patch)
treef53d2b10048697e57b7698c948f81e9ebc7017e9 /gold
parent0eccf19f96d6218dd7c2f8d13f0546c2b942cc08 (diff)
downloadgdb-96f9814df23564e16909bb5ba00de4a202c63417.zip
gdb-96f9814df23564e16909bb5ba00de4a202c63417.tar.gz
gdb-96f9814df23564e16909bb5ba00de4a202c63417.tar.bz2
Revert patch for PR 19119, which led to PR 19172 and 19197.
Gold does not support all the emulations that Gnu ld does, and supports only one spelling per target. The -m option is used only in the rare case where there are no ELF input files, and we produce an empty output file. In those cases, users are expected to supply a -m option naming one of the supported emulations. In the many cases where a build script provides an unnecessary -m option naming an emulation that gold does not support, we will simply ignore the option, as we did before the reverted patch. gold/ PR gold/19119 PR gold/19172 PR gold/19197 Revert commit 6457197210144f50a696097c0d308d81d46d5510: 2015-10-16 H.J. Lu <hongjiu.lu@intel.com> * options.h (General_options): Remove "obsolete" from -m. * parameters.cc (set_parameters_target): Check if input target is compatible with output emulation set by "-m emulation".
Diffstat (limited to 'gold')
-rw-r--r--gold/ChangeLog11
-rw-r--r--gold/options.h2
-rw-r--r--gold/parameters.cc10
3 files changed, 12 insertions, 11 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index e389438..7996229 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,5 +1,16 @@
2015-11-05 Cary Coutant <ccoutant@gmail.com>
+ PR gold/19119
+ PR gold/19172
+ PR gold/19197
+ Revert commit 6457197210144f50a696097c0d308d81d46d5510:
+ 2015-10-16 H.J. Lu <hongjiu.lu@intel.com>
+ * options.h (General_options): Remove "obsolete" from -m.
+ * parameters.cc (set_parameters_target): Check if input target
+ is compatible with output emulation set by "-m emulation".
+
+2015-11-05 Cary Coutant <ccoutant@gmail.com>
+
PR gold/19163
* aarch64.cc (Target_aarch64::Relocate::relocate): Don't apply
certain relocations if --no-apply-dynamic-relocs is set.
diff --git a/gold/options.h b/gold/options.h
index 5756014..ffc44e6 100644
--- a/gold/options.h
+++ b/gold/options.h
@@ -939,7 +939,7 @@ class General_options
N_("OFFSET"));
DEFINE_string(m, options::EXACTLY_ONE_DASH, 'm', "",
- N_("Set GNU linker emulation"), N_("EMULATION"));
+ N_("Set GNU linker emulation; obsolete"), N_("EMULATION"));
DEFINE_bool(mmap_output_file, options::TWO_DASHES, '\0', true,
N_("Map the output file for writing (default)."),
diff --git a/gold/parameters.cc b/gold/parameters.cc
index 15df42a..5ed1912 100644
--- a/gold/parameters.cc
+++ b/gold/parameters.cc
@@ -297,16 +297,6 @@ set_parameters_options(const General_options* options)
void
set_parameters_target(Target* target)
{
- if (parameters->options_valid() && parameters->options().user_set_m())
- {
- const char* emulation = parameters->options().m();
- Target* output = select_target_by_emulation(emulation);
- if (!output)
- gold_error(_("unrecognised output emulation: %s"), emulation);
- else if (output != target)
- gold_error(_("input file is incompatible with %s output emulation"),
- emulation);
- }
static_parameters.set_target(target);
}