diff options
author | Cary Coutant <ccoutant@google.com> | 2011-05-11 00:29:57 +0000 |
---|---|---|
committer | Cary Coutant <ccoutant@google.com> | 2011-05-11 00:29:57 +0000 |
commit | 403676b5704d576dfc3a663e4d55d6525053ce3f (patch) | |
tree | daf1f45202efe420328190d056d320a21fd53732 /gold | |
parent | fc5303d01105371c0b676352efc63b6071c51133 (diff) | |
download | gdb-403676b5704d576dfc3a663e4d55d6525053ce3f.zip gdb-403676b5704d576dfc3a663e4d55d6525053ce3f.tar.gz gdb-403676b5704d576dfc3a663e4d55d6525053ce3f.tar.bz2 |
* object.cc (Sized_relobj::do_count_local_symbols): Check for
strip_all (-s).
Diffstat (limited to 'gold')
-rw-r--r-- | gold/ChangeLog | 5 | ||||
-rw-r--r-- | gold/object.cc | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index f198b80..ec9abb3 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,8 @@ +2011-05-10 Cary Coutant <ccoutant@google.com> + + * object.cc (Sized_relobj::do_count_local_symbols): Check for + strip_all (-s). + 2011-05-06 Ian Lance Taylor <iant@google.com> * layout.cc (Layout::layout): If the output section flags change, diff --git a/gold/object.cc b/gold/object.cc index b1fc25c..a39a37c 100644 --- a/gold/object.cc +++ b/gold/object.cc @@ -1824,6 +1824,7 @@ Sized_relobj<size, big_endian>::do_count_local_symbols(Stringpool* pool, unsigned int dyncount = 0; // Skip the first, dummy, symbol. psyms += sym_size; + bool strip_all = parameters->options().strip_all(); bool discard_all = parameters->options().discard_all(); bool discard_locals = parameters->options().discard_locals(); for (unsigned int i = 1; i < loccount; ++i, psyms += sym_size) @@ -1882,7 +1883,8 @@ Sized_relobj<size, big_endian>::do_count_local_symbols(Stringpool* pool, ++dyncount; } - if (discard_all && lv.may_be_discarded_from_output_symtab()) + if (strip_all + || (discard_all && lv.may_be_discarded_from_output_symtab())) { lv.set_no_output_symtab_entry(); continue; |