diff options
author | Sriraman Tallam <tmsriram@google.com> | 2012-12-19 02:55:15 +0000 |
---|---|---|
committer | Sriraman Tallam <tmsriram@google.com> | 2012-12-19 02:55:15 +0000 |
commit | 28f2a4ac6f40b5bf1fccc1fa320b41f82f3c5cc9 (patch) | |
tree | 07a61340c8370a3db3f6fdafa7c020d26eaaf70e /gold/layout.h | |
parent | e0e51b23915fa452d757ee8e36d84324b6b53e7b (diff) | |
download | gdb-28f2a4ac6f40b5bf1fccc1fa320b41f82f3c5cc9.zip gdb-28f2a4ac6f40b5bf1fccc1fa320b41f82f3c5cc9.tar.gz gdb-28f2a4ac6f40b5bf1fccc1fa320b41f82f3c5cc9.tar.bz2 |
Group text sections with prefixes .text.unlikely,.text.hot and .text.startup
by default.
2012-12-18 Sriraman Tallam <tmsriram@google.com>
* layout.cc (Layout::is_section_name_prefix_grouped): New function.
* layout.h (Layout::is_section_name_prefix_grouped): New function.
* output.cc (Output_section::add_input_section): Check if section
name contains special prefix. Keep input sections to sort such
sections.
(Output_section::Input_section_sort_section_order_index_compare
::operator()): Group sections according to prefixes.
* (Output_section::sort_attached_input_sections): Add condition
to Input_section_entry constructor call.
* testsuite/Makefile.am (text_section_grouping): New test.
* testsuite/Makefile.in: Regenerate.
* testsuite/text_section_grouping.cc: New file.
* testsuite/text_section_grouping.sh: New file.
Diffstat (limited to 'gold/layout.h')
-rw-r--r-- | gold/layout.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gold/layout.h b/gold/layout.h index cf41f32..71f1aa7 100644 --- a/gold/layout.h +++ b/gold/layout.h @@ -552,6 +552,11 @@ class Layout // Maps section SECN to SEGMENT s. void insert_section_segment_map(Const_section_id secn, Unique_segment_info *s); + + // By default, gold groups input sections with certain prefixes. This + // function returns true if this section name NAME contains such a prefix. + bool + is_section_name_prefix_grouped(const char *name); bool is_section_ordering_specified() |