Describe the bug
ELF executables are able to store DWARF debug info in a compressed format, using ZLIB. I have been experimenting with using ZSTD as a replacement for it, and am generally seeing good results. However, on the ".debug_str_offsets" section, I am seeing significantly worse compression ratios with ZSTD than with ZLIB, even at max compression levels (176KB vs 138KB, from 290KB uncompressed).
To Reproduce
I have attached uncompressed.bin.gz, which is an extracted .debug_str_offsets section from a debug build of the LLVM compiler. It has been compressed with gzip -9. You can reproduce my results above by extracting it to obtain uncompressed.bin, and recompressing that with zstd -19.
Expected behavior
I would generally expect ZSTD's compression ratio to be no worse than that of ZLIB.
Desktop (please complete the following information):
zstd command line interface 64-bits v1.5.0
gzip 1.11
Describe the bug
ELF executables are able to store DWARF debug info in a compressed format, using ZLIB. I have been experimenting with using ZSTD as a replacement for it, and am generally seeing good results. However, on the ".debug_str_offsets" section, I am seeing significantly worse compression ratios with ZSTD than with ZLIB, even at max compression levels (176KB vs 138KB, from 290KB uncompressed).
To Reproduce
I have attached uncompressed.bin.gz, which is an extracted
.debug_str_offsetssection from a debug build of the LLVM compiler. It has been compressed withgzip -9. You can reproduce my results above by extracting it to obtainuncompressed.bin, and recompressing that withzstd -19.Expected behavior
I would generally expect ZSTD's compression ratio to be no worse than that of ZLIB.
Desktop (please complete the following information):
zstd command line interface 64-bits v1.5.0gzip 1.11