diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2015-07-14 10:25:52 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2015-07-14 10:26:23 -0700 |
commit | 19a7fe52ae3d0971e67a134bcb1648899e21ae1c (patch) | |
tree | 08f4f3425d6bed3ed2996c8cdb5b7b93015b77c3 /gold | |
parent | 22121df01ff9247b3cb272f52632848f9631f80f (diff) | |
download | gdb-19a7fe52ae3d0971e67a134bcb1648899e21ae1c.zip gdb-19a7fe52ae3d0971e67a134bcb1648899e21ae1c.tar.gz gdb-19a7fe52ae3d0971e67a134bcb1648899e21ae1c.tar.bz2 |
Make default compression gABI compliant
All programs in binutils+gdb git repo now support gABI compression
with the SHF_COMPRESSED bit. This patch makes the zlib-gabi option
as compression default for gas, gold, ld and objcopy, instead of the
zlib-gnu option whose outputs are incompatible with gABI.
binutils/
* objcopy.c (copy_file): Set BFD_COMPRESS_GABI if not
zlib-gnu.
* doc/binutils.texi: Change --compress-debug-sections and
--compress-debug-sections=zlib to zlib-gabi.
binutils/testsuite/
* binutils-all/compress.exp: Update.
gas/
* as.c (parse_args): Make --compress-debug-sections and
--compress-debug-sections=zlib the same as
--compress-debug-sections=zlib-gabi.
* doc/as.texinfo: Change --compress-debug-sections and
--compress-debug-sections=zlib to zlib-gabi.
gold/
* compressed_output.cc (Output_compressed_section::set_final_data_size):
Make --compress-debug-sections=zlib the same as
--compress-debug-sections=zlib-gabi.
* testsuite/Makefile.am (flagstest_compress_debug_sections.check):
Expect ".debug_.*" with the SHF_COMPRESSED bit, instead of
".zdebug_".
* testsuite/Makefile.in: Regenerated.
ld/
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Make
--compress-debug-sections=zlib the same as
--compress-debug-sections=zlib-gabi.
* ld.texinfo: Change --compress-debug-sections=zlib to zlib-gabi.
ld/testsuite/
* ld-elf/zlibbegin.rS: Updated to .debug_.* with the
SHF_COMPRESSED bit.
* ld-elf/zlibnormal.rS: Likewise.
Diffstat (limited to 'gold')
-rw-r--r-- | gold/ChangeLog | 10 | ||||
-rw-r--r-- | gold/compressed_output.cc | 7 | ||||
-rw-r--r-- | gold/testsuite/Makefile.am | 4 | ||||
-rw-r--r-- | gold/testsuite/Makefile.in | 4 |
4 files changed, 17 insertions, 8 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index a8c2507..309b4753 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,13 @@ +2015-07-14 H.J. Lu <hongjiu.lu@intel.com> + + * compressed_output.cc (Output_compressed_section::set_final_data_size): + Make --compress-debug-sections=zlib the same as + --compress-debug-sections=zlib-gabi. + * testsuite/Makefile.am (flagstest_compress_debug_sections.check): + Expect ".debug_.*" with the SHF_COMPRESSED bit, instead of + ".zdebug_". + * testsuite/Makefile.in: Regenerated. + 2015-07-12 H.J. Lu <hongjiu.lu@intel.com> PR gold/18322 diff --git a/gold/compressed_output.cc b/gold/compressed_output.cc index 2630330..77679fe 100644 --- a/gold/compressed_output.cc +++ b/gold/compressed_output.cc @@ -233,11 +233,10 @@ Output_compressed_section::set_final_data_size() enum { none, gnu_zlib, gabi_zlib } compress; int compression_header_size = 12; const int size = parameters->target().get_size(); - if (strcmp(this->options_->compress_debug_sections(), "zlib") == 0) + if (strcmp(this->options_->compress_debug_sections(), "zlib-gnu") == 0) compress = gnu_zlib; - else if (strcmp(this->options_->compress_debug_sections(), "zlib-gnu") == 0) - compress = gnu_zlib; - else if (strcmp(this->options_->compress_debug_sections(), "zlib-gabi") == 0) + else if (strcmp(this->options_->compress_debug_sections(), "zlib-gabi") == 0 + || strcmp(this->options_->compress_debug_sections(), "zlib") == 0) { compress = gabi_zlib; if (size == 32) diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am index d2f4668..41186c6 100644 --- a/gold/testsuite/Makefile.am +++ b/gold/testsuite/Makefile.am @@ -1353,9 +1353,9 @@ flagstest_compress_debug_sections.stdout: flagstest_compress_debug_sections $(TEST_READELF) -w $< | sed -e "s/.zdebug_/.debug_/" > $@.tmp mv -f $@.tmp $@ -# Check there are compressed DWARF .zdebug_* sections. +# Check there are compressed DWARF .debug_* sections. flagstest_compress_debug_sections.check: flagstest_compress_debug_sections - $(TEST_READELF) -SW $< | grep ".zdebug_" > $@.tmp + $(TEST_READELF) -SW $< | egrep ".debug_.* C *" > $@.tmp mv -f $@.tmp $@ # Compare DWARF debug info. diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in index 1c336c6..563f598 100644 --- a/gold/testsuite/Makefile.in +++ b/gold/testsuite/Makefile.in @@ -5618,9 +5618,9 @@ uninstall-am: @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(TEST_READELF) -w $< | sed -e "s/.zdebug_/.debug_/" > $@.tmp @GCC_TRUE@@NATIVE_LINKER_TRUE@ mv -f $@.tmp $@ -# Check there are compressed DWARF .zdebug_* sections. +# Check there are compressed DWARF .debug_* sections. @GCC_TRUE@@NATIVE_LINKER_TRUE@flagstest_compress_debug_sections.check: flagstest_compress_debug_sections -@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(TEST_READELF) -SW $< | grep ".zdebug_" > $@.tmp +@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(TEST_READELF) -SW $< | egrep ".debug_.* C *" > $@.tmp @GCC_TRUE@@NATIVE_LINKER_TRUE@ mv -f $@.tmp $@ # Compare DWARF debug info. |