]> git.ipfire.org Git - thirdparty/gcc.git/blame - libbacktrace/ChangeLog
Daily bump.
[thirdparty/gcc.git] / libbacktrace / ChangeLog
CommitLineData
3b632746
GA
12023-10-22 Iain Sandoe <iain@sandoe.co.uk>
2
3 * configure: Regenerate.
4 * configure.ac: Handle Darwin rpaths.
5
4b92dba7
GA
62023-08-07 Nick Alcock <nick.alcock@oracle.com>
7
8 * configure: Regenerate.
9
102023-08-07 Alexander von Gluck IV <kallisti5@unixzen.com>
11
12 * configure: Regenerate.
13
142023-08-07 Nick Alcock <nick.alcock@oracle.com>
15
16 * configure: Regenerate.
17
182023-08-07 Nick Alcock <nick.alcock@oracle.com>
19
20 * configure: Regenerate.
21
222023-08-07 H.J. Lu <hjl.tools@gmail.com>
23
24 * configure: Regenerate.
25
262023-08-07 H.J. Lu <hjl.tools@gmail.com>
27
28 * configure: Regenerate.
29
86fa4433
GA
302023-08-03 Richard Biener <rguenther@suse.de>
31
32 * zstdtest.c (test_samples): Properly compute the allocation
33 size for the uncompressed data.
34
a2f31d79
GA
352023-07-31 Ian Lance Taylor <iant@golang.org>
36
37 * configure.ac: Check for _pgmptr declaration.
38 * fileline.c (fileline_initialize): Check for _pgmfptr before
39 /proc/self/exec.
40 * configure, config.h.in: Regenerate.
41
579cdc1e
GA
422023-03-28 Ian Lance Taylor <iant@golang.org>
43
44 * elf.c (elf_zstd_read_fse): Call elf_fetch_bits after reading
45 bits, not before. Add unlikely for error case.
46 (elf_zstd_offset_table): Regenerate.
47 (elf_zstd_read_huff): Clear 13 entries in weight_mark, not 12.
48 (elf_zstd_read_literals): For a single stream adjust by
49 total_streams_size, not compressed_size.
50
1bdb1768
GA
512023-01-20 Ian Lance Taylor <iant@golang.org>
52
53 * dwarf.c (struct function_addrs): Change low and high fields to
54 uintptr_t.
55 (struct unit_addrs): Likewise.
56 (resolve_addr_index): Change address parameter to uintptr_t*.
57 (add_unit_addr): Change lowpc and highpc parameters to uintptr_t.
58 (add_function_range): Likewise.
59 (struct pcrange): Change lowpc and highpc fields to uintptr_t.
60 (add_low_high_range): Change add_range lowpc and highpc parameters
61 to uintptr_t.
62 (add_ranges_from_ranges): Likewise.
63 (add_ranges_from_rnglists): Likewise.
64 (add_low_high_range): Chnage lowpc and highpc variables to
65 uintpr_t.
66 (add_ranges_from_rnglists): Change some local variables to
67 uintptr_t.
68 (add_ranges_from_ranges): Change base parameter to uintptr_t.
69 (add_ranges_from_rnglists): Likewise.
70 (read_function_entry): Likewise.
71 (resolve_addr_index): Add explicit casts to uintptr_t.
72 (update_pcrange): Likewise.
73 (add_ranges_from_ranges): Likewise.
74 (add_ranges_from_rnglists): Likewise.
75 (read_function_entry): Likewise.
76
8d07b193
GA
772023-01-17 Martin Liska <mliska@suse.cz>
78
79 * Makefile.in: Regenerate.
80
d808db1f
GA
812023-01-06 Ian Lance Taylor <iant@golang.org>
82
83 PR libbacktrace/108297
84 * configure.ac: Test whether linker supports --build-id.
85 * Makefile.am: Only run --build-id tests if supported.
86 * configure, Makefile.in: Regenerate.
87
92bc3617
GA
882022-12-17 Ian Lance Taylor <iant@golang.org>
89
90 * elf.c (elf_fetch_backward_init): New static function.
91 (ZSTD_TABLE_SIZE): Use huffman scratch space size rather than
92 literal size.
93 (ZSTD_TABLE_WORK_LIT_SIZE): Don't define.
94 (elf_zstd_read_huff): Use elf_fetch_backward_init.
95 (elf_zstd_read_literals): New static function.
96 (ZSTD_LIT_RAW, ZSTD_LIT_RLE, ZSTD_LIT_HUFF): Don't define.
97 (struct elf_zstd_literals): Don't define.
98 (elf_zstd_literal_output): Remove static function.
99 (elf_zstd_decompress): Use elf_fetch_backward_init and
100 elf_zstd_read_literals. Rewrite literal copying.<
101
c6b12b80
GA
1022022-12-10 Ian Lance Taylor <iant@golang.org>
103
104 * elf.c (ZSTD_TABLE_*): Use elf_zstd_fse_baseline_entry.
105 (ZSTD_ENCODE_BASELINE_BITS): Define.
106 (ZSTD_DECODE_BASELINE, ZSTD_DECODE_BASEBITS): Define.
107 (elf_zstd_literal_length_base): New static const array.
108 (elf_zstd_match_length_base): Likewise.
109 (struct elf_zstd_fse_baseline_entry): Define.
110 (elf_zstd_make_literal_baseline_fse): New static function.
111 (elf_zstd_make_offset_baseline_fse): Likewise.
112 (elf_zstd_make_match_baseline_fse): Likewise.
113 (print_table, main): Use elf_zstd_fse_baseline_entry.
114 (elf_zstd_lit_table, elf_zstd_match_table): Likewise.
115 (elf_zstd_offset_table): Likewise.
116 (struct elf_zstd_seq_decode): Likewise. Remove use_rle and rle
117 fields.
118 (elf_zstd_unpack_seq_decode): Use elf_zstd_fse_baseline_entry,
119 taking a conversion function. Convert RLE to FSE.
120 (elf_zstd_literal_length_baseline): Remove.
121 (elf_zstd_literal_length_bits): Remove.
122 (elf_zstd_match_length_baseline): Remove.
123 (elf_zstd_match_length_bits): Remove.
124 (elf_zstd_decompress): Use elf_zstd_fse_baseline_entry. Rewrite
125 and simplify main loop.
126
e6110da4
GA
1272022-12-08 Ian Lance Taylor <iant@golang.org>
128
129 * configure.ac: Check for zstd library and
130 --compress-debug-sections=zstd linker option.
131 * Makefile.am (zstdtest_*): New targets.
132 (zstdtest_alloc_*, ctestzstd_*): New targets.
133 (BUILDTESTS): Add zstdtest, zstdtest_alloc, ctestzstd as
134 appropriate.
135 * elf.c (ELFCOMPRESS_ZSTD): Define.
136 (elf_fetch_bits): Rename from elf_zlib_fetch. Update uses.
137 (elf_fetch_bits_backward): New static function.
138 (ZLIB_HUFFMAN_*): Rename from HUFFMAN_*. Update uses.
139 (ZLIB_TABLE_*): Rename from ZDEBUG_TABLE_*. Update uses.
140 (ZSTD_TABLE_*): Define.
141 (struct elf_zstd_fse_entry): Define.
142 (elf_zstd_read_fse): New static function.
143 (elf_zstd_build_fse): Likewise.
144 (lit): Define if BACKTRACE_GENERATE_ZSTD_FSE_TABLES.
145 (match, offset, next, print_table, main): Likewise.
146 (elf_zstd_lit_table): New static const array.
147 (elf_zstd_match_table, elf_zstd_offset_table): Likewise.
148 (elf_zstd_read_huff): New static function.
149 (struct elf_zstd_seq_decode): Define.
150 (elf_zstd_unpack_seq_decode): New static function.
151 (ZSTD_LIT_*): Define.
152 (struct elf_zstd_literals): Define.
153 (elf_zstd_literal_output): New static function.
154 (ZSTD_LITERAL_LENGTH_BASELINE_OFFSET): Define.
155 (elf_zstd_literal_length_baseline): New static const array.
156 (elf_zstd_literal_length_bits): Likewise.
157 (ZSTD_MATCH_LENGTH_BASELINE_OFFSET): Define.
158 (elf_zstd_match_length_baseline): New static const array.
159 (elf_zstd_match_length_bits): Likewise.
160 (elf_zstd_decompress): New static function.
161 (ZDEBUG_TABLE_SIZE): New definition.
162 (elf_uncompress_chdr): Support ELF_COMPRESS_ZSTD.
163 (backtrace_uncompress_zstd): New function.
164 (elf_add): Use ZLIB_TABLE_SIZE for zlib-gnu sections.
165 * internal.h (backtrace_uncompress_zstd): Declare.
166 * zstdtest.c: New file.
167 * configure, config.h.in, Makefile.in: Regenerate.
168
781f477a
GA
1692022-10-12 Martin Liska <mliska@suse.cz>
170
171 * configure: Regenerate.
172
ab332cd7
GA
1732022-10-11 Olivier Hainque <hainque@adacore.com>
174 Olivier Hainque <hainque@adacore.com>
175
176 * configure: Regenerate.
177
0fe604a2
GA
1782022-07-08 Ian Lance Taylor <iant@golang.org>
179
180 * configure.ac: Check for sys/link.h. Use either link.h or
181 sys/link.h when checking for dl_iterate_phdr.
182 * elf.c: Include sys/link.h if available.
183 * configure, config.h.in: Regenerate.
184
6345c414
GA
1852022-07-07 Ian Lance Taylor <iant@golang.org>
186
187 * macho.c (backtrace_initialize) [HAVE_MACH_O_DYLD_H]: Don't exit
188 loop if we can't find debug info for one shared library.
189
1902022-07-07 Ian Lance Taylor <iant@golang.org>
191
192 * Makefile.am (MAKETESTS): New variable split out of TESTS.
193 (CLEANFILES): Replace TESTS with BUILDTESTS and MAKETESTS.
194 * Makefile.in: Regenerate.
195
9d3dd218
GA
1962022-06-27 Ian Lance Taylor <iant@golang.org>
197
198 * configure.ac: Use grep instead of fgrep.
199 * configure, Makefile.in: Regenerate.
200
37b3b5da
GA
2012022-05-28 Ian Lance Taylor <iant@golang.org>
202
203 PR libbacktrace/105721
204 * README: Update.
205
9d84ed68
GA
2062022-04-05 Ian Lance Taylor <iant@golang.org>
207
208 * elf.c (elf_zlib_inflate): Don't skip initial aligned byte in
209 uncompressed block.
210
0bdb0498
GA
2112022-02-17 Ian Lance Taylor <iant@golang.org>
212
213 * dwarf.c (find_address_ranges): Handle skeleton units.
214 (read_function_entry): Likewise.
215
cb3afcd2
GA
2162022-02-16 Ian Lance Taylor <iant@golang.org>
217
218 * dwarf.c (build_address_map): Initialize DWARF 5 fields of unit.
219
682ede39
GA
2202022-02-03 David Seifert <soap@gentoo.org>
221 Jakub Jelinek <jakub@redhat.com>
222
223 * configure.ac: Support --disable-werror.
224 * configure: Regenerate.
225
054e57e4
GA
2262021-12-28 Francois-Xavier Coudert <fxcoudert@gmail.com>
227
228 PR libbacktrace/103822
229 * Makefile.am: Fix newline.
230 * Makefile.in: Regenerate.
231
af2852b9
GA
2322021-11-12 Martin Liska <mliska@suse.cz>
233
234 PR libbacktrace/103167
235 * elf.c (elf_uncompress_lzma_block): Cast to unsigned int.
236 (elf_uncompress_lzma): Likewise.
237 * xztest.c (test_samples): memcpy only if v > 0.
238
c2bd5d8a
GA
2392021-10-22 Martin Liska <mliska@suse.cz>
240
241 PR testsuite/102742
242 * btest.c (MIN_DESCRIPTOR): New.
243 (MAX_DESCRIPTOR): Likewise.
244 (check_available_files): Likewise.
245 (check_open_files): Check only file descriptors that
246 were not available at the entry.
247 (main): Call check_available_files.
248
261512fa
GA
2492021-08-13 Sergei Trofimovich <siarheit@google.com>
250
251 * install-debuginfo-for-buildid.sh.in: Force non-localized readelf
252 output with LANG=C.
253
c8abc205
GA
2542021-06-28 Clément Chigot <clement.chigot@atos.net>
255
256 * xcoff.c (SSUBTYP_DWRNGES): New define.
257 (xcoff_add): Use correct XCOFF DWARF section subtype
258 for DEBUG_RANGES. Remove lineoff workaround.
259 Adjust base_address.
260 (xcoff_initialize_syminfo): Adapt to new base_address.
261 (xcoff_lookup_pc): Likewise.
262 (xcoff_initialize_fileline): Likewise.
263
e690396d
GA
2642021-05-03 H.J. Lu <hjl.tools@gmail.com>
265
266 PR bootstrap/99703
267 * configure: Regenerated.
268
f3641ac7
GA
2692021-03-03 Ian Lance Taylor <iant@golang.org>
270
271 * dwarf.c (read_line_program): Don't special case file 0.
272 (read_function_entry): Likewise.
273
d97a92dc
GA
2742021-03-02 Ian Lance Taylor <iant@golang.org>
275
276 PR libbacktrace/98818
277 * dwarf.c (dwarf_buf_error): Add errnum parameter. Change all
278 callers.
279 * backtrace.h: Update backtrace_error_callback comment.
280
fab095da
GA
2812021-02-12 Ian Lance Taylor <iant@golang.org>
282
283 * configure.ac: Check for objcopy --add-gnu-debuglink by using
284 objcopy --help.
285 * configure: Regenerate
286
ef1f8ee6
GA
2872021-01-18 Ian Lance Taylor <iant@golang.org>
288
289 * Makefile.am (%_dwz): If dwz fails, use uncompressed debug info.
290 * Makefile.in: Regenerate.
291 * configure: Regenerate.
292
2932021-01-18 Ian Lance Taylor <iant@golang.org>
294
295 PR debug/98716
296 * dwarf.c (read_v2_paths): Allocate zero entry for dirs and
297 filenames.
298 (read_line_program): Remove parameter u, change caller. Don't
299 subtract one from dirs and filenames index.
300 (read_function_entry): Don't subtract one from filenames index.
301
651b8a50
GA
3022021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
303
304 * configure: Re-generate.
305
6e1edf48
GA
3062020-12-05 Iain Sandoe <iain@sandoe.co.uk>
307
308 PR target/97865
309 * configure: Regenerate.
310
11860cf4
GA
3112020-12-02 Ian Lance Taylor <iant@golang.org>
312
313 * dwarf.c (resolve_string): Use > rather than >= to check whether
314 string index extends past buffer.
315 (resolve_addr_index): Similarly for address index.
316
a9625c50
GA
3172020-11-29 John David Anglin <danglin@gcc.gnu.org>
318
319 * configure: Regenerate.
320
e2e04288
GA
3212020-10-20 Ian Lance Taylor <iant@golang.org>
322
323 * internal.h (ATTRIBUTE_FALLTHROUGH): Define.
324 * elf.c (elf_zlib_inflate): Use ATTRIBUTE_FALLTHROUGH.
325
e84761c6
GA
3262020-09-28 Ian Lance Taylor <iant@golang.org>
327
328 PR libbacktrace/97082
329 * Makefile.am (check_DATA): Add mtest.dSYM if USE_DSYMUTIL.
330 * Makefile.in: Regenerate.
331
3322020-09-28 Ian Lance Taylor <iant@golang.org>
333
334 PR libbacktrace/97227
335 * configure.ac (USE_DSYMUTIL): Define instead of HAVE_DSYMUTIL.
336 * Makefile.am: Change all uses of HAVE_DSYMUTIL to USE_DSYMUTIL.
337 * configure: Regenerate.
338 * Makefile.in: Regenerate.
339
82b77dee
GA
3402020-09-23 Ian Lance Taylor <iant@golang.org>
341
342 * dwarf.c (report_inlined_functions): Handle PC == -1 and PC ==
343 p->low.
344 (dwarf_lookup_pc): Likewise.
345
ecde1b0a
GA
3462020-09-17 Ian Lance Taylor <iant@golang.org>
347
348 PR libbacktrace/97080
349 * fileline.c (backtrace_syminfo_to_full_callback): New function.
350 (backtrace_syminfo_to_full_error_callback): New function.
351 * elf.c (elf_nodebug): Call syminfo_fn if possible.
352 * internal.h (struct backtrace_call_full): Define.
353 (backtrace_syminfo_to_full_callback): Declare.
354 (backtrace_syminfo_to_full_error_callback): Declare.
355 * mtest.c (f3): Only check all[i] if data.index permits.
356
3572020-09-16 Iain Sandoe <iain@sandoe.co.uk>
358
359 * macho.c (MACH_O_CPU_TYPE_PPC): New.
360 (MACH_O_CPU_TYPE_PPC64): New.
361 Add compile-tests for powerpc to the Mach-O variants.
362
50a71cd0
GA
3632020-09-14 Ian Lance Taylor <iant@golang.org>
364
365 PR libbacktrace/93608
366 Add support for MiniDebugInfo.
367 * elf.c (struct elf_view): Define. Replace most uses of
368 backtrace_view with elf_view.
369 (elf_get_view): New static functions. Replace most calls of
370 backtrace_get_view with elf_get_view.
371 (elf_release_view): New static functions. Replace most calls of
372 backtrace_release_view with elf_release_view.
373 (elf_uncompress_failed): Rename from elf_zlib_failed. Change all
374 callers.
375 (LZMA_STATES, LZMA_POS_STATES, LZMA_DIST_STATES): Define.
376 (LZMA_DIST_SLOTS, LZMA_DIST_MODEL_START): Define.
377 (LZMA_DIST_MODEL_END, LZMA_FULL_DISTANCES): Define.
378 (LZMA_ALIGN_SIZE, LZMA_LEN_LOW_SYMBOLS): Define.
379 (LZMA_LEN_MID_SYMBOLS, LZMA_LEN_HIGH_SYMBOLS): Define.
380 (LZMA_LITERAL_CODERS_MAX, LZMA_LITERAL_CODER_SIZE): Define.
381 (LZMA_PROB_IS_MATCH_LEN, LZMA_PROB_IS_REP_LEN): Define.
382 (LZMA_PROB_IS_REP0_LEN, LZMA_PROB_IS_REP1_LEN): Define.
383 (LZMA_PROB_IS_REP2_LEN, LZMA_PROB_IS_REP0_LONG_LEN): Define.
384 (LZMA_PROB_DIST_SLOT_LEN, LZMA_PROB_DIST_SPECIAL_LEN): Define.
385 (LZMA_PROB_DIST_ALIGN_LEN): Define.
386 (LZMA_PROB_MATCH_LEN_CHOICE_LEN): Define.
387 (LZMA_PROB_MATCH_LEN_CHOICE2_LEN): Define.
388 (LZMA_PROB_MATCH_LEN_LOW_LEN): Define.
389 (LZMA_PROB_MATCH_LEN_MID_LEN): Define.
390 (LZMA_PROB_MATCH_LEN_HIGH_LEN): Define.
391 (LZMA_PROB_REP_LEN_CHOICE_LEN): Define.
392 (LZMA_PROB_REP_LEN_CHOICE2_LEN): Define.
393 (LZMA_PROB_REP_LEN_LOW_LEN): Define.
394 (LZMA_PROB_REP_LEN_MID_LEN): Define.
395 (LZMA_PROB_REP_LEN_HIGH_LEN): Define.
396 (LZMA_PROB_LITERAL_LEN): Define.
397 (LZMA_PROB_IS_MATCH_OFFSET, LZMA_PROB_IS_REP_OFFSET): Define.
398 (LZMA_PROB_IS_REP0_OFFSET, LZMA_PROB_IS_REP1_OFFSET): Define.
399 (LZMA_PROB_IS_REP2_OFFSET): Define.
400 (LZMA_PROB_IS_REP0_LONG_OFFSET): Define.
401 (LZMA_PROB_DIST_SLOT_OFFSET): Define.
402 (LZMA_PROB_DIST_SPECIAL_OFFSET): Define.
403 (LZMA_PROB_DIST_ALIGN_OFFSET): Define.
404 (LZMA_PROB_MATCH_LEN_CHOICE_OFFSET): Define.
405 (LZMA_PROB_MATCH_LEN_CHOICE2_OFFSET): Define.
406 (LZMA_PROB_MATCH_LEN_LOW_OFFSET): Define.
407 (LZMA_PROB_MATCH_LEN_MID_OFFSET): Define.
408 (LZMA_PROB_MATCH_LEN_HIGH_OFFSET): Define.
409 (LZMA_PROB_REP_LEN_CHOICE_OFFSET): Define.
410 (LZMA_PROB_REP_LEN_CHOICE2_OFFSET): Define.
411 (LZMA_PROB_REP_LEN_LOW_OFFSET): Define.
412 (LZMA_PROB_REP_LEN_MID_OFFSET): Define.
413 (LZMA_PROB_REP_LEN_HIGH_OFFSET): Define.
414 (LZMA_PROB_LITERAL_OFFSET): Define.
415 (LZMA_PROB_TOTAL_COUNT): Define.
416 (LZMA_IS_MATCH, LZMA_IS_REP, LZMA_IS_REP0): Define.
417 (LZMA_IS_REP1, LZMA_IS_REP2, LZMA_IS_REP0_LONG): Define.
418 (LZMA_DIST_SLOT, LZMA_DIST_SPECIAL, LZMA_DIST_ALIGN): Define.
419 (LZMA_MATCH_LEN_CHOICE, LZMA_MATCH_LEN_CHOICE2): Define.
420 (LZMA_MATCH_LEN_LOW, LZMA_MATCH_LEN_MID): Define.
421 (LZMA_MATCH_LEN_HIGH, LZMA_REP_LEN_CHOICE): Define.
422 (LZMA_REP_LEN_CHOICE2, LZMA_REP_LEN_LOW): Define.
423 (LZMA_REP_LEN_MID, LZMA_REP_LEN_HIGH, LZMA_LITERAL): Define.
424 (elf_lzma_varint): New static function.
425 (elf_lzma_range_normalize): New static function.
426 (elf_lzma_bit, elf_lzma_integer): New static functions.
427 (elf_lzma_reverse_integer): New static function.
428 (elf_lzma_len, elf_uncompress_lzma_block): New static functions.
429 (elf_uncompress_lzma): New static function.
430 (backtrace_uncompress_lzma): New function.
431 (elf_add): Add memory and memory_size parameters. Change all
432 callers. Look for .gnu_debugdata section, and, if found,
433 decompress it and use it for symbols and debug info. Permit the
434 descriptor parameter to be -1.
435 * internal.h (backtrace_uncompress_lzma): Declare.
436 * mtest.c: New file.
437 * xztest.c: New file.
438 * configure.ac: Check for nm, xz, and comm programs. Check for
439 liblzma library.
440 (HAVE_MINIDEBUG): Define.
441 * Makefile.am (mtest_SOURCES): Define.
442 (mtest_CFLAGS, mtest_LDADD): Define.
443 (TESTS): Add mtest_minidebug if HAVE_MINIDEBUG.
444 (%_minidebug): New pattern rule, if HAVE_MINIDEBUG.
445 (xztest_SOURCES, xztest_CFLAGS, xztest_LDADD): Define.
446 (xztest_alloc_SOURCES, xztest_alloc_CFLAGS): Define
447 (xztest_alloc_LDADD): Define.
448 (BUILDTESTS): Add mtest, xztest, xztest_alloc.
449 (CLEANFILES): Add files created by minidebug pattern.
450 (btest.lo): Correct INCDIR reference.
451 (mtest.lo, xztest.lo, ztest.lo): New targets.
452 * configure: Regenerate.
453 * config.h.in: Regenerate.
454 * Makefile.in: Regenerate.
455
80f86e78
GA
4562020-09-09 Ian Lance Taylor <iant@golang.org>
457
458 * pecoff.c (coff_initialize_syminfo): Add is_64 parameter.
459 (coff_add): Determine and pass is_64.
460
4612020-09-09 Ian Lance Taylor <iant@golang.org>
462
463 PR libbacktrace/96973
464 * fileline.c (macho_get_executable_path): New static function.
465 (fileline_initialize): Call macho_get_executable_path.
466
4672020-09-09 Ian Lance Taylor <iant@golang.org>
468
469 * dwarf.c (function_addrs_search): Compare against the next entry
470 low address, not the high address.
471 (unit_addrs_search): Likewise.
472 (build_address_map): Add a trailing unit_addrs.
473 (read_function_entry): Add a trailing function_addrs.
474 (read_function_info): Likewise.
475 (report_inlined_functions): Search backward for function_addrs
476 match.
477 (dwarf_lookup_pc): Search backward for unit_addrs and
478 function_addrs matches.
479
31a05046
GA
4802020-09-08 Ian Lance Taylor <iant@golang.org>
481
482 * simple.c (simple_unwind): Correct comment spelling.
483
4842020-09-08 Ian Lance Taylor <iant@golang.org>
485
486 * macho.c (macho_add_dsym): Make space for '/' in dsym. Use
487 correct length when freeing diralc.
488
4892020-09-08 Ian Lance Taylor <iant@golang.org>
490
491 PR libbacktrace/96973
492 * macho.c (macho_add_fat): Correctly swap 32-bit file offset.
493
4942020-09-08 Ian Lance Taylor <iant@golang.org>
495
496 PR libbacktrace/96971
497 * filetype.awk: Only match magic number at start of line.
498
b2b24d30
GA
4992020-08-24 Ian Lance Taylor <iant@golang.org>
500
501 * macho.c (MACH_O_MH_MAGIC_FAT_64): Define.
502 (MACH_O_MH_CIGAM_FAT_64): Define.
503 (struct macho_fat_arch_64): Define.
504 (macho_add_fat): Add and use is_64 parameter.
505 (macho_add): Recognize 64-bit fat files.
506
d48cca8f
GA
5072020-07-30 H.J. Lu <hjl.tools@gmail.com>
508
509 PR bootstrap/96202
510 * configure: Regenerated.
511
50873cc5
GA
5122020-07-08 Ian Lance Taylor <iant@golang.org>
513
514 * configure.ac: Test linker support for DWARF5
515 * configure: Regenerate
516
885ef72f
GA
5172020-05-29 H.J. Lu <hjl.tools@gmail.com>
518
519 PR bootstrap/95413
520 * configure: Regenerated.
521
4c1a5d8b
L
5222020-05-15 H.J. Lu <hongjiu.lu@intel.com>
523
524 PR bootstrap/95147
525 * configure: Regenerated.
526
8d286dd1
L
5272020-05-14 H.J. Lu <hongjiu.lu@intel.com>
528
529 * configure: Regenerated.
530
d2ec2786
ILT
5312020-05-13 Ian Lance Taylor <iant@golang.org>
532
533 * ztest.c (test_large): Mark state ATTRIBUTE_UNUSED.
534
702adbb2
ILT
5352020-05-13 Ian Lance Taylor <iant@golang.org>
536
537 PR go/95061
538 * posix.c (backtrace_open): Treat EACCESS like ENOENT.
539
5402020-05-12 H.J. Lu <hongjiu.lu@intel.com>
d2148648
L
541
542 * Makefile.am (AM_CFLAGS): Add $(CET_HOST_FLAGS).
543 * configure.ac: Add GCC_CET_HOST_FLAGS(CET_HOST_FLAGS) and
544 AC_SUBST(CET_HOST_FLAGS). Clear CET_HOST_FLAGS if jit isn't
545 enabled.
546 * Makefile.in: Regenerated.
547 * configure: Likewise.
548
47f4703c
ILT
5492020-05-11 Ian Lance Taylor <iant@golang.org>
550
551 PR libbacktrace/95012
552 * configure.ac: Check for getpagesize declaration.
553 * mmap.c: Declare getpagesize if necessary.
554 * mmapio.c: Likewise.
555 * configure: Regenerate.
556 * config.h.in: Regenerate.
557 * Makefile.in: Regenerate.
558
ef639420
ILT
5592020-05-09 Roland McGrath <mcgrathr@google.com>
560
561 * elf.c (elf_add): Bail early if there are no section headers at all.
562
8600440e
ILT
5632020-05-09 Ian Lance Taylor <iant@golang.org>
564
565 * elf.c (elf_add): Don't free strtab if an error occurs after
566 recording symbol information.
567
dea40c94
ILT
5682020-05-09 Ian Lance Taylor <iant@golang.org>
569
570 PR libbacktrace/88745
571 * macho.c: New file.
572 * filetype.awk: Recognize Mach-O files.
573 * Makefile.am (FORMAT_FILES): Add macho.c.
574 (check_DATA): New variable. Set to .dSYM if HAVE_DSYMUTIL.
575 (%.dSYM): New pattern target.
576 (test_macho_SOURCES, test_macho_CFLAGS): New targets.
577 (test_macho_LDADD): New target.
578 (BUILDTESTS): Add test_macho.
579 (macho.lo): Add dependencies.
580 * configure.ac: Recognize macho file type. Check for
581 mach-o/dyld.h. Don't try to run objcopy if we don't find it.
582 Look for dsymutil and define a HAVE_DSYMUTIL conditional.
583 * Makefile.in: Regenerate.
584 * configure: Regenerate.
585 * config.h.in: Regenerate.
586
4b26b138
ILT
5872020-05-09 Ian Lance Taylor <iant@golang.org>
588
589 * read.c (backtrace_get_view): Support short read.
590
31ae7b86
ILT
5912020-05-09 Ian Lance Taylor <iant@golang.org>
592
593 * elf.c (elf_add): If debug sections are very large or far apart,
594 read them individually rather than as a single view.
595
26135684
ILT
5962020-05-08 Ian Lance Taylor <iant@golang.org>
597
598 * fileline.c (sysctl_exec_name): New static function.
599 (sysctl_exec_name1): New macro or static function.
600 (sysctl_exec_name2): Likewise.
601 (fileline_initialize): Try sysctl_exec_name[12].
602 * configure.ac: Check for sysctl args to fetch executable name.
603 * configure: Regenerate.
604 * config.h.in: Regenerate.
605
9a3d019a
ILT
6062020-02-15 Ian Lance Taylor <iant@golang.org>
607
608 * ztest.c (test_large): Update file to current libgo test file.
609
628ee3c2
ILT
6102020-02-03 Ian Lance Taylor <iant@golang.org>
611
612 * Makefile.am (libbacktrace_TEST_CFLAGS): Define.
613 (test_elf32_CFLAGS): Use $(libbacktrace_test_CFLAGS).
614 (test_elf_64_CFLAGS, test_xcoff_32_CFLAGS): Likewise.
615 (test_xcoff_64_CFLAGS, test_pecoff_CFLAGS): Likewise.
616 (test_unknown_CFLAGS, unittest_CFLAGS): Likewise.
617 (unittest_alloc_CFLAGS, allocfail_CFLAGS): Likewise.
618 (b2test_CFLAGS, b3test_CFLAGS, btest_CFLAGS): Likewise.
619 (btest_lto_CFLAGS, btest_alloc_CFLAGS, stest_CFLAGS): Likewise.
620 (stest_alloc_CFLAGS): Likewise.
621 * Makefile.in: Regenerate.
622 * ztest.c (error_callback_compress): Mark vdata unused.
623 (test_large): Add casts to avoid warnings.
624
8d9254fc
JJ
6252020-01-01 Jakub Jelinek <jakub@redhat.com>
626
627 Update copyright years.
628
c926fd82
ILT
6292019-12-13 Ian Lance Taylor <iant@golang.org>
630
631 Add DWARF 5 support.
632 * dwarf.c (struct attr): Add val field.
633 (enum attr_val_encoding): Add ATTR_VAL_ADDDRESS_INDEX,
634 ATTR_VAL_STRING_INDEX, ATTR_VAL_RNGLISTS_INDEX.
635 (struct line_header): Add addrsize field.
636 (struct line_header_format): Define.
637 (struct unit): Add str_offsets_base, addr_base, and rnglists_base
638 fields.
639 (read_uint24): New static function.
640 (read_attribute): Add implicit_val parameter. Replace dwarf_str
641 and dwarf_str_size parameters with dwarf_sections parameter. Add
642 support for new DWARF 5 forms. Change all callers.
643 (resolve_string): New static function.
644 (resolve_addr_index): Likewise.
645 (read_abbrevs): Support DW_FORM_implicit_const.
646 (struct pcrange): Add lowpc_is_addr_index, highpc_is_addr_Index,
647 and ranges_is_index fields.
648 (update_pcrange): Support DWARF 5 encodings.
649 (add_high_low_range): New static function, split out of
650 add_ranges.
651 (add_ranges_from_ranges): Likewise.
652 (add_ranges_from_rnglists): New static function.
653 (add_ranges): Just call new helper functions.
654 (find_address_ranges): Use resolve_string for strings, after
655 reading all attributes. Handle new DWARF 5 attributes.
656 (build_address_map): Support DWARF 5 compilation units.
657 (read_v2_paths): New static function, split out of
658 read_line_header.
659 (read_lnct): New static function.
660 (read_line_header_format_entries): Likewise.
661 (read_line_header): Add ddata parameter. Support DWARF 5 line
662 headers. Call new helper functions. Change all callers.
663 (read_line_program): Use addrsize from line program header. Don't
664 special case directory index 0 for DWARF 5.
665 (read_referenced_name): Use resolve_string.
666 (read_function_entry): Handle DWARF 5 encodings. Use
667 resolve_string.
668 * internal.h (enum dwarf_section): Add DEBUG_ADDR,
669 DEBUG_STR_OFFSETS, DEBUG_LINE_STR, DEBUG_RNGLISTS.
670 * elf.c (dwarf_section_names): Add new section names.
671 * pecoff.c (dwarf_section_names): Likewise.
672 * xcoff.c (xcoff_add): Clear dwarf_sections before setting
673 fields.
674 * configure.ac: Define HAVE_DWARF5 automake conditional.
675 * Makefile.am (dwarf5_SOURCES): New variable if HAVE_DWARF5.
676 (dwarf5_CFLAGS, dwarf5_LDADD): Likewise.
677 (dwarf5_alloc_SOURCES, dwarf5_alloc_CFLAGS): Likewise.
678 (dwarf5_alloc_LDADD): Likewise.
679 (BUILDTESTS): Add dwarf5 tests if HAVE_DWARF5.
680 (CLEANFILES, clean-local): Define.
681
4b3fc188
ILT
6822019-12-08 Ian Lance Taylor <iant@golang.org>
683
684 * dwarf.c (struct pcrange): Define.
685 (update_pcrange, add_ranges): New static functions.
686 (add_unit_addr): Change signature to work with add_ranges. Don't
687 add base_address here.
688 (add_unit_ranges): Remove.
689 (find_address_ranges): Replace str/ranges parameters with
690 dwarf_sections. Use update_pcrange and add_ranges. Change all
691 callers.
692 (add_function_range): Change signature to work with add_ranges.
693 Don't add base_address here.
694 (add_function_ranges): Remove.
695 (read_function_entry): Use update_pcrange and add_ranges.
696
70bfe5a7
ILT
6972019-12-04 Ian Lance Taylor <iant@golang.org>
698
699 * edtest.c (test1): Add noclone attribute.
700
66ab5839
ILT
7012019-12-04 Ian Lance Taylor <iant@golang.org>
702
703 * internal.h (enum dwarf_section): Define.
704 (struct dwarf_sections): Define.
705 (backtrace_dwarf_add): Update declaration to replace specific
706 section parameters with dwarf_sections parameter.
707 * dwarf.c (struct dwarf_data): Replace specific section fields
708 with dwarf_sections field.
709 (read_attribute): Use dwarf_sections with altlink.
710 (build_address_map): Replace specific section parameters with
711 dwarf_sections parameter. Change all callers.
712 (read_line_info): Use dwarf_sections with ddata.
713 (read_referenced_name): Likewise.
714 (add_function_ranges): Likewise.
715 (read_function_entry): Likewise.
716 (read_function_info): Likewise.
717 (build_dwarf_data): Replace specific section parameters with
718 dwarf_sections parameter. Change all callers.
719 (backtrace_dwarf_add): Likewise.
720 * elf.c (enum debug_section): Remove.
721 (dwarf_section_names): Remove .zdebug names.
722 (elf_add): Track zsections separately. Build dwarf_sections.
723 * pecoff.c (enum debug_section): Remove.
724 (struct debug_section_info): Remove data field.
725 (coff_add): Build dwarf_sections.
726 * xcoff.c (enum dwarf_section): Remove. Replace DWSECT_xxx
727 references with DEBUG_xxx references.
728 (xcoff_add): Build dwarf_sections.
729
e9085da5
MR
7302019-09-27 Maciej W. Rozycki <macro@wdc.com>
731
732 * configure: Regenerate.
733
5fe5f75f
ILT
7342019-09-26 Ian Lance Taylor <iant@golang.org>
735
736 PR libbacktrace/91908
737 * pecoff.c (backtrace_initialize): Explicitly cast unchecked
738 __sync_bool_compare_and_swap to void.
739 * xcoff.c (backtrace_initialize): Likewise.
740
2f2aeda9
UW
7412019-09-03 Ulrich Weigand <uweigand@de.ibm.com>
742
743 * configure.ac: Remove references to spu.
744 * configure: Regenerate.
745
245254b8
CC
7462019-05-24 Clement Chigot <clement.chigot@atos.net>
747
748 * Makefile.am (BUILDTESTS): Remove test_elf, add test_elf_32 and
749 test_elf_64.
750 * Makefile.in: Regenerate.
751
ccd1242e
RO
7522019-05-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
753
754 * configure.ac (have_dl_iterate_phdr): Remove *-*-solaris2.10*
755 handling.
756 * configure: Regenerate.
757
7856fb45
ILT
7582019-03-11 Ian Lance Taylor <iant@golang.org>
759
760 PR libbacktrace/89669
761 * Makefile.am (BUILDTESTS): Only add ztest and ztest_alloc if
762 HAVE_ELF.
763 * Makefile.in: Regenerate.
764
067aef03
TV
7652019-02-26 Tom de Vries <tdevries@suse.de>
766
767 * btest.c (test5): Allow global.* as minimal symbol name for global.
768
d831b1ec
TV
7692019-02-26 Tom de Vries <tdevries@suse.de>
770
771 * Makefile.am (TESTS): Only add b3test_dwz_buildid if HAVE_DWZ.
772 * Makefile.in: Regenerate.
773
68641fb7
TV
7742019-02-12 Tom de Vries <tdevries@suse.de>
775
776 PR libbacktrace/81983
777 * dwarf.c (dwarf_lookup_pc): Don't call bsearch if nmemb == 0.
778
c51b2c8c
TV
7792019-02-10 Tom de Vries <tdevries@suse.de>
780
781 * Makefile.am (BUILDTESTS): Add btest_lto.
782 * Makefile.in: Regenerate.
783 * btest.c (test1, f2, f3, test3, f22, f23): Declare with
784 __attribute__((noclone)).
785
4af50e13
TV
7862019-02-08 Tom de Vries <tdevries@suse.de>
787
788 * backtrace.c (backtrace_full): Declare with __attribute__((noinline)).
789 * print.c (backtrace_print): Same.
790 * simple.c (backtrace_simple): Same.
791
2bd0a246
TV
7922019-02-08 Tom de Vries <tdevries@suse.de>
793
794 PR libbacktrace/78063
795 * dwarf.c (build_address_map): Keep all parsed units.
796 (read_referenced_name_from_attr): Handle DW_FORM_ref_addr.
797
3a3f5dd1
TV
7982019-01-31 Tom de Vries <tdevries@suse.de>
799
800 PR libbacktrace/89136
801 * elf.c (elf_add): Read build-id if with_buildid_data. Fix
802 'debugaltlink_name_len =+ 1'.
803
fddbc193
TV
8042019-01-29 Tom de Vries <tdevries@suse.de>
805
806 * install-debuginfo-for-buildid.sh.in: New script.
807 * Makefile.am (check_PROGRAMS): Add b2test and b3test.
808 (TESTS): Add b2test_buildid and b3test_dwz_buildid.
809 * Makefile.in: Regenerate.
810 * configure.ac (HAVE_ELF): Set with AM_CONDITIONAL.
811 (READELF): Set with AC_CHECK_PROG.
812 (install-debuginfo-for-buildid.sh): Generate with AC_CONFIG_FILES.
813 * configure: Regenerate.
814 * elf.c (SYSTEM_BUILD_ID_DIR): Factor out of ...
815 (elf_open_debugfile_by_buildid): ... here.
816
57f0d303
TV
8172019-01-29 Tom de Vries <tdevries@suse.de>
818
819 * Makefile.am: Replace check_PROGRAMS with BUILDTESTS, except for
820 allocfail.
821 (TESTS): Don't add check_PROGRAMS. Add BUILDTESTS.
822 (check_PROGRAMS): Add BUILDTESTS.
823 * Makefile.in: Regenerate.
824
62d4a355
TV
8252019-01-28 Tom de Vries <tdevries@suse.de>
826
827 * Makefile.am (xcoff_%.c): Generate sed result into temporary file.
828 Use $< to access prerequisite.
829 * Makefile.in: Regenerate.
830
4bfcd139
NS
8312019-01-25 Nathan Sidwell <nathan@acm.org>
832
833 * elf.c (elf_add): Pass "" filename to recursive call with
834 separated debug.
835
c75795fa
TV
8362019-01-25 Tom de Vries <tdevries@suse.de>
837
838 * elf.c (elf_add): When handling .gnu_debugaltlink, call elf_add with
839 filename == "".
840 * Makefile.am (TESTS): Add btest_dwz_gnudebuglink.
841 * Makefile.in: Regenerate.
842
37ab491d
TV
8432019-01-25 Tom de Vries <tdevries@suse.de>
844
845 * Makefile.am: Rewrite dtest rule into "%_gnudebuglink" pattern rule.
846 (TESTS): Rename dtest to btest_gnudebuglink.
847 * Makefile.in: Regenerate.
848
3f5d2012
TV
8492019-01-23 Tom de Vries <tdevries@suse.de>
850
851 * dwarf.c (struct unit): Use size_t for low_offset/high_offset fields.
852 (units_search, find_unit): Use size_t for offset.
853 (build_address_map): Use size_t for unit_offset.
854
5e2a7241
GP
8552019-01-20 Gerald Pfeifer <gerald@pfeifer.com>
856
857 * allocfail.c (main): Increase portability of printf statement.
858
8b248c17
ILT
8592019-01-18 Ian Lance Taylor <iant@golang.org>
860
861 PR libbacktrace/88890
862 * mmapio.c (backtrace_get_view): Change size parameter to
863 uint64_t. Check that value fits in size_t.
864 * read.c (backtrace_get_view): Likewise.
865 * internal.h (backtrace_get_view): Update declaration.
866 * elf.c (elf_add): Pass shstrhdr->sh_size to backtrace_get_view.
867
10f48858
TV
8682019-01-17 Tom de Vries <tdevries@suse.de>
869
870 PR libbacktrace/82857
871 * configure.ac (DWZ): Set with AC_CHECK_PROG.
872 (HAVE_DWZ): Set with AM_CONDITIONAL.
873 * configure: Regenerate.
874 * Makefile.am (TESTS): Add btest_dwz.
875 * Makefile.in: Regenerate.
876
1c2a9a37
TV
8772019-01-17 Tom de Vries <tdevries@suse.de>
878
879 PR libbacktrace/82857
880 * dwarf.c (enum attr_val_encoding): Add ATTR_VAL_REF_ALT_INFO.
881 (read_attribute): Handle DW_FORM_GNU_ref_alt using
882 ATTR_VAL_REF_ALT_INFO.
883 (read_referenced_name_from_attr): Handle DW_FORM_GNU_ref_alt.
884
9d576782
TV
8852019-01-17 Tom de Vries <tdevries@suse.de>
886
887 * dwarf.c (struct unit): Add low_offset and high_offset fields.
888 (struct unit_vector): New type.
889 (struct dwarf_data): Add units and units_counts fields.
890 (find_unit): New function.
891 (find_address_ranges): Add and handle unit_tag parameter.
892 (build_address_map): Add and handle units_vec parameter.
893 (build_dwarf_data): Pass units_vec to build_address_map. Store resulting
894 units vector.
895
f2f00d3a
TV
8962019-01-17 Tom de Vries <tdevries@suse.de>
897
898 PR libbacktrace/82857
899 * dwarf.c (read_attribute): Handle DW_FORM_GNU_strp_alt
900 using altlink.
901
944f59ff
TV
9022019-01-17 Tom de Vries <tdevries@suse.de>
903
904 * dwarf.c (enum attr_val_encoding): Add ATTR_VAL_NONE.
905 (read_attribute): Add altlink parameter. Handle missing altlink for
906 DW_FORM_GNU_strp_alt and DW_FORM_GNU_ref_alt.
907 (find_address_ranges, build_address_map, build_dwarf_data): Add and
908 handle altlink parameter.
909 (read_referenced_name, read_function_entry): Add argument to
910 read_attribute call.
911
9ad458d5
TV
9122019-01-17 Tom de Vries <tdevries@suse.de>
913
914 * dwarf.c (struct dwarf_data): Add altlink field.
915 (backtrace_dwarf_add): Add and handle fileline_altlink parameter.
916 * elf.c (elf_add): Add argument to backtrace_dwarf_add call.
917 (phdr_callback, backtrace_initialize): Add argument to elf_add calls.
918 * internal.h (backtrace_dwarf_add): Add fileline_altlink parameter.
919 * pecoff.c (coff_add): Add argument to backtrace_dwarf_add call.
920 * xcoff.c (xcoff_add): Same.
921
e6f00c83
TV
9222019-01-17 Tom de Vries <tdevries@suse.de>
923
924 * internal.h (backtrace_dwarf_add): Add fileline_entry parameter.
925 * dwarf.c (backtrace_dwarf_add): Add and handle fileline_entry parameter.
926 * elf.c (elf_add): Add and handle fileline_entry parameter. Add
927 argument to backtrace_dwarf_add call.
928 (phdr_callback, backtrace_initialize): Add argument to elf_add calls.
929 * pecoff.c (coff_add): Add argument to backtrace_dwarf_add call.
930 * xcoff.c (xcoff_add): Same.
931
a34c2a3d
TV
9322019-01-17 Tom de Vries <tdevries@suse.de>
933
934 * elf.c (elf_add): Add and handle with_buildid_data and
935 with_buildid_size parameters. Handle .gnu_debugaltlink section.
936 (phdr_callback, backtrace_initialize): Add arguments to elf_add calls.
937
07e1534f
TV
9382019-01-16 Tom de Vries <tdevries@suse.de>
939
940 * dwarf.c (read_referenced_name_from_attr): New function. Factor out
941 of ...
942 (read_referenced_name): ... here, and ...
943 (read_function_entry): ... here.
944
df1de064
TV
9452019-01-16 Tom de Vries <tdevries@suse.de>
946
947 * dwarf.c (read_referenced_name): Don't allow DW_AT_name to override any
948 name.
949 (read_function_entry): Same. Don't allow name found via
950 DW_AT_abstract_origin or case DW_AT_specification to override linkage
951 name.
952
67914693
SL
9532019-01-09 Sandra Loosemore <sandra@codesourcery.com>
954
955 PR other/16615
956
957 * backtrace.h: Mechanically replace "can not" with "cannot".
958
a5544970
JJ
9592019-01-01 Jakub Jelinek <jakub@redhat.com>
960
961 Update copyright years.
962
4b420b27
GP
9632018-12-29 Gerald Pfeifer <gerald@pfeifer.com>
964
965 * Makefile.am (xcoff_%.c): Use an actual newline instead of \n
966 in sed pattern.
967 * Makefile.in: Regenerate.
968
eb33bf0a
TV
9692018-12-28 Tom de Vries <tdevries@suse.de>
970
971 * dwarf.c (build_address_map): Reuse unused units.
972
d9aa0961
TV
9732018-12-28 Tom de Vries <tdevries@suse.de>
974
975 * dwarf.c (build_address_map): Simplify by removing local variable
976 abbrevs.
977
40b8d3b2
ILT
9782018-12-28 Ian Lance Taylor <iant@golang.org>
979 Tom de Vries <tdevries@suse.de>
980
981 PR libbacktrace/88063
982 * dwarf.c (free_unit_addrs_vector): Remove.
983 (build_address_map): Keep track of allocated units in vector. Free
984 allocated units and corresponding abbrevs upon failure. Remove now
985 redundant call to free_unit_addrs_vector. Free addrs vector upon
986 failure. Free allocated unit vector.
987
53a52133
TV
9882018-12-28 Tom de Vries <tdevries@suse.de>
989
990 * dwarf.c (build_address_map): Free addrs vector upon failure.
991
a37a52e5
TV
9922018-12-14 Tom de Vries <tdevries@suse.de>
993
994 PR testsuite/88491
995 * allocfail.sh: Remove "set -o pipefail".
996
d665cd9b
TV
9972018-12-12 Tom de Vries <tdevries@suse.de>
998
999 * Makefile.am (TESTS): Add allocfail.sh.
1000 (check_PROGRAMS): Add allocfail.
1001 * Makefile.in: Regenerate.
1002 * instrumented_alloc.c: New file. Redefine malloc and realloc.
1003 Include alloc.c.
1004 * allocfail.c: New file.
1005 * allocfail.sh: New file.
1006
187b9e1d
TV
10072018-11-30 Tom de Vries <tdevries@suse.de>
1008
1009 * Makefile.am (check_PROGRAMS): Add test_elf, test_xcoff_32,
1010 test_xcoff_64, test_pecoff and test_unknown.
1011 * Makefile.in: Regenerate.
1012 * test_format.c: New file.
1013
9b7d1a97
TV
10142018-11-30 Tom de Vries <tdevries@suse.de>
1015
1016 * Makefile.am : Add _with_alloc version for each test in
1017 check_PROGRAMS.
1018 * Makefile.in: Regenerate.
1019
518a3a21
TV
10202018-11-30 Tom de Vries <tdevries@suse.de>
1021
1022 * internal.h (backtrace_vector_free): New static inline fuction,
1023 factored out of ...
1024 * dwarf.c (read_line_info): ... here.
1025
18c742b5
TV
10262018-11-28 Tom de Vries <tdevries@suse.de>
1027
1028 * dwarf.c (read_abbrevs): Fix handling of abbrevs->abbrevs allocation
1029 failure.
1030
6d760a01
TV
10312018-11-27 Tom de Vries <tdevries@suse.de>
1032
1033 * mmap.c (backtrace_vector_release): Same.
1034 * unittest.c (test1): Add check.
1035
0c155f24
TV
10362018-11-27 Tom de Vries <tdevries@suse.de>
1037
1038 * alloc.c (backtrace_vector_release): Handle vec->size == 0 using free
1039 instead of realloc.
1040 * Makefile.am (check_PROGRAMS): Add unittest.
1041 * Makefile.in: Regenerate.
1042 * unittest.c: New file.
1043
292592c5
TV
10442018-11-22 Tom de Vries <tdevries@suse.de>
1045
1046 * dwarf.c (read_initial_length): Factor out of ...
1047 (build_address_map, read_line_info): ... here.
1048
17112570
TV
10492018-11-21 Tom de Vries <tdevries@suse.de>
1050
1051 * dwarf.c (read_string): Factor out of ...
1052 (read_attribute, read_line_header, read_line_program): ... here.
1053
22e05272
JM
10542018-10-31 Joseph Myers <joseph@codesourcery.com>
1055
1056 PR bootstrap/82856
1057 * Makefile.am: Include multilib.am.
1058 * configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
1059 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
1060
a2a86641
ILT
10612018-10-05 Ian Lance Taylor <iant@golang.org>
1062
1063 PR libbacktrace/87529
1064 * backtrace.h: Document that backtrace_create_state should be
1065 called only once.
1066
2206fb89
IB
10672018-08-05 Iain Buclaw <ibuclaw@gdcproject.org>
1068
1069 * configure.ac: Move define of HAVE_ZLIB into check for -lz.
1070 * Makefile.in: Regenerate.
1071 * config.h.in: Likewise.
1072 * configure: Likewise.
1073
ca9a1314
TR
10742018-08-01 Tony Reix <tony.reix@atos.net>
1075
1076 * xcoff.c (struct xcoff_line, struct xcoff_line_vector): Remove.
1077 (struct xcoff_func, struct xcoff_func_vector): New structs.
1078 (xcoff_syminfo): Drop leading dot from symbol name.
1079 (xcoff_line_compare, xcoff_line_search): Remove.
1080 (xcoff_func_compare, xcoff_func_search): New static functions.
1081 (xcoff_lookup_pc): Search function table.
1082 (xcoff_add_line, xcoff_process_linenos): Remove.
1083 (xcoff_initialize_fileline): Build function table.
1084
1ac6620a
DK
10852018-06-21 Denis Khalikov <d.khalikov@partner.samsung.com>
1086
1087 PR other/86198
1088 * elf.c (elf_add): Increase ".note.gnu.build-id" section size
1089 checking up to 36 bytes.
1090
7b47ecf2
L
10912018-04-24 H.J. Lu <hongjiu.lu@intel.com>
1092
1093 * configure: Regenerated.
1094
a0e1df88
JJ
10952018-04-19 Jakub Jelinek <jakub@redhat.com>
1096
1097 * configure: Regenerated.
1098
21070494
ILT
10992018-04-17 Ian Lance Taylor <iant@golang.org>
1100
1101 * backtrace.c: Revert last two changes. Don't call mmap
1102 directly.
1103
c36af1b4
ILT
11042018-04-17 Ian Lance Taylor <iant@golang.org>
1105
1106 * backtrace.c: Include backtrace-supported.h before checking
1107 BACKTRACE_USES_MALLOC.
1108
83a658ca
ILT
11092018-04-17 Ian Lance Taylor <iant@golang.org>
1110
1111 * backtrace.c (backtrace_full): When testing whether we can
1112 allocate memory, call mmap directly, and munmap the memory.
1113
c5c4b2ae
JJ
11142018-04-04 Jakub Jelinek <jakub@redhat.com>
1115
1116 PR other/85161
1117 * elf.c (elf_zlib_fetch): Fix up predefined macro names in test for
1118 big endian, only use 32-bit loads if endianity macros are predefined
1119 and indicate big or little endian.
1120
14e335ed
IT
11212018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
1122
1123 PR target/84148
1124 * configure: Regenerate.
1125
bcc23586
JJ
11262018-02-15 Jakub Jelinek <jakub@redhat.com>
1127
1128 PR other/82368
1129 * elf.c (SHT_PROGBITS): Undefine and define.
1130
da07141f
JJ
11312018-02-14 Jakub Jelinek <jakub@redhat.com>
1132
1133 PR other/82368
1134 * elf.c (EM_PPC64, EF_PPC64_ABI): Undefine and define.
1135 (struct elf_ppc64_opd_data): New type.
1136 (elf_initialize_syminfo): Add opd argument, handle symbols
1137 pointing into the PowerPC64 ELFv1 .opd section.
1138 (elf_add): Read .opd section on PowerPC64 ELFv1, pass pointer
1139 to structure with .opd data to elf_initialize_syminfo.
1140
65d0b859
ILT
11412018-01-31 Ian Lance Taylor <iant@golang.org>
1142
1143 * elf.c (elf_add): Close descriptor if we use a debugfile.
1144 * btest.c (check_open_files): New static function.
1145 (main): Call check_open_files.
1146
96f7c2a9
ILT
11472018-01-25 Ian Lance Taylor <iant@golang.org>
1148
1149 * elf.c (elf_open_debugfile_by_debuglink): Don't check CRC if the
1150 desired CRC is zero.
1151 (elf_add): Don't clear *found_sym and *found_dwarf if debuginfo.
1152
a794e494
ILT
11532018-01-25 Ian Lance Taylor <iant@golang.org>
1154
1155 * pecoff.c (coff_add): Only release syms_view if it is valid.
1156
45f3ab19
ILT
11572018-01-25 Ian Lance Taylor <iant@golang.org>
1158
1159 * pecoff.c (coff_add): Another memcpy -> coff_read4 fix.
1160
017707ce
ILT
11612018-01-24 Ian Lance Taylor <iant@golang.org>
1162
1163 * pecoff.c (coff_add): Use coff_read4, not memcpy.
1164
3fe3c7d7
ILT
11652018-01-24 Ian Lance Taylor <iant@golang.org>
1166
1167 PR other/68239
1168 * mmap.c (backtrace_free_locked): Don't put more than 16 entries
1169 on the free list.
1170
47c699f5
TR
11712018-01-19 Tony Reix <tony.reix@atos.net>
1172
1173 * xcoff.c (xcoff_incl_compare): New function.
1174 (xcoff_incl_search): New function.
1175 (xcoff_process_linenos): Use bsearch to find include file.
1176 (xcoff_initialize_fileline): Sort include file information.
1177
566588f1
ILT
11782018-01-16 Ian Lance Taylor <iant@golang.org>
1179
1180 * elf.c (codes) [GENERATE_FIXED_HUFFMAN_TABLE]: Fix size to be
1181 288.
1182 (main) [GENERATE_FIXED_HUFFMAN_TABLE]: Pass 288 to
1183 elf_zlib_inflate_table. Generate elf_zlib_default_dist_table.
1184 (elf_zlib_default_table): Update.
1185 (elf_zlib_default_dist_table): New static array.
1186 (elf_zlib_inflate): Use elf_zlib_default_dist_table for dist table
1187 for block type 1.
1188 * ztest.c (struct zlib_test): Add uncompressed_len.
1189 (tests): Initialize uncompressed_len field. Add new test case.
1190 (test_samples): Use uncompressed_len field.
1191
85ec4feb
JJ
11922018-01-03 Jakub Jelinek <jakub@redhat.com>
1193
1194 Update copyright years.
1195
44685d37
IT
11962017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
1197
1198 * configure.ac: Add CET_FLAGS to EXTRA_FLAGS.
1199 * aclocal.m4: Regenerate.
1200 * Makefile.in: Likewise.
1201 * configure: Likewise.
1202
549d24e9
ILT
12032017-10-06 Ian Lance Taylor <iant@golang.org>
1204
1205 * ztest.c (test_large): Pass unsigned long *, not size_t *, to
1206 zlib uncompress function.
1207
a978e26b
ILT
12082017-10-05 Ian Lance Taylor <iant@golang.org>
1209
1210 * elf.c (elf_zlib_fetch): Change pval argument to uint64_t *.
1211 Read a four byte integer.
1212 (elf_zlib_inflate): Change val to uint64_t. Align pin to a 32-bit
1213 boundary before ever calling elf_zlib_fetch.
1214 * ztest.c (test_large): Simplify print statements a bit.
1215
8398c1df
ILT
12162017-10-02 Ian Lance Taylor <iant@golang.org>
1217
1218 * ztest.c: #include <errno.h>.
1219 (TEST_TIMING): Don't define, don't test.
1220 (xclock_gettime, xclockid_t): Define if !HAVE_CLOCK_GETTIME.
1221 (clockid_t, clock_gettime, CLOCK_REALTIME): Likewise.
1222 (ZLIB_CLOCK_GETTIME_ARG): Define.
1223 * configure.ac: Change clock_gettime_link to CLOCK_GETTIME_LINK.
1224 * Makefile.am: Likewise.
1225 * configure, Makefile.in: Rebuild.
1226
dbc31f20
TS
12272017-10-02 Thomas Schwinge <thomas@codesourcery.com>
1228
dd954c67
TS
1229 PR other/67165
1230 * Makefile.am: Append the content of clock_gettime_link to
1231 ztest_LDADD.
1232 * configure.ac: Test for the case that clock_gettime is in librt.
1233 * Makefile.in: Regenerate.
1234 * configure: Likewise.
1235
dbc31f20
TS
1236 PR other/67165
1237 * configure.ac: Check for clock_gettime.
1238 * config.h.in: Regenerate.
1239 * configure: Likewise.
1240 * ztest.c (average_time, test_large): Conditionalize test timing
1241 on clock_gettime availability.
1242
e90c74f5
TR
12432017-09-29 Tony Reix <tony.reix@atos.net>
1244
1245 * xcoff.c: Initial support for DWARF debug sections in XCOFF.
1246 (STYP_DWARF, SSUBTYP_DW*): Define.
1247 (enum dwarf_section): Define.
1248 (struct dwsect_info): Define.
1249 (xcoff_add): Look for DWARF sections, pass them to
1250 backtrace_dwarf_add.
1251
8da872d9
ILT
12522017-09-28 Ian Lance Taylor <iant@golang.org>
1253
1254 PR other/67165
1255 * elf.c (__builtin_prefetch): Define if not __GNUC__.
1256 (unlikely): Define.
1257 (SHF_UNCOMPRESSED, ELFCOMPRESS_ZLIB): Define.
1258 (b_elf_chdr): Define type.
1259 (enum debug_section): Add ZDEBUG_xxx values.
1260 (debug_section_names): Add names for new sections.
1261 (struct debug_section_info): Add compressed field.
1262 (elf_zlib_failed, elf_zlib_fetch): New static functions.
1263 (HUFFMAN_TABLE_SIZE, HUFFMAN_VALUE_MASK): Define.
1264 (HUFFMAN_BITS_SHIFT, HUFFMAN_BITS_MASK): Define.
1265 (HUFFMAN_SECONDARY_SHIFT): Define.
1266 (ZDEBUG_TABLE_SIZE): Define.
1267 (ZDEBUG_TABLE_CODELEN_OFFSET, ZDEBUG_TABLE_WORK_OFFSET): Define.
1268 (final_next_secondary): New static variable if
1269 BACKTRACE_GENERATE_FIXED_HUFFMAN_TABLE.
1270 (elf_zlib_inflate_table): New static function.
1271 (BACKTRACE_GENERATE_FIXED_HUFFMAN_TABLE): If define, define main
1272 function to produce fixed Huffman table.
1273 (elf_zlib_default_table): New static variable.
1274 (elf_zlib_inflate): New static function.
1275 (elf_zlib_verify_checksum): Likewise.
1276 (elf_zlib_inflate_and_verify): Likewise.
1277 (elf_uncompress_zdebug): Likewise.
1278 (elf_uncompress_chdr): Likewise.
1279 (backtrace_uncompress_zdebug): New extern function.
1280 (elf_add): Look for .zdebug sections and SHF_COMPRESSED debug
1281 sections, and uncompress them.
1282 * internal.h (backtrace_compress_zdebug): Declare.
1283 * ztest.c: New file.
1284 * configure.ac: Check for -lz and check whether the linker
1285 supports --compress-debug-sections.
1286 * Makefile.am (ztest_SOURCES): New variable.
1287 (ztest_CFLAGS, ztest_LDADD): New variables.
1288 (check_PROGRAMS): Add ztest.
1289 (ctestg_SOURCES): New variable.
1290 (ctestg_CFLAGS, ctestg_LDFLAGS, ctestg_LDADD): New variables.
1291 (ctesta_SOURCES): New variable.
1292 (ctesta_CFLAGS, ctesta_LDFLAGS, ctesta_LDADD): New variables.
1293 (check_PROGRAMS): Add ctestg and ctesta.
1294 * configure, config.h.in, Makefile.in: Rebuild.
1295
8c2ea6b2
ILT
12962017-09-22 Ian Lance Taylor <iant@golang.org>
1297
1298 PR sanitizer/77631
1299 * configure.ac: Check for lstat and readlink.
1300 * elf.c (lstat, readlink): Provide dummy versions if real versions
1301 are not available.
1302 * configure, config.h.in: Rebuild.
1303
f0de4542
ILT
13042017-09-21 Ian Lance Taylor <iant@google.com>
1305
1306 PR go/82284
1307 * elf.c (backtrace_initialize): Set pd.exe_filename.
1308
9283471b
ILT
13092017-09-20 Ian Lance Taylor <iant@golang.org>
1310 Denis Khalikov <d.khalikov@partner.samsung.com>
1311
1312 PR sanitizer/77631
1313 Support for external debug info.
1314 * elf.c: Include <errno.h>, <sys/stat.h>, <unistd.h>.
1315 (S_ISLNK): Define if not defined.
1316 (xstrnlen): Define if strnlen is not available.
1317 (b_elf_note): Define type.
1318 (NT_GNU_BUILD_ID): Define macro.
1319 (elf_crc32, elf_crc32_file): New static functions.
1320 (elf_is_symlink, elf_readlink): New static functions.
1321 (elf_open_debugfile_by_buildid): New static function.
1322 (elf_try_debugfile): New static function.
1323 (elf_find_debugfile_by_debuglink): New static function.
1324 (elf_open_debugfile_by_debuglink): New static function.
1325 (elf_add): Add filename and debuginfo parameters. Adjust all
1326 callers. Look for external debug info notes, and try to fetch
1327 debug info from external file.
1328 (struct phdr_data): Add exe_filename field.
1329 (phdr_callback): Pass filename to elf_add.
1330 (backtrace_initialize): Add filename parameter.
1331 * internal.h (backtrace_initialize): Add filename parameter.
1332 * fileline.c (fileline_initialize): Pass filename to
1333 backtrace_initialize.
1334 * pecoff.c (fileline_initialize): Add unused filename parameter.
1335 * unknown.c (fileline_initialize): Likewise.
1336 * xcoff.c (fileline_initialize): Likewise.
1337 * configure.ac: Check for objcopy --add-gnu-debuglink.
1338 * Makefile.am (dtest): New test target.
1339 * configure, Makefile.in: Rebuild.
1340
29788f90
SE
13412017-09-12 Steve Ellcey <sellcey@cavium.com>
1342
1343 PR other/81096
1344 * Makefile.am (ttest_CFLAGS): Add $(AM_CFLAGS)
1345 * Makefile.in: Regenerate.
1346
917a804c
SE
13472017-09-12 Steve Ellcey <sellcey@cavium.com>
1348
1349 PR other/81096
1350 * libbacktrace/Makefile.in
1351 (HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_CFLAGS): Add $(AM_CFLAGS)
1352
2e6af1b8
DE
13532017-08-02 David Edelsohn <dje.gcc@gmail.com>
1354
8a0e6224 1355 PR bootstrap/81638
2e6af1b8
DE
1356 * xcoff.c (xcoff_process_linenos): Initialize incl to NULL.
1357
afce7deb
TR
13582017-07-28 Tony Reix <tony.reix@atos.net>
1359
1360 * xcoff.c: Don't leak a file descriptor if an archive is malformed.
1361
cf311b03
RO
13622017-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1363
1364 * fileline.c (fileline_initialize): Print pid_t as long.
1365
7e2a8417
TR
13662017-07-26 Tony Reix <tony.reix@atos.net>
1367
1368 * configure.ac: Check for XCOFF32/XCOFF64. Check for loadquery.
1369 * filetype.awk: Separate AIX XCOFF32 and XCOFF64.
1370 * xcoff.c: Add support for AIX XCOFF32 and XCOFF64 formats.
1371 * configure, config.h.in: Regenerate.
1372
b3530b94
TR
13732017-07-21 Tony Reix <tony.reix@atos.net>
1374
1375 * filetype.awk: Add AIX XCOFF type detection.
1376 * configure.ac: Recognize xcoff format.
1377 * Makefile.am (FORMAT_FILES): Add xcoff.c.
1378 * fileline.c: Include <unistd.h>.
1379 (fileline_initialize): Add case for AIX procfs.
1380 * xcoff.c: New file.
1381 * configure, Makefile.in: Rebuild.
1382
e91a2ddc
RB
13832017-06-21 Richard Biener <rguenther@suse.de>
1384
1385 * configure.ac: Add AC_SYS_LARGEFILE.
1386 * config.h.in: Regenerate.
1387 * configure: Likewise.
1388
d1609a23
ILT
13892017-06-11 Ian Lance Taylor <iant@golang.org>
1390
1391 * elf.c (backtrace_initialize): Always set *fileline_fn.
1392 * ttest.c: New file.
1393 * btest.c: Move support functions into testlib.c. Change calls to
1394 check to pass file name.
1395 * testlib.c: New file, copied from (part of) btest.c.
1396 * testlib.h: New file, declarations for testlib.c.
1397 * edtest.c: Use testlib.h and testlib.c.
1398 * configure.ac: Test for -pthread, set HAVE_PTHREAD conditional.
1399 * Makefile.am (btest_SOURCES): Add testlib.c.
1400 (edtest_SOURCES): Likewise.
1401 (CHECK_PROGRAMS): Add ttest if HAVE_PTHREAD.
1402 (ttest_SOURCES, ttest_CFLAGS, ttest_LDADD): Define.
1403 * configure, Makefile.in: Rebuild.
1404
281161d1
TM
14052017-05-19 Than McIntosh <thanm@google.com>
1406
1407 * dwarf.c (free_line_header): Don't free dirs if dirs_count == 0.
1408 (read_line_header): Don't allocate dirs if dirs_count == 0.
1409 * edtest.c: New file.
1410 * edtest2.c: New file.
1411 * Makefile.am (edtest_SOURCES, edtest_LDADD): Define.
1412 (check_PROGRAMS): Add edtest.
1413 (edtest2_build.c, gen_edtest2_build): New targets.
1414 * Makefile.in: Rebuild.
1415
121eb024
ST
14162017-03-08 Sam Thursfield <sam.thursfield@codethink.co.uk>
1417
1418 * btest.c (test5): Replace #ifdef guard with 'unused' attribute
1419 to fix compile warning when BACKTRACE_SUPPORTED isn't defined.
1420
cbe34bb5
JJ
14212017-01-01 Jakub Jelinek <jakub@redhat.com>
1422
1423 Update copyright years.
1424
84c1b9d3
MK
14252016-11-15 Matthias Klose <doko@ubuntu.com>
1426
1427 * configure: Regenerate.
1428
84ebf639
CL
14292016-09-11 Carlos Liam <carlos@aarzee.me>
1430
1431 * all: Remove meaningless trailing whitespace.
1432
28644f75
UB
14332016-05-18 Uros Bizjak <ubizjak@gmail.com>
1434
1435 PR target/71161
1436 * elf.c (phdr_callback) [__i386__]: Add
1437 __attribute__((__force_align_arg_pointer__)).
1438
26ac52db
MO
14392016-03-02 Maxim Ostapenko <m.ostapenko@partner.samsung.com>
1440
1441 * elf.c (backtrace_initialize): Properly initialize elf_fileline_fn to
1442 avoid possible crash.
1443 (elf_add): Don't set *fileline_fn to elf_nodebug value in case of
1444 missing debug info anymore.
1445
09b08e17
JDA
14462016-02-06 John David Anglin <danglin@gcc.gnu.org>
1447
1448 * mmap.c (MAP_FAILED): Define if not defined.
1449
818ab71a
JJ
14502016-01-04 Jakub Jelinek <jakub@redhat.com>
1451
1452 Update copyright years.
1453
5b4bbc7d
AP
14542015-12-18 Andris Pavenis <andris.pavenis@iki.fi>
1455
28644f75
UB
1456 * configure.ac: Specify that DJGPP do not have mmap
1457 even when sys/mman.h exists.
5b4bbc7d
AP
1458 * configure: Regenerate
1459
2f401a8f
JDA
14602015-12-09 John David Anglin <danglin@gcc.gnu.org>
1461
28644f75 1462 PR libgfortran/68115
2f401a8f
JDA
1463 * configure.ac: Set libbacktrace_cv_sys_sync to no on hppa*-*-hpux*.
1464 * configure: Regenerate.
1465 * elf.c (backtrace_initialize): Cast __sync_bool_compare_and_swap call
1466 to void.
1467
750cdaf7
ILT
14682015-09-17 Ian Lance Taylor <iant@google.com>
1469
1470 * posix.c (backtrace_open): Cast second argument of open() to int.
1471
fc002444
ILT
14722015-09-11 Ian Lance Taylor <iant@google.com>
1473
1474 * Makefile.am (backtrace.lo): Depend on internal.h.
1475 (sort.lo, stest.lo): Add explicit dependencies.
1476 * Makefile.in: Rebuild.
1477
50809ff9
HPN
14782015-09-09 Hans-Peter Nilsson <hp@axis.com>
1479
1480 * backtrace.c: #include <sys/types.h>.
1481
c478516b
ILT
14822015-09-08 Ian Lance Taylor <iant@google.com>
1483
1484 PR other/67457
1485 * backtrace.c: #include "internal.h".
1486 (struct backtrace_data): Add can_alloc field.
1487 (unwind): If can_alloc is false, don't try to get file/line
1488 information.
1489 (backtrace_full): Set can_alloc field in bdata.
1490 * alloc.c (backtrace_alloc): Don't call error_callback if it is
1491 NULL.
1492 * mmap.c (backtrace_alloc): Likewise.
1493 * internal.h: Update comments for backtrace_alloc and
1494 backtrace_free.
1495
981d281f
ILT
14962015-09-08 Ian Lance Taylor <iant@google.com>
1497
1498 PR other/67457
1499 * mmap.c (backtrace_alloc): Correct test for mmap failure.
1500
8f5027bf
UW
15012015-08-31 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1502
1503 * configure.ac: For spu-*-* targets, set have_fcntl to no.
1504 * configure: Regenerate.
1505
7e5c7547
UW
15062015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1507
1508 * configure.ac: Remove [disable-shared] argument to LT_INIT.
1509 Remove setting PIC_FLAG when building as target library.
1510 * configure: Regenerate.
1511
7ce9cf39
HPN
15122015-08-26 Hans-Peter Nilsson <hp@axis.com>
1513
1514 * configure.ac: Only compile with -fPIC if the target
1515 supports it.
1516 * configure: Regenerate.
1517
1b533361
UW
15182015-08-24 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1519
1520 * configure.ac: Set have_mmap to no on spu-*-* targets.
1521 * configure: Regenerate.
1522
d96fa208
ILT
15232015-08-13 Ian Lance Taylor <iant@google.com>
1524
1525 * dwarf.c (read_function_entry): Add vec_inlined parameter.
1526 Change all callers.
1527
d99a7b4d
MS
15282015-06-11 Martin Sebor <msebor@redhat.com>
1529
1530 PR sanitizer/65479
1531 * dwarf.c (struct line): Add new field idx.
1532 (line_compare): Use it.
1533 (add_line): Set it.
1534 (read_line_info): Reset it.
1535
e24afc10
TG
15362015-05-29 Tristan Gingold <gingold@adacore.com>
1537
1538 * pecoff.c: New file.
1539 * Makefile.am (FORMAT_FILES): Add pecoff.c and dependencies.
1540 * Makefile.in: Regenerate.
1541 * filetype.awk: Detect pecoff.
1542 * configure.ac: Define BACKTRACE_SUPPORTS_DATA on elf platforms.
1543 Add pecoff.
1544 * btest.c (test5): Test enabled only if BACKTRACE_SUPPORTS_DATA is
1545 true.
1546 * backtrace-supported.h.in (BACKTRACE_SUPPORTS_DATA): Define.
1547 * configure: Regenerate.
1548 * pecoff.c: New file.
1549
df96c0f7
MH
15502015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
1551
1552 * Makefile.in: Regenerated with automake-1.11.6.
1553 * aclocal.m4: Likewise.
1554 * configure: Likewise.
1555
2b8fa469
MK
15562015-01-24 Matthias Klose <doko@ubuntu.com>
1557
1558 * configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
1559 * configure: Regenerate.
1560
5624e564
JJ
15612015-01-05 Jakub Jelinek <jakub@redhat.com>
1562
1563 Update copyright years.
1564
a699d672
L
15652014-11-21 H.J. Lu <hongjiu.lu@intel.com>
1566
1567 PR bootstrap/63784
1568 * configure: Regenerated.
1569
35485da9
DM
15702014-11-11 David Malcolm <dmalcolm@redhat.com>
1571
1572 * ChangeLog.jit: New.
1573
ebf6d33b
FXC
15742014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1575
1576 PR target/63610
1577 * configure: Regenerate.
1578
c96601d2
ILT
15792014-10-23 Ian Lance Taylor <iant@google.com>
1580
1581 * internal.h (backtrace_atomic_load_pointer) [no atomic or sync]:
1582 Fix to return void *.
1583
d573fd89
ILT
15842014-05-08 Ian Lance Taylor <iant@google.com>
1585
1586 * mmap.c (backtrace_free): If freeing a large aligned block of
1587 memory, call munmap rather than holding onto it.
1588 (backtrace_vector_grow): When growing a vector, double the number
1589 of pages requested. When releasing the old version of a grown
1590 vector, pass the correct size to backtrace_free.
1591
dbe20842
ILT
15922014-03-07 Ian Lance Taylor <iant@google.com>
1593
1594 * sort.c (backtrace_qsort): Use middle element as pivot.
1595
c5604b48
ILT
15962014-03-06 Ian Lance Taylor <iant@google.com>
1597
1598 * sort.c: New file.
1599 * stest.c: New file.
1600 * internal.h (backtrace_qsort): Declare.
1601 * dwarf.c (read_abbrevs): Call backtrace_qsort instead of qsort.
1602 (read_line_info, read_function_entry): Likewise.
1603 (read_function_info, build_dwarf_data): Likewise.
1604 * elf.c (elf_initialize_syminfo): Likewise.
1605 * Makefile.am (libbacktrace_la_SOURCES): Add sort.c.
1606 (stest_SOURCES, stest_LDADD): Define.
1607 (check_PROGRAMS): Add stest.
1608
63fefb4b
MDM
16092014-02-07 Misty De Meo <misty@brew.sh>
1610
1611 PR target/58710
1612 * configure.ac: Use AC_LINK_IFELSE in check for
1613 _Unwind_GetIPInfo.
1614 * configure: Regenerate.
1615
afeba5cb
RS
16162014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1617
1618 Update copyright years
1619
0284b52e
JJ
16202013-12-06 Jakub Jelinek <jakub@redhat.com>
1621
1622 * elf.c (ET_DYN): Undefine and define again.
1623 (elf_add): Add exe argument, if true and ehdr.e_type is ET_DYN,
1624 return early -1 without closing the descriptor.
1625 (struct phdr_data): Add exe_descriptor.
1626 (phdr_callback): If pd->exe_descriptor is not -1, for very first
1627 call if dlpi_name is NULL just call elf_add with the exe_descriptor,
1628 otherwise backtrace_close the exe_descriptor if not -1. Adjust
1629 call to elf_add.
1630 (backtrace_initialize): Adjust call to elf_add. If it returns
1631 -1, set pd.exe_descriptor to descriptor, otherwise set it to -1.
1632
bfd74f22
ILT
16332013-12-05 Ian Lance Taylor <iant@google.com>
1634
1635 * alloc.c (backtrace_vector_finish): Add error_callback and data
1636 parameters. Call backtrace_vector_release. Return address base.
1637 * mmap.c (backtrace_vector_finish): Add error_callback and data
1638 parameters. Return address base.
1639 * dwarf.c (read_function_info): Get new address base from
1640 backtrace_vector_finish.
1641 * internal.h (backtrace_vector_finish): Update declaration.
1642
b8ddd61b
ILT
16432013-11-27 Ian Lance Taylor <iant@google.com>
1644
1645 * dwarf.c (find_address_ranges): New static function, broken out
1646 of build_address_map.
1647 (build_address_map): Call it.
1648 * btest.c (check): Check for missing filename or function, rather
1649 than crashing.
1650 (f3): Check that enough frames were returned.
1651
64856e1e
JJ
16522013-11-19 Jakub Jelinek <jakub@redhat.com>
1653
1f96a712
JJ
1654 * backtrace.h (backtrace_syminfo_callback): Add symsize argument.
1655 * elf.c (elf_syminfo): Pass 0 or sym->size to the callback as
1656 last argument.
1657 * btest.c (struct symdata): Add size field.
1658 (callback_three): Add symsize argument. Copy it to the data->size
1659 field.
1660 (f23): Set symdata.size to 0.
1661 (test5): Likewise. If sizeof (int) > 1, lookup address of
1662 ((uintptr_t) &global) + 1. Verify symdata.val and symdata.size
1663 values.
1664
64856e1e
JJ
1665 * atomic.c: Include sys/types.h.
1666
49579c7e
ILT
16672013-11-18 Ian Lance Taylor <iant@google.com>
1668
1669 * configure.ac: Check for support of __atomic extensions.
1670 * internal.h: Declare or #define atomic functions for use in
1671 backtrace code.
1672 * atomic.c: New file.
1673 * dwarf.c (dwarf_lookup_pc): Use atomic functions.
1674 (dwarf_fileline, backtrace_dwarf_add): Likewise.
1675 * elf.c (elf_add_syminfo_data, elf_syminfo): Likewise.
1676 (backtrace_initialize): Likewise.
1677 * fileline.c (fileline_initialize): Likewise.
1678 * Makefile.am (libbacktrace_la_SOURCES): Add atomic.c.
1679 * configure, config.h.in, Makefile.in: Rebuild.
1680
582f5a2d
JJ
16812013-11-18 Jakub Jelinek <jakub@redhat.com>
1682
f1857815
JJ
1683 * elf.c (SHN_UNDEF): Define.
1684 (elf_initialize_syminfo): Add base_address argument. Ignore symbols
1685 with st_shndx == SHN_UNDEF. Add base_address to address fields.
1686 (elf_add): Adjust caller.
1687
582f5a2d
JJ
1688 * elf.c (phdr_callback): Process info->dlpi_addr == 0 normally.
1689
25e6253e
ILT
16902013-11-16 Ian Lance Taylor <iant@google.com>
1691
1692 * backtrace.h (backtrace_create_state): Correct comment about
1693 threading.
1694
cfa658e4
ILT
16952013-11-15 Ian Lance Taylor <iant@google.com>
1696
1697 * backtrace.h (backtrace_syminfo): Update comment and parameter
1698 name to take any address, not just a PC value.
1699 * elf.c (STT_OBJECT): Define.
1700 (elf_nosyms): Rename parameter pc to addr.
1701 (elf_symbol_search): Rename local variable pc to addr.
1702 (elf_initialize_syminfo): Add STT_OBJECT symbols to elf_symbols.
1703 (elf_syminfo): Rename parameter pc to addr.
1704 * btest.c (global): New global variable.
1705 (test5): New test.
1706 (main): Call test5.
1707
6c084a5b
ILT
17082013-10-17 Ian Lance Taylor <iant@google.com>
1709
1710 * elf.c (elf_add): Don't get the wrong offsets if a debug section
1711 is missing.
1712
459260ec
DM
17132013-10-15 David Malcolm <dmalcolm@redhat.com>
1714
1715 * configure.ac: Add --enable-host-shared, setting up
1716 pre-existing PIC_FLAG variable within Makefile.am et al.
1717 * configure: Regenerate.
1718
3cbe17f7
AM
17192013-09-20 Alan Modra <amodra@gmail.com>
1720
1721 * configure: Regenerate.
1722
78625ce6
AM
17232013-07-23 Alexander Monakov <amonakov@ispras.ru>
1724
1725 * elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
1726
0153887c
AM
17272013-07-23 Alexander Monakov <amonakov@ispras.ru>
1728
1729 * elf.c (backtrace_initialize): Pass elf_fileline_fn to
1730 dl_iterate_phdr callbacks.
1731
85d8c21e
ILT
17322013-03-25 Ian Lance Taylor <iant@google.com>
1733
1734 * alloc.c: #include <sys/types.h>.
1735 * mmap.c: Likewise.
1736
38811401
ILT
17372013-01-31 Ian Lance Taylor <iant@google.com>
1738
1739 * dwarf.c (read_function_info): Permit fvec parameter to be NULL.
1740 (dwarf_lookup_pc): Don't use ddata->fvec if threaded.
1741
1e678aed
JJ
17422013-01-25 Jakub Jelinek <jakub@redhat.com>
1743
1744 PR other/56076
1745 * dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir
1746 attribute was not seen.
1747
6b514c53
ILT
17482013-01-16 Ian Lance Taylor <iant@google.com>
1749
1750 * dwarf.c (struct unit): Add filename and abs_filename fields.
1751 (build_address_map): Set new fields when reading unit.
1752 (dwarf_lookup_pc): If we don't find an entry in the line table,
1753 just return the main file name.
1754
f8a7e1a4
RS
17552013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
1756
1757 Update copyright years.
1758
c3de1960
ILT
17592013-01-01 Ian Lance Taylor <iant@google.com>
1760
1761 PR bootstrap/54834
1762 * Makefile.am (AM_CPPFLAGS): Remove -I ../gcc/include and -I
1763 $(MULTIBUILDTOP)/../../gcc/include.
1764 * Makefile.in: Rebuild.
1765
2a5195d9
ILT
17662013-01-01 Ian Lance Taylor <iant@google.com>
1767
1768 PR other/55536
1769 * mmap.c (backtrace_alloc): Don't call sync functions if not
1770 threaded.
1771 (backtrace_free): Likewise.
1772
85619b6f
JDA
17732012-12-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1774
1775 * mmapio.c: Define MAP_FAILED if not defined.
1776
36a58fb3
JJ
17772012-12-11 Jakub Jelinek <jakub@redhat.com>
1778
1779 PR bootstrap/54926
1780 * Makefile.am (AM_CFLAGS): Remove -frandom-seed=$@.
1781 * configure.ac: If --with-target-subdir, add -frandom-seed=$@
1782 to EXTRA_FLAGS unconditionally, otherwise check whether the compiler
1783 accepts it.
1784 * Makefile.in: Regenerated.
1785 * configure: Regenerated.
1786
a58dfde0
JJ
17872012-12-07 Jakub Jelinek <jakub@redhat.com>
1788
1789 PR bootstrap/54926
1790 * Makefile.am (AM_CFLAGS): Add -frandom-seed=$@.
1791 * Makefile.in: Regenerated.
1792
b20ade36
ILT
17932012-11-20 Ian Lance Taylor <iant@google.com>
1794
1795 * dwarf.c (read_attribute): Always clear val.
1796
73c3ed27
ILT
17972012-11-13 Ian Lance Taylor <iant@google.com>
1798
1799 PR other/55312
1800 * configure.ac: Only add -Werror if building a target library.
2a5195d9 1801 * configure: Rebuild.
73c3ed27 1802
33521509
ILT
18032012-11-12 Ian Lance Taylor <iant@google.com>
1804 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1805 Gerald Pfeifer <gerald@pfeifer.com>
1806
1807 * configure.ac: Check for getexecname.
1808 * fileline.c: #include <errno.h>. Define getexecname if not
1809 available.
1810 (fileline_initialize): Try to find the executable in a few
1811 different ways.
1812 * print.c (error_callback): Only print the filename if it came
1813 from the backtrace state.
1814 * configure, config.h.in: Rebuild.
1815
8fe91dea
ILT
18162012-10-29 Ian Lance Taylor <iant@google.com>
1817
1818 * mmap.c (backtrace_vector_release): Correct last patch: add
1819 aligned, not size.
1820
8277de34
ILT
18212012-10-29 Ian Lance Taylor <iant@google.com>
1822
1823 * mmap.c (backtrace_vector_release): Make sure freed block is
1824 aligned on 8-byte boundary.
1825
73f41491
ILT
18262012-10-26 Ian Lance Taylor <iant@google.com>
1827
1828 PR other/55087
1829 * posix.c (backtrace_open): Add does_not_exist parameter.
1830 * elf.c (phdr_callback): Do not warn if shared library could not
1831 be opened.
1832 * fileline.c (fileline_initialize): Update calls to
1833 backtrace_open.
1834 * internal.h (backtrace_open): Update declaration.
1835
385710cf
JH
18362012-10-26 Jack Howarth <howarth@bromo.med.uc.edu>
1837
1838 PR target/55061
1839 * configure.ac: Check for _Unwind_GetIPInfo function declaration.
1840 * configure: Regenerate.
1841
32061319
ILT
18422012-10-24 Ian Lance Taylor <iant@google.com>
1843
1844 PR target/55061
1845 * configure.ac: Check whether -funwind-tables option works.
1846 * configure: Rebuild.
1847
5551b12c
ILT
18482012-10-11 Ian Lance Taylor <iant@google.com>
1849
1850 * configure.ac: Do not use dl_iterate_phdr on Solaris 10.
1851 * configure: Rebuild.
1852
40d15b5b
ILT
18532012-10-10 Ian Lance Taylor <iant@google.com>
1854
1855 * elf.c: Rename all Elf typedefs to start with b_elf, and be all
1856 lower case.
1857
74f80620
HPN
18582012-10-10 Hans-Peter Nilsson <hp@bitrange.com>
1859
1860 * elf.c (elf_add_syminfo_data): Add casts to avoid warning.
1861
ce8aa074
ILT
18622012-10-09 Ian Lance Taylor <iant@google.com>
1863
1864 * dwarf.c (dwarf_fileline): Add cast to avoid warning.
1865 (backtrace_dwarf_add): Likewise.
1866
e561a992
ILT
18672012-10-09 Ian Lance Taylor <iant@google.com>
1868
1869 Add support for tracing through shared libraries.
1870 * configure.ac: Check for link.h and dl_iterate_phdr.
1871 * elf.c: #include <link.h> if system has dl_iterate_phdr. #undef
1872 ELF macros before #defining them.
1873 (dl_phdr_info, dl_iterate_phdr): Define if system does not have
1874 dl_iterate_phdr.
1875 (struct elf_syminfo_data): Add next field.
1876 (elf_initialize_syminfo): Initialize next field.
1877 (elf_add_syminfo_data): New static function.
1878 (elf_add): New static function, broken out of
1879 backtrace_initialize. Call backtrace_dwarf_add instead of
1880 backtrace_dwarf_initialize.
1881 (struct phdr_data): Define.
1882 (phdr_callback): New static function.
1883 (backtrace_initialize): Call elf_add.
1884 * dwarf.c (struct dwarf_data): Add next and base_address fields.
1885 (add_unit_addr): Add base_address parameter. Change all callers.
1886 (add_unit_ranges, build_address_map): Likewise.
1887 (add_line): Add ddata parameter. Change all callers.
1888 (read_line_program, add_function_range): Likewise.
1889 (dwarf_lookup_pc): New static function, broken out of
1890 dwarf_fileline.
1891 (dwarf_fileline): Call dwarf_lookup_pc.
1892 (build_dwarf_data): New static function.
1893 (backtrace_dwarf_add): New function.
1894 (backtrace_dwarf_initialize): Remove.
1895 * internal.h (backtrace_dwarf_initialize): Don't declare.
1896 (backtrace_dwarf_add): Declare.
1897 * configure, config.h.in: Rebuild.
1898
068ef6d1
GP
18992012-10-04 Gerald Pfeifer <gerald@pfeifer.com>
1900
1901 * btest.c (f23): Avoid uninitialized variable warning.
e561a992 1902
244e2d9c
ILT
19032012-10-04 Ian Lance Taylor <iant@google.com>
1904
1905 * dwarf.c: If the system header files do not declare strnlen,
1906 provide our own version.
1907
be4ba8ae
ILT
19082012-10-03 Ian Lance Taylor <iant@google.com>
1909
1910 * dwarf.c (read_uleb128): Fix overflow test.
1911 (read_sleb128): Likewise.
1912 (build_address_map): Don't change unit_buf.start.
1913
56195009
UB
19142012-10-02 Uros Bizjak <ubizjak@gmail.com>
1915
faf86a02
UB
1916 PR other/54761
1917 * configure.ac (EXTRA_FLAGS): New.
56195009 1918 * Makefile.am (AM_FLAGS): Add $(EXTRA_FLAGS).
faf86a02 1919 * configure, Makefile.in: Regenerate.
56195009 1920
8a447b3d
ILT
19212012-09-29 Ian Lance Taylor <iant@google.com>
1922
1923 PR other/54749
1924 * fileline.c (fileline_initialize): Pass errnum as -1 when
1925 reporting that we could not read executable information after a
1926 previous failure.
1927
af710874
ILT
19282012-09-27 Ian Lance Taylor <iant@google.com>
1929
1930 PR bootstrap/54732
1931 * configure.ac: Add no-dependencies to AM_INIT_AUTOMAKE.
1932 * Makefile.am: Add dependencies for all objects.
1933 * configure, aclocal.m4, Makefile.in: Rebuild.
1934
588f4f8f
ILT
19352012-09-27 Ian Lance Taylor <iant@google.com>
1936
1937 PR other/54726
1938 * elf.c (backtrace_initialize): Set *fileln_fn, not
1939 state->fileln_fn.
1940
64b89453
ILT
19412012-09-19 Ian Lance Taylor <iant@google.com>
1942
1943 * configure.ac: Only use GCC_CHECK_UNWIND_GETIPINFO when compiled
1944 as a target library.
1945 * configure: Rebuild.
1946
76850556
RO
19472012-09-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1948 Ian Lance Taylor <iant@google.com>
1949
92a285c1
ML
1950 * configure.ac (GCC_HEADER_STDINT): Invoke.
1951 * backtrace.h: If we can't find <stdint.h>, use "gstdint.h".
1952 * btest.c: Don't include <stdint.h>.
1953 * dwarf.c: Likewise.
1954 * configure, aclocal.m4, Makefile.in, config.h.in: Rebuild.
76850556 1955
9425c00b
ILT
19562012-09-18 Ian Lance Taylor <iant@google.com>
1957
1958 PR bootstrap/54623
1959 * Makefile.am (AM_CPPFLAGS): Define.
1960 (AM_CFLAGS): Remove -I options.
1961 * Makefile.in: Rebuild.
1962
3319ef17
ILT
19632012-09-18 Ian Lance Taylor <iant@google.com>
1964
1965 * posix.c (O_BINARY): Define if not defined.
1966 (backtrace_open): Pass O_BINARY to open. Only call fcntl if
1967 HAVE_FCNTL is defined.
1968 * configure.ac: Test for the fcntl function.
1969 * configure, config.h.in: Rebuild.
1970
bd3e497d
ILT
19712012-09-18 Ian Lance Taylor <iant@google.com>
1972
1973 * btest.c (test1, test2, test3, test4): Add the unused attribute.
1974
30e15876
ILT
19752012-09-18 Ian Lance Taylor <iant@google.com>
1976
1977 * dwarf.c: Correct test of HAVE_DECL_STRNLEN.
1978
d4c059d5
ILT
19792012-09-18 Ian Lance Taylor <iant@google.com>
1980
1981 * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
1982 * mmapio.c: Don't define _GNU_SOURCE.
1983 * configure, config.h.in: Rebuild.
1984
772a71a9
ILT
19852012-09-18 Ian Lance Taylor <iant@google.com>
1986
1987 * configure.ac: Check whether strnlen is declared.
1988 * dwarf.c: Declare strnlen if not declared.
1989 * configure, config.h.in: Rebuild.
1990
c0558468
RO
19912012-09-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1992
1993 * fileline.c: Include <stdlib.h>.
1994 * mmap.c: Likewise.
1995
c5812e0b
ILT
19962012-09-17 Ian Lance Taylor <iant@google.com>
1997
1998 PR bootstrap/54611
1999 * nounwind.c (backtrace_full): Rename from backtrace. Add state
2000 parameter.
2001
e8f4008a
GP
20022012-09-17 Gerald Pfeifer <gerald@pfeifer.com>
2003
2004 PR bootstrap/54611
2005 * nounwind.c (backtrace_simple): Add state parameter.
2006
f588eb27
ILT
20072012-09-17 Ian Lance Taylor <iant@google.com>
2008
2009 PR bootstrap/54609
2010 * unknown.c (unknown_fileline): Add state parameter, remove
2011 fileline_data parameter, name error_callback parameter.
2012 (backtrace_initialize): Add state parameter.
2013
eff02e4f
ILT
20142012-09-17 Ian Lance Taylor <iant@google.com>
2015
2016 * Initial implementation.
818ab71a 2017\f
68127a8e 2018Copyright (C) 2012-2023 Free Software Foundation, Inc.
818ab71a
JJ
2019
2020Copying and distribution of this file, with or without modification,
2021are permitted in any medium without royalty provided the copyright
2022notice and this notice are preserved.