Retro68/gcc/libbacktrace/ChangeLog

1270 lines
39 KiB
Plaintext
Raw Normal View History

2019-06-02 15:48:37 +00:00
2019-05-03 Release Manager
2014-09-21 17:33:12 +00:00
2019-06-02 15:48:37 +00:00
* GCC 9.1.0 released.
2015-08-28 15:33:40 +00:00
2019-06-02 15:48:37 +00:00
2019-03-11 Ian Lance Taylor <iant@golang.org>
2015-08-28 15:33:40 +00:00
2019-06-02 15:48:37 +00:00
PR libbacktrace/89669
* Makefile.am (BUILDTESTS): Only add ztest and ztest_alloc if
HAVE_ELF.
* Makefile.in: Regenerate.
2019-02-26 Tom de Vries <tdevries@suse.de>
* btest.c (test5): Allow global.* as minimal symbol name for global.
2019-02-26 Tom de Vries <tdevries@suse.de>
* Makefile.am (TESTS): Only add b3test_dwz_buildid if HAVE_DWZ.
* Makefile.in: Regenerate.
2019-02-12 Tom de Vries <tdevries@suse.de>
PR libbacktrace/81983
* dwarf.c (dwarf_lookup_pc): Don't call bsearch if nmemb == 0.
2019-02-10 Tom de Vries <tdevries@suse.de>
* Makefile.am (BUILDTESTS): Add btest_lto.
* Makefile.in: Regenerate.
* btest.c (test1, f2, f3, test3, f22, f23): Declare with
__attribute__((noclone)).
2019-02-08 Tom de Vries <tdevries@suse.de>
* backtrace.c (backtrace_full): Declare with __attribute__((noinline)).
* print.c (backtrace_print): Same.
* simple.c (backtrace_simple): Same.
2019-02-08 Tom de Vries <tdevries@suse.de>
PR libbacktrace/78063
* dwarf.c (build_address_map): Keep all parsed units.
(read_referenced_name_from_attr): Handle DW_FORM_ref_addr.
2019-01-31 Tom de Vries <tdevries@suse.de>
PR libbacktrace/89136
* elf.c (elf_add): Read build-id if with_buildid_data. Fix
'debugaltlink_name_len =+ 1'.
2019-01-29 Tom de Vries <tdevries@suse.de>
* install-debuginfo-for-buildid.sh.in: New script.
* Makefile.am (check_PROGRAMS): Add b2test and b3test.
(TESTS): Add b2test_buildid and b3test_dwz_buildid.
* Makefile.in: Regenerate.
* configure.ac (HAVE_ELF): Set with AM_CONDITIONAL.
(READELF): Set with AC_CHECK_PROG.
(install-debuginfo-for-buildid.sh): Generate with AC_CONFIG_FILES.
* configure: Regenerate.
* elf.c (SYSTEM_BUILD_ID_DIR): Factor out of ...
(elf_open_debugfile_by_buildid): ... here.
2019-01-29 Tom de Vries <tdevries@suse.de>
* Makefile.am: Replace check_PROGRAMS with BUILDTESTS, except for
allocfail.
(TESTS): Don't add check_PROGRAMS. Add BUILDTESTS.
(check_PROGRAMS): Add BUILDTESTS.
* Makefile.in: Regenerate.
2019-01-28 Tom de Vries <tdevries@suse.de>
* Makefile.am (xcoff_%.c): Generate sed result into temporary file.
Use $< to access prerequisite.
* Makefile.in: Regenerate.
2019-01-25 Nathan Sidwell <nathan@acm.org>
* elf.c (elf_add): Pass "" filename to recursive call with
separated debug.
2019-01-25 Tom de Vries <tdevries@suse.de>
* elf.c (elf_add): When handling .gnu_debugaltlink, call elf_add with
filename == "".
* Makefile.am (TESTS): Add btest_dwz_gnudebuglink.
* Makefile.in: Regenerate.
2019-01-25 Tom de Vries <tdevries@suse.de>
* Makefile.am: Rewrite dtest rule into "%_gnudebuglink" pattern rule.
(TESTS): Rename dtest to btest_gnudebuglink.
* Makefile.in: Regenerate.
2019-01-23 Tom de Vries <tdevries@suse.de>
* dwarf.c (struct unit): Use size_t for low_offset/high_offset fields.
(units_search, find_unit): Use size_t for offset.
(build_address_map): Use size_t for unit_offset.
2019-01-20 Gerald Pfeifer <gerald@pfeifer.com>
* allocfail.c (main): Increase portability of printf statement.
2019-01-18 Ian Lance Taylor <iant@golang.org>
PR libbacktrace/88890
* mmapio.c (backtrace_get_view): Change size parameter to
uint64_t. Check that value fits in size_t.
* read.c (backtrace_get_view): Likewise.
* internal.h (backtrace_get_view): Update declaration.
* elf.c (elf_add): Pass shstrhdr->sh_size to backtrace_get_view.
2019-01-17 Tom de Vries <tdevries@suse.de>
PR libbacktrace/82857
* configure.ac (DWZ): Set with AC_CHECK_PROG.
(HAVE_DWZ): Set with AM_CONDITIONAL.
* configure: Regenerate.
* Makefile.am (TESTS): Add btest_dwz.
* Makefile.in: Regenerate.
2019-01-17 Tom de Vries <tdevries@suse.de>
PR libbacktrace/82857
* dwarf.c (enum attr_val_encoding): Add ATTR_VAL_REF_ALT_INFO.
(read_attribute): Handle DW_FORM_GNU_ref_alt using
ATTR_VAL_REF_ALT_INFO.
(read_referenced_name_from_attr): Handle DW_FORM_GNU_ref_alt.
2019-01-17 Tom de Vries <tdevries@suse.de>
* dwarf.c (struct unit): Add low_offset and high_offset fields.
(struct unit_vector): New type.
(struct dwarf_data): Add units and units_counts fields.
(find_unit): New function.
(find_address_ranges): Add and handle unit_tag parameter.
(build_address_map): Add and handle units_vec parameter.
(build_dwarf_data): Pass units_vec to build_address_map. Store resulting
units vector.
2019-01-17 Tom de Vries <tdevries@suse.de>
PR libbacktrace/82857
* dwarf.c (read_attribute): Handle DW_FORM_GNU_strp_alt
using altlink.
2019-01-17 Tom de Vries <tdevries@suse.de>
* dwarf.c (enum attr_val_encoding): Add ATTR_VAL_NONE.
(read_attribute): Add altlink parameter. Handle missing altlink for
DW_FORM_GNU_strp_alt and DW_FORM_GNU_ref_alt.
(find_address_ranges, build_address_map, build_dwarf_data): Add and
handle altlink parameter.
(read_referenced_name, read_function_entry): Add argument to
read_attribute call.
2019-01-17 Tom de Vries <tdevries@suse.de>
* dwarf.c (struct dwarf_data): Add altlink field.
(backtrace_dwarf_add): Add and handle fileline_altlink parameter.
* elf.c (elf_add): Add argument to backtrace_dwarf_add call.
(phdr_callback, backtrace_initialize): Add argument to elf_add calls.
* internal.h (backtrace_dwarf_add): Add fileline_altlink parameter.
* pecoff.c (coff_add): Add argument to backtrace_dwarf_add call.
* xcoff.c (xcoff_add): Same.
2019-01-17 Tom de Vries <tdevries@suse.de>
* internal.h (backtrace_dwarf_add): Add fileline_entry parameter.
* dwarf.c (backtrace_dwarf_add): Add and handle fileline_entry parameter.
* elf.c (elf_add): Add and handle fileline_entry parameter. Add
argument to backtrace_dwarf_add call.
(phdr_callback, backtrace_initialize): Add argument to elf_add calls.
* pecoff.c (coff_add): Add argument to backtrace_dwarf_add call.
* xcoff.c (xcoff_add): Same.
2019-01-17 Tom de Vries <tdevries@suse.de>
* elf.c (elf_add): Add and handle with_buildid_data and
with_buildid_size parameters. Handle .gnu_debugaltlink section.
(phdr_callback, backtrace_initialize): Add arguments to elf_add calls.
2019-01-16 Tom de Vries <tdevries@suse.de>
* dwarf.c (read_referenced_name_from_attr): New function. Factor out
of ...
(read_referenced_name): ... here, and ...
(read_function_entry): ... here.
2019-01-16 Tom de Vries <tdevries@suse.de>
* dwarf.c (read_referenced_name): Don't allow DW_AT_name to override any
name.
(read_function_entry): Same. Don't allow name found via
DW_AT_abstract_origin or case DW_AT_specification to override linkage
name.
2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
PR other/16615
* backtrace.h: Mechanically replace "can not" with "cannot".
2019-01-01 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
2018-12-29 Gerald Pfeifer <gerald@pfeifer.com>
* Makefile.am (xcoff_%.c): Use an actual newline instead of \n
in sed pattern.
* Makefile.in: Regenerate.
2018-12-28 Tom de Vries <tdevries@suse.de>
* dwarf.c (build_address_map): Reuse unused units.
2018-12-28 Tom de Vries <tdevries@suse.de>
* dwarf.c (build_address_map): Simplify by removing local variable
abbrevs.
2018-12-28 Ian Lance Taylor <iant@golang.org>
Tom de Vries <tdevries@suse.de>
PR libbacktrace/88063
* dwarf.c (free_unit_addrs_vector): Remove.
(build_address_map): Keep track of allocated units in vector. Free
allocated units and corresponding abbrevs upon failure. Remove now
redundant call to free_unit_addrs_vector. Free addrs vector upon
failure. Free allocated unit vector.
2018-12-28 Tom de Vries <tdevries@suse.de>
* dwarf.c (build_address_map): Free addrs vector upon failure.
2018-12-14 Tom de Vries <tdevries@suse.de>
PR testsuite/88491
* allocfail.sh: Remove "set -o pipefail".
2018-12-12 Tom de Vries <tdevries@suse.de>
* Makefile.am (TESTS): Add allocfail.sh.
(check_PROGRAMS): Add allocfail.
* Makefile.in: Regenerate.
* instrumented_alloc.c: New file. Redefine malloc and realloc.
Include alloc.c.
* allocfail.c: New file.
* allocfail.sh: New file.
2018-11-30 Tom de Vries <tdevries@suse.de>
* Makefile.am (check_PROGRAMS): Add test_elf, test_xcoff_32,
test_xcoff_64, test_pecoff and test_unknown.
* Makefile.in: Regenerate.
* test_format.c: New file.
2018-11-30 Tom de Vries <tdevries@suse.de>
* Makefile.am : Add _with_alloc version for each test in
check_PROGRAMS.
* Makefile.in: Regenerate.
2018-11-30 Tom de Vries <tdevries@suse.de>
* internal.h (backtrace_vector_free): New static inline fuction,
factored out of ...
* dwarf.c (read_line_info): ... here.
2018-11-28 Tom de Vries <tdevries@suse.de>
* dwarf.c (read_abbrevs): Fix handling of abbrevs->abbrevs allocation
failure.
2018-11-27 Tom de Vries <tdevries@suse.de>
* mmap.c (backtrace_vector_release): Same.
* unittest.c (test1): Add check.
2018-11-27 Tom de Vries <tdevries@suse.de>
* alloc.c (backtrace_vector_release): Handle vec->size == 0 using free
instead of realloc.
* Makefile.am (check_PROGRAMS): Add unittest.
* Makefile.in: Regenerate.
* unittest.c: New file.
2018-11-22 Tom de Vries <tdevries@suse.de>
* dwarf.c (read_initial_length): Factor out of ...
(build_address_map, read_line_info): ... here.
2018-11-21 Tom de Vries <tdevries@suse.de>
* dwarf.c (read_string): Factor out of ...
(read_attribute, read_line_header, read_line_program): ... here.
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
* Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
2018-10-05 Ian Lance Taylor <iant@golang.org>
PR libbacktrace/87529
* backtrace.h: Document that backtrace_create_state should be
called only once.
2018-08-05 Iain Buclaw <ibuclaw@gdcproject.org>
* configure.ac: Move define of HAVE_ZLIB into check for -lz.
* Makefile.in: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
2018-08-01 Tony Reix <tony.reix@atos.net>
* xcoff.c (struct xcoff_line, struct xcoff_line_vector): Remove.
(struct xcoff_func, struct xcoff_func_vector): New structs.
(xcoff_syminfo): Drop leading dot from symbol name.
(xcoff_line_compare, xcoff_line_search): Remove.
(xcoff_func_compare, xcoff_func_search): New static functions.
(xcoff_lookup_pc): Search function table.
(xcoff_add_line, xcoff_process_linenos): Remove.
(xcoff_initialize_fileline): Build function table.
2018-06-21 Denis Khalikov <d.khalikov@partner.samsung.com>
PR other/86198
* elf.c (elf_add): Increase ".note.gnu.build-id" section size
checking up to 36 bytes.
2018-12-28 15:30:48 +00:00
2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
* configure: Regenerated.
2018-04-19 Jakub Jelinek <jakub@redhat.com>
* configure: Regenerated.
2018-04-17 Ian Lance Taylor <iant@golang.org>
* backtrace.c: Revert last two changes. Don't call mmap
directly.
2018-04-17 Ian Lance Taylor <iant@golang.org>
* backtrace.c: Include backtrace-supported.h before checking
BACKTRACE_USES_MALLOC.
2018-04-17 Ian Lance Taylor <iant@golang.org>
* backtrace.c (backtrace_full): When testing whether we can
allocate memory, call mmap directly, and munmap the memory.
2018-04-04 Jakub Jelinek <jakub@redhat.com>
PR other/85161
* elf.c (elf_zlib_fetch): Fix up predefined macro names in test for
big endian, only use 32-bit loads if endianity macros are predefined
and indicate big or little endian.
2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
PR target/84148
* configure: Regenerate.
2018-02-15 Jakub Jelinek <jakub@redhat.com>
PR other/82368
* elf.c (SHT_PROGBITS): Undefine and define.
2018-02-14 Jakub Jelinek <jakub@redhat.com>
PR other/82368
* elf.c (EM_PPC64, EF_PPC64_ABI): Undefine and define.
(struct elf_ppc64_opd_data): New type.
(elf_initialize_syminfo): Add opd argument, handle symbols
pointing into the PowerPC64 ELFv1 .opd section.
(elf_add): Read .opd section on PowerPC64 ELFv1, pass pointer
to structure with .opd data to elf_initialize_syminfo.
2018-01-31 Ian Lance Taylor <iant@golang.org>
* elf.c (elf_add): Close descriptor if we use a debugfile.
* btest.c (check_open_files): New static function.
(main): Call check_open_files.
2018-01-25 Ian Lance Taylor <iant@golang.org>
* elf.c (elf_open_debugfile_by_debuglink): Don't check CRC if the
desired CRC is zero.
(elf_add): Don't clear *found_sym and *found_dwarf if debuginfo.
2018-01-25 Ian Lance Taylor <iant@golang.org>
* pecoff.c (coff_add): Only release syms_view if it is valid.
2018-01-25 Ian Lance Taylor <iant@golang.org>
* pecoff.c (coff_add): Another memcpy -> coff_read4 fix.
2018-01-24 Ian Lance Taylor <iant@golang.org>
* pecoff.c (coff_add): Use coff_read4, not memcpy.
2018-01-24 Ian Lance Taylor <iant@golang.org>
PR other/68239
* mmap.c (backtrace_free_locked): Don't put more than 16 entries
on the free list.
2018-01-19 Tony Reix <tony.reix@atos.net>
* xcoff.c (xcoff_incl_compare): New function.
(xcoff_incl_search): New function.
(xcoff_process_linenos): Use bsearch to find include file.
(xcoff_initialize_fileline): Sort include file information.
2018-01-16 Ian Lance Taylor <iant@golang.org>
* elf.c (codes) [GENERATE_FIXED_HUFFMAN_TABLE]: Fix size to be
288.
(main) [GENERATE_FIXED_HUFFMAN_TABLE]: Pass 288 to
elf_zlib_inflate_table. Generate elf_zlib_default_dist_table.
(elf_zlib_default_table): Update.
(elf_zlib_default_dist_table): New static array.
(elf_zlib_inflate): Use elf_zlib_default_dist_table for dist table
for block type 1.
* ztest.c (struct zlib_test): Add uncompressed_len.
(tests): Initialize uncompressed_len field. Add new test case.
(test_samples): Use uncompressed_len field.
2018-01-03 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
2017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
* configure.ac: Add CET_FLAGS to EXTRA_FLAGS.
* aclocal.m4: Regenerate.
* Makefile.in: Likewise.
* configure: Likewise.
2017-10-06 Ian Lance Taylor <iant@golang.org>
* ztest.c (test_large): Pass unsigned long *, not size_t *, to
zlib uncompress function.
2017-10-05 Ian Lance Taylor <iant@golang.org>
* elf.c (elf_zlib_fetch): Change pval argument to uint64_t *.
Read a four byte integer.
(elf_zlib_inflate): Change val to uint64_t. Align pin to a 32-bit
boundary before ever calling elf_zlib_fetch.
* ztest.c (test_large): Simplify print statements a bit.
2017-10-02 Ian Lance Taylor <iant@golang.org>
* ztest.c: #include <errno.h>.
(TEST_TIMING): Don't define, don't test.
(xclock_gettime, xclockid_t): Define if !HAVE_CLOCK_GETTIME.
(clockid_t, clock_gettime, CLOCK_REALTIME): Likewise.
(ZLIB_CLOCK_GETTIME_ARG): Define.
* configure.ac: Change clock_gettime_link to CLOCK_GETTIME_LINK.
* Makefile.am: Likewise.
* configure, Makefile.in: Rebuild.
2017-10-02 Thomas Schwinge <thomas@codesourcery.com>
PR other/67165
* Makefile.am: Append the content of clock_gettime_link to
ztest_LDADD.
* configure.ac: Test for the case that clock_gettime is in librt.
* Makefile.in: Regenerate.
* configure: Likewise.
PR other/67165
* configure.ac: Check for clock_gettime.
* config.h.in: Regenerate.
* configure: Likewise.
* ztest.c (average_time, test_large): Conditionalize test timing
on clock_gettime availability.
2017-09-29 Tony Reix <tony.reix@atos.net>
* xcoff.c: Initial support for DWARF debug sections in XCOFF.
(STYP_DWARF, SSUBTYP_DW*): Define.
(enum dwarf_section): Define.
(struct dwsect_info): Define.
(xcoff_add): Look for DWARF sections, pass them to
backtrace_dwarf_add.
2017-09-28 Ian Lance Taylor <iant@golang.org>
PR other/67165
* elf.c (__builtin_prefetch): Define if not __GNUC__.
(unlikely): Define.
(SHF_UNCOMPRESSED, ELFCOMPRESS_ZLIB): Define.
(b_elf_chdr): Define type.
(enum debug_section): Add ZDEBUG_xxx values.
(debug_section_names): Add names for new sections.
(struct debug_section_info): Add compressed field.
(elf_zlib_failed, elf_zlib_fetch): New static functions.
(HUFFMAN_TABLE_SIZE, HUFFMAN_VALUE_MASK): Define.
(HUFFMAN_BITS_SHIFT, HUFFMAN_BITS_MASK): Define.
(HUFFMAN_SECONDARY_SHIFT): Define.
(ZDEBUG_TABLE_SIZE): Define.
(ZDEBUG_TABLE_CODELEN_OFFSET, ZDEBUG_TABLE_WORK_OFFSET): Define.
(final_next_secondary): New static variable if
BACKTRACE_GENERATE_FIXED_HUFFMAN_TABLE.
(elf_zlib_inflate_table): New static function.
(BACKTRACE_GENERATE_FIXED_HUFFMAN_TABLE): If define, define main
function to produce fixed Huffman table.
(elf_zlib_default_table): New static variable.
(elf_zlib_inflate): New static function.
(elf_zlib_verify_checksum): Likewise.
(elf_zlib_inflate_and_verify): Likewise.
(elf_uncompress_zdebug): Likewise.
(elf_uncompress_chdr): Likewise.
(backtrace_uncompress_zdebug): New extern function.
(elf_add): Look for .zdebug sections and SHF_COMPRESSED debug
sections, and uncompress them.
* internal.h (backtrace_compress_zdebug): Declare.
* ztest.c: New file.
* configure.ac: Check for -lz and check whether the linker
supports --compress-debug-sections.
* Makefile.am (ztest_SOURCES): New variable.
(ztest_CFLAGS, ztest_LDADD): New variables.
(check_PROGRAMS): Add ztest.
(ctestg_SOURCES): New variable.
(ctestg_CFLAGS, ctestg_LDFLAGS, ctestg_LDADD): New variables.
(ctesta_SOURCES): New variable.
(ctesta_CFLAGS, ctesta_LDFLAGS, ctesta_LDADD): New variables.
(check_PROGRAMS): Add ctestg and ctesta.
* configure, config.h.in, Makefile.in: Rebuild.
2017-09-22 Ian Lance Taylor <iant@golang.org>
PR sanitizer/77631
* configure.ac: Check for lstat and readlink.
* elf.c (lstat, readlink): Provide dummy versions if real versions
are not available.
* configure, config.h.in: Rebuild.
2017-09-21 Ian Lance Taylor <iant@google.com>
PR go/82284
* elf.c (backtrace_initialize): Set pd.exe_filename.
2017-09-20 Ian Lance Taylor <iant@golang.org>
Denis Khalikov <d.khalikov@partner.samsung.com>
PR sanitizer/77631
Support for external debug info.
* elf.c: Include <errno.h>, <sys/stat.h>, <unistd.h>.
(S_ISLNK): Define if not defined.
(xstrnlen): Define if strnlen is not available.
(b_elf_note): Define type.
(NT_GNU_BUILD_ID): Define macro.
(elf_crc32, elf_crc32_file): New static functions.
(elf_is_symlink, elf_readlink): New static functions.
(elf_open_debugfile_by_buildid): New static function.
(elf_try_debugfile): New static function.
(elf_find_debugfile_by_debuglink): New static function.
(elf_open_debugfile_by_debuglink): New static function.
(elf_add): Add filename and debuginfo parameters. Adjust all
callers. Look for external debug info notes, and try to fetch
debug info from external file.
(struct phdr_data): Add exe_filename field.
(phdr_callback): Pass filename to elf_add.
(backtrace_initialize): Add filename parameter.
* internal.h (backtrace_initialize): Add filename parameter.
* fileline.c (fileline_initialize): Pass filename to
backtrace_initialize.
* pecoff.c (fileline_initialize): Add unused filename parameter.
* unknown.c (fileline_initialize): Likewise.
* xcoff.c (fileline_initialize): Likewise.
* configure.ac: Check for objcopy --add-gnu-debuglink.
* Makefile.am (dtest): New test target.
* configure, Makefile.in: Rebuild.
2017-09-12 Steve Ellcey <sellcey@cavium.com>
PR other/81096
* Makefile.am (ttest_CFLAGS): Add $(AM_CFLAGS)
* Makefile.in: Regenerate.
2017-09-12 Steve Ellcey <sellcey@cavium.com>
PR other/81096
* libbacktrace/Makefile.in
(HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_CFLAGS): Add $(AM_CFLAGS)
2017-08-02 David Edelsohn <dje.gcc@gmail.com>
PR bootstrap/81638
* xcoff.c (xcoff_process_linenos): Initialize incl to NULL.
2017-07-28 Tony Reix <tony.reix@atos.net>
* xcoff.c: Don't leak a file descriptor if an archive is malformed.
2017-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* fileline.c (fileline_initialize): Print pid_t as long.
2017-07-26 Tony Reix <tony.reix@atos.net>
* configure.ac: Check for XCOFF32/XCOFF64. Check for loadquery.
* filetype.awk: Separate AIX XCOFF32 and XCOFF64.
* xcoff.c: Add support for AIX XCOFF32 and XCOFF64 formats.
* configure, config.h.in: Regenerate.
2017-07-21 Tony Reix <tony.reix@atos.net>
* filetype.awk: Add AIX XCOFF type detection.
* configure.ac: Recognize xcoff format.
* Makefile.am (FORMAT_FILES): Add xcoff.c.
* fileline.c: Include <unistd.h>.
(fileline_initialize): Add case for AIX procfs.
* xcoff.c: New file.
* configure, Makefile.in: Rebuild.
2017-06-21 Richard Biener <rguenther@suse.de>
* configure.ac: Add AC_SYS_LARGEFILE.
* config.h.in: Regenerate.
* configure: Likewise.
2017-06-11 Ian Lance Taylor <iant@golang.org>
* elf.c (backtrace_initialize): Always set *fileline_fn.
* ttest.c: New file.
* btest.c: Move support functions into testlib.c. Change calls to
check to pass file name.
* testlib.c: New file, copied from (part of) btest.c.
* testlib.h: New file, declarations for testlib.c.
* edtest.c: Use testlib.h and testlib.c.
* configure.ac: Test for -pthread, set HAVE_PTHREAD conditional.
* Makefile.am (btest_SOURCES): Add testlib.c.
(edtest_SOURCES): Likewise.
(CHECK_PROGRAMS): Add ttest if HAVE_PTHREAD.
(ttest_SOURCES, ttest_CFLAGS, ttest_LDADD): Define.
* configure, Makefile.in: Rebuild.
2017-05-19 Than McIntosh <thanm@google.com>
* dwarf.c (free_line_header): Don't free dirs if dirs_count == 0.
(read_line_header): Don't allocate dirs if dirs_count == 0.
* edtest.c: New file.
* edtest2.c: New file.
* Makefile.am (edtest_SOURCES, edtest_LDADD): Define.
(check_PROGRAMS): Add edtest.
(edtest2_build.c, gen_edtest2_build): New targets.
* Makefile.in: Rebuild.
2017-03-08 Sam Thursfield <sam.thursfield@codethink.co.uk>
* btest.c (test5): Replace #ifdef guard with 'unused' attribute
to fix compile warning when BACKTRACE_SUPPORTED isn't defined.
2017-01-01 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
2016-11-15 Matthias Klose <doko@ubuntu.com>
* configure: Regenerate.
2016-09-11 Carlos Liam <carlos@aarzee.me>
* all: Remove meaningless trailing whitespace.
2017-04-10 11:32:00 +00:00
2016-05-18 Uros Bizjak <ubizjak@gmail.com>
PR target/71161
* elf.c (phdr_callback) [__i386__]: Add
__attribute__((__force_align_arg_pointer__)).
2016-03-02 Maxim Ostapenko <m.ostapenko@partner.samsung.com>
* elf.c (backtrace_initialize): Properly initialize elf_fileline_fn to
avoid possible crash.
(elf_add): Don't set *fileline_fn to elf_nodebug value in case of
missing debug info anymore.
2016-02-06 John David Anglin <danglin@gcc.gnu.org>
* mmap.c (MAP_FAILED): Define if not defined.
2016-01-04 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
2015-12-18 Andris Pavenis <andris.pavenis@iki.fi>
* configure.ac: Specify that DJGPP do not have mmap
even when sys/mman.h exists.
* configure: Regenerate
2015-12-09 John David Anglin <danglin@gcc.gnu.org>
PR libgfortran/68115
* configure.ac: Set libbacktrace_cv_sys_sync to no on hppa*-*-hpux*.
* configure: Regenerate.
* elf.c (backtrace_initialize): Cast __sync_bool_compare_and_swap call
to void.
2015-09-17 Ian Lance Taylor <iant@google.com>
* posix.c (backtrace_open): Cast second argument of open() to int.
2015-09-11 Ian Lance Taylor <iant@google.com>
* Makefile.am (backtrace.lo): Depend on internal.h.
(sort.lo, stest.lo): Add explicit dependencies.
* Makefile.in: Rebuild.
2015-09-09 Hans-Peter Nilsson <hp@axis.com>
* backtrace.c: #include <sys/types.h>.
2015-09-08 Ian Lance Taylor <iant@google.com>
PR other/67457
* backtrace.c: #include "internal.h".
(struct backtrace_data): Add can_alloc field.
(unwind): If can_alloc is false, don't try to get file/line
information.
(backtrace_full): Set can_alloc field in bdata.
* alloc.c (backtrace_alloc): Don't call error_callback if it is
NULL.
* mmap.c (backtrace_alloc): Likewise.
* internal.h: Update comments for backtrace_alloc and
backtrace_free.
2015-09-08 Ian Lance Taylor <iant@google.com>
PR other/67457
* mmap.c (backtrace_alloc): Correct test for mmap failure.
2015-08-31 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
* configure.ac: For spu-*-* targets, set have_fcntl to no.
* configure: Regenerate.
2015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
* configure.ac: Remove [disable-shared] argument to LT_INIT.
Remove setting PIC_FLAG when building as target library.
* configure: Regenerate.
2015-08-26 Hans-Peter Nilsson <hp@axis.com>
* configure.ac: Only compile with -fPIC if the target
supports it.
* configure: Regenerate.
2015-08-24 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
* configure.ac: Set have_mmap to no on spu-*-* targets.
* configure: Regenerate.
2015-08-13 Ian Lance Taylor <iant@google.com>
* dwarf.c (read_function_entry): Add vec_inlined parameter.
Change all callers.
2015-06-11 Martin Sebor <msebor@redhat.com>
PR sanitizer/65479
* dwarf.c (struct line): Add new field idx.
(line_compare): Use it.
(add_line): Set it.
(read_line_info): Reset it.
2015-05-29 Tristan Gingold <gingold@adacore.com>
* pecoff.c: New file.
* Makefile.am (FORMAT_FILES): Add pecoff.c and dependencies.
* Makefile.in: Regenerate.
* filetype.awk: Detect pecoff.
* configure.ac: Define BACKTRACE_SUPPORTS_DATA on elf platforms.
Add pecoff.
* btest.c (test5): Test enabled only if BACKTRACE_SUPPORTS_DATA is
true.
* backtrace-supported.h.in (BACKTRACE_SUPPORTS_DATA): Define.
* configure: Regenerate.
* pecoff.c: New file.
2015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
* Makefile.in: Regenerated with automake-1.11.6.
* aclocal.m4: Likewise.
* configure: Likewise.
2015-08-28 15:33:40 +00:00
2015-01-24 Matthias Klose <doko@ubuntu.com>
* configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
* configure: Regenerate.
2015-01-05 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
2014-11-21 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/63784
* configure: Regenerated.
2014-11-11 David Malcolm <dmalcolm@redhat.com>
* ChangeLog.jit: New.
2014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR target/63610
* configure: Regenerate.
2014-10-23 Ian Lance Taylor <iant@google.com>
* internal.h (backtrace_atomic_load_pointer) [no atomic or sync]:
Fix to return void *.
2014-09-21 17:33:12 +00:00
2014-05-08 Ian Lance Taylor <iant@google.com>
* mmap.c (backtrace_free): If freeing a large aligned block of
memory, call munmap rather than holding onto it.
(backtrace_vector_grow): When growing a vector, double the number
of pages requested. When releasing the old version of a grown
vector, pass the correct size to backtrace_free.
2014-03-07 Ian Lance Taylor <iant@google.com>
* sort.c (backtrace_qsort): Use middle element as pivot.
2014-03-06 Ian Lance Taylor <iant@google.com>
* sort.c: New file.
* stest.c: New file.
* internal.h (backtrace_qsort): Declare.
* dwarf.c (read_abbrevs): Call backtrace_qsort instead of qsort.
(read_line_info, read_function_entry): Likewise.
(read_function_info, build_dwarf_data): Likewise.
* elf.c (elf_initialize_syminfo): Likewise.
* Makefile.am (libbacktrace_la_SOURCES): Add sort.c.
(stest_SOURCES, stest_LDADD): Define.
(check_PROGRAMS): Add stest.
2014-02-07 Misty De Meo <misty@brew.sh>
PR target/58710
* configure.ac: Use AC_LINK_IFELSE in check for
_Unwind_GetIPInfo.
* configure: Regenerate.
2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
Update copyright years
2013-12-06 Jakub Jelinek <jakub@redhat.com>
* elf.c (ET_DYN): Undefine and define again.
(elf_add): Add exe argument, if true and ehdr.e_type is ET_DYN,
return early -1 without closing the descriptor.
(struct phdr_data): Add exe_descriptor.
(phdr_callback): If pd->exe_descriptor is not -1, for very first
call if dlpi_name is NULL just call elf_add with the exe_descriptor,
otherwise backtrace_close the exe_descriptor if not -1. Adjust
call to elf_add.
(backtrace_initialize): Adjust call to elf_add. If it returns
-1, set pd.exe_descriptor to descriptor, otherwise set it to -1.
2013-12-05 Ian Lance Taylor <iant@google.com>
* alloc.c (backtrace_vector_finish): Add error_callback and data
parameters. Call backtrace_vector_release. Return address base.
* mmap.c (backtrace_vector_finish): Add error_callback and data
parameters. Return address base.
* dwarf.c (read_function_info): Get new address base from
backtrace_vector_finish.
* internal.h (backtrace_vector_finish): Update declaration.
2013-11-27 Ian Lance Taylor <iant@google.com>
* dwarf.c (find_address_ranges): New static function, broken out
of build_address_map.
(build_address_map): Call it.
* btest.c (check): Check for missing filename or function, rather
than crashing.
(f3): Check that enough frames were returned.
2013-11-19 Jakub Jelinek <jakub@redhat.com>
* backtrace.h (backtrace_syminfo_callback): Add symsize argument.
* elf.c (elf_syminfo): Pass 0 or sym->size to the callback as
last argument.
* btest.c (struct symdata): Add size field.
(callback_three): Add symsize argument. Copy it to the data->size
field.
(f23): Set symdata.size to 0.
(test5): Likewise. If sizeof (int) > 1, lookup address of
((uintptr_t) &global) + 1. Verify symdata.val and symdata.size
values.
* atomic.c: Include sys/types.h.
2013-11-18 Ian Lance Taylor <iant@google.com>
* configure.ac: Check for support of __atomic extensions.
* internal.h: Declare or #define atomic functions for use in
backtrace code.
* atomic.c: New file.
* dwarf.c (dwarf_lookup_pc): Use atomic functions.
(dwarf_fileline, backtrace_dwarf_add): Likewise.
* elf.c (elf_add_syminfo_data, elf_syminfo): Likewise.
(backtrace_initialize): Likewise.
* fileline.c (fileline_initialize): Likewise.
* Makefile.am (libbacktrace_la_SOURCES): Add atomic.c.
* configure, config.h.in, Makefile.in: Rebuild.
2013-11-18 Jakub Jelinek <jakub@redhat.com>
* elf.c (SHN_UNDEF): Define.
(elf_initialize_syminfo): Add base_address argument. Ignore symbols
with st_shndx == SHN_UNDEF. Add base_address to address fields.
(elf_add): Adjust caller.
* elf.c (phdr_callback): Process info->dlpi_addr == 0 normally.
2013-11-16 Ian Lance Taylor <iant@google.com>
* backtrace.h (backtrace_create_state): Correct comment about
threading.
2013-11-15 Ian Lance Taylor <iant@google.com>
* backtrace.h (backtrace_syminfo): Update comment and parameter
name to take any address, not just a PC value.
* elf.c (STT_OBJECT): Define.
(elf_nosyms): Rename parameter pc to addr.
(elf_symbol_search): Rename local variable pc to addr.
(elf_initialize_syminfo): Add STT_OBJECT symbols to elf_symbols.
(elf_syminfo): Rename parameter pc to addr.
* btest.c (global): New global variable.
(test5): New test.
(main): Call test5.
2013-10-17 Ian Lance Taylor <iant@google.com>
* elf.c (elf_add): Don't get the wrong offsets if a debug section
is missing.
2013-10-15 David Malcolm <dmalcolm@redhat.com>
* configure.ac: Add --enable-host-shared, setting up
pre-existing PIC_FLAG variable within Makefile.am et al.
* configure: Regenerate.
2013-09-20 Alan Modra <amodra@gmail.com>
* configure: Regenerate.
2013-07-23 Alexander Monakov <amonakov@ispras.ru>
* elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
2013-07-23 Alexander Monakov <amonakov@ispras.ru>
* elf.c (backtrace_initialize): Pass elf_fileline_fn to
dl_iterate_phdr callbacks.
2013-03-25 Ian Lance Taylor <iant@google.com>
* alloc.c: #include <sys/types.h>.
* mmap.c: Likewise.
2013-01-31 Ian Lance Taylor <iant@google.com>
* dwarf.c (read_function_info): Permit fvec parameter to be NULL.
(dwarf_lookup_pc): Don't use ddata->fvec if threaded.
2013-01-25 Jakub Jelinek <jakub@redhat.com>
PR other/56076
* dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir
attribute was not seen.
2013-01-16 Ian Lance Taylor <iant@google.com>
* dwarf.c (struct unit): Add filename and abs_filename fields.
(build_address_map): Set new fields when reading unit.
(dwarf_lookup_pc): If we don't find an entry in the line table,
just return the main file name.
2013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
Update copyright years.
2013-01-01 Ian Lance Taylor <iant@google.com>
PR bootstrap/54834
* Makefile.am (AM_CPPFLAGS): Remove -I ../gcc/include and -I
$(MULTIBUILDTOP)/../../gcc/include.
* Makefile.in: Rebuild.
2013-01-01 Ian Lance Taylor <iant@google.com>
PR other/55536
* mmap.c (backtrace_alloc): Don't call sync functions if not
threaded.
(backtrace_free): Likewise.
2012-12-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* mmapio.c: Define MAP_FAILED if not defined.
2012-12-11 Jakub Jelinek <jakub@redhat.com>
PR bootstrap/54926
* Makefile.am (AM_CFLAGS): Remove -frandom-seed=$@.
* configure.ac: If --with-target-subdir, add -frandom-seed=$@
to EXTRA_FLAGS unconditionally, otherwise check whether the compiler
accepts it.
* Makefile.in: Regenerated.
* configure: Regenerated.
2012-12-07 Jakub Jelinek <jakub@redhat.com>
PR bootstrap/54926
* Makefile.am (AM_CFLAGS): Add -frandom-seed=$@.
* Makefile.in: Regenerated.
2012-11-20 Ian Lance Taylor <iant@google.com>
* dwarf.c (read_attribute): Always clear val.
2012-11-13 Ian Lance Taylor <iant@google.com>
PR other/55312
* configure.ac: Only add -Werror if building a target library.
* configure: Rebuild.
2012-11-12 Ian Lance Taylor <iant@google.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Gerald Pfeifer <gerald@pfeifer.com>
* configure.ac: Check for getexecname.
* fileline.c: #include <errno.h>. Define getexecname if not
available.
(fileline_initialize): Try to find the executable in a few
different ways.
* print.c (error_callback): Only print the filename if it came
from the backtrace state.
* configure, config.h.in: Rebuild.
2012-10-29 Ian Lance Taylor <iant@google.com>
* mmap.c (backtrace_vector_release): Correct last patch: add
aligned, not size.
2012-10-29 Ian Lance Taylor <iant@google.com>
* mmap.c (backtrace_vector_release): Make sure freed block is
aligned on 8-byte boundary.
2012-10-26 Ian Lance Taylor <iant@google.com>
PR other/55087
* posix.c (backtrace_open): Add does_not_exist parameter.
* elf.c (phdr_callback): Do not warn if shared library could not
be opened.
* fileline.c (fileline_initialize): Update calls to
backtrace_open.
* internal.h (backtrace_open): Update declaration.
2012-10-26 Jack Howarth <howarth@bromo.med.uc.edu>
PR target/55061
* configure.ac: Check for _Unwind_GetIPInfo function declaration.
* configure: Regenerate.
2012-10-24 Ian Lance Taylor <iant@google.com>
PR target/55061
* configure.ac: Check whether -funwind-tables option works.
* configure: Rebuild.
2012-10-11 Ian Lance Taylor <iant@google.com>
* configure.ac: Do not use dl_iterate_phdr on Solaris 10.
* configure: Rebuild.
2012-10-10 Ian Lance Taylor <iant@google.com>
* elf.c: Rename all Elf typedefs to start with b_elf, and be all
lower case.
2012-10-10 Hans-Peter Nilsson <hp@bitrange.com>
* elf.c (elf_add_syminfo_data): Add casts to avoid warning.
2012-10-09 Ian Lance Taylor <iant@google.com>
* dwarf.c (dwarf_fileline): Add cast to avoid warning.
(backtrace_dwarf_add): Likewise.
2012-10-09 Ian Lance Taylor <iant@google.com>
Add support for tracing through shared libraries.
* configure.ac: Check for link.h and dl_iterate_phdr.
* elf.c: #include <link.h> if system has dl_iterate_phdr. #undef
ELF macros before #defining them.
(dl_phdr_info, dl_iterate_phdr): Define if system does not have
dl_iterate_phdr.
(struct elf_syminfo_data): Add next field.
(elf_initialize_syminfo): Initialize next field.
(elf_add_syminfo_data): New static function.
(elf_add): New static function, broken out of
backtrace_initialize. Call backtrace_dwarf_add instead of
backtrace_dwarf_initialize.
(struct phdr_data): Define.
(phdr_callback): New static function.
(backtrace_initialize): Call elf_add.
* dwarf.c (struct dwarf_data): Add next and base_address fields.
(add_unit_addr): Add base_address parameter. Change all callers.
(add_unit_ranges, build_address_map): Likewise.
(add_line): Add ddata parameter. Change all callers.
(read_line_program, add_function_range): Likewise.
(dwarf_lookup_pc): New static function, broken out of
dwarf_fileline.
(dwarf_fileline): Call dwarf_lookup_pc.
(build_dwarf_data): New static function.
(backtrace_dwarf_add): New function.
(backtrace_dwarf_initialize): Remove.
* internal.h (backtrace_dwarf_initialize): Don't declare.
(backtrace_dwarf_add): Declare.
* configure, config.h.in: Rebuild.
2012-10-04 Gerald Pfeifer <gerald@pfeifer.com>
* btest.c (f23): Avoid uninitialized variable warning.
2012-10-04 Ian Lance Taylor <iant@google.com>
* dwarf.c: If the system header files do not declare strnlen,
provide our own version.
2012-10-03 Ian Lance Taylor <iant@google.com>
* dwarf.c (read_uleb128): Fix overflow test.
(read_sleb128): Likewise.
(build_address_map): Don't change unit_buf.start.
2012-10-02 Uros Bizjak <ubizjak@gmail.com>
PR other/54761
* configure.ac (EXTRA_FLAGS): New.
* Makefile.am (AM_FLAGS): Add $(EXTRA_FLAGS).
* configure, Makefile.in: Regenerate.
2012-09-29 Ian Lance Taylor <iant@google.com>
PR other/54749
* fileline.c (fileline_initialize): Pass errnum as -1 when
reporting that we could not read executable information after a
previous failure.
2012-09-27 Ian Lance Taylor <iant@google.com>
PR bootstrap/54732
* configure.ac: Add no-dependencies to AM_INIT_AUTOMAKE.
* Makefile.am: Add dependencies for all objects.
* configure, aclocal.m4, Makefile.in: Rebuild.
2012-09-27 Ian Lance Taylor <iant@google.com>
PR other/54726
* elf.c (backtrace_initialize): Set *fileln_fn, not
state->fileln_fn.
2012-09-19 Ian Lance Taylor <iant@google.com>
* configure.ac: Only use GCC_CHECK_UNWIND_GETIPINFO when compiled
as a target library.
* configure: Rebuild.
2012-09-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Ian Lance Taylor <iant@google.com>
2019-06-02 15:48:37 +00:00
* configure.ac (GCC_HEADER_STDINT): Invoke.
* backtrace.h: If we can't find <stdint.h>, use "gstdint.h".
* btest.c: Don't include <stdint.h>.
* dwarf.c: Likewise.
* configure, aclocal.m4, Makefile.in, config.h.in: Rebuild.
2014-09-21 17:33:12 +00:00
2012-09-18 Ian Lance Taylor <iant@google.com>
PR bootstrap/54623
* Makefile.am (AM_CPPFLAGS): Define.
(AM_CFLAGS): Remove -I options.
* Makefile.in: Rebuild.
2012-09-18 Ian Lance Taylor <iant@google.com>
* posix.c (O_BINARY): Define if not defined.
(backtrace_open): Pass O_BINARY to open. Only call fcntl if
HAVE_FCNTL is defined.
* configure.ac: Test for the fcntl function.
* configure, config.h.in: Rebuild.
2012-09-18 Ian Lance Taylor <iant@google.com>
* btest.c (test1, test2, test3, test4): Add the unused attribute.
2012-09-18 Ian Lance Taylor <iant@google.com>
* dwarf.c: Correct test of HAVE_DECL_STRNLEN.
2012-09-18 Ian Lance Taylor <iant@google.com>
* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
* mmapio.c: Don't define _GNU_SOURCE.
* configure, config.h.in: Rebuild.
2012-09-18 Ian Lance Taylor <iant@google.com>
* configure.ac: Check whether strnlen is declared.
* dwarf.c: Declare strnlen if not declared.
* configure, config.h.in: Rebuild.
2012-09-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* fileline.c: Include <stdlib.h>.
* mmap.c: Likewise.
2012-09-17 Ian Lance Taylor <iant@google.com>
PR bootstrap/54611
* nounwind.c (backtrace_full): Rename from backtrace. Add state
parameter.
2012-09-17 Gerald Pfeifer <gerald@pfeifer.com>
PR bootstrap/54611
* nounwind.c (backtrace_simple): Add state parameter.
2012-09-17 Ian Lance Taylor <iant@google.com>
PR bootstrap/54609
* unknown.c (unknown_fileline): Add state parameter, remove
fileline_data parameter, name error_callback parameter.
(backtrace_initialize): Add state parameter.
2012-09-17 Ian Lance Taylor <iant@google.com>
* Initial implementation.
2017-04-10 11:32:00 +00:00
2019-06-02 15:48:37 +00:00
Copyright (C) 2012-2019 Free Software Foundation, Inc.
2017-04-10 11:32:00 +00:00
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.