1. 29 May, 2021 1 commit
  2. 03 Mar, 2021 1 commit
  3. 02 Mar, 2021 1 commit
  4. 12 Feb, 2021 1 commit
  5. 18 Jan, 2021 3 commits
  6. 04 Dec, 2020 1 commit
  7. 26 Oct, 2020 1 commit
  8. 20 Oct, 2020 1 commit
  9. 01 Oct, 2020 1 commit
  10. 28 Sep, 2020 15 commits
    • libbacktrace/ChangeLog: · 3bd25ab3
      Ian Lance Taylor authored
              PR libbacktrace/97082
              * Makefile.am (check_DATA): Add mtest.dSYM if USE_DSYMUTIL.
              * Makefile.in: Regenerate.
    • libbacktrace: only run dsymutil with Mach-O · 1286f69f
      Ian Lance Taylor authored
      libbacktrace/ChangeLog:
      	PR libbacktrace/97227
      	* configure.ac (USE_DSYMUTIL): Define instead of HAVE_DSYMUTIL.
      	* Makefile.am: Change all uses of HAVE_DSYMUTIL to USE_DSYMUTIL.
      	* configure: Regenerate.
      	* Makefile.in: Regenerate.
    • libbacktrace: handle pc == low correctly · 95e8e96c
      Ian Lance Taylor authored
      	* dwarf.c (report_inlined_functions): Handle PC == -1 and PC ==
      	p->low.
      	(dwarf_lookup_pc): Likewise.
    • libbacktrace: use ELF symbol table if no debug info available · c8a81d4e
      Ian Lance Taylor authored
      	PR libbacktrace/97080
      	* fileline.c (backtrace_syminfo_to_full_callback): New function.
      	(backtrace_syminfo_to_full_error_callback): New function.
      	* elf.c (elf_nodebug): Call syminfo_fn if possible.
      	* internal.h (struct backtrace_call_full): Define.
      	(backtrace_syminfo_to_full_callback): Declare.
      	(backtrace_syminfo_to_full_error_callback): Declare.
      	* mtest.c (f3): Only check all[i] if data.index permits.
    • libbacktrace, Mach-O : Support PowerPC archs. · 753968c2
      Iain Sandoe authored
      This adds the PPC architecture variants for Mach-O libbacktrace.
      
      With this (as for X86 and Arm) when dsymutil is run on the binary
      we get a basic usable backtrace.
      
      Testsuite results on powerpc-apple-darwin9 are the same as for X86:
       * btest fails (TBC why)
       * dwarf5 tests fail because dsymutil does not handle that so far.
      
      libbacktrace/ChangeLog:
      
      	* macho.c (MACH_O_CPU_TYPE_PPC): New.
      	(MACH_O_CPU_TYPE_PPC64): New.
      	Add compile-tests for powerpc to the Mach-O variants.
      
      Close #55
    • libbacktrace: support MiniDebugInfo · 77bcaa99
      Ian Lance Taylor authored
      libbacktrace/ChangeLog:
      	PR libbacktrace/93608
      	Add support for MiniDebugInfo.
      	* elf.c (struct elf_view): Define.  Replace most uses of
      	backtrace_view with elf_view.
      	(elf_get_view): New static functions.  Replace most calls of
      	backtrace_get_view with elf_get_view.
      	(elf_release_view): New static functions.  Replace most calls of
      	backtrace_release_view with elf_release_view.
      	(elf_uncompress_failed): Rename from elf_zlib_failed.  Change all
      	callers.
      	(LZMA_STATES, LZMA_POS_STATES, LZMA_DIST_STATES): Define.
      	(LZMA_DIST_SLOTS, LZMA_DIST_MODEL_START): Define.
      	(LZMA_DIST_MODEL_END, LZMA_FULL_DISTANCES): Define.
      	(LZMA_ALIGN_SIZE, LZMA_LEN_LOW_SYMBOLS): Define.
      	(LZMA_LEN_MID_SYMBOLS, LZMA_LEN_HIGH_SYMBOLS): Define.
      	(LZMA_LITERAL_CODERS_MAX, LZMA_LITERAL_CODER_SIZE): Define.
      	(LZMA_PROB_IS_MATCH_LEN, LZMA_PROB_IS_REP_LEN): Define.
      	(LZMA_PROB_IS_REP0_LEN, LZMA_PROB_IS_REP1_LEN): Define.
      	(LZMA_PROB_IS_REP2_LEN, LZMA_PROB_IS_REP0_LONG_LEN): Define.
      	(LZMA_PROB_DIST_SLOT_LEN, LZMA_PROB_DIST_SPECIAL_LEN): Define.
      	(LZMA_PROB_DIST_ALIGN_LEN): Define.
      	(LZMA_PROB_MATCH_LEN_CHOICE_LEN): Define.
      	(LZMA_PROB_MATCH_LEN_CHOICE2_LEN): Define.
      	(LZMA_PROB_MATCH_LEN_LOW_LEN): Define.
      	(LZMA_PROB_MATCH_LEN_MID_LEN): Define.
      	(LZMA_PROB_MATCH_LEN_HIGH_LEN): Define.
      	(LZMA_PROB_REP_LEN_CHOICE_LEN): Define.
      	(LZMA_PROB_REP_LEN_CHOICE2_LEN): Define.
      	(LZMA_PROB_REP_LEN_LOW_LEN): Define.
      	(LZMA_PROB_REP_LEN_MID_LEN): Define.
      	(LZMA_PROB_REP_LEN_HIGH_LEN): Define.
      	(LZMA_PROB_LITERAL_LEN): Define.
      	(LZMA_PROB_IS_MATCH_OFFSET, LZMA_PROB_IS_REP_OFFSET): Define.
      	(LZMA_PROB_IS_REP0_OFFSET, LZMA_PROB_IS_REP1_OFFSET): Define.
      	(LZMA_PROB_IS_REP2_OFFSET): Define.
      	(LZMA_PROB_IS_REP0_LONG_OFFSET): Define.
      	(LZMA_PROB_DIST_SLOT_OFFSET): Define.
      	(LZMA_PROB_DIST_SPECIAL_OFFSET): Define.
      	(LZMA_PROB_DIST_ALIGN_OFFSET): Define.
      	(LZMA_PROB_MATCH_LEN_CHOICE_OFFSET): Define.
      	(LZMA_PROB_MATCH_LEN_CHOICE2_OFFSET): Define.
      	(LZMA_PROB_MATCH_LEN_LOW_OFFSET): Define.
      	(LZMA_PROB_MATCH_LEN_MID_OFFSET): Define.
      	(LZMA_PROB_MATCH_LEN_HIGH_OFFSET): Define.
      	(LZMA_PROB_REP_LEN_CHOICE_OFFSET): Define.
      	(LZMA_PROB_REP_LEN_CHOICE2_OFFSET): Define.
      	(LZMA_PROB_REP_LEN_LOW_OFFSET): Define.
      	(LZMA_PROB_REP_LEN_MID_OFFSET): Define.
      	(LZMA_PROB_REP_LEN_HIGH_OFFSET): Define.
      	(LZMA_PROB_LITERAL_OFFSET): Define.
      	(LZMA_PROB_TOTAL_COUNT): Define.
      	(LZMA_IS_MATCH, LZMA_IS_REP, LZMA_IS_REP0): Define.
      	(LZMA_IS_REP1, LZMA_IS_REP2, LZMA_IS_REP0_LONG): Define.
      	(LZMA_DIST_SLOT, LZMA_DIST_SPECIAL, LZMA_DIST_ALIGN): Define.
      	(LZMA_MATCH_LEN_CHOICE, LZMA_MATCH_LEN_CHOICE2): Define.
      	(LZMA_MATCH_LEN_LOW, LZMA_MATCH_LEN_MID): Define.
      	(LZMA_MATCH_LEN_HIGH, LZMA_REP_LEN_CHOICE): Define.
      	(LZMA_REP_LEN_CHOICE2, LZMA_REP_LEN_LOW): Define.
      	(LZMA_REP_LEN_MID, LZMA_REP_LEN_HIGH, LZMA_LITERAL): Define.
      	(elf_lzma_varint): New static function.
      	(elf_lzma_range_normalize): New static function.
      	(elf_lzma_bit, elf_lzma_integer): New static functions.
      	(elf_lzma_reverse_integer): New static function.
      	(elf_lzma_len, elf_uncompress_lzma_block): New static functions.
      	(elf_uncompress_lzma): New static function.
      	(backtrace_uncompress_lzma): New function.
      	(elf_add): Add memory and memory_size parameters.  Change all
      	callers.  Look for .gnu_debugdata section, and, if found,
      	decompress it and use it for symbols and debug info.  Permit the
      	descriptor parameter to be -1.
      	* internal.h (backtrace_uncompress_lzma): Declare.
      	* mtest.c: New file.
      	* xztest.c: New file.
      	* configure.ac: Check for nm, xz, and comm programs.  Check for
      	liblzma library.
      	(HAVE_MINIDEBUG): Define.
      	* Makefile.am (mtest_SOURCES): Define.
      	(mtest_CFLAGS, mtest_LDADD): Define.
      	(TESTS): Add mtest_minidebug if HAVE_MINIDEBUG.
      	(%_minidebug): New pattern rule, if HAVE_MINIDEBUG.
      	(xztest_SOURCES, xztest_CFLAGS, xztest_LDADD): Define.
      	(xztest_alloc_SOURCES, xztest_alloc_CFLAGS): Define
      	(xztest_alloc_LDADD): Define.
      	(BUILDTESTS): Add mtest, xztest, xztest_alloc.
      	(CLEANFILES): Add files created by minidebug pattern.
      	(btest.lo): Correct INCDIR reference.
      	(mtest.lo, xztest.lo, ztest.lo): New targets.
      	* configure: Regenerate.
      	* config.h.in: Regenerate.
      	* Makefile.in: Regenerate.
      
      Close #38
    • libbacktrace: don't strip leading underscore on 64-bit PE · 2f5efbfa
      Ian Lance Taylor authored
      	* pecoff.c (coff_initialize_syminfo): Add is_64 parameter.
      	(coff_add): Determine and pass is_64.
      
      Closes #28
    • libbacktrace: fetch executable path on macOS · 4ae8d988
      Ian Lance Taylor authored
      	PR libbacktrace/96973
      	* fileline.c (macho_get_executable_path): New static function.
      	(fileline_initialize): Call macho_get_executable_path.
    • libbacktrace: avoid ambiguous binary search · 430dc8b6
      Ian Lance Taylor authored
      Searching for a range match can cause the search order to not match
      the sort order, which can cause libbacktrace to miss matching entries.
      Allocate an extra entry at the end of function_addrs and unit_addrs vectors,
      so that we can safely compare to the next entry when searching.
      Adjust the matching code accordingly.
      
      Fixes #44
      
      	* dwarf.c (function_addrs_search): Compare against the next entry
      	low address, not the high address.
      	(unit_addrs_search): Likewise.
      	(build_address_map): Add a trailing unit_addrs.
      	(read_function_entry): Add a trailing function_addrs.
      	(read_function_info): Likewise.
      	(report_inlined_functions): Search backward for function_addrs
      	match.
      	(dwarf_lookup_pc): Search backward for unit_addrs and
      	function_addrs matches.
    • libbacktrace: fix tipo in comment · 5dec0fae
      Ian Lance Taylor authored
      	* simple.c (simple_unwind): Correct comment spelling.
      
      Close #47
    • libbacktrace: correct memory lengths in Mach-O dsym support · 030bd0a7
      Ian Lance Taylor authored
      	* macho.c (macho_add_dsym): Make space for '/' in dsym.  Use
      	correct length when freeing diralc.
      
      Close #40
    • libbacktrace: correctly swap Mach-O 32-bit file offset · b3b57f9e
      Ian Lance Taylor authored
      libbacktrace/ChangeLog:
      	PR libbacktrace/96973
      	* macho.c (macho_add_fat): Correctly swap 32-bit file offset.
    • libbacktrace: only match magic number at start of line · 886aef37
      Ian Lance Taylor authored
      libbacktrace/ChangeLog:
      	PR libbacktrace/96971
      	* filetype.awk: Only match magic number at start of line.
    • libbacktrace: add Mach-O 64-bit FAT support · 89b2b506
      Ian Lance Taylor authored
      libbacktrace/:
      	* macho.c (MACH_O_MH_MAGIC_FAT_64): Define.
      	(MACH_O_MH_CIGAM_FAT_64): Define.
      	(struct macho_fat_arch_64): Define.
      	(macho_add_fat): Add and use is_64 parameter.
      	(macho_add): Recognize 64-bit fat files.
    • libbacktrace: test linker support for DWARF 5 · aaa51b6d
      Ian Lance Taylor authored
      On AIX, the compiler supports DWARF 5 but the linker does not.
      
      2020-07-07 Clement Chigot <clement.chigot@atos.net>
      
      	* configure.ac: Test linker support for DWARF5
      	* configure: Regenerate
  11. 13 May, 2020 2 commits
  12. 11 May, 2020 1 commit
  13. 10 May, 2020 1 commit
  14. 19 Feb, 2020 4 commits
  15. 16 Feb, 2020 3 commits
  16. 15 Feb, 2020 1 commit
  17. 24 Dec, 2019 1 commit
  18. 05 Jun, 2018 1 commit