aboutsummaryrefslogtreecommitdiff
path: root/gold/plugin.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2009-07-17 01:07:33 +0000
committerIan Lance Taylor <ian@airs.com>2009-07-17 01:07:33 +0000
commit1ef4d87fe8cce2596a7d1d1c458db1b11c2c5d0e (patch)
treeedd1a6b59a6e7c8e7b3595d860859e4b28ec002a /gold/plugin.cc
parent98472ae205bbd9266bfe49d112275ede7ea8fe78 (diff)
downloadgdb-1ef4d87fe8cce2596a7d1d1c458db1b11c2c5d0e.zip
gdb-1ef4d87fe8cce2596a7d1d1c458db1b11c2c5d0e.tar.gz
gdb-1ef4d87fe8cce2596a7d1d1c458db1b11c2c5d0e.tar.bz2
PR 10400
* layout.h: #include <map>. (class Kept_section): Change from struct to class. Add accessors and setters. Add section size to Comdat_group mapping. Change Comdat_group to std::map. Add is_comdat_ field. Add linkonce_size field in union. (class Layout): Update declaration of find_or_add_kept_section. Don't declare find_kept_object. * layout.cc (Layout::find_or_add_kept_section): Remove candidate parameter. Add object, shndx, is_comdat, and is_group_name parameters. Change all callers. Adjust for new Kept_section. (Layout::find_kept_object): Remove. * object.cc (Sized_relobj::include_section_group): Update use of Kept_section. Rename secnum to shndx. Only record Kept_comdat_section if sections are the same size. (Sized_relobj::include_linkonce_section): Update use of Kept_section. Only record Kept_comdat_section if sections are the same size. Set size of linkonce section. (Sized_relobj::map_to_kept_section): Update call to get_kept_comdat_section. * object.h (class Sized_relobj): Rename fields in Kept_comdat_section to drop trailing underscores; change object field to Relobj*. Change Kept_comdat_section_table to store struct rather than pointer. (Sized_relobj::set_kept_comdat_section): Remove kept parameter. Add kept_object and kept_shndx parameters. Change all callers. (Sized_relobj::get_kept_comdat_section): Change return type to bool. Add kept_object and kept_shndx parameters. Change all callers. * plugin.cc (Pluginobj::include_comdat_group): Update call to Layout::find_or_add_kept_section.
Diffstat (limited to 'gold/plugin.cc')
-rw-r--r--gold/plugin.cc9
1 files changed, 3 insertions, 6 deletions
diff --git a/gold/plugin.cc b/gold/plugin.cc
index b1007a7..2a21b8f 100644
--- a/gold/plugin.cc
+++ b/gold/plugin.cc
@@ -509,12 +509,9 @@ Pluginobj::include_comdat_group(std::string comdat_key, Layout* layout)
// If this is the first time we've seen this comdat key, ask the
// layout object whether it should be included.
if (ins.second)
- {
- Kept_section to_add(NULL, 1, true);
- ins.first->second = layout->find_or_add_kept_section(comdat_key,
- &to_add,
- NULL);
- }
+ ins.first->second = layout->find_or_add_kept_section(comdat_key,
+ NULL, 0, true,
+ true, NULL);
return ins.first->second;
}