From 48c734280a17a1910ac484bd91a36792fb0041e1 Mon Sep 17 00:00:00 2001 From: Cary Coutant Date: Wed, 4 Mar 2015 15:17:09 -0800 Subject: [PATCH] Fix a race condition when setting default target for ARM targets. gold/ * parameters.cc (Parameters::set_target_once): Call Target::select_as_default_target just once from here... (set_parameters_target): ...instead of from here. --- gold/ChangeLog | 12 +++++++++--- gold/parameters.cc | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/gold/ChangeLog b/gold/ChangeLog index 1f543237182..fe6a56bade5 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,4 +1,10 @@ -2015-03-02 Rafael Ávila de Espíndola +2015-03-04 Cary Coutant + + * parameters.cc (Parameters::set_target_once): Call + Target::select_as_default_target just once from here... + (set_parameters_target): ...instead of from here. + +2015-03-04 Rafael Ávila de Espíndola * ehframe.cc (Cie::set_output_offset): Pass in and use a Output_section_data instead of a Merge_map. @@ -65,13 +71,13 @@ (Merged_symbol_value::value_from_output_section): Use object->merge_output_offset. -2015-02-04 Peter Collingbourne +2015-03-02 Peter Collingbourne Cary Coutant * output.cc (Output_section::add_merge_input_section): Do not attempt to merge sections with an entsize of 0. -2015-02-02 Khem Raj +2015-03-02 Khem Raj * attributes.h (class Output_attributes_section_data ): Add do_print_to_mapfile function. diff --git a/gold/parameters.cc b/gold/parameters.cc index dbda690d16c..8eab000cf52 100644 --- a/gold/parameters.cc +++ b/gold/parameters.cc @@ -125,6 +125,7 @@ Parameters::set_target_once(Target* target) { gold_assert(this->target_ == NULL); this->target_ = target; + target->select_as_default_target(); if (this->options_valid()) { this->check_target_endianness(); @@ -297,7 +298,6 @@ void set_parameters_target(Target* target) { static_parameters.set_target(target); - target->select_as_default_target(); } void -- 2.30.2