diff options
author | Sriraman Tallam <tmsriram@google.com> | 2012-07-16 19:00:18 +0000 |
---|---|---|
committer | Sriraman Tallam <tmsriram@google.com> | 2012-07-16 19:00:18 +0000 |
commit | e890bc57dc4e91d5f540f540a68aad14087e134a (patch) | |
tree | 2710e23df3abe3555f27390a516c0da2ec819158 | |
parent | 9d36926759c52c809e84fb0ba3ce4f76dacaf848 (diff) | |
download | binutils-redhat-e890bc57dc4e91d5f540f540a68aad14087e134a.tar.gz |
2012-07-16 Sriraman Tallam <tmsriram@google.com>
* gold.cc (queue_middle_tasks): Update function order only after
deferred objects due to plugins are processed.
-rw-r--r-- | gold/ChangeLog | 5 | ||||
-rw-r--r-- | gold/gold.cc | 16 |
2 files changed, 13 insertions, 8 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index 5f80c788e8..1e50690a93 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,8 @@ +2012-07-16 Sriraman Tallam <tmsriram@google.com> + + * gold.cc (queue_middle_tasks): Update function order only after + deferred objects due to plugins are processed. + 2012-07-11 Ian Lance Taylor <iant@google.com> * arm.cc (Arm_relocate_functions::abs16): Remove unused typedef. diff --git a/gold/gold.cc b/gold/gold.cc index 013702fed8..dddf5ad674 100644 --- a/gold/gold.cc +++ b/gold/gold.cc @@ -545,6 +545,14 @@ queue_middle_tasks(const General_options& options, } } + // Layout deferred objects due to plugins. + if (parameters->options().has_plugins()) + { + Plugin_manager* plugins = parameters->options().plugins(); + gold_assert(plugins != NULL); + plugins->layout_deferred_objects(); + } + /* If plugins have specified a section order, re-arrange input sections according to a specified section order. If --section-ordering-file is also specified, do not do anything here. */ @@ -559,14 +567,6 @@ queue_middle_tasks(const General_options& options, (*p)->update_section_layout(layout->get_section_order_map()); } - // Layout deferred objects due to plugins. - if (parameters->options().has_plugins()) - { - Plugin_manager* plugins = parameters->options().plugins(); - gold_assert(plugins != NULL); - plugins->layout_deferred_objects(); - } - if (parameters->options().gc_sections() || parameters->options().icf_enabled()) { |