From ef5e0cb158fe57480e963c022879ccf50bf1f335 Mon Sep 17 00:00:00 2001 From: Sriraman Tallam Date: Thu, 13 Aug 2009 00:03:43 +0000 Subject: [PATCH] 2009-08-12 Sriraman Tallam * icf.cc (Icf::find_identical_sections): Issue a warning when a symbol in the --keep-unique list is not found. --- gold/ChangeLog | 5 +++++ gold/icf.cc | 9 ++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/gold/ChangeLog b/gold/ChangeLog index 0f97482..14709bf 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,5 +1,10 @@ 2009-08-12 Sriraman Tallam + * icf.cc (Icf::find_identical_sections): Issue a warning when a + symbol in the --keep-unique list is not found. + +2009-08-12 Sriraman Tallam + * icf.cc (Icf::find_identical_sections): Unfold symbols that have been maked as --keep-unique. (Icf::unfold_section): New function. diff --git a/gold/icf.cc b/gold/icf.cc index 6f95922..411cf2e 100644 --- a/gold/icf.cc +++ b/gold/icf.cc @@ -606,9 +606,12 @@ Icf::find_identical_sections(const Input_objects* input_objects, { const char* name = p->c_str(); Symbol* sym = symtab->lookup(name); - if (sym != NULL - && sym->source() == Symbol::FROM_OBJECT - && !sym->object()->is_dynamic()) + if (sym == NULL) + { + gold_warning(_("Could not find symbol %s to unfold\n"), name); + } + else if (sym->source() == Symbol::FROM_OBJECT + && !sym->object()->is_dynamic()) { Object* obj = sym->object(); bool is_ordinary; -- 2.7.4