12020-03-04 Release Manager 2 3 * GCC 8.4.0 released. 4 52019-02-22 Release Manager 6 7 * GCC 8.3.0 released. 8 92018-10-23 Richard Biener <rguenther@suse.de> 10 11 Backport from mainline 12 2018-06-21 Denis Khalikov <d.khalikov@partner.samsung.com> 13 14 PR other/86198 15 * elf.c (elf_add): Increase ".note.gnu.build-id" section size 16 checking up to 36 bytes. 17 182018-07-26 Release Manager 19 20 * GCC 8.2.0 released. 21 222018-05-02 Release Manager 23 24 * GCC 8.1.0 released. 25 262018-04-24 H.J. Lu <hongjiu.lu@intel.com> 27 28 * configure: Regenerated. 29 302018-04-19 Jakub Jelinek <jakub@redhat.com> 31 32 * configure: Regenerated. 33 342018-04-17 Ian Lance Taylor <iant@golang.org> 35 36 * backtrace.c: Revert last two changes. Don't call mmap 37 directly. 38 392018-04-17 Ian Lance Taylor <iant@golang.org> 40 41 * backtrace.c: Include backtrace-supported.h before checking 42 BACKTRACE_USES_MALLOC. 43 442018-04-17 Ian Lance Taylor <iant@golang.org> 45 46 * backtrace.c (backtrace_full): When testing whether we can 47 allocate memory, call mmap directly, and munmap the memory. 48 492018-04-04 Jakub Jelinek <jakub@redhat.com> 50 51 PR other/85161 52 * elf.c (elf_zlib_fetch): Fix up predefined macro names in test for 53 big endian, only use 32-bit loads if endianity macros are predefined 54 and indicate big or little endian. 55 562018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com> 57 58 PR target/84148 59 * configure: Regenerate. 60 612018-02-15 Jakub Jelinek <jakub@redhat.com> 62 63 PR other/82368 64 * elf.c (SHT_PROGBITS): Undefine and define. 65 662018-02-14 Jakub Jelinek <jakub@redhat.com> 67 68 PR other/82368 69 * elf.c (EM_PPC64, EF_PPC64_ABI): Undefine and define. 70 (struct elf_ppc64_opd_data): New type. 71 (elf_initialize_syminfo): Add opd argument, handle symbols 72 pointing into the PowerPC64 ELFv1 .opd section. 73 (elf_add): Read .opd section on PowerPC64 ELFv1, pass pointer 74 to structure with .opd data to elf_initialize_syminfo. 75 762018-01-31 Ian Lance Taylor <iant@golang.org> 77 78 * elf.c (elf_add): Close descriptor if we use a debugfile. 79 * btest.c (check_open_files): New static function. 80 (main): Call check_open_files. 81 822018-01-25 Ian Lance Taylor <iant@golang.org> 83 84 * elf.c (elf_open_debugfile_by_debuglink): Don't check CRC if the 85 desired CRC is zero. 86 (elf_add): Don't clear *found_sym and *found_dwarf if debuginfo. 87 882018-01-25 Ian Lance Taylor <iant@golang.org> 89 90 * pecoff.c (coff_add): Only release syms_view if it is valid. 91 922018-01-25 Ian Lance Taylor <iant@golang.org> 93 94 * pecoff.c (coff_add): Another memcpy -> coff_read4 fix. 95 962018-01-24 Ian Lance Taylor <iant@golang.org> 97 98 * pecoff.c (coff_add): Use coff_read4, not memcpy. 99 1002018-01-24 Ian Lance Taylor <iant@golang.org> 101 102 PR other/68239 103 * mmap.c (backtrace_free_locked): Don't put more than 16 entries 104 on the free list. 105 1062018-01-19 Tony Reix <tony.reix@atos.net> 107 108 * xcoff.c (xcoff_incl_compare): New function. 109 (xcoff_incl_search): New function. 110 (xcoff_process_linenos): Use bsearch to find include file. 111 (xcoff_initialize_fileline): Sort include file information. 112 1132018-01-16 Ian Lance Taylor <iant@golang.org> 114 115 * elf.c (codes) [GENERATE_FIXED_HUFFMAN_TABLE]: Fix size to be 116 288. 117 (main) [GENERATE_FIXED_HUFFMAN_TABLE]: Pass 288 to 118 elf_zlib_inflate_table. Generate elf_zlib_default_dist_table. 119 (elf_zlib_default_table): Update. 120 (elf_zlib_default_dist_table): New static array. 121 (elf_zlib_inflate): Use elf_zlib_default_dist_table for dist table 122 for block type 1. 123 * ztest.c (struct zlib_test): Add uncompressed_len. 124 (tests): Initialize uncompressed_len field. Add new test case. 125 (test_samples): Use uncompressed_len field. 126 1272018-01-03 Jakub Jelinek <jakub@redhat.com> 128 129 Update copyright years. 130 1312017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com> 132 133 * configure.ac: Add CET_FLAGS to EXTRA_FLAGS. 134 * aclocal.m4: Regenerate. 135 * Makefile.in: Likewise. 136 * configure: Likewise. 137 1382017-10-06 Ian Lance Taylor <iant@golang.org> 139 140 * ztest.c (test_large): Pass unsigned long *, not size_t *, to 141 zlib uncompress function. 142 1432017-10-05 Ian Lance Taylor <iant@golang.org> 144 145 * elf.c (elf_zlib_fetch): Change pval argument to uint64_t *. 146 Read a four byte integer. 147 (elf_zlib_inflate): Change val to uint64_t. Align pin to a 32-bit 148 boundary before ever calling elf_zlib_fetch. 149 * ztest.c (test_large): Simplify print statements a bit. 150 1512017-10-02 Ian Lance Taylor <iant@golang.org> 152 153 * ztest.c: #include <errno.h>. 154 (TEST_TIMING): Don't define, don't test. 155 (xclock_gettime, xclockid_t): Define if !HAVE_CLOCK_GETTIME. 156 (clockid_t, clock_gettime, CLOCK_REALTIME): Likewise. 157 (ZLIB_CLOCK_GETTIME_ARG): Define. 158 * configure.ac: Change clock_gettime_link to CLOCK_GETTIME_LINK. 159 * Makefile.am: Likewise. 160 * configure, Makefile.in: Rebuild. 161 1622017-10-02 Thomas Schwinge <thomas@codesourcery.com> 163 164 PR other/67165 165 * Makefile.am: Append the content of clock_gettime_link to 166 ztest_LDADD. 167 * configure.ac: Test for the case that clock_gettime is in librt. 168 * Makefile.in: Regenerate. 169 * configure: Likewise. 170 171 PR other/67165 172 * configure.ac: Check for clock_gettime. 173 * config.h.in: Regenerate. 174 * configure: Likewise. 175 * ztest.c (average_time, test_large): Conditionalize test timing 176 on clock_gettime availability. 177 1782017-09-29 Tony Reix <tony.reix@atos.net> 179 180 * xcoff.c: Initial support for DWARF debug sections in XCOFF. 181 (STYP_DWARF, SSUBTYP_DW*): Define. 182 (enum dwarf_section): Define. 183 (struct dwsect_info): Define. 184 (xcoff_add): Look for DWARF sections, pass them to 185 backtrace_dwarf_add. 186 1872017-09-28 Ian Lance Taylor <iant@golang.org> 188 189 PR other/67165 190 * elf.c (__builtin_prefetch): Define if not __GNUC__. 191 (unlikely): Define. 192 (SHF_UNCOMPRESSED, ELFCOMPRESS_ZLIB): Define. 193 (b_elf_chdr): Define type. 194 (enum debug_section): Add ZDEBUG_xxx values. 195 (debug_section_names): Add names for new sections. 196 (struct debug_section_info): Add compressed field. 197 (elf_zlib_failed, elf_zlib_fetch): New static functions. 198 (HUFFMAN_TABLE_SIZE, HUFFMAN_VALUE_MASK): Define. 199 (HUFFMAN_BITS_SHIFT, HUFFMAN_BITS_MASK): Define. 200 (HUFFMAN_SECONDARY_SHIFT): Define. 201 (ZDEBUG_TABLE_SIZE): Define. 202 (ZDEBUG_TABLE_CODELEN_OFFSET, ZDEBUG_TABLE_WORK_OFFSET): Define. 203 (final_next_secondary): New static variable if 204 BACKTRACE_GENERATE_FIXED_HUFFMAN_TABLE. 205 (elf_zlib_inflate_table): New static function. 206 (BACKTRACE_GENERATE_FIXED_HUFFMAN_TABLE): If define, define main 207 function to produce fixed Huffman table. 208 (elf_zlib_default_table): New static variable. 209 (elf_zlib_inflate): New static function. 210 (elf_zlib_verify_checksum): Likewise. 211 (elf_zlib_inflate_and_verify): Likewise. 212 (elf_uncompress_zdebug): Likewise. 213 (elf_uncompress_chdr): Likewise. 214 (backtrace_uncompress_zdebug): New extern function. 215 (elf_add): Look for .zdebug sections and SHF_COMPRESSED debug 216 sections, and uncompress them. 217 * internal.h (backtrace_compress_zdebug): Declare. 218 * ztest.c: New file. 219 * configure.ac: Check for -lz and check whether the linker 220 supports --compress-debug-sections. 221 * Makefile.am (ztest_SOURCES): New variable. 222 (ztest_CFLAGS, ztest_LDADD): New variables. 223 (check_PROGRAMS): Add ztest. 224 (ctestg_SOURCES): New variable. 225 (ctestg_CFLAGS, ctestg_LDFLAGS, ctestg_LDADD): New variables. 226 (ctesta_SOURCES): New variable. 227 (ctesta_CFLAGS, ctesta_LDFLAGS, ctesta_LDADD): New variables. 228 (check_PROGRAMS): Add ctestg and ctesta. 229 * configure, config.h.in, Makefile.in: Rebuild. 230 2312017-09-22 Ian Lance Taylor <iant@golang.org> 232 233 PR sanitizer/77631 234 * configure.ac: Check for lstat and readlink. 235 * elf.c (lstat, readlink): Provide dummy versions if real versions 236 are not available. 237 * configure, config.h.in: Rebuild. 238 2392017-09-21 Ian Lance Taylor <iant@google.com> 240 241 PR go/82284 242 * elf.c (backtrace_initialize): Set pd.exe_filename. 243 2442017-09-20 Ian Lance Taylor <iant@golang.org> 245 Denis Khalikov <d.khalikov@partner.samsung.com> 246 247 PR sanitizer/77631 248 Support for external debug info. 249 * elf.c: Include <errno.h>, <sys/stat.h>, <unistd.h>. 250 (S_ISLNK): Define if not defined. 251 (xstrnlen): Define if strnlen is not available. 252 (b_elf_note): Define type. 253 (NT_GNU_BUILD_ID): Define macro. 254 (elf_crc32, elf_crc32_file): New static functions. 255 (elf_is_symlink, elf_readlink): New static functions. 256 (elf_open_debugfile_by_buildid): New static function. 257 (elf_try_debugfile): New static function. 258 (elf_find_debugfile_by_debuglink): New static function. 259 (elf_open_debugfile_by_debuglink): New static function. 260 (elf_add): Add filename and debuginfo parameters. Adjust all 261 callers. Look for external debug info notes, and try to fetch 262 debug info from external file. 263 (struct phdr_data): Add exe_filename field. 264 (phdr_callback): Pass filename to elf_add. 265 (backtrace_initialize): Add filename parameter. 266 * internal.h (backtrace_initialize): Add filename parameter. 267 * fileline.c (fileline_initialize): Pass filename to 268 backtrace_initialize. 269 * pecoff.c (fileline_initialize): Add unused filename parameter. 270 * unknown.c (fileline_initialize): Likewise. 271 * xcoff.c (fileline_initialize): Likewise. 272 * configure.ac: Check for objcopy --add-gnu-debuglink. 273 * Makefile.am (dtest): New test target. 274 * configure, Makefile.in: Rebuild. 275 2762017-09-12 Steve Ellcey <sellcey@cavium.com> 277 278 PR other/81096 279 * Makefile.am (ttest_CFLAGS): Add $(AM_CFLAGS) 280 * Makefile.in: Regenerate. 281 2822017-09-12 Steve Ellcey <sellcey@cavium.com> 283 284 PR other/81096 285 * libbacktrace/Makefile.in 286 (HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_CFLAGS): Add $(AM_CFLAGS) 287 2882017-08-02 David Edelsohn <dje.gcc@gmail.com> 289 290 PR bootstrap/81638 291 * xcoff.c (xcoff_process_linenos): Initialize incl to NULL. 292 2932017-07-28 Tony Reix <tony.reix@atos.net> 294 295 * xcoff.c: Don't leak a file descriptor if an archive is malformed. 296 2972017-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 298 299 * fileline.c (fileline_initialize): Print pid_t as long. 300 3012017-07-26 Tony Reix <tony.reix@atos.net> 302 303 * configure.ac: Check for XCOFF32/XCOFF64. Check for loadquery. 304 * filetype.awk: Separate AIX XCOFF32 and XCOFF64. 305 * xcoff.c: Add support for AIX XCOFF32 and XCOFF64 formats. 306 * configure, config.h.in: Regenerate. 307 3082017-07-21 Tony Reix <tony.reix@atos.net> 309 310 * filetype.awk: Add AIX XCOFF type detection. 311 * configure.ac: Recognize xcoff format. 312 * Makefile.am (FORMAT_FILES): Add xcoff.c. 313 * fileline.c: Include <unistd.h>. 314 (fileline_initialize): Add case for AIX procfs. 315 * xcoff.c: New file. 316 * configure, Makefile.in: Rebuild. 317 3182017-06-21 Richard Biener <rguenther@suse.de> 319 320 * configure.ac: Add AC_SYS_LARGEFILE. 321 * config.h.in: Regenerate. 322 * configure: Likewise. 323 3242017-06-11 Ian Lance Taylor <iant@golang.org> 325 326 * elf.c (backtrace_initialize): Always set *fileline_fn. 327 * ttest.c: New file. 328 * btest.c: Move support functions into testlib.c. Change calls to 329 check to pass file name. 330 * testlib.c: New file, copied from (part of) btest.c. 331 * testlib.h: New file, declarations for testlib.c. 332 * edtest.c: Use testlib.h and testlib.c. 333 * configure.ac: Test for -pthread, set HAVE_PTHREAD conditional. 334 * Makefile.am (btest_SOURCES): Add testlib.c. 335 (edtest_SOURCES): Likewise. 336 (CHECK_PROGRAMS): Add ttest if HAVE_PTHREAD. 337 (ttest_SOURCES, ttest_CFLAGS, ttest_LDADD): Define. 338 * configure, Makefile.in: Rebuild. 339 3402017-05-19 Than McIntosh <thanm@google.com> 341 342 * dwarf.c (free_line_header): Don't free dirs if dirs_count == 0. 343 (read_line_header): Don't allocate dirs if dirs_count == 0. 344 * edtest.c: New file. 345 * edtest2.c: New file. 346 * Makefile.am (edtest_SOURCES, edtest_LDADD): Define. 347 (check_PROGRAMS): Add edtest. 348 (edtest2_build.c, gen_edtest2_build): New targets. 349 * Makefile.in: Rebuild. 350 3512017-03-08 Sam Thursfield <sam.thursfield@codethink.co.uk> 352 353 * btest.c (test5): Replace #ifdef guard with 'unused' attribute 354 to fix compile warning when BACKTRACE_SUPPORTED isn't defined. 355 3562017-01-01 Jakub Jelinek <jakub@redhat.com> 357 358 Update copyright years. 359 3602016-11-15 Matthias Klose <doko@ubuntu.com> 361 362 * configure: Regenerate. 363 3642016-09-11 Carlos Liam <carlos@aarzee.me> 365 366 * all: Remove meaningless trailing whitespace. 367 3682016-05-18 Uros Bizjak <ubizjak@gmail.com> 369 370 PR target/71161 371 * elf.c (phdr_callback) [__i386__]: Add 372 __attribute__((__force_align_arg_pointer__)). 373 3742016-03-02 Maxim Ostapenko <m.ostapenko@partner.samsung.com> 375 376 * elf.c (backtrace_initialize): Properly initialize elf_fileline_fn to 377 avoid possible crash. 378 (elf_add): Don't set *fileline_fn to elf_nodebug value in case of 379 missing debug info anymore. 380 3812016-02-06 John David Anglin <danglin@gcc.gnu.org> 382 383 * mmap.c (MAP_FAILED): Define if not defined. 384 3852016-01-04 Jakub Jelinek <jakub@redhat.com> 386 387 Update copyright years. 388 3892015-12-18 Andris Pavenis <andris.pavenis@iki.fi> 390 391 * configure.ac: Specify that DJGPP do not have mmap 392 even when sys/mman.h exists. 393 * configure: Regenerate 394 3952015-12-09 John David Anglin <danglin@gcc.gnu.org> 396 397 PR libgfortran/68115 398 * configure.ac: Set libbacktrace_cv_sys_sync to no on hppa*-*-hpux*. 399 * configure: Regenerate. 400 * elf.c (backtrace_initialize): Cast __sync_bool_compare_and_swap call 401 to void. 402 4032015-09-17 Ian Lance Taylor <iant@google.com> 404 405 * posix.c (backtrace_open): Cast second argument of open() to int. 406 4072015-09-11 Ian Lance Taylor <iant@google.com> 408 409 * Makefile.am (backtrace.lo): Depend on internal.h. 410 (sort.lo, stest.lo): Add explicit dependencies. 411 * Makefile.in: Rebuild. 412 4132015-09-09 Hans-Peter Nilsson <hp@axis.com> 414 415 * backtrace.c: #include <sys/types.h>. 416 4172015-09-08 Ian Lance Taylor <iant@google.com> 418 419 PR other/67457 420 * backtrace.c: #include "internal.h". 421 (struct backtrace_data): Add can_alloc field. 422 (unwind): If can_alloc is false, don't try to get file/line 423 information. 424 (backtrace_full): Set can_alloc field in bdata. 425 * alloc.c (backtrace_alloc): Don't call error_callback if it is 426 NULL. 427 * mmap.c (backtrace_alloc): Likewise. 428 * internal.h: Update comments for backtrace_alloc and 429 backtrace_free. 430 4312015-09-08 Ian Lance Taylor <iant@google.com> 432 433 PR other/67457 434 * mmap.c (backtrace_alloc): Correct test for mmap failure. 435 4362015-08-31 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> 437 438 * configure.ac: For spu-*-* targets, set have_fcntl to no. 439 * configure: Regenerate. 440 4412015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> 442 443 * configure.ac: Remove [disable-shared] argument to LT_INIT. 444 Remove setting PIC_FLAG when building as target library. 445 * configure: Regenerate. 446 4472015-08-26 Hans-Peter Nilsson <hp@axis.com> 448 449 * configure.ac: Only compile with -fPIC if the target 450 supports it. 451 * configure: Regenerate. 452 4532015-08-24 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> 454 455 * configure.ac: Set have_mmap to no on spu-*-* targets. 456 * configure: Regenerate. 457 4582015-08-13 Ian Lance Taylor <iant@google.com> 459 460 * dwarf.c (read_function_entry): Add vec_inlined parameter. 461 Change all callers. 462 4632015-06-11 Martin Sebor <msebor@redhat.com> 464 465 PR sanitizer/65479 466 * dwarf.c (struct line): Add new field idx. 467 (line_compare): Use it. 468 (add_line): Set it. 469 (read_line_info): Reset it. 470 4712015-05-29 Tristan Gingold <gingold@adacore.com> 472 473 * pecoff.c: New file. 474 * Makefile.am (FORMAT_FILES): Add pecoff.c and dependencies. 475 * Makefile.in: Regenerate. 476 * filetype.awk: Detect pecoff. 477 * configure.ac: Define BACKTRACE_SUPPORTS_DATA on elf platforms. 478 Add pecoff. 479 * btest.c (test5): Test enabled only if BACKTRACE_SUPPORTS_DATA is 480 true. 481 * backtrace-supported.h.in (BACKTRACE_SUPPORTS_DATA): Define. 482 * configure: Regenerate. 483 * pecoff.c: New file. 484 4852015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> 486 487 * Makefile.in: Regenerated with automake-1.11.6. 488 * aclocal.m4: Likewise. 489 * configure: Likewise. 490 4912015-01-24 Matthias Klose <doko@ubuntu.com> 492 493 * configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC. 494 * configure: Regenerate. 495 4962015-01-05 Jakub Jelinek <jakub@redhat.com> 497 498 Update copyright years. 499 5002014-11-21 H.J. Lu <hongjiu.lu@intel.com> 501 502 PR bootstrap/63784 503 * configure: Regenerated. 504 5052014-11-11 David Malcolm <dmalcolm@redhat.com> 506 507 * ChangeLog.jit: New. 508 5092014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> 510 511 PR target/63610 512 * configure: Regenerate. 513 5142014-10-23 Ian Lance Taylor <iant@google.com> 515 516 * internal.h (backtrace_atomic_load_pointer) [no atomic or sync]: 517 Fix to return void *. 518 5192014-05-08 Ian Lance Taylor <iant@google.com> 520 521 * mmap.c (backtrace_free): If freeing a large aligned block of 522 memory, call munmap rather than holding onto it. 523 (backtrace_vector_grow): When growing a vector, double the number 524 of pages requested. When releasing the old version of a grown 525 vector, pass the correct size to backtrace_free. 526 5272014-03-07 Ian Lance Taylor <iant@google.com> 528 529 * sort.c (backtrace_qsort): Use middle element as pivot. 530 5312014-03-06 Ian Lance Taylor <iant@google.com> 532 533 * sort.c: New file. 534 * stest.c: New file. 535 * internal.h (backtrace_qsort): Declare. 536 * dwarf.c (read_abbrevs): Call backtrace_qsort instead of qsort. 537 (read_line_info, read_function_entry): Likewise. 538 (read_function_info, build_dwarf_data): Likewise. 539 * elf.c (elf_initialize_syminfo): Likewise. 540 * Makefile.am (libbacktrace_la_SOURCES): Add sort.c. 541 (stest_SOURCES, stest_LDADD): Define. 542 (check_PROGRAMS): Add stest. 543 5442014-02-07 Misty De Meo <misty@brew.sh> 545 546 PR target/58710 547 * configure.ac: Use AC_LINK_IFELSE in check for 548 _Unwind_GetIPInfo. 549 * configure: Regenerate. 550 5512014-01-02 Richard Sandiford <rdsandiford@googlemail.com> 552 553 Update copyright years 554 5552013-12-06 Jakub Jelinek <jakub@redhat.com> 556 557 * elf.c (ET_DYN): Undefine and define again. 558 (elf_add): Add exe argument, if true and ehdr.e_type is ET_DYN, 559 return early -1 without closing the descriptor. 560 (struct phdr_data): Add exe_descriptor. 561 (phdr_callback): If pd->exe_descriptor is not -1, for very first 562 call if dlpi_name is NULL just call elf_add with the exe_descriptor, 563 otherwise backtrace_close the exe_descriptor if not -1. Adjust 564 call to elf_add. 565 (backtrace_initialize): Adjust call to elf_add. If it returns 566 -1, set pd.exe_descriptor to descriptor, otherwise set it to -1. 567 5682013-12-05 Ian Lance Taylor <iant@google.com> 569 570 * alloc.c (backtrace_vector_finish): Add error_callback and data 571 parameters. Call backtrace_vector_release. Return address base. 572 * mmap.c (backtrace_vector_finish): Add error_callback and data 573 parameters. Return address base. 574 * dwarf.c (read_function_info): Get new address base from 575 backtrace_vector_finish. 576 * internal.h (backtrace_vector_finish): Update declaration. 577 5782013-11-27 Ian Lance Taylor <iant@google.com> 579 580 * dwarf.c (find_address_ranges): New static function, broken out 581 of build_address_map. 582 (build_address_map): Call it. 583 * btest.c (check): Check for missing filename or function, rather 584 than crashing. 585 (f3): Check that enough frames were returned. 586 5872013-11-19 Jakub Jelinek <jakub@redhat.com> 588 589 * backtrace.h (backtrace_syminfo_callback): Add symsize argument. 590 * elf.c (elf_syminfo): Pass 0 or sym->size to the callback as 591 last argument. 592 * btest.c (struct symdata): Add size field. 593 (callback_three): Add symsize argument. Copy it to the data->size 594 field. 595 (f23): Set symdata.size to 0. 596 (test5): Likewise. If sizeof (int) > 1, lookup address of 597 ((uintptr_t) &global) + 1. Verify symdata.val and symdata.size 598 values. 599 600 * atomic.c: Include sys/types.h. 601 6022013-11-18 Ian Lance Taylor <iant@google.com> 603 604 * configure.ac: Check for support of __atomic extensions. 605 * internal.h: Declare or #define atomic functions for use in 606 backtrace code. 607 * atomic.c: New file. 608 * dwarf.c (dwarf_lookup_pc): Use atomic functions. 609 (dwarf_fileline, backtrace_dwarf_add): Likewise. 610 * elf.c (elf_add_syminfo_data, elf_syminfo): Likewise. 611 (backtrace_initialize): Likewise. 612 * fileline.c (fileline_initialize): Likewise. 613 * Makefile.am (libbacktrace_la_SOURCES): Add atomic.c. 614 * configure, config.h.in, Makefile.in: Rebuild. 615 6162013-11-18 Jakub Jelinek <jakub@redhat.com> 617 618 * elf.c (SHN_UNDEF): Define. 619 (elf_initialize_syminfo): Add base_address argument. Ignore symbols 620 with st_shndx == SHN_UNDEF. Add base_address to address fields. 621 (elf_add): Adjust caller. 622 623 * elf.c (phdr_callback): Process info->dlpi_addr == 0 normally. 624 6252013-11-16 Ian Lance Taylor <iant@google.com> 626 627 * backtrace.h (backtrace_create_state): Correct comment about 628 threading. 629 6302013-11-15 Ian Lance Taylor <iant@google.com> 631 632 * backtrace.h (backtrace_syminfo): Update comment and parameter 633 name to take any address, not just a PC value. 634 * elf.c (STT_OBJECT): Define. 635 (elf_nosyms): Rename parameter pc to addr. 636 (elf_symbol_search): Rename local variable pc to addr. 637 (elf_initialize_syminfo): Add STT_OBJECT symbols to elf_symbols. 638 (elf_syminfo): Rename parameter pc to addr. 639 * btest.c (global): New global variable. 640 (test5): New test. 641 (main): Call test5. 642 6432013-10-17 Ian Lance Taylor <iant@google.com> 644 645 * elf.c (elf_add): Don't get the wrong offsets if a debug section 646 is missing. 647 6482013-10-15 David Malcolm <dmalcolm@redhat.com> 649 650 * configure.ac: Add --enable-host-shared, setting up 651 pre-existing PIC_FLAG variable within Makefile.am et al. 652 * configure: Regenerate. 653 6542013-09-20 Alan Modra <amodra@gmail.com> 655 656 * configure: Regenerate. 657 6582013-07-23 Alexander Monakov <amonakov@ispras.ru> 659 660 * elf.c (elf_syminfo): Loop over the elf_syminfo_data chain. 661 6622013-07-23 Alexander Monakov <amonakov@ispras.ru> 663 664 * elf.c (backtrace_initialize): Pass elf_fileline_fn to 665 dl_iterate_phdr callbacks. 666 6672013-03-25 Ian Lance Taylor <iant@google.com> 668 669 * alloc.c: #include <sys/types.h>. 670 * mmap.c: Likewise. 671 6722013-01-31 Ian Lance Taylor <iant@google.com> 673 674 * dwarf.c (read_function_info): Permit fvec parameter to be NULL. 675 (dwarf_lookup_pc): Don't use ddata->fvec if threaded. 676 6772013-01-25 Jakub Jelinek <jakub@redhat.com> 678 679 PR other/56076 680 * dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir 681 attribute was not seen. 682 6832013-01-16 Ian Lance Taylor <iant@google.com> 684 685 * dwarf.c (struct unit): Add filename and abs_filename fields. 686 (build_address_map): Set new fields when reading unit. 687 (dwarf_lookup_pc): If we don't find an entry in the line table, 688 just return the main file name. 689 6902013-01-14 Richard Sandiford <rdsandiford@googlemail.com> 691 692 Update copyright years. 693 6942013-01-01 Ian Lance Taylor <iant@google.com> 695 696 PR bootstrap/54834 697 * Makefile.am (AM_CPPFLAGS): Remove -I ../gcc/include and -I 698 $(MULTIBUILDTOP)/../../gcc/include. 699 * Makefile.in: Rebuild. 700 7012013-01-01 Ian Lance Taylor <iant@google.com> 702 703 PR other/55536 704 * mmap.c (backtrace_alloc): Don't call sync functions if not 705 threaded. 706 (backtrace_free): Likewise. 707 7082012-12-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 709 710 * mmapio.c: Define MAP_FAILED if not defined. 711 7122012-12-11 Jakub Jelinek <jakub@redhat.com> 713 714 PR bootstrap/54926 715 * Makefile.am (AM_CFLAGS): Remove -frandom-seed=$@. 716 * configure.ac: If --with-target-subdir, add -frandom-seed=$@ 717 to EXTRA_FLAGS unconditionally, otherwise check whether the compiler 718 accepts it. 719 * Makefile.in: Regenerated. 720 * configure: Regenerated. 721 7222012-12-07 Jakub Jelinek <jakub@redhat.com> 723 724 PR bootstrap/54926 725 * Makefile.am (AM_CFLAGS): Add -frandom-seed=$@. 726 * Makefile.in: Regenerated. 727 7282012-11-20 Ian Lance Taylor <iant@google.com> 729 730 * dwarf.c (read_attribute): Always clear val. 731 7322012-11-13 Ian Lance Taylor <iant@google.com> 733 734 PR other/55312 735 * configure.ac: Only add -Werror if building a target library. 736 * configure: Rebuild. 737 7382012-11-12 Ian Lance Taylor <iant@google.com> 739 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 740 Gerald Pfeifer <gerald@pfeifer.com> 741 742 * configure.ac: Check for getexecname. 743 * fileline.c: #include <errno.h>. Define getexecname if not 744 available. 745 (fileline_initialize): Try to find the executable in a few 746 different ways. 747 * print.c (error_callback): Only print the filename if it came 748 from the backtrace state. 749 * configure, config.h.in: Rebuild. 750 7512012-10-29 Ian Lance Taylor <iant@google.com> 752 753 * mmap.c (backtrace_vector_release): Correct last patch: add 754 aligned, not size. 755 7562012-10-29 Ian Lance Taylor <iant@google.com> 757 758 * mmap.c (backtrace_vector_release): Make sure freed block is 759 aligned on 8-byte boundary. 760 7612012-10-26 Ian Lance Taylor <iant@google.com> 762 763 PR other/55087 764 * posix.c (backtrace_open): Add does_not_exist parameter. 765 * elf.c (phdr_callback): Do not warn if shared library could not 766 be opened. 767 * fileline.c (fileline_initialize): Update calls to 768 backtrace_open. 769 * internal.h (backtrace_open): Update declaration. 770 7712012-10-26 Jack Howarth <howarth@bromo.med.uc.edu> 772 773 PR target/55061 774 * configure.ac: Check for _Unwind_GetIPInfo function declaration. 775 * configure: Regenerate. 776 7772012-10-24 Ian Lance Taylor <iant@google.com> 778 779 PR target/55061 780 * configure.ac: Check whether -funwind-tables option works. 781 * configure: Rebuild. 782 7832012-10-11 Ian Lance Taylor <iant@google.com> 784 785 * configure.ac: Do not use dl_iterate_phdr on Solaris 10. 786 * configure: Rebuild. 787 7882012-10-10 Ian Lance Taylor <iant@google.com> 789 790 * elf.c: Rename all Elf typedefs to start with b_elf, and be all 791 lower case. 792 7932012-10-10 Hans-Peter Nilsson <hp@bitrange.com> 794 795 * elf.c (elf_add_syminfo_data): Add casts to avoid warning. 796 7972012-10-09 Ian Lance Taylor <iant@google.com> 798 799 * dwarf.c (dwarf_fileline): Add cast to avoid warning. 800 (backtrace_dwarf_add): Likewise. 801 8022012-10-09 Ian Lance Taylor <iant@google.com> 803 804 Add support for tracing through shared libraries. 805 * configure.ac: Check for link.h and dl_iterate_phdr. 806 * elf.c: #include <link.h> if system has dl_iterate_phdr. #undef 807 ELF macros before #defining them. 808 (dl_phdr_info, dl_iterate_phdr): Define if system does not have 809 dl_iterate_phdr. 810 (struct elf_syminfo_data): Add next field. 811 (elf_initialize_syminfo): Initialize next field. 812 (elf_add_syminfo_data): New static function. 813 (elf_add): New static function, broken out of 814 backtrace_initialize. Call backtrace_dwarf_add instead of 815 backtrace_dwarf_initialize. 816 (struct phdr_data): Define. 817 (phdr_callback): New static function. 818 (backtrace_initialize): Call elf_add. 819 * dwarf.c (struct dwarf_data): Add next and base_address fields. 820 (add_unit_addr): Add base_address parameter. Change all callers. 821 (add_unit_ranges, build_address_map): Likewise. 822 (add_line): Add ddata parameter. Change all callers. 823 (read_line_program, add_function_range): Likewise. 824 (dwarf_lookup_pc): New static function, broken out of 825 dwarf_fileline. 826 (dwarf_fileline): Call dwarf_lookup_pc. 827 (build_dwarf_data): New static function. 828 (backtrace_dwarf_add): New function. 829 (backtrace_dwarf_initialize): Remove. 830 * internal.h (backtrace_dwarf_initialize): Don't declare. 831 (backtrace_dwarf_add): Declare. 832 * configure, config.h.in: Rebuild. 833 8342012-10-04 Gerald Pfeifer <gerald@pfeifer.com> 835 836 * btest.c (f23): Avoid uninitialized variable warning. 837 8382012-10-04 Ian Lance Taylor <iant@google.com> 839 840 * dwarf.c: If the system header files do not declare strnlen, 841 provide our own version. 842 8432012-10-03 Ian Lance Taylor <iant@google.com> 844 845 * dwarf.c (read_uleb128): Fix overflow test. 846 (read_sleb128): Likewise. 847 (build_address_map): Don't change unit_buf.start. 848 8492012-10-02 Uros Bizjak <ubizjak@gmail.com> 850 851 PR other/54761 852 * configure.ac (EXTRA_FLAGS): New. 853 * Makefile.am (AM_FLAGS): Add $(EXTRA_FLAGS). 854 * configure, Makefile.in: Regenerate. 855 8562012-09-29 Ian Lance Taylor <iant@google.com> 857 858 PR other/54749 859 * fileline.c (fileline_initialize): Pass errnum as -1 when 860 reporting that we could not read executable information after a 861 previous failure. 862 8632012-09-27 Ian Lance Taylor <iant@google.com> 864 865 PR bootstrap/54732 866 * configure.ac: Add no-dependencies to AM_INIT_AUTOMAKE. 867 * Makefile.am: Add dependencies for all objects. 868 * configure, aclocal.m4, Makefile.in: Rebuild. 869 8702012-09-27 Ian Lance Taylor <iant@google.com> 871 872 PR other/54726 873 * elf.c (backtrace_initialize): Set *fileln_fn, not 874 state->fileln_fn. 875 8762012-09-19 Ian Lance Taylor <iant@google.com> 877 878 * configure.ac: Only use GCC_CHECK_UNWIND_GETIPINFO when compiled 879 as a target library. 880 * configure: Rebuild. 881 8822012-09-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 883 Ian Lance Taylor <iant@google.com> 884 885 * configure.ac (GCC_HEADER_STDINT): Invoke. 886 * backtrace.h: If we can't find <stdint.h>, use "gstdint.h". 887 * btest.c: Don't include <stdint.h>. 888 * dwarf.c: Likewise. 889 * configure, aclocal.m4, Makefile.in, config.h.in: Rebuild. 890 8912012-09-18 Ian Lance Taylor <iant@google.com> 892 893 PR bootstrap/54623 894 * Makefile.am (AM_CPPFLAGS): Define. 895 (AM_CFLAGS): Remove -I options. 896 * Makefile.in: Rebuild. 897 8982012-09-18 Ian Lance Taylor <iant@google.com> 899 900 * posix.c (O_BINARY): Define if not defined. 901 (backtrace_open): Pass O_BINARY to open. Only call fcntl if 902 HAVE_FCNTL is defined. 903 * configure.ac: Test for the fcntl function. 904 * configure, config.h.in: Rebuild. 905 9062012-09-18 Ian Lance Taylor <iant@google.com> 907 908 * btest.c (test1, test2, test3, test4): Add the unused attribute. 909 9102012-09-18 Ian Lance Taylor <iant@google.com> 911 912 * dwarf.c: Correct test of HAVE_DECL_STRNLEN. 913 9142012-09-18 Ian Lance Taylor <iant@google.com> 915 916 * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS. 917 * mmapio.c: Don't define _GNU_SOURCE. 918 * configure, config.h.in: Rebuild. 919 9202012-09-18 Ian Lance Taylor <iant@google.com> 921 922 * configure.ac: Check whether strnlen is declared. 923 * dwarf.c: Declare strnlen if not declared. 924 * configure, config.h.in: Rebuild. 925 9262012-09-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 927 928 * fileline.c: Include <stdlib.h>. 929 * mmap.c: Likewise. 930 9312012-09-17 Ian Lance Taylor <iant@google.com> 932 933 PR bootstrap/54611 934 * nounwind.c (backtrace_full): Rename from backtrace. Add state 935 parameter. 936 9372012-09-17 Gerald Pfeifer <gerald@pfeifer.com> 938 939 PR bootstrap/54611 940 * nounwind.c (backtrace_simple): Add state parameter. 941 9422012-09-17 Ian Lance Taylor <iant@google.com> 943 944 PR bootstrap/54609 945 * unknown.c (unknown_fileline): Add state parameter, remove 946 fileline_data parameter, name error_callback parameter. 947 (backtrace_initialize): Add state parameter. 948 9492012-09-17 Ian Lance Taylor <iant@google.com> 950 951 * Initial implementation. 952 953Copyright (C) 2012-2018 Free Software Foundation, Inc. 954 955Copying and distribution of this file, with or without modification, 956are permitted in any medium without royalty provided the copyright 957notice and this notice are preserved. 958