12016-01-04 Jakub Jelinek <jakub@redhat.com> 2 3 Update copyright years. 4 52015-12-18 Andris Pavenis <andris.pavenis@iki.fi> 6 7 * configure.ac: Specify that DJGPP do not have mmap even when sys/mman.h exists 8 * configure: Regenerate 9 102015-12-09 John David Anglin <danglin@gcc.gnu.org> 11 12 PR 68115/libfortran 13 * configure.ac: Set libbacktrace_cv_sys_sync to no on hppa*-*-hpux*. 14 * configure: Regenerate. 15 * elf.c (backtrace_initialize): Cast __sync_bool_compare_and_swap call 16 to void. 17 182015-09-17 Ian Lance Taylor <iant@google.com> 19 20 * posix.c (backtrace_open): Cast second argument of open() to int. 21 222015-09-11 Ian Lance Taylor <iant@google.com> 23 24 * Makefile.am (backtrace.lo): Depend on internal.h. 25 (sort.lo, stest.lo): Add explicit dependencies. 26 * Makefile.in: Rebuild. 27 282015-09-09 Hans-Peter Nilsson <hp@axis.com> 29 30 * backtrace.c: #include <sys/types.h>. 31 322015-09-08 Ian Lance Taylor <iant@google.com> 33 34 PR other/67457 35 * backtrace.c: #include "internal.h". 36 (struct backtrace_data): Add can_alloc field. 37 (unwind): If can_alloc is false, don't try to get file/line 38 information. 39 (backtrace_full): Set can_alloc field in bdata. 40 * alloc.c (backtrace_alloc): Don't call error_callback if it is 41 NULL. 42 * mmap.c (backtrace_alloc): Likewise. 43 * internal.h: Update comments for backtrace_alloc and 44 backtrace_free. 45 462015-09-08 Ian Lance Taylor <iant@google.com> 47 48 PR other/67457 49 * mmap.c (backtrace_alloc): Correct test for mmap failure. 50 512015-08-31 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> 52 53 * configure.ac: For spu-*-* targets, set have_fcntl to no. 54 * configure: Regenerate. 55 562015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> 57 58 * configure.ac: Remove [disable-shared] argument to LT_INIT. 59 Remove setting PIC_FLAG when building as target library. 60 * configure: Regenerate. 61 622015-08-26 Hans-Peter Nilsson <hp@axis.com> 63 64 * configure.ac: Only compile with -fPIC if the target 65 supports it. 66 * configure: Regenerate. 67 682015-08-24 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> 69 70 * configure.ac: Set have_mmap to no on spu-*-* targets. 71 * configure: Regenerate. 72 732015-08-13 Ian Lance Taylor <iant@google.com> 74 75 * dwarf.c (read_function_entry): Add vec_inlined parameter. 76 Change all callers. 77 782015-06-11 Martin Sebor <msebor@redhat.com> 79 80 PR sanitizer/65479 81 * dwarf.c (struct line): Add new field idx. 82 (line_compare): Use it. 83 (add_line): Set it. 84 (read_line_info): Reset it. 85 862015-05-29 Tristan Gingold <gingold@adacore.com> 87 88 * pecoff.c: New file. 89 * Makefile.am (FORMAT_FILES): Add pecoff.c and dependencies. 90 * Makefile.in: Regenerate. 91 * filetype.awk: Detect pecoff. 92 * configure.ac: Define BACKTRACE_SUPPORTS_DATA on elf platforms. 93 Add pecoff. 94 * btest.c (test5): Test enabled only if BACKTRACE_SUPPORTS_DATA is 95 true. 96 * backtrace-supported.h.in (BACKTRACE_SUPPORTS_DATA): Define. 97 * configure: Regenerate. 98 * pecoff.c: New file. 99 1002015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> 101 102 * Makefile.in: Regenerated with automake-1.11.6. 103 * aclocal.m4: Likewise. 104 * configure: Likewise. 105 1062015-01-24 Matthias Klose <doko@ubuntu.com> 107 108 * configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC. 109 * configure: Regenerate. 110 1112015-01-05 Jakub Jelinek <jakub@redhat.com> 112 113 Update copyright years. 114 1152014-11-21 H.J. Lu <hongjiu.lu@intel.com> 116 117 PR bootstrap/63784 118 * configure: Regenerated. 119 1202014-11-11 David Malcolm <dmalcolm@redhat.com> 121 122 * ChangeLog.jit: New. 123 1242014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> 125 126 PR target/63610 127 * configure: Regenerate. 128 1292014-10-23 Ian Lance Taylor <iant@google.com> 130 131 * internal.h (backtrace_atomic_load_pointer) [no atomic or sync]: 132 Fix to return void *. 133 1342014-05-08 Ian Lance Taylor <iant@google.com> 135 136 * mmap.c (backtrace_free): If freeing a large aligned block of 137 memory, call munmap rather than holding onto it. 138 (backtrace_vector_grow): When growing a vector, double the number 139 of pages requested. When releasing the old version of a grown 140 vector, pass the correct size to backtrace_free. 141 1422014-03-07 Ian Lance Taylor <iant@google.com> 143 144 * sort.c (backtrace_qsort): Use middle element as pivot. 145 1462014-03-06 Ian Lance Taylor <iant@google.com> 147 148 * sort.c: New file. 149 * stest.c: New file. 150 * internal.h (backtrace_qsort): Declare. 151 * dwarf.c (read_abbrevs): Call backtrace_qsort instead of qsort. 152 (read_line_info, read_function_entry): Likewise. 153 (read_function_info, build_dwarf_data): Likewise. 154 * elf.c (elf_initialize_syminfo): Likewise. 155 * Makefile.am (libbacktrace_la_SOURCES): Add sort.c. 156 (stest_SOURCES, stest_LDADD): Define. 157 (check_PROGRAMS): Add stest. 158 1592014-02-07 Misty De Meo <misty@brew.sh> 160 161 PR target/58710 162 * configure.ac: Use AC_LINK_IFELSE in check for 163 _Unwind_GetIPInfo. 164 * configure: Regenerate. 165 1662014-01-02 Richard Sandiford <rdsandiford@googlemail.com> 167 168 Update copyright years 169 1702013-12-06 Jakub Jelinek <jakub@redhat.com> 171 172 * elf.c (ET_DYN): Undefine and define again. 173 (elf_add): Add exe argument, if true and ehdr.e_type is ET_DYN, 174 return early -1 without closing the descriptor. 175 (struct phdr_data): Add exe_descriptor. 176 (phdr_callback): If pd->exe_descriptor is not -1, for very first 177 call if dlpi_name is NULL just call elf_add with the exe_descriptor, 178 otherwise backtrace_close the exe_descriptor if not -1. Adjust 179 call to elf_add. 180 (backtrace_initialize): Adjust call to elf_add. If it returns 181 -1, set pd.exe_descriptor to descriptor, otherwise set it to -1. 182 1832013-12-05 Ian Lance Taylor <iant@google.com> 184 185 * alloc.c (backtrace_vector_finish): Add error_callback and data 186 parameters. Call backtrace_vector_release. Return address base. 187 * mmap.c (backtrace_vector_finish): Add error_callback and data 188 parameters. Return address base. 189 * dwarf.c (read_function_info): Get new address base from 190 backtrace_vector_finish. 191 * internal.h (backtrace_vector_finish): Update declaration. 192 1932013-11-27 Ian Lance Taylor <iant@google.com> 194 195 * dwarf.c (find_address_ranges): New static function, broken out 196 of build_address_map. 197 (build_address_map): Call it. 198 * btest.c (check): Check for missing filename or function, rather 199 than crashing. 200 (f3): Check that enough frames were returned. 201 2022013-11-19 Jakub Jelinek <jakub@redhat.com> 203 204 * backtrace.h (backtrace_syminfo_callback): Add symsize argument. 205 * elf.c (elf_syminfo): Pass 0 or sym->size to the callback as 206 last argument. 207 * btest.c (struct symdata): Add size field. 208 (callback_three): Add symsize argument. Copy it to the data->size 209 field. 210 (f23): Set symdata.size to 0. 211 (test5): Likewise. If sizeof (int) > 1, lookup address of 212 ((uintptr_t) &global) + 1. Verify symdata.val and symdata.size 213 values. 214 215 * atomic.c: Include sys/types.h. 216 2172013-11-18 Ian Lance Taylor <iant@google.com> 218 219 * configure.ac: Check for support of __atomic extensions. 220 * internal.h: Declare or #define atomic functions for use in 221 backtrace code. 222 * atomic.c: New file. 223 * dwarf.c (dwarf_lookup_pc): Use atomic functions. 224 (dwarf_fileline, backtrace_dwarf_add): Likewise. 225 * elf.c (elf_add_syminfo_data, elf_syminfo): Likewise. 226 (backtrace_initialize): Likewise. 227 * fileline.c (fileline_initialize): Likewise. 228 * Makefile.am (libbacktrace_la_SOURCES): Add atomic.c. 229 * configure, config.h.in, Makefile.in: Rebuild. 230 2312013-11-18 Jakub Jelinek <jakub@redhat.com> 232 233 * elf.c (SHN_UNDEF): Define. 234 (elf_initialize_syminfo): Add base_address argument. Ignore symbols 235 with st_shndx == SHN_UNDEF. Add base_address to address fields. 236 (elf_add): Adjust caller. 237 238 * elf.c (phdr_callback): Process info->dlpi_addr == 0 normally. 239 2402013-11-16 Ian Lance Taylor <iant@google.com> 241 242 * backtrace.h (backtrace_create_state): Correct comment about 243 threading. 244 2452013-11-15 Ian Lance Taylor <iant@google.com> 246 247 * backtrace.h (backtrace_syminfo): Update comment and parameter 248 name to take any address, not just a PC value. 249 * elf.c (STT_OBJECT): Define. 250 (elf_nosyms): Rename parameter pc to addr. 251 (elf_symbol_search): Rename local variable pc to addr. 252 (elf_initialize_syminfo): Add STT_OBJECT symbols to elf_symbols. 253 (elf_syminfo): Rename parameter pc to addr. 254 * btest.c (global): New global variable. 255 (test5): New test. 256 (main): Call test5. 257 2582013-10-17 Ian Lance Taylor <iant@google.com> 259 260 * elf.c (elf_add): Don't get the wrong offsets if a debug section 261 is missing. 262 2632013-10-15 David Malcolm <dmalcolm@redhat.com> 264 265 * configure.ac: Add --enable-host-shared, setting up 266 pre-existing PIC_FLAG variable within Makefile.am et al. 267 * configure: Regenerate. 268 2692013-09-20 Alan Modra <amodra@gmail.com> 270 271 * configure: Regenerate. 272 2732013-07-23 Alexander Monakov <amonakov@ispras.ru> 274 275 * elf.c (elf_syminfo): Loop over the elf_syminfo_data chain. 276 2772013-07-23 Alexander Monakov <amonakov@ispras.ru> 278 279 * elf.c (backtrace_initialize): Pass elf_fileline_fn to 280 dl_iterate_phdr callbacks. 281 2822013-03-25 Ian Lance Taylor <iant@google.com> 283 284 * alloc.c: #include <sys/types.h>. 285 * mmap.c: Likewise. 286 2872013-01-31 Ian Lance Taylor <iant@google.com> 288 289 * dwarf.c (read_function_info): Permit fvec parameter to be NULL. 290 (dwarf_lookup_pc): Don't use ddata->fvec if threaded. 291 2922013-01-25 Jakub Jelinek <jakub@redhat.com> 293 294 PR other/56076 295 * dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir 296 attribute was not seen. 297 2982013-01-16 Ian Lance Taylor <iant@google.com> 299 300 * dwarf.c (struct unit): Add filename and abs_filename fields. 301 (build_address_map): Set new fields when reading unit. 302 (dwarf_lookup_pc): If we don't find an entry in the line table, 303 just return the main file name. 304 3052013-01-14 Richard Sandiford <rdsandiford@googlemail.com> 306 307 Update copyright years. 308 3092013-01-01 Ian Lance Taylor <iant@google.com> 310 311 PR bootstrap/54834 312 * Makefile.am (AM_CPPFLAGS): Remove -I ../gcc/include and -I 313 $(MULTIBUILDTOP)/../../gcc/include. 314 * Makefile.in: Rebuild. 315 3162013-01-01 Ian Lance Taylor <iant@google.com> 317 318 PR other/55536 319 * mmap.c (backtrace_alloc): Don't call sync functions if not 320 threaded. 321 (backtrace_free): Likewise. 322 3232012-12-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 324 325 * mmapio.c: Define MAP_FAILED if not defined. 326 3272012-12-11 Jakub Jelinek <jakub@redhat.com> 328 329 PR bootstrap/54926 330 * Makefile.am (AM_CFLAGS): Remove -frandom-seed=$@. 331 * configure.ac: If --with-target-subdir, add -frandom-seed=$@ 332 to EXTRA_FLAGS unconditionally, otherwise check whether the compiler 333 accepts it. 334 * Makefile.in: Regenerated. 335 * configure: Regenerated. 336 3372012-12-07 Jakub Jelinek <jakub@redhat.com> 338 339 PR bootstrap/54926 340 * Makefile.am (AM_CFLAGS): Add -frandom-seed=$@. 341 * Makefile.in: Regenerated. 342 3432012-11-20 Ian Lance Taylor <iant@google.com> 344 345 * dwarf.c (read_attribute): Always clear val. 346 3472012-11-13 Ian Lance Taylor <iant@google.com> 348 349 PR other/55312 350 * configure.ac: Only add -Werror if building a target library. 351 * configure: Rebuild. 352 3532012-11-12 Ian Lance Taylor <iant@google.com> 354 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 355 Gerald Pfeifer <gerald@pfeifer.com> 356 357 * configure.ac: Check for getexecname. 358 * fileline.c: #include <errno.h>. Define getexecname if not 359 available. 360 (fileline_initialize): Try to find the executable in a few 361 different ways. 362 * print.c (error_callback): Only print the filename if it came 363 from the backtrace state. 364 * configure, config.h.in: Rebuild. 365 3662012-10-29 Ian Lance Taylor <iant@google.com> 367 368 * mmap.c (backtrace_vector_release): Correct last patch: add 369 aligned, not size. 370 3712012-10-29 Ian Lance Taylor <iant@google.com> 372 373 * mmap.c (backtrace_vector_release): Make sure freed block is 374 aligned on 8-byte boundary. 375 3762012-10-26 Ian Lance Taylor <iant@google.com> 377 378 PR other/55087 379 * posix.c (backtrace_open): Add does_not_exist parameter. 380 * elf.c (phdr_callback): Do not warn if shared library could not 381 be opened. 382 * fileline.c (fileline_initialize): Update calls to 383 backtrace_open. 384 * internal.h (backtrace_open): Update declaration. 385 3862012-10-26 Jack Howarth <howarth@bromo.med.uc.edu> 387 388 PR target/55061 389 * configure.ac: Check for _Unwind_GetIPInfo function declaration. 390 * configure: Regenerate. 391 3922012-10-24 Ian Lance Taylor <iant@google.com> 393 394 PR target/55061 395 * configure.ac: Check whether -funwind-tables option works. 396 * configure: Rebuild. 397 3982012-10-11 Ian Lance Taylor <iant@google.com> 399 400 * configure.ac: Do not use dl_iterate_phdr on Solaris 10. 401 * configure: Rebuild. 402 4032012-10-10 Ian Lance Taylor <iant@google.com> 404 405 * elf.c: Rename all Elf typedefs to start with b_elf, and be all 406 lower case. 407 4082012-10-10 Hans-Peter Nilsson <hp@bitrange.com> 409 410 * elf.c (elf_add_syminfo_data): Add casts to avoid warning. 411 4122012-10-09 Ian Lance Taylor <iant@google.com> 413 414 * dwarf.c (dwarf_fileline): Add cast to avoid warning. 415 (backtrace_dwarf_add): Likewise. 416 4172012-10-09 Ian Lance Taylor <iant@google.com> 418 419 Add support for tracing through shared libraries. 420 * configure.ac: Check for link.h and dl_iterate_phdr. 421 * elf.c: #include <link.h> if system has dl_iterate_phdr. #undef 422 ELF macros before #defining them. 423 (dl_phdr_info, dl_iterate_phdr): Define if system does not have 424 dl_iterate_phdr. 425 (struct elf_syminfo_data): Add next field. 426 (elf_initialize_syminfo): Initialize next field. 427 (elf_add_syminfo_data): New static function. 428 (elf_add): New static function, broken out of 429 backtrace_initialize. Call backtrace_dwarf_add instead of 430 backtrace_dwarf_initialize. 431 (struct phdr_data): Define. 432 (phdr_callback): New static function. 433 (backtrace_initialize): Call elf_add. 434 * dwarf.c (struct dwarf_data): Add next and base_address fields. 435 (add_unit_addr): Add base_address parameter. Change all callers. 436 (add_unit_ranges, build_address_map): Likewise. 437 (add_line): Add ddata parameter. Change all callers. 438 (read_line_program, add_function_range): Likewise. 439 (dwarf_lookup_pc): New static function, broken out of 440 dwarf_fileline. 441 (dwarf_fileline): Call dwarf_lookup_pc. 442 (build_dwarf_data): New static function. 443 (backtrace_dwarf_add): New function. 444 (backtrace_dwarf_initialize): Remove. 445 * internal.h (backtrace_dwarf_initialize): Don't declare. 446 (backtrace_dwarf_add): Declare. 447 * configure, config.h.in: Rebuild. 448 4492012-10-04 Gerald Pfeifer <gerald@pfeifer.com> 450 451 * btest.c (f23): Avoid uninitialized variable warning. 452 4532012-10-04 Ian Lance Taylor <iant@google.com> 454 455 * dwarf.c: If the system header files do not declare strnlen, 456 provide our own version. 457 4582012-10-03 Ian Lance Taylor <iant@google.com> 459 460 * dwarf.c (read_uleb128): Fix overflow test. 461 (read_sleb128): Likewise. 462 (build_address_map): Don't change unit_buf.start. 463 4642012-10-02 Uros Bizjak <ubizjak@gmail.com> 465 466 PR other/54761 467 * configure.ac (EXTRA_FLAGS): New. 468 * Makefile.am (AM_FLAGS): Add $(EXTRA_FLAGS). 469 * configure, Makefile.in: Regenerate. 470 4712012-09-29 Ian Lance Taylor <iant@google.com> 472 473 PR other/54749 474 * fileline.c (fileline_initialize): Pass errnum as -1 when 475 reporting that we could not read executable information after a 476 previous failure. 477 4782012-09-27 Ian Lance Taylor <iant@google.com> 479 480 PR bootstrap/54732 481 * configure.ac: Add no-dependencies to AM_INIT_AUTOMAKE. 482 * Makefile.am: Add dependencies for all objects. 483 * configure, aclocal.m4, Makefile.in: Rebuild. 484 4852012-09-27 Ian Lance Taylor <iant@google.com> 486 487 PR other/54726 488 * elf.c (backtrace_initialize): Set *fileln_fn, not 489 state->fileln_fn. 490 4912012-09-19 Ian Lance Taylor <iant@google.com> 492 493 * configure.ac: Only use GCC_CHECK_UNWIND_GETIPINFO when compiled 494 as a target library. 495 * configure: Rebuild. 496 4972012-09-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 498 Ian Lance Taylor <iant@google.com> 499 500 * configure.ac (GCC_HEADER_STDINT): Invoke. 501 * backtrace.h: If we can't find <stdint.h>, use "gstdint.h". 502 * btest.c: Don't include <stdint.h>. 503 * dwarf.c: Likewise. 504 * configure, aclocal.m4, Makefile.in, config.h.in: Rebuild. 505 5062012-09-18 Ian Lance Taylor <iant@google.com> 507 508 PR bootstrap/54623 509 * Makefile.am (AM_CPPFLAGS): Define. 510 (AM_CFLAGS): Remove -I options. 511 * Makefile.in: Rebuild. 512 5132012-09-18 Ian Lance Taylor <iant@google.com> 514 515 * posix.c (O_BINARY): Define if not defined. 516 (backtrace_open): Pass O_BINARY to open. Only call fcntl if 517 HAVE_FCNTL is defined. 518 * configure.ac: Test for the fcntl function. 519 * configure, config.h.in: Rebuild. 520 5212012-09-18 Ian Lance Taylor <iant@google.com> 522 523 * btest.c (test1, test2, test3, test4): Add the unused attribute. 524 5252012-09-18 Ian Lance Taylor <iant@google.com> 526 527 * dwarf.c: Correct test of HAVE_DECL_STRNLEN. 528 5292012-09-18 Ian Lance Taylor <iant@google.com> 530 531 * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS. 532 * mmapio.c: Don't define _GNU_SOURCE. 533 * configure, config.h.in: Rebuild. 534 5352012-09-18 Ian Lance Taylor <iant@google.com> 536 537 * configure.ac: Check whether strnlen is declared. 538 * dwarf.c: Declare strnlen if not declared. 539 * configure, config.h.in: Rebuild. 540 5412012-09-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 542 543 * fileline.c: Include <stdlib.h>. 544 * mmap.c: Likewise. 545 5462012-09-17 Ian Lance Taylor <iant@google.com> 547 548 PR bootstrap/54611 549 * nounwind.c (backtrace_full): Rename from backtrace. Add state 550 parameter. 551 5522012-09-17 Gerald Pfeifer <gerald@pfeifer.com> 553 554 PR bootstrap/54611 555 * nounwind.c (backtrace_simple): Add state parameter. 556 5572012-09-17 Ian Lance Taylor <iant@google.com> 558 559 PR bootstrap/54609 560 * unknown.c (unknown_fileline): Add state parameter, remove 561 fileline_data parameter, name error_callback parameter. 562 (backtrace_initialize): Add state parameter. 563 5642012-09-17 Ian Lance Taylor <iant@google.com> 565 566 * Initial implementation. 567 568Copyright (C) 2012-2016 Free Software Foundation, Inc. 569 570Copying and distribution of this file, with or without modification, 571are permitted in any medium without royalty provided the copyright 572notice and this notice are preserved. 573