12015-01-05 Jakub Jelinek <jakub@redhat.com> 2 3 Update copyright years. 4 52014-11-21 H.J. Lu <hongjiu.lu@intel.com> 6 7 PR bootstrap/63784 8 * configure: Regenerated. 9 102014-11-11 David Malcolm <dmalcolm@redhat.com> 11 12 * ChangeLog.jit: New. 13 142014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> 15 16 PR target/63610 17 * configure: Regenerate. 18 192014-10-23 Ian Lance Taylor <iant@google.com> 20 21 * internal.h (backtrace_atomic_load_pointer) [no atomic or sync]: 22 Fix to return void *. 23 242014-05-08 Ian Lance Taylor <iant@google.com> 25 26 * mmap.c (backtrace_free): If freeing a large aligned block of 27 memory, call munmap rather than holding onto it. 28 (backtrace_vector_grow): When growing a vector, double the number 29 of pages requested. When releasing the old version of a grown 30 vector, pass the correct size to backtrace_free. 31 322014-03-07 Ian Lance Taylor <iant@google.com> 33 34 * sort.c (backtrace_qsort): Use middle element as pivot. 35 362014-03-06 Ian Lance Taylor <iant@google.com> 37 38 * sort.c: New file. 39 * stest.c: New file. 40 * internal.h (backtrace_qsort): Declare. 41 * dwarf.c (read_abbrevs): Call backtrace_qsort instead of qsort. 42 (read_line_info, read_function_entry): Likewise. 43 (read_function_info, build_dwarf_data): Likewise. 44 * elf.c (elf_initialize_syminfo): Likewise. 45 * Makefile.am (libbacktrace_la_SOURCES): Add sort.c. 46 (stest_SOURCES, stest_LDADD): Define. 47 (check_PROGRAMS): Add stest. 48 492014-02-07 Misty De Meo <misty@brew.sh> 50 51 PR target/58710 52 * configure.ac: Use AC_LINK_IFELSE in check for 53 _Unwind_GetIPInfo. 54 * configure: Regenerate. 55 562014-01-02 Richard Sandiford <rdsandiford@googlemail.com> 57 58 Update copyright years 59 602013-12-06 Jakub Jelinek <jakub@redhat.com> 61 62 * elf.c (ET_DYN): Undefine and define again. 63 (elf_add): Add exe argument, if true and ehdr.e_type is ET_DYN, 64 return early -1 without closing the descriptor. 65 (struct phdr_data): Add exe_descriptor. 66 (phdr_callback): If pd->exe_descriptor is not -1, for very first 67 call if dlpi_name is NULL just call elf_add with the exe_descriptor, 68 otherwise backtrace_close the exe_descriptor if not -1. Adjust 69 call to elf_add. 70 (backtrace_initialize): Adjust call to elf_add. If it returns 71 -1, set pd.exe_descriptor to descriptor, otherwise set it to -1. 72 732013-12-05 Ian Lance Taylor <iant@google.com> 74 75 * alloc.c (backtrace_vector_finish): Add error_callback and data 76 parameters. Call backtrace_vector_release. Return address base. 77 * mmap.c (backtrace_vector_finish): Add error_callback and data 78 parameters. Return address base. 79 * dwarf.c (read_function_info): Get new address base from 80 backtrace_vector_finish. 81 * internal.h (backtrace_vector_finish): Update declaration. 82 832013-11-27 Ian Lance Taylor <iant@google.com> 84 85 * dwarf.c (find_address_ranges): New static function, broken out 86 of build_address_map. 87 (build_address_map): Call it. 88 * btest.c (check): Check for missing filename or function, rather 89 than crashing. 90 (f3): Check that enough frames were returned. 91 922013-11-19 Jakub Jelinek <jakub@redhat.com> 93 94 * backtrace.h (backtrace_syminfo_callback): Add symsize argument. 95 * elf.c (elf_syminfo): Pass 0 or sym->size to the callback as 96 last argument. 97 * btest.c (struct symdata): Add size field. 98 (callback_three): Add symsize argument. Copy it to the data->size 99 field. 100 (f23): Set symdata.size to 0. 101 (test5): Likewise. If sizeof (int) > 1, lookup address of 102 ((uintptr_t) &global) + 1. Verify symdata.val and symdata.size 103 values. 104 105 * atomic.c: Include sys/types.h. 106 1072013-11-18 Ian Lance Taylor <iant@google.com> 108 109 * configure.ac: Check for support of __atomic extensions. 110 * internal.h: Declare or #define atomic functions for use in 111 backtrace code. 112 * atomic.c: New file. 113 * dwarf.c (dwarf_lookup_pc): Use atomic functions. 114 (dwarf_fileline, backtrace_dwarf_add): Likewise. 115 * elf.c (elf_add_syminfo_data, elf_syminfo): Likewise. 116 (backtrace_initialize): Likewise. 117 * fileline.c (fileline_initialize): Likewise. 118 * Makefile.am (libbacktrace_la_SOURCES): Add atomic.c. 119 * configure, config.h.in, Makefile.in: Rebuild. 120 1212013-11-18 Jakub Jelinek <jakub@redhat.com> 122 123 * elf.c (SHN_UNDEF): Define. 124 (elf_initialize_syminfo): Add base_address argument. Ignore symbols 125 with st_shndx == SHN_UNDEF. Add base_address to address fields. 126 (elf_add): Adjust caller. 127 128 * elf.c (phdr_callback): Process info->dlpi_addr == 0 normally. 129 1302013-11-16 Ian Lance Taylor <iant@google.com> 131 132 * backtrace.h (backtrace_create_state): Correct comment about 133 threading. 134 1352013-11-15 Ian Lance Taylor <iant@google.com> 136 137 * backtrace.h (backtrace_syminfo): Update comment and parameter 138 name to take any address, not just a PC value. 139 * elf.c (STT_OBJECT): Define. 140 (elf_nosyms): Rename parameter pc to addr. 141 (elf_symbol_search): Rename local variable pc to addr. 142 (elf_initialize_syminfo): Add STT_OBJECT symbols to elf_symbols. 143 (elf_syminfo): Rename parameter pc to addr. 144 * btest.c (global): New global variable. 145 (test5): New test. 146 (main): Call test5. 147 1482013-10-17 Ian Lance Taylor <iant@google.com> 149 150 * elf.c (elf_add): Don't get the wrong offsets if a debug section 151 is missing. 152 1532013-10-15 David Malcolm <dmalcolm@redhat.com> 154 155 * configure.ac: Add --enable-host-shared, setting up 156 pre-existing PIC_FLAG variable within Makefile.am et al. 157 * configure: Regenerate. 158 1592013-09-20 Alan Modra <amodra@gmail.com> 160 161 * configure: Regenerate. 162 1632013-07-23 Alexander Monakov <amonakov@ispras.ru> 164 165 * elf.c (elf_syminfo): Loop over the elf_syminfo_data chain. 166 1672013-07-23 Alexander Monakov <amonakov@ispras.ru> 168 169 * elf.c (backtrace_initialize): Pass elf_fileline_fn to 170 dl_iterate_phdr callbacks. 171 1722013-03-25 Ian Lance Taylor <iant@google.com> 173 174 * alloc.c: #include <sys/types.h>. 175 * mmap.c: Likewise. 176 1772013-01-31 Ian Lance Taylor <iant@google.com> 178 179 * dwarf.c (read_function_info): Permit fvec parameter to be NULL. 180 (dwarf_lookup_pc): Don't use ddata->fvec if threaded. 181 1822013-01-25 Jakub Jelinek <jakub@redhat.com> 183 184 PR other/56076 185 * dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir 186 attribute was not seen. 187 1882013-01-16 Ian Lance Taylor <iant@google.com> 189 190 * dwarf.c (struct unit): Add filename and abs_filename fields. 191 (build_address_map): Set new fields when reading unit. 192 (dwarf_lookup_pc): If we don't find an entry in the line table, 193 just return the main file name. 194 1952013-01-14 Richard Sandiford <rdsandiford@googlemail.com> 196 197 Update copyright years. 198 1992013-01-01 Ian Lance Taylor <iant@google.com> 200 201 PR bootstrap/54834 202 * Makefile.am (AM_CPPFLAGS): Remove -I ../gcc/include and -I 203 $(MULTIBUILDTOP)/../../gcc/include. 204 * Makefile.in: Rebuild. 205 2062013-01-01 Ian Lance Taylor <iant@google.com> 207 208 PR other/55536 209 * mmap.c (backtrace_alloc): Don't call sync functions if not 210 threaded. 211 (backtrace_free): Likewise. 212 2132012-12-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 214 215 * mmapio.c: Define MAP_FAILED if not defined. 216 2172012-12-11 Jakub Jelinek <jakub@redhat.com> 218 219 PR bootstrap/54926 220 * Makefile.am (AM_CFLAGS): Remove -frandom-seed=$@. 221 * configure.ac: If --with-target-subdir, add -frandom-seed=$@ 222 to EXTRA_FLAGS unconditionally, otherwise check whether the compiler 223 accepts it. 224 * Makefile.in: Regenerated. 225 * configure: Regenerated. 226 2272012-12-07 Jakub Jelinek <jakub@redhat.com> 228 229 PR bootstrap/54926 230 * Makefile.am (AM_CFLAGS): Add -frandom-seed=$@. 231 * Makefile.in: Regenerated. 232 2332012-11-20 Ian Lance Taylor <iant@google.com> 234 235 * dwarf.c (read_attribute): Always clear val. 236 2372012-11-13 Ian Lance Taylor <iant@google.com> 238 239 PR other/55312 240 * configure.ac: Only add -Werror if building a target library. 241 * configure: Rebuild. 242 2432012-11-12 Ian Lance Taylor <iant@google.com> 244 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 245 Gerald Pfeifer <gerald@pfeifer.com> 246 247 * configure.ac: Check for getexecname. 248 * fileline.c: #include <errno.h>. Define getexecname if not 249 available. 250 (fileline_initialize): Try to find the executable in a few 251 different ways. 252 * print.c (error_callback): Only print the filename if it came 253 from the backtrace state. 254 * configure, config.h.in: Rebuild. 255 2562012-10-29 Ian Lance Taylor <iant@google.com> 257 258 * mmap.c (backtrace_vector_release): Correct last patch: add 259 aligned, not size. 260 2612012-10-29 Ian Lance Taylor <iant@google.com> 262 263 * mmap.c (backtrace_vector_release): Make sure freed block is 264 aligned on 8-byte boundary. 265 2662012-10-26 Ian Lance Taylor <iant@google.com> 267 268 PR other/55087 269 * posix.c (backtrace_open): Add does_not_exist parameter. 270 * elf.c (phdr_callback): Do not warn if shared library could not 271 be opened. 272 * fileline.c (fileline_initialize): Update calls to 273 backtrace_open. 274 * internal.h (backtrace_open): Update declaration. 275 2762012-10-26 Jack Howarth <howarth@bromo.med.uc.edu> 277 278 PR target/55061 279 * configure.ac: Check for _Unwind_GetIPInfo function declaration. 280 * configure: Regenerate. 281 2822012-10-24 Ian Lance Taylor <iant@google.com> 283 284 PR target/55061 285 * configure.ac: Check whether -funwind-tables option works. 286 * configure: Rebuild. 287 2882012-10-11 Ian Lance Taylor <iant@google.com> 289 290 * configure.ac: Do not use dl_iterate_phdr on Solaris 10. 291 * configure: Rebuild. 292 2932012-10-10 Ian Lance Taylor <iant@google.com> 294 295 * elf.c: Rename all Elf typedefs to start with b_elf, and be all 296 lower case. 297 2982012-10-10 Hans-Peter Nilsson <hp@bitrange.com> 299 300 * elf.c (elf_add_syminfo_data): Add casts to avoid warning. 301 3022012-10-09 Ian Lance Taylor <iant@google.com> 303 304 * dwarf.c (dwarf_fileline): Add cast to avoid warning. 305 (backtrace_dwarf_add): Likewise. 306 3072012-10-09 Ian Lance Taylor <iant@google.com> 308 309 Add support for tracing through shared libraries. 310 * configure.ac: Check for link.h and dl_iterate_phdr. 311 * elf.c: #include <link.h> if system has dl_iterate_phdr. #undef 312 ELF macros before #defining them. 313 (dl_phdr_info, dl_iterate_phdr): Define if system does not have 314 dl_iterate_phdr. 315 (struct elf_syminfo_data): Add next field. 316 (elf_initialize_syminfo): Initialize next field. 317 (elf_add_syminfo_data): New static function. 318 (elf_add): New static function, broken out of 319 backtrace_initialize. Call backtrace_dwarf_add instead of 320 backtrace_dwarf_initialize. 321 (struct phdr_data): Define. 322 (phdr_callback): New static function. 323 (backtrace_initialize): Call elf_add. 324 * dwarf.c (struct dwarf_data): Add next and base_address fields. 325 (add_unit_addr): Add base_address parameter. Change all callers. 326 (add_unit_ranges, build_address_map): Likewise. 327 (add_line): Add ddata parameter. Change all callers. 328 (read_line_program, add_function_range): Likewise. 329 (dwarf_lookup_pc): New static function, broken out of 330 dwarf_fileline. 331 (dwarf_fileline): Call dwarf_lookup_pc. 332 (build_dwarf_data): New static function. 333 (backtrace_dwarf_add): New function. 334 (backtrace_dwarf_initialize): Remove. 335 * internal.h (backtrace_dwarf_initialize): Don't declare. 336 (backtrace_dwarf_add): Declare. 337 * configure, config.h.in: Rebuild. 338 3392012-10-04 Gerald Pfeifer <gerald@pfeifer.com> 340 341 * btest.c (f23): Avoid uninitialized variable warning. 342 3432012-10-04 Ian Lance Taylor <iant@google.com> 344 345 * dwarf.c: If the system header files do not declare strnlen, 346 provide our own version. 347 3482012-10-03 Ian Lance Taylor <iant@google.com> 349 350 * dwarf.c (read_uleb128): Fix overflow test. 351 (read_sleb128): Likewise. 352 (build_address_map): Don't change unit_buf.start. 353 3542012-10-02 Uros Bizjak <ubizjak@gmail.com> 355 356 PR other/54761 357 * configure.ac (EXTRA_FLAGS): New. 358 * Makefile.am (AM_FLAGS): Add $(EXTRA_FLAGS). 359 * configure, Makefile.in: Regenerate. 360 3612012-09-29 Ian Lance Taylor <iant@google.com> 362 363 PR other/54749 364 * fileline.c (fileline_initialize): Pass errnum as -1 when 365 reporting that we could not read executable information after a 366 previous failure. 367 3682012-09-27 Ian Lance Taylor <iant@google.com> 369 370 PR bootstrap/54732 371 * configure.ac: Add no-dependencies to AM_INIT_AUTOMAKE. 372 * Makefile.am: Add dependencies for all objects. 373 * configure, aclocal.m4, Makefile.in: Rebuild. 374 3752012-09-27 Ian Lance Taylor <iant@google.com> 376 377 PR other/54726 378 * elf.c (backtrace_initialize): Set *fileln_fn, not 379 state->fileln_fn. 380 3812012-09-19 Ian Lance Taylor <iant@google.com> 382 383 * configure.ac: Only use GCC_CHECK_UNWIND_GETIPINFO when compiled 384 as a target library. 385 * configure: Rebuild. 386 3872012-09-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 388 Ian Lance Taylor <iant@google.com> 389 390 * configure.ac (GCC_HEADER_STDINT): Invoke. 391 * backtrace.h: If we can't find <stdint.h>, use "gstdint.h". 392 * btest.c: Don't include <stdint.h>. 393 * dwarf.c: Likewise. 394 * configure, aclocal.m4, Makefile.in, config.h.in: Rebuild. 395 3962012-09-18 Ian Lance Taylor <iant@google.com> 397 398 PR bootstrap/54623 399 * Makefile.am (AM_CPPFLAGS): Define. 400 (AM_CFLAGS): Remove -I options. 401 * Makefile.in: Rebuild. 402 4032012-09-18 Ian Lance Taylor <iant@google.com> 404 405 * posix.c (O_BINARY): Define if not defined. 406 (backtrace_open): Pass O_BINARY to open. Only call fcntl if 407 HAVE_FCNTL is defined. 408 * configure.ac: Test for the fcntl function. 409 * configure, config.h.in: Rebuild. 410 4112012-09-18 Ian Lance Taylor <iant@google.com> 412 413 * btest.c (test1, test2, test3, test4): Add the unused attribute. 414 4152012-09-18 Ian Lance Taylor <iant@google.com> 416 417 * dwarf.c: Correct test of HAVE_DECL_STRNLEN. 418 4192012-09-18 Ian Lance Taylor <iant@google.com> 420 421 * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS. 422 * mmapio.c: Don't define _GNU_SOURCE. 423 * configure, config.h.in: Rebuild. 424 4252012-09-18 Ian Lance Taylor <iant@google.com> 426 427 * configure.ac: Check whether strnlen is declared. 428 * dwarf.c: Declare strnlen if not declared. 429 * configure, config.h.in: Rebuild. 430 4312012-09-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 432 433 * fileline.c: Include <stdlib.h>. 434 * mmap.c: Likewise. 435 4362012-09-17 Ian Lance Taylor <iant@google.com> 437 438 PR bootstrap/54611 439 * nounwind.c (backtrace_full): Rename from backtrace. Add state 440 parameter. 441 4422012-09-17 Gerald Pfeifer <gerald@pfeifer.com> 443 444 PR bootstrap/54611 445 * nounwind.c (backtrace_simple): Add state parameter. 446 4472012-09-17 Ian Lance Taylor <iant@google.com> 448 449 PR bootstrap/54609 450 * unknown.c (unknown_fileline): Add state parameter, remove 451 fileline_data parameter, name error_callback parameter. 452 (backtrace_initialize): Add state parameter. 453 4542012-09-17 Ian Lance Taylor <iant@google.com> 455 456 * Initial implementation. 457