From f7c8a183e8d2c83eddadddb3b473338abf30a1d5 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 23 Jun 2009 07:04:10 +0000 Subject: PR 10133 * stringpool.h (class Stringpool_template): Add optimize_ field. (Stringpool_template::set_optimize): New function. * stringpool.cc (Stringpool_template::Stringpool_template): Initialize optimize_ field. (Stringpool_template::set_string_offsets): Test local optimize fild rather than parameter. * layout.cc (Layout::Layout): Call set_optimize on the section name stringpool. --- gold/stringpool.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gold/stringpool.cc') diff --git a/gold/stringpool.cc b/gold/stringpool.cc index e37846b..05d1d68 100644 --- a/gold/stringpool.cc +++ b/gold/stringpool.cc @@ -36,8 +36,10 @@ namespace gold template Stringpool_template::Stringpool_template() : string_set_(), key_to_offset_(), strings_(), strtab_size_(0), - zero_null_(true) + zero_null_(true), optimize_(false) { + if (parameters->options_valid() && parameters->options().optimize() >= 2) + this->optimize_ = true; } template @@ -395,7 +397,7 @@ Stringpool_template::set_string_offsets() // the strtab size, and gives a relatively small benefit (it's // typically rare for a symbol to be a suffix of another), we only // take the time to sort when the user asks for heavy optimization. - if (parameters->options().optimize() < 2) + if (!this->optimize_) { for (typename String_set_type::iterator curr = this->string_set_.begin(); curr != this->string_set_.end(); -- cgit v1.1