Skip to content
Snippets Groups Projects
  1. Aug 04, 2023
  2. Aug 03, 2023
    • Richard Biener's avatar
      [libbacktrace] fix up broken test · cc279d6c
      Richard Biener authored
      zstdtest has some inline data where some testcases lack the
      uncompressed length field.  Thus it computes that but still
      ends up allocating memory for the uncompressed buffer based on
      that (zero) length.  Oops.  Causes memory corruption if the
      allocator returns non-NULL.
      
      libbacktrace/
      	* zstdtest.c (test_samples): Properly compute the allocation
      	size for the uncompressed data.
      
      (cherry picked from commit a9b60439)
      cc279d6c
  3. Jul 27, 2023
  4. Apr 26, 2023
  5. Mar 29, 2023
  6. Mar 28, 2023
    • Ian Lance Taylor's avatar
      libbacktrace: minor fixes for zstd decompression · 2e71f054
      Ian Lance Taylor authored
      	* elf.c (elf_zstd_read_fse): Call elf_fetch_bits after reading
      	bits, not before.  Add unlikely for error case.
      	(elf_zstd_offset_table): Regenerate.
      	(elf_zstd_read_huff): Clear 13 entries in weight_mark, not 12.
      	(elf_zstd_read_literals): For a single stream adjust by
      	total_streams_size, not compressed_size.
      2e71f054
  7. Jan 21, 2023
  8. Jan 20, 2023
    • Ian Lance Taylor's avatar
      libbacktrace: change PC variables from uint64_t to uintptr_t · 0c193cab
      Ian Lance Taylor authored
      	Change variables holding PC values from uint64_t to uintptr_t.
      	Patch by Björn Schäpers.
      	* dwarf.c (struct function_addrs): Change low and high fields to
      	uintptr_t.
      	(struct unit_addrs): Likewise.
      	(resolve_addr_index): Change address parameter to uintptr_t*.
      	(add_unit_addr): Change lowpc and highpc parameters to uintptr_t.
      	(add_function_range): Likewise.
      	(struct pcrange): Change lowpc and highpc fields to uintptr_t.
      	(add_low_high_range): Change add_range lowpc and highpc parameters
      	to uintptr_t.
      	(add_ranges_from_ranges): Likewise.
      	(add_ranges_from_rnglists): Likewise.
      	(add_low_high_range): Chnage lowpc and highpc variables to
      	uintpr_t.
      	(add_ranges_from_rnglists): Change some local variables to
      	uintptr_t.
      	(add_ranges_from_ranges): Change base parameter to uintptr_t.
      	(add_ranges_from_rnglists): Likewise.
      	(read_function_entry): Likewise.
      	(resolve_addr_index): Add explicit casts to uintptr_t.
      	(update_pcrange): Likewise.
      	(add_ranges_from_ranges): Likewise.
      	(add_ranges_from_rnglists): Likewise.
      	(read_function_entry): Likewise.
      0c193cab
  9. Jan 18, 2023
  10. Jan 17, 2023
    • Martin Liska's avatar
      Regenerate Makefile.in files. · 42bf66e4
      Martin Liska authored
      libbacktrace/ChangeLog:
      
      	* Makefile.in: Regenerate.
      
      libgomp/ChangeLog:
      
      	* Makefile.in: Regenerate.
      	* configure: Regenerate.
      
      libphobos/ChangeLog:
      
      	* Makefile.in: Regenerate.
      	* libdruntime/Makefile.in: Regenerate.
      
      libstdc++-v3/ChangeLog:
      
      	* src/libbacktrace/Makefile.in: Regenerate.
      42bf66e4
  11. Jan 16, 2023
  12. Jan 07, 2023
  13. Jan 06, 2023
  14. Jan 02, 2023
  15. Dec 18, 2022
  16. Dec 17, 2022
    • Ian Lance Taylor's avatar
      libbacktrace: unpack literals into output buffer · b1f91819
      Ian Lance Taylor authored
      	* elf.c (elf_fetch_backward_init): New static function.
      	(ZSTD_TABLE_SIZE): Use huffman scratch space size rather than
      	literal size.
      	(ZSTD_TABLE_WORK_LIT_SIZE): Don't define.
      	(elf_zstd_read_huff): Use elf_fetch_backward_init.
      	(elf_zstd_read_literals): New static function.
      	(ZSTD_LIT_RAW, ZSTD_LIT_RLE, ZSTD_LIT_HUFF): Don't define.
      	(struct elf_zstd_literals): Don't define.
      	(elf_zstd_literal_output): Remove static function.
      	(elf_zstd_decompress): Use elf_fetch_backward_init and
      	elf_zstd_read_literals.  Rewrite literal copying.<
      b1f91819
  17. Dec 11, 2022
  18. Dec 10, 2022
    • Ian Lance Taylor's avatar
      libbacktrace: rewrite and simplify main zstd loop · 1bdba731
      Ian Lance Taylor authored
      	* elf.c (ZSTD_TABLE_*): Use elf_zstd_fse_baseline_entry.
      	(ZSTD_ENCODE_BASELINE_BITS): Define.
      	(ZSTD_DECODE_BASELINE, ZSTD_DECODE_BASEBITS): Define.
      	(elf_zstd_literal_length_base): New static const array.
      	(elf_zstd_match_length_base): Likewise.
      	(struct elf_zstd_fse_baseline_entry): Define.
      	(elf_zstd_make_literal_baseline_fse): New static function.
      	(elf_zstd_make_offset_baseline_fse): Likewise.
      	(elf_zstd_make_match_baseline_fse): Likewise.
      	(print_table, main): Use elf_zstd_fse_baseline_entry.
      	(elf_zstd_lit_table, elf_zstd_match_table): Likewise.
      	(elf_zstd_offset_table): Likewise.
      	(struct elf_zstd_seq_decode): Likewise.  Remove use_rle and rle
      	fields.
      	(elf_zstd_unpack_seq_decode): Use elf_zstd_fse_baseline_entry,
      	taking a conversion function.  Convert RLE to FSE.
      	(elf_zstd_literal_length_baseline): Remove.
      	(elf_zstd_literal_length_bits): Remove.
      	(elf_zstd_match_length_baseline): Remove.
      	(elf_zstd_match_length_bits): Remove.
      	(elf_zstd_decompress): Use elf_zstd_fse_baseline_entry.  Rewrite
      	and simplify main loop.
      1bdba731
  19. Dec 09, 2022
  20. Dec 08, 2022
    • Ian Lance Taylor's avatar
      libbacktrace: support zstd decompression · 9df1ba9a
      Ian Lance Taylor authored
      	Support decompressing --compress-debug-sections=zstd.
      	* configure.ac: Check for zstd library and
      	--compress-debug-sections=zstd linker option.
      	* Makefile.am (zstdtest_*): New targets.
      	(zstdtest_alloc_*, ctestzstd_*): New targets.
      	(BUILDTESTS): Add zstdtest, zstdtest_alloc, ctestzstd as
      	appropriate.
      	* elf.c (ELFCOMPRESS_ZSTD): Define.
      	(elf_fetch_bits): Rename from elf_zlib_fetch.  Update uses.
      	(elf_fetch_bits_backward): New static function.
      	(ZLIB_HUFFMAN_*): Rename from HUFFMAN_*.  Update uses.
      	(ZLIB_TABLE_*): Rename from ZDEBUG_TABLE_*.  Update uses.
      	(ZSTD_TABLE_*): Define.
      	(struct elf_zstd_fse_entry): Define.
      	(elf_zstd_read_fse): New static function.
      	(elf_zstd_build_fse): Likewise.
      	(lit): Define if BACKTRACE_GENERATE_ZSTD_FSE_TABLES.
      	(match, offset, next, print_table, main): Likewise.
      	(elf_zstd_lit_table): New static const array.
      	(elf_zstd_match_table, elf_zstd_offset_table): Likewise.
      	(elf_zstd_read_huff): New static function.
      	(struct elf_zstd_seq_decode): Define.
      	(elf_zstd_unpack_seq_decode): New static function.
      	(ZSTD_LIT_*): Define.
      	(struct elf_zstd_literals): Define.
      	(elf_zstd_literal_output): New static function.
      	(ZSTD_LITERAL_LENGTH_BASELINE_OFFSET): Define.
      	(elf_zstd_literal_length_baseline): New static const array.
      	(elf_zstd_literal_length_bits): Likewise.
      	(ZSTD_MATCH_LENGTH_BASELINE_OFFSET): Define.
      	(elf_zstd_match_length_baseline): New static const array.
      	(elf_zstd_match_length_bits): Likewise.
      	(elf_zstd_decompress): New static function.
      	(ZDEBUG_TABLE_SIZE): New definition.
      	(elf_uncompress_chdr): Support ELF_COMPRESS_ZSTD.
      	(backtrace_uncompress_zstd): New function.
      	(elf_add): Use ZLIB_TABLE_SIZE for zlib-gnu sections.
      	* internal.h (backtrace_uncompress_zstd): Declare.
      	* zstdtest.c: New file.
      	* configure, config.h.in, Makefile.in: Regenerate.
      9df1ba9a
  21. Oct 13, 2022
  22. Oct 12, 2022
    • Martin Liska's avatar
      regenerate configure files · 6d2294a8
      Martin Liska authored
      Needed after a recent change.
      
      gcc/ChangeLog:
      
      	* configure: Regenerate.
      
      libatomic/ChangeLog:
      
      	* configure: Regenerate.
      
      libbacktrace/ChangeLog:
      
      	* configure: Regenerate.
      
      libcc1/ChangeLog:
      
      	* configure: Regenerate.
      
      libffi/ChangeLog:
      
      	* configure: Regenerate.
      
      libgfortran/ChangeLog:
      
      	* configure: Regenerate.
      
      libgomp/ChangeLog:
      
      	* configure: Regenerate.
      
      libitm/ChangeLog:
      
      	* configure: Regenerate.
      
      libobjc/ChangeLog:
      
      	* configure: Regenerate.
      
      liboffloadmic/ChangeLog:
      
      	* configure: Regenerate.
      	* plugin/configure: Regenerate.
      
      libphobos/ChangeLog:
      
      	* configure: Regenerate.
      
      libquadmath/ChangeLog:
      
      	* configure: Regenerate.
      
      libsanitizer/ChangeLog:
      
      	* configure: Regenerate.
      
      libssp/ChangeLog:
      
      	* configure: Regenerate.
      
      libstdc++-v3/ChangeLog:
      
      	* configure: Regenerate.
      
      libvtv/ChangeLog:
      
      	* configure: Regenerate.
      
      lto-plugin/ChangeLog:
      
      	* configure: Regenerate.
      
      zlib/ChangeLog:
      
      	* configure: Regenerate.
      6d2294a8
    • GCC Administrator's avatar
      Daily bump. · ab332cd7
      GCC Administrator authored
      ab332cd7
  23. Oct 11, 2022
    • Olivier Hainque's avatar
      Generic configury support for shared libs on VxWorks · 0ecd0f1c
      Olivier Hainque authored
      This change adds the configury bits to activate the build of
      shared libs on VxWorks ports configured with --enable-shared,
      for libraries variants where this is generally supported (rtp,
      code model !large - currently not compatible with -fPIC).
      
      Set lt_cv_deplibs_check_method in libtool.m4, so the build of
      libraries know how to establish dependencies.  This is useful in
      configurations such as aarch64 where proper support of LSE relies
      on accurate dependency information between libstdc++ and libgcc_s
      to begin with.
      
      Regenerate configure scripts to reflect libtool.m4 change.
      
      2022-10-09  Olivier Hainque  <hainque@adacore.com>
      
      	* libtool.m4 (*vxworks*): When enable_shared, set dynamic_linker
      	and friends for rtp !large. Assume the linker has the required
      	abilities and set lt_cv_deplibs_check_method.
      
      gcc/
      	* config.gcc (*vxworks*): Add t-slibgcc fragment
      	if enable_shared.
      
      libgcc/
      	* config.host (*vxworks*): When enable_shared, add
      	libgcc and crtstuff "shared" fragments for rtp except
      	large code model.
      	(aarch64*-wrs-vxworks7*): Remove t-slibgcc-libgcc from
      	the list of fragments.
      
      2022-10-09  Olivier Hainque  <hainque@adacore.com>
      
      gcc/
      	* configure: Regenerate.
      
      libatomic/
      	* configure: Regenerate.
      
      libbacktrace/
      	* configure: Regenerate.
      
      libcc1/
      	* configure: Regenerate.
      
      libffi/
      	* configure: Regenerate.
      
      libgfortran/
      	* configure: Regenerate.
      
      libgomp/
      	* configure: Regenerate.
      
      libitm/
      	* configure: Regenerate.
      
      libobjc/
      	* configure: Regenerate.
      
      liboffloadmic/
      	* configure: Regenerate.
      
      liboffloadmic/
      	* plugin/configure: Regenerate.
      
      libphobos/
      	* configure: Regenerate.
      
      libquadmath/
      	* configure: Regenerate.
      
      libsanitizer/
      	* configure: Regenerate.
      
      libssp/
      	* configure: Regenerate.
      
      libstdc++-v3/
      	* configure: Regenerate.
      
      libvtv/
      	* configure: Regenerate.
      
      lto-plugin/
      	* configure: Regenerate.
      
      zlib/
      	* configure: Regenerate.
      0ecd0f1c
  24. Jul 09, 2022
  25. Jul 08, 2022
  26. Jul 07, 2022
  27. Jun 28, 2022
  28. Jun 27, 2022
  29. May 29, 2022
  30. May 28, 2022
  31. Apr 06, 2022
  32. Apr 05, 2022
    • Ian Lance Taylor's avatar
      libbacktrace: don't skip initial aligned byte in uncompressed block · 6be9d752
      Ian Lance Taylor authored
      Patch from Rui Ueyama, who says:
      
      libbacktrace occasionally fails to decompress compressed debug info
      even though the sections contain valid zlib streams. The cause of the
      issue is an off-by-one error.
      
      If a zlib data block is a plain data (uncompressed data), the next two
      bytes contain the size of the block. These two bytes value is byte-
      aligned, so if we read-ahead more than 8 bits, we need to unread it.
      
      So, the correct condition to determine whether or not we need to
      unread a byte is bits >= 8 and not bits > 8. Due to this error,
      if the last read bits happened to end at a byte boundary, the next
      byte would be skipped. That caused the decompression failure.
      
      This bug was originally reported against the mold linker.
      rui314/mold#402
      
      	* elf.c (elf_zlib_inflate): Don't skip initial aligned byte in
      	uncompressed block.
      6be9d752
  33. Feb 18, 2022
  34. Feb 17, 2022
  35. Feb 16, 2022
  36. Feb 04, 2022
Loading