diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2015-07-12 10:56:41 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2015-07-12 10:56:58 -0700 |
commit | fb8b9dbc147d37129e5a366a395302f532f5d190 (patch) | |
tree | e19ef3d0329c2db4d6d7843c108c715b0b23f193 /gold/output.h | |
parent | 480586639d6b814b2e87f6f106b8635cf7442b20 (diff) | |
download | gdb-fb8b9dbc147d37129e5a366a395302f532f5d190.zip gdb-fb8b9dbc147d37129e5a366a395302f532f5d190.tar.gz gdb-fb8b9dbc147d37129e5a366a395302f532f5d190.tar.bz2 |
Extend --compress-debug-sections in gold
This patch extends --compress-debug-sections= with [zlib-gnu|zlib-gabi]
in gold.
PR gold/18322
* compressed_output.cc (zlib_compress): Add argument for
compression header size. Set header size to compression header
size if it isn't 0. Don't write out the zlib header here.
(Output_compressed_section::set_final_data_size): Support
zlib-gnu and zlib-gabi compressions. Pass compression header
size to zlib_compress and write out compression header. Set
the SHF_COMPRESSED bit for zlib-gabi compression. Otherwise
clear the SHF_COMPRESSED bit
* options.h (compress_debug_sections): Add zlib-gnu and
zlib-gabi.
* output.h (Output_section::set_flags): New.
* testsuite/Makefile.am (check_PROGRAMS): Add
flagstest_compress_debug_sections_none,
flagstest_compress_debug_sections_gnu and
flagstest_compress_debug_sections_gabi.
(check_DATA): Add flagstest_compress_debug_sections_none.stdout.
flagstest_compress_debug_sections.stdout,
flagstest_compress_debug_sections.cmp,
flagstest_compress_debug_sections.check,
flagstest_compress_debug_sections_gnu.stdout,
flagstest_compress_debug_sections_gnu.cmp,
flagstest_compress_debug_sections_gnu.check,
flagstest_compress_debug_sections_gabi.stdout,
flagstest_compress_debug_sections_gabi.cmp and
flagstest_compress_debug_sections_gabi.check.
(flagstest_compress_debug_sections_none): New.
(flagstest_compress_debug_sections_none.stdout): Likewise.
(flagstest_compress_debug_sections.stdout): Likewise.
(flagstest_compress_debug_sections.check): Likewise.
(flagstest_compress_debug_sections.cmp): Likewise.
(flagstest_compress_debug_sections_gnu): Likewise.
(flagstest_compress_debug_sections_gnu.stdout): Likewise.
(flagstest_compress_debug_sections_gnu.check): Likewise.
(flagstest_compress_debug_sections_gnu.cmp): Likewise.
(flagstest_compress_debug_sections_gabi): Likewise.
(flagstest_compress_debug_sections_gabi.stdout): Likewise.
(flagstest_compress_debug_sections_gnu.check): Likewise.
(flagstest_compress_debug_sections_gnu.cmp): Likewise.
* testsuite/Makefile.in: Regenerated.
Diffstat (limited to 'gold/output.h')
-rw-r--r-- | gold/output.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gold/output.h b/gold/output.h index be72965..c7ad54e 100644 --- a/gold/output.h +++ b/gold/output.h @@ -3100,6 +3100,11 @@ class Output_section : public Output_data void update_flags_for_input_section(elfcpp::Elf_Xword flags); + // Set the output section flags. + void + set_flags(elfcpp::Elf_Xword flags) + { this->flags_ = flags; } + // Return the entsize field. uint64_t entsize() const |