]> git.ipfire.org Git - thirdparty/gcc.git/blame - libbacktrace/ChangeLog
Daily bump.
[thirdparty/gcc.git] / libbacktrace / ChangeLog
CommitLineData
651b8a50
GA
12021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
2
3 * configure: Re-generate.
4
6e1edf48
GA
52020-12-05 Iain Sandoe <iain@sandoe.co.uk>
6
7 PR target/97865
8 * configure: Regenerate.
9
11860cf4
GA
102020-12-02 Ian Lance Taylor <iant@golang.org>
11
12 * dwarf.c (resolve_string): Use > rather than >= to check whether
13 string index extends past buffer.
14 (resolve_addr_index): Similarly for address index.
15
a9625c50
GA
162020-11-29 John David Anglin <danglin@gcc.gnu.org>
17
18 * configure: Regenerate.
19
e2e04288
GA
202020-10-20 Ian Lance Taylor <iant@golang.org>
21
22 * internal.h (ATTRIBUTE_FALLTHROUGH): Define.
23 * elf.c (elf_zlib_inflate): Use ATTRIBUTE_FALLTHROUGH.
24
e84761c6
GA
252020-09-28 Ian Lance Taylor <iant@golang.org>
26
27 PR libbacktrace/97082
28 * Makefile.am (check_DATA): Add mtest.dSYM if USE_DSYMUTIL.
29 * Makefile.in: Regenerate.
30
312020-09-28 Ian Lance Taylor <iant@golang.org>
32
33 PR libbacktrace/97227
34 * configure.ac (USE_DSYMUTIL): Define instead of HAVE_DSYMUTIL.
35 * Makefile.am: Change all uses of HAVE_DSYMUTIL to USE_DSYMUTIL.
36 * configure: Regenerate.
37 * Makefile.in: Regenerate.
38
82b77dee
GA
392020-09-23 Ian Lance Taylor <iant@golang.org>
40
41 * dwarf.c (report_inlined_functions): Handle PC == -1 and PC ==
42 p->low.
43 (dwarf_lookup_pc): Likewise.
44
ecde1b0a
GA
452020-09-17 Ian Lance Taylor <iant@golang.org>
46
47 PR libbacktrace/97080
48 * fileline.c (backtrace_syminfo_to_full_callback): New function.
49 (backtrace_syminfo_to_full_error_callback): New function.
50 * elf.c (elf_nodebug): Call syminfo_fn if possible.
51 * internal.h (struct backtrace_call_full): Define.
52 (backtrace_syminfo_to_full_callback): Declare.
53 (backtrace_syminfo_to_full_error_callback): Declare.
54 * mtest.c (f3): Only check all[i] if data.index permits.
55
562020-09-16 Iain Sandoe <iain@sandoe.co.uk>
57
58 * macho.c (MACH_O_CPU_TYPE_PPC): New.
59 (MACH_O_CPU_TYPE_PPC64): New.
60 Add compile-tests for powerpc to the Mach-O variants.
61
50a71cd0
GA
622020-09-14 Ian Lance Taylor <iant@golang.org>
63
64 PR libbacktrace/93608
65 Add support for MiniDebugInfo.
66 * elf.c (struct elf_view): Define. Replace most uses of
67 backtrace_view with elf_view.
68 (elf_get_view): New static functions. Replace most calls of
69 backtrace_get_view with elf_get_view.
70 (elf_release_view): New static functions. Replace most calls of
71 backtrace_release_view with elf_release_view.
72 (elf_uncompress_failed): Rename from elf_zlib_failed. Change all
73 callers.
74 (LZMA_STATES, LZMA_POS_STATES, LZMA_DIST_STATES): Define.
75 (LZMA_DIST_SLOTS, LZMA_DIST_MODEL_START): Define.
76 (LZMA_DIST_MODEL_END, LZMA_FULL_DISTANCES): Define.
77 (LZMA_ALIGN_SIZE, LZMA_LEN_LOW_SYMBOLS): Define.
78 (LZMA_LEN_MID_SYMBOLS, LZMA_LEN_HIGH_SYMBOLS): Define.
79 (LZMA_LITERAL_CODERS_MAX, LZMA_LITERAL_CODER_SIZE): Define.
80 (LZMA_PROB_IS_MATCH_LEN, LZMA_PROB_IS_REP_LEN): Define.
81 (LZMA_PROB_IS_REP0_LEN, LZMA_PROB_IS_REP1_LEN): Define.
82 (LZMA_PROB_IS_REP2_LEN, LZMA_PROB_IS_REP0_LONG_LEN): Define.
83 (LZMA_PROB_DIST_SLOT_LEN, LZMA_PROB_DIST_SPECIAL_LEN): Define.
84 (LZMA_PROB_DIST_ALIGN_LEN): Define.
85 (LZMA_PROB_MATCH_LEN_CHOICE_LEN): Define.
86 (LZMA_PROB_MATCH_LEN_CHOICE2_LEN): Define.
87 (LZMA_PROB_MATCH_LEN_LOW_LEN): Define.
88 (LZMA_PROB_MATCH_LEN_MID_LEN): Define.
89 (LZMA_PROB_MATCH_LEN_HIGH_LEN): Define.
90 (LZMA_PROB_REP_LEN_CHOICE_LEN): Define.
91 (LZMA_PROB_REP_LEN_CHOICE2_LEN): Define.
92 (LZMA_PROB_REP_LEN_LOW_LEN): Define.
93 (LZMA_PROB_REP_LEN_MID_LEN): Define.
94 (LZMA_PROB_REP_LEN_HIGH_LEN): Define.
95 (LZMA_PROB_LITERAL_LEN): Define.
96 (LZMA_PROB_IS_MATCH_OFFSET, LZMA_PROB_IS_REP_OFFSET): Define.
97 (LZMA_PROB_IS_REP0_OFFSET, LZMA_PROB_IS_REP1_OFFSET): Define.
98 (LZMA_PROB_IS_REP2_OFFSET): Define.
99 (LZMA_PROB_IS_REP0_LONG_OFFSET): Define.
100 (LZMA_PROB_DIST_SLOT_OFFSET): Define.
101 (LZMA_PROB_DIST_SPECIAL_OFFSET): Define.
102 (LZMA_PROB_DIST_ALIGN_OFFSET): Define.
103 (LZMA_PROB_MATCH_LEN_CHOICE_OFFSET): Define.
104 (LZMA_PROB_MATCH_LEN_CHOICE2_OFFSET): Define.
105 (LZMA_PROB_MATCH_LEN_LOW_OFFSET): Define.
106 (LZMA_PROB_MATCH_LEN_MID_OFFSET): Define.
107 (LZMA_PROB_MATCH_LEN_HIGH_OFFSET): Define.
108 (LZMA_PROB_REP_LEN_CHOICE_OFFSET): Define.
109 (LZMA_PROB_REP_LEN_CHOICE2_OFFSET): Define.
110 (LZMA_PROB_REP_LEN_LOW_OFFSET): Define.
111 (LZMA_PROB_REP_LEN_MID_OFFSET): Define.
112 (LZMA_PROB_REP_LEN_HIGH_OFFSET): Define.
113 (LZMA_PROB_LITERAL_OFFSET): Define.
114 (LZMA_PROB_TOTAL_COUNT): Define.
115 (LZMA_IS_MATCH, LZMA_IS_REP, LZMA_IS_REP0): Define.
116 (LZMA_IS_REP1, LZMA_IS_REP2, LZMA_IS_REP0_LONG): Define.
117 (LZMA_DIST_SLOT, LZMA_DIST_SPECIAL, LZMA_DIST_ALIGN): Define.
118 (LZMA_MATCH_LEN_CHOICE, LZMA_MATCH_LEN_CHOICE2): Define.
119 (LZMA_MATCH_LEN_LOW, LZMA_MATCH_LEN_MID): Define.
120 (LZMA_MATCH_LEN_HIGH, LZMA_REP_LEN_CHOICE): Define.
121 (LZMA_REP_LEN_CHOICE2, LZMA_REP_LEN_LOW): Define.
122 (LZMA_REP_LEN_MID, LZMA_REP_LEN_HIGH, LZMA_LITERAL): Define.
123 (elf_lzma_varint): New static function.
124 (elf_lzma_range_normalize): New static function.
125 (elf_lzma_bit, elf_lzma_integer): New static functions.
126 (elf_lzma_reverse_integer): New static function.
127 (elf_lzma_len, elf_uncompress_lzma_block): New static functions.
128 (elf_uncompress_lzma): New static function.
129 (backtrace_uncompress_lzma): New function.
130 (elf_add): Add memory and memory_size parameters. Change all
131 callers. Look for .gnu_debugdata section, and, if found,
132 decompress it and use it for symbols and debug info. Permit the
133 descriptor parameter to be -1.
134 * internal.h (backtrace_uncompress_lzma): Declare.
135 * mtest.c: New file.
136 * xztest.c: New file.
137 * configure.ac: Check for nm, xz, and comm programs. Check for
138 liblzma library.
139 (HAVE_MINIDEBUG): Define.
140 * Makefile.am (mtest_SOURCES): Define.
141 (mtest_CFLAGS, mtest_LDADD): Define.
142 (TESTS): Add mtest_minidebug if HAVE_MINIDEBUG.
143 (%_minidebug): New pattern rule, if HAVE_MINIDEBUG.
144 (xztest_SOURCES, xztest_CFLAGS, xztest_LDADD): Define.
145 (xztest_alloc_SOURCES, xztest_alloc_CFLAGS): Define
146 (xztest_alloc_LDADD): Define.
147 (BUILDTESTS): Add mtest, xztest, xztest_alloc.
148 (CLEANFILES): Add files created by minidebug pattern.
149 (btest.lo): Correct INCDIR reference.
150 (mtest.lo, xztest.lo, ztest.lo): New targets.
151 * configure: Regenerate.
152 * config.h.in: Regenerate.
153 * Makefile.in: Regenerate.
154
80f86e78
GA
1552020-09-09 Ian Lance Taylor <iant@golang.org>
156
157 * pecoff.c (coff_initialize_syminfo): Add is_64 parameter.
158 (coff_add): Determine and pass is_64.
159
1602020-09-09 Ian Lance Taylor <iant@golang.org>
161
162 PR libbacktrace/96973
163 * fileline.c (macho_get_executable_path): New static function.
164 (fileline_initialize): Call macho_get_executable_path.
165
1662020-09-09 Ian Lance Taylor <iant@golang.org>
167
168 * dwarf.c (function_addrs_search): Compare against the next entry
169 low address, not the high address.
170 (unit_addrs_search): Likewise.
171 (build_address_map): Add a trailing unit_addrs.
172 (read_function_entry): Add a trailing function_addrs.
173 (read_function_info): Likewise.
174 (report_inlined_functions): Search backward for function_addrs
175 match.
176 (dwarf_lookup_pc): Search backward for unit_addrs and
177 function_addrs matches.
178
31a05046
GA
1792020-09-08 Ian Lance Taylor <iant@golang.org>
180
181 * simple.c (simple_unwind): Correct comment spelling.
182
1832020-09-08 Ian Lance Taylor <iant@golang.org>
184
185 * macho.c (macho_add_dsym): Make space for '/' in dsym. Use
186 correct length when freeing diralc.
187
1882020-09-08 Ian Lance Taylor <iant@golang.org>
189
190 PR libbacktrace/96973
191 * macho.c (macho_add_fat): Correctly swap 32-bit file offset.
192
1932020-09-08 Ian Lance Taylor <iant@golang.org>
194
195 PR libbacktrace/96971
196 * filetype.awk: Only match magic number at start of line.
197
b2b24d30
GA
1982020-08-24 Ian Lance Taylor <iant@golang.org>
199
200 * macho.c (MACH_O_MH_MAGIC_FAT_64): Define.
201 (MACH_O_MH_CIGAM_FAT_64): Define.
202 (struct macho_fat_arch_64): Define.
203 (macho_add_fat): Add and use is_64 parameter.
204 (macho_add): Recognize 64-bit fat files.
205
d48cca8f
GA
2062020-07-30 H.J. Lu <hjl.tools@gmail.com>
207
208 PR bootstrap/96202
209 * configure: Regenerated.
210
50873cc5
GA
2112020-07-08 Ian Lance Taylor <iant@golang.org>
212
213 * configure.ac: Test linker support for DWARF5
214 * configure: Regenerate
215
885ef72f
GA
2162020-05-29 H.J. Lu <hjl.tools@gmail.com>
217
218 PR bootstrap/95413
219 * configure: Regenerated.
220
4c1a5d8b
L
2212020-05-15 H.J. Lu <hongjiu.lu@intel.com>
222
223 PR bootstrap/95147
224 * configure: Regenerated.
225
8d286dd1
L
2262020-05-14 H.J. Lu <hongjiu.lu@intel.com>
227
228 * configure: Regenerated.
229
d2ec2786
ILT
2302020-05-13 Ian Lance Taylor <iant@golang.org>
231
232 * ztest.c (test_large): Mark state ATTRIBUTE_UNUSED.
233
702adbb2
ILT
2342020-05-13 Ian Lance Taylor <iant@golang.org>
235
236 PR go/95061
237 * posix.c (backtrace_open): Treat EACCESS like ENOENT.
238
2392020-05-12 H.J. Lu <hongjiu.lu@intel.com>
d2148648
L
240
241 * Makefile.am (AM_CFLAGS): Add $(CET_HOST_FLAGS).
242 * configure.ac: Add GCC_CET_HOST_FLAGS(CET_HOST_FLAGS) and
243 AC_SUBST(CET_HOST_FLAGS). Clear CET_HOST_FLAGS if jit isn't
244 enabled.
245 * Makefile.in: Regenerated.
246 * configure: Likewise.
247
47f4703c
ILT
2482020-05-11 Ian Lance Taylor <iant@golang.org>
249
250 PR libbacktrace/95012
251 * configure.ac: Check for getpagesize declaration.
252 * mmap.c: Declare getpagesize if necessary.
253 * mmapio.c: Likewise.
254 * configure: Regenerate.
255 * config.h.in: Regenerate.
256 * Makefile.in: Regenerate.
257
ef639420
ILT
2582020-05-09 Roland McGrath <mcgrathr@google.com>
259
260 * elf.c (elf_add): Bail early if there are no section headers at all.
261
8600440e
ILT
2622020-05-09 Ian Lance Taylor <iant@golang.org>
263
264 * elf.c (elf_add): Don't free strtab if an error occurs after
265 recording symbol information.
266
dea40c94
ILT
2672020-05-09 Ian Lance Taylor <iant@golang.org>
268
269 PR libbacktrace/88745
270 * macho.c: New file.
271 * filetype.awk: Recognize Mach-O files.
272 * Makefile.am (FORMAT_FILES): Add macho.c.
273 (check_DATA): New variable. Set to .dSYM if HAVE_DSYMUTIL.
274 (%.dSYM): New pattern target.
275 (test_macho_SOURCES, test_macho_CFLAGS): New targets.
276 (test_macho_LDADD): New target.
277 (BUILDTESTS): Add test_macho.
278 (macho.lo): Add dependencies.
279 * configure.ac: Recognize macho file type. Check for
280 mach-o/dyld.h. Don't try to run objcopy if we don't find it.
281 Look for dsymutil and define a HAVE_DSYMUTIL conditional.
282 * Makefile.in: Regenerate.
283 * configure: Regenerate.
284 * config.h.in: Regenerate.
285
4b26b138
ILT
2862020-05-09 Ian Lance Taylor <iant@golang.org>
287
288 * read.c (backtrace_get_view): Support short read.
289
31ae7b86
ILT
2902020-05-09 Ian Lance Taylor <iant@golang.org>
291
292 * elf.c (elf_add): If debug sections are very large or far apart,
293 read them individually rather than as a single view.
294
26135684
ILT
2952020-05-08 Ian Lance Taylor <iant@golang.org>
296
297 * fileline.c (sysctl_exec_name): New static function.
298 (sysctl_exec_name1): New macro or static function.
299 (sysctl_exec_name2): Likewise.
300 (fileline_initialize): Try sysctl_exec_name[12].
301 * configure.ac: Check for sysctl args to fetch executable name.
302 * configure: Regenerate.
303 * config.h.in: Regenerate.
304
9a3d019a
ILT
3052020-02-15 Ian Lance Taylor <iant@golang.org>
306
307 * ztest.c (test_large): Update file to current libgo test file.
308
628ee3c2
ILT
3092020-02-03 Ian Lance Taylor <iant@golang.org>
310
311 * Makefile.am (libbacktrace_TEST_CFLAGS): Define.
312 (test_elf32_CFLAGS): Use $(libbacktrace_test_CFLAGS).
313 (test_elf_64_CFLAGS, test_xcoff_32_CFLAGS): Likewise.
314 (test_xcoff_64_CFLAGS, test_pecoff_CFLAGS): Likewise.
315 (test_unknown_CFLAGS, unittest_CFLAGS): Likewise.
316 (unittest_alloc_CFLAGS, allocfail_CFLAGS): Likewise.
317 (b2test_CFLAGS, b3test_CFLAGS, btest_CFLAGS): Likewise.
318 (btest_lto_CFLAGS, btest_alloc_CFLAGS, stest_CFLAGS): Likewise.
319 (stest_alloc_CFLAGS): Likewise.
320 * Makefile.in: Regenerate.
321 * ztest.c (error_callback_compress): Mark vdata unused.
322 (test_large): Add casts to avoid warnings.
323
8d9254fc
JJ
3242020-01-01 Jakub Jelinek <jakub@redhat.com>
325
326 Update copyright years.
327
c926fd82
ILT
3282019-12-13 Ian Lance Taylor <iant@golang.org>
329
330 Add DWARF 5 support.
331 * dwarf.c (struct attr): Add val field.
332 (enum attr_val_encoding): Add ATTR_VAL_ADDDRESS_INDEX,
333 ATTR_VAL_STRING_INDEX, ATTR_VAL_RNGLISTS_INDEX.
334 (struct line_header): Add addrsize field.
335 (struct line_header_format): Define.
336 (struct unit): Add str_offsets_base, addr_base, and rnglists_base
337 fields.
338 (read_uint24): New static function.
339 (read_attribute): Add implicit_val parameter. Replace dwarf_str
340 and dwarf_str_size parameters with dwarf_sections parameter. Add
341 support for new DWARF 5 forms. Change all callers.
342 (resolve_string): New static function.
343 (resolve_addr_index): Likewise.
344 (read_abbrevs): Support DW_FORM_implicit_const.
345 (struct pcrange): Add lowpc_is_addr_index, highpc_is_addr_Index,
346 and ranges_is_index fields.
347 (update_pcrange): Support DWARF 5 encodings.
348 (add_high_low_range): New static function, split out of
349 add_ranges.
350 (add_ranges_from_ranges): Likewise.
351 (add_ranges_from_rnglists): New static function.
352 (add_ranges): Just call new helper functions.
353 (find_address_ranges): Use resolve_string for strings, after
354 reading all attributes. Handle new DWARF 5 attributes.
355 (build_address_map): Support DWARF 5 compilation units.
356 (read_v2_paths): New static function, split out of
357 read_line_header.
358 (read_lnct): New static function.
359 (read_line_header_format_entries): Likewise.
360 (read_line_header): Add ddata parameter. Support DWARF 5 line
361 headers. Call new helper functions. Change all callers.
362 (read_line_program): Use addrsize from line program header. Don't
363 special case directory index 0 for DWARF 5.
364 (read_referenced_name): Use resolve_string.
365 (read_function_entry): Handle DWARF 5 encodings. Use
366 resolve_string.
367 * internal.h (enum dwarf_section): Add DEBUG_ADDR,
368 DEBUG_STR_OFFSETS, DEBUG_LINE_STR, DEBUG_RNGLISTS.
369 * elf.c (dwarf_section_names): Add new section names.
370 * pecoff.c (dwarf_section_names): Likewise.
371 * xcoff.c (xcoff_add): Clear dwarf_sections before setting
372 fields.
373 * configure.ac: Define HAVE_DWARF5 automake conditional.
374 * Makefile.am (dwarf5_SOURCES): New variable if HAVE_DWARF5.
375 (dwarf5_CFLAGS, dwarf5_LDADD): Likewise.
376 (dwarf5_alloc_SOURCES, dwarf5_alloc_CFLAGS): Likewise.
377 (dwarf5_alloc_LDADD): Likewise.
378 (BUILDTESTS): Add dwarf5 tests if HAVE_DWARF5.
379 (CLEANFILES, clean-local): Define.
380
4b3fc188
ILT
3812019-12-08 Ian Lance Taylor <iant@golang.org>
382
383 * dwarf.c (struct pcrange): Define.
384 (update_pcrange, add_ranges): New static functions.
385 (add_unit_addr): Change signature to work with add_ranges. Don't
386 add base_address here.
387 (add_unit_ranges): Remove.
388 (find_address_ranges): Replace str/ranges parameters with
389 dwarf_sections. Use update_pcrange and add_ranges. Change all
390 callers.
391 (add_function_range): Change signature to work with add_ranges.
392 Don't add base_address here.
393 (add_function_ranges): Remove.
394 (read_function_entry): Use update_pcrange and add_ranges.
395
70bfe5a7
ILT
3962019-12-04 Ian Lance Taylor <iant@golang.org>
397
398 * edtest.c (test1): Add noclone attribute.
399
66ab5839
ILT
4002019-12-04 Ian Lance Taylor <iant@golang.org>
401
402 * internal.h (enum dwarf_section): Define.
403 (struct dwarf_sections): Define.
404 (backtrace_dwarf_add): Update declaration to replace specific
405 section parameters with dwarf_sections parameter.
406 * dwarf.c (struct dwarf_data): Replace specific section fields
407 with dwarf_sections field.
408 (read_attribute): Use dwarf_sections with altlink.
409 (build_address_map): Replace specific section parameters with
410 dwarf_sections parameter. Change all callers.
411 (read_line_info): Use dwarf_sections with ddata.
412 (read_referenced_name): Likewise.
413 (add_function_ranges): Likewise.
414 (read_function_entry): Likewise.
415 (read_function_info): Likewise.
416 (build_dwarf_data): Replace specific section parameters with
417 dwarf_sections parameter. Change all callers.
418 (backtrace_dwarf_add): Likewise.
419 * elf.c (enum debug_section): Remove.
420 (dwarf_section_names): Remove .zdebug names.
421 (elf_add): Track zsections separately. Build dwarf_sections.
422 * pecoff.c (enum debug_section): Remove.
423 (struct debug_section_info): Remove data field.
424 (coff_add): Build dwarf_sections.
425 * xcoff.c (enum dwarf_section): Remove. Replace DWSECT_xxx
426 references with DEBUG_xxx references.
427 (xcoff_add): Build dwarf_sections.
428
e9085da5
MR
4292019-09-27 Maciej W. Rozycki <macro@wdc.com>
430
431 * configure: Regenerate.
432
5fe5f75f
ILT
4332019-09-26 Ian Lance Taylor <iant@golang.org>
434
435 PR libbacktrace/91908
436 * pecoff.c (backtrace_initialize): Explicitly cast unchecked
437 __sync_bool_compare_and_swap to void.
438 * xcoff.c (backtrace_initialize): Likewise.
439
2f2aeda9
UW
4402019-09-03 Ulrich Weigand <uweigand@de.ibm.com>
441
442 * configure.ac: Remove references to spu.
443 * configure: Regenerate.
444
245254b8
CC
4452019-05-24 Clement Chigot <clement.chigot@atos.net>
446
447 * Makefile.am (BUILDTESTS): Remove test_elf, add test_elf_32 and
448 test_elf_64.
449 * Makefile.in: Regenerate.
450
ccd1242e
RO
4512019-05-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
452
453 * configure.ac (have_dl_iterate_phdr): Remove *-*-solaris2.10*
454 handling.
455 * configure: Regenerate.
456
7856fb45
ILT
4572019-03-11 Ian Lance Taylor <iant@golang.org>
458
459 PR libbacktrace/89669
460 * Makefile.am (BUILDTESTS): Only add ztest and ztest_alloc if
461 HAVE_ELF.
462 * Makefile.in: Regenerate.
463
067aef03
TV
4642019-02-26 Tom de Vries <tdevries@suse.de>
465
466 * btest.c (test5): Allow global.* as minimal symbol name for global.
467
d831b1ec
TV
4682019-02-26 Tom de Vries <tdevries@suse.de>
469
470 * Makefile.am (TESTS): Only add b3test_dwz_buildid if HAVE_DWZ.
471 * Makefile.in: Regenerate.
472
68641fb7
TV
4732019-02-12 Tom de Vries <tdevries@suse.de>
474
475 PR libbacktrace/81983
476 * dwarf.c (dwarf_lookup_pc): Don't call bsearch if nmemb == 0.
477
c51b2c8c
TV
4782019-02-10 Tom de Vries <tdevries@suse.de>
479
480 * Makefile.am (BUILDTESTS): Add btest_lto.
481 * Makefile.in: Regenerate.
482 * btest.c (test1, f2, f3, test3, f22, f23): Declare with
483 __attribute__((noclone)).
484
4af50e13
TV
4852019-02-08 Tom de Vries <tdevries@suse.de>
486
487 * backtrace.c (backtrace_full): Declare with __attribute__((noinline)).
488 * print.c (backtrace_print): Same.
489 * simple.c (backtrace_simple): Same.
490
2bd0a246
TV
4912019-02-08 Tom de Vries <tdevries@suse.de>
492
493 PR libbacktrace/78063
494 * dwarf.c (build_address_map): Keep all parsed units.
495 (read_referenced_name_from_attr): Handle DW_FORM_ref_addr.
496
3a3f5dd1
TV
4972019-01-31 Tom de Vries <tdevries@suse.de>
498
499 PR libbacktrace/89136
500 * elf.c (elf_add): Read build-id if with_buildid_data. Fix
501 'debugaltlink_name_len =+ 1'.
502
fddbc193
TV
5032019-01-29 Tom de Vries <tdevries@suse.de>
504
505 * install-debuginfo-for-buildid.sh.in: New script.
506 * Makefile.am (check_PROGRAMS): Add b2test and b3test.
507 (TESTS): Add b2test_buildid and b3test_dwz_buildid.
508 * Makefile.in: Regenerate.
509 * configure.ac (HAVE_ELF): Set with AM_CONDITIONAL.
510 (READELF): Set with AC_CHECK_PROG.
511 (install-debuginfo-for-buildid.sh): Generate with AC_CONFIG_FILES.
512 * configure: Regenerate.
513 * elf.c (SYSTEM_BUILD_ID_DIR): Factor out of ...
514 (elf_open_debugfile_by_buildid): ... here.
515
57f0d303
TV
5162019-01-29 Tom de Vries <tdevries@suse.de>
517
518 * Makefile.am: Replace check_PROGRAMS with BUILDTESTS, except for
519 allocfail.
520 (TESTS): Don't add check_PROGRAMS. Add BUILDTESTS.
521 (check_PROGRAMS): Add BUILDTESTS.
522 * Makefile.in: Regenerate.
523
62d4a355
TV
5242019-01-28 Tom de Vries <tdevries@suse.de>
525
526 * Makefile.am (xcoff_%.c): Generate sed result into temporary file.
527 Use $< to access prerequisite.
528 * Makefile.in: Regenerate.
529
4bfcd139
NS
5302019-01-25 Nathan Sidwell <nathan@acm.org>
531
532 * elf.c (elf_add): Pass "" filename to recursive call with
533 separated debug.
534
c75795fa
TV
5352019-01-25 Tom de Vries <tdevries@suse.de>
536
537 * elf.c (elf_add): When handling .gnu_debugaltlink, call elf_add with
538 filename == "".
539 * Makefile.am (TESTS): Add btest_dwz_gnudebuglink.
540 * Makefile.in: Regenerate.
541
37ab491d
TV
5422019-01-25 Tom de Vries <tdevries@suse.de>
543
544 * Makefile.am: Rewrite dtest rule into "%_gnudebuglink" pattern rule.
545 (TESTS): Rename dtest to btest_gnudebuglink.
546 * Makefile.in: Regenerate.
547
3f5d2012
TV
5482019-01-23 Tom de Vries <tdevries@suse.de>
549
550 * dwarf.c (struct unit): Use size_t for low_offset/high_offset fields.
551 (units_search, find_unit): Use size_t for offset.
552 (build_address_map): Use size_t for unit_offset.
553
5e2a7241
GP
5542019-01-20 Gerald Pfeifer <gerald@pfeifer.com>
555
556 * allocfail.c (main): Increase portability of printf statement.
557
8b248c17
ILT
5582019-01-18 Ian Lance Taylor <iant@golang.org>
559
560 PR libbacktrace/88890
561 * mmapio.c (backtrace_get_view): Change size parameter to
562 uint64_t. Check that value fits in size_t.
563 * read.c (backtrace_get_view): Likewise.
564 * internal.h (backtrace_get_view): Update declaration.
565 * elf.c (elf_add): Pass shstrhdr->sh_size to backtrace_get_view.
566
10f48858
TV
5672019-01-17 Tom de Vries <tdevries@suse.de>
568
569 PR libbacktrace/82857
570 * configure.ac (DWZ): Set with AC_CHECK_PROG.
571 (HAVE_DWZ): Set with AM_CONDITIONAL.
572 * configure: Regenerate.
573 * Makefile.am (TESTS): Add btest_dwz.
574 * Makefile.in: Regenerate.
575
1c2a9a37
TV
5762019-01-17 Tom de Vries <tdevries@suse.de>
577
578 PR libbacktrace/82857
579 * dwarf.c (enum attr_val_encoding): Add ATTR_VAL_REF_ALT_INFO.
580 (read_attribute): Handle DW_FORM_GNU_ref_alt using
581 ATTR_VAL_REF_ALT_INFO.
582 (read_referenced_name_from_attr): Handle DW_FORM_GNU_ref_alt.
583
9d576782
TV
5842019-01-17 Tom de Vries <tdevries@suse.de>
585
586 * dwarf.c (struct unit): Add low_offset and high_offset fields.
587 (struct unit_vector): New type.
588 (struct dwarf_data): Add units and units_counts fields.
589 (find_unit): New function.
590 (find_address_ranges): Add and handle unit_tag parameter.
591 (build_address_map): Add and handle units_vec parameter.
592 (build_dwarf_data): Pass units_vec to build_address_map. Store resulting
593 units vector.
594
f2f00d3a
TV
5952019-01-17 Tom de Vries <tdevries@suse.de>
596
597 PR libbacktrace/82857
598 * dwarf.c (read_attribute): Handle DW_FORM_GNU_strp_alt
599 using altlink.
600
944f59ff
TV
6012019-01-17 Tom de Vries <tdevries@suse.de>
602
603 * dwarf.c (enum attr_val_encoding): Add ATTR_VAL_NONE.
604 (read_attribute): Add altlink parameter. Handle missing altlink for
605 DW_FORM_GNU_strp_alt and DW_FORM_GNU_ref_alt.
606 (find_address_ranges, build_address_map, build_dwarf_data): Add and
607 handle altlink parameter.
608 (read_referenced_name, read_function_entry): Add argument to
609 read_attribute call.
610
9ad458d5
TV
6112019-01-17 Tom de Vries <tdevries@suse.de>
612
613 * dwarf.c (struct dwarf_data): Add altlink field.
614 (backtrace_dwarf_add): Add and handle fileline_altlink parameter.
615 * elf.c (elf_add): Add argument to backtrace_dwarf_add call.
616 (phdr_callback, backtrace_initialize): Add argument to elf_add calls.
617 * internal.h (backtrace_dwarf_add): Add fileline_altlink parameter.
618 * pecoff.c (coff_add): Add argument to backtrace_dwarf_add call.
619 * xcoff.c (xcoff_add): Same.
620
e6f00c83
TV
6212019-01-17 Tom de Vries <tdevries@suse.de>
622
623 * internal.h (backtrace_dwarf_add): Add fileline_entry parameter.
624 * dwarf.c (backtrace_dwarf_add): Add and handle fileline_entry parameter.
625 * elf.c (elf_add): Add and handle fileline_entry parameter. Add
626 argument to backtrace_dwarf_add call.
627 (phdr_callback, backtrace_initialize): Add argument to elf_add calls.
628 * pecoff.c (coff_add): Add argument to backtrace_dwarf_add call.
629 * xcoff.c (xcoff_add): Same.
630
a34c2a3d
TV
6312019-01-17 Tom de Vries <tdevries@suse.de>
632
633 * elf.c (elf_add): Add and handle with_buildid_data and
634 with_buildid_size parameters. Handle .gnu_debugaltlink section.
635 (phdr_callback, backtrace_initialize): Add arguments to elf_add calls.
636
07e1534f
TV
6372019-01-16 Tom de Vries <tdevries@suse.de>
638
639 * dwarf.c (read_referenced_name_from_attr): New function. Factor out
640 of ...
641 (read_referenced_name): ... here, and ...
642 (read_function_entry): ... here.
643
df1de064
TV
6442019-01-16 Tom de Vries <tdevries@suse.de>
645
646 * dwarf.c (read_referenced_name): Don't allow DW_AT_name to override any
647 name.
648 (read_function_entry): Same. Don't allow name found via
649 DW_AT_abstract_origin or case DW_AT_specification to override linkage
650 name.
651
67914693
SL
6522019-01-09 Sandra Loosemore <sandra@codesourcery.com>
653
654 PR other/16615
655
656 * backtrace.h: Mechanically replace "can not" with "cannot".
657
a5544970
JJ
6582019-01-01 Jakub Jelinek <jakub@redhat.com>
659
660 Update copyright years.
661
4b420b27
GP
6622018-12-29 Gerald Pfeifer <gerald@pfeifer.com>
663
664 * Makefile.am (xcoff_%.c): Use an actual newline instead of \n
665 in sed pattern.
666 * Makefile.in: Regenerate.
667
eb33bf0a
TV
6682018-12-28 Tom de Vries <tdevries@suse.de>
669
670 * dwarf.c (build_address_map): Reuse unused units.
671
d9aa0961
TV
6722018-12-28 Tom de Vries <tdevries@suse.de>
673
674 * dwarf.c (build_address_map): Simplify by removing local variable
675 abbrevs.
676
40b8d3b2
ILT
6772018-12-28 Ian Lance Taylor <iant@golang.org>
678 Tom de Vries <tdevries@suse.de>
679
680 PR libbacktrace/88063
681 * dwarf.c (free_unit_addrs_vector): Remove.
682 (build_address_map): Keep track of allocated units in vector. Free
683 allocated units and corresponding abbrevs upon failure. Remove now
684 redundant call to free_unit_addrs_vector. Free addrs vector upon
685 failure. Free allocated unit vector.
686
53a52133
TV
6872018-12-28 Tom de Vries <tdevries@suse.de>
688
689 * dwarf.c (build_address_map): Free addrs vector upon failure.
690
a37a52e5
TV
6912018-12-14 Tom de Vries <tdevries@suse.de>
692
693 PR testsuite/88491
694 * allocfail.sh: Remove "set -o pipefail".
695
d665cd9b
TV
6962018-12-12 Tom de Vries <tdevries@suse.de>
697
698 * Makefile.am (TESTS): Add allocfail.sh.
699 (check_PROGRAMS): Add allocfail.
700 * Makefile.in: Regenerate.
701 * instrumented_alloc.c: New file. Redefine malloc and realloc.
702 Include alloc.c.
703 * allocfail.c: New file.
704 * allocfail.sh: New file.
705
187b9e1d
TV
7062018-11-30 Tom de Vries <tdevries@suse.de>
707
708 * Makefile.am (check_PROGRAMS): Add test_elf, test_xcoff_32,
709 test_xcoff_64, test_pecoff and test_unknown.
710 * Makefile.in: Regenerate.
711 * test_format.c: New file.
712
9b7d1a97
TV
7132018-11-30 Tom de Vries <tdevries@suse.de>
714
715 * Makefile.am : Add _with_alloc version for each test in
716 check_PROGRAMS.
717 * Makefile.in: Regenerate.
718
518a3a21
TV
7192018-11-30 Tom de Vries <tdevries@suse.de>
720
721 * internal.h (backtrace_vector_free): New static inline fuction,
722 factored out of ...
723 * dwarf.c (read_line_info): ... here.
724
18c742b5
TV
7252018-11-28 Tom de Vries <tdevries@suse.de>
726
727 * dwarf.c (read_abbrevs): Fix handling of abbrevs->abbrevs allocation
728 failure.
729
6d760a01
TV
7302018-11-27 Tom de Vries <tdevries@suse.de>
731
732 * mmap.c (backtrace_vector_release): Same.
733 * unittest.c (test1): Add check.
734
0c155f24
TV
7352018-11-27 Tom de Vries <tdevries@suse.de>
736
737 * alloc.c (backtrace_vector_release): Handle vec->size == 0 using free
738 instead of realloc.
739 * Makefile.am (check_PROGRAMS): Add unittest.
740 * Makefile.in: Regenerate.
741 * unittest.c: New file.
742
292592c5
TV
7432018-11-22 Tom de Vries <tdevries@suse.de>
744
745 * dwarf.c (read_initial_length): Factor out of ...
746 (build_address_map, read_line_info): ... here.
747
17112570
TV
7482018-11-21 Tom de Vries <tdevries@suse.de>
749
750 * dwarf.c (read_string): Factor out of ...
751 (read_attribute, read_line_header, read_line_program): ... here.
752
22e05272
JM
7532018-10-31 Joseph Myers <joseph@codesourcery.com>
754
755 PR bootstrap/82856
756 * Makefile.am: Include multilib.am.
757 * configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
758 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
759
a2a86641
ILT
7602018-10-05 Ian Lance Taylor <iant@golang.org>
761
762 PR libbacktrace/87529
763 * backtrace.h: Document that backtrace_create_state should be
764 called only once.
765
2206fb89
IB
7662018-08-05 Iain Buclaw <ibuclaw@gdcproject.org>
767
768 * configure.ac: Move define of HAVE_ZLIB into check for -lz.
769 * Makefile.in: Regenerate.
770 * config.h.in: Likewise.
771 * configure: Likewise.
772
ca9a1314
TR
7732018-08-01 Tony Reix <tony.reix@atos.net>
774
775 * xcoff.c (struct xcoff_line, struct xcoff_line_vector): Remove.
776 (struct xcoff_func, struct xcoff_func_vector): New structs.
777 (xcoff_syminfo): Drop leading dot from symbol name.
778 (xcoff_line_compare, xcoff_line_search): Remove.
779 (xcoff_func_compare, xcoff_func_search): New static functions.
780 (xcoff_lookup_pc): Search function table.
781 (xcoff_add_line, xcoff_process_linenos): Remove.
782 (xcoff_initialize_fileline): Build function table.
783
1ac6620a
DK
7842018-06-21 Denis Khalikov <d.khalikov@partner.samsung.com>
785
786 PR other/86198
787 * elf.c (elf_add): Increase ".note.gnu.build-id" section size
788 checking up to 36 bytes.
789
7b47ecf2
L
7902018-04-24 H.J. Lu <hongjiu.lu@intel.com>
791
792 * configure: Regenerated.
793
a0e1df88
JJ
7942018-04-19 Jakub Jelinek <jakub@redhat.com>
795
796 * configure: Regenerated.
797
21070494
ILT
7982018-04-17 Ian Lance Taylor <iant@golang.org>
799
800 * backtrace.c: Revert last two changes. Don't call mmap
801 directly.
802
c36af1b4
ILT
8032018-04-17 Ian Lance Taylor <iant@golang.org>
804
805 * backtrace.c: Include backtrace-supported.h before checking
806 BACKTRACE_USES_MALLOC.
807
83a658ca
ILT
8082018-04-17 Ian Lance Taylor <iant@golang.org>
809
810 * backtrace.c (backtrace_full): When testing whether we can
811 allocate memory, call mmap directly, and munmap the memory.
812
c5c4b2ae
JJ
8132018-04-04 Jakub Jelinek <jakub@redhat.com>
814
815 PR other/85161
816 * elf.c (elf_zlib_fetch): Fix up predefined macro names in test for
817 big endian, only use 32-bit loads if endianity macros are predefined
818 and indicate big or little endian.
819
14e335ed
IT
8202018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
821
822 PR target/84148
823 * configure: Regenerate.
824
bcc23586
JJ
8252018-02-15 Jakub Jelinek <jakub@redhat.com>
826
827 PR other/82368
828 * elf.c (SHT_PROGBITS): Undefine and define.
829
da07141f
JJ
8302018-02-14 Jakub Jelinek <jakub@redhat.com>
831
832 PR other/82368
833 * elf.c (EM_PPC64, EF_PPC64_ABI): Undefine and define.
834 (struct elf_ppc64_opd_data): New type.
835 (elf_initialize_syminfo): Add opd argument, handle symbols
836 pointing into the PowerPC64 ELFv1 .opd section.
837 (elf_add): Read .opd section on PowerPC64 ELFv1, pass pointer
838 to structure with .opd data to elf_initialize_syminfo.
839
65d0b859
ILT
8402018-01-31 Ian Lance Taylor <iant@golang.org>
841
842 * elf.c (elf_add): Close descriptor if we use a debugfile.
843 * btest.c (check_open_files): New static function.
844 (main): Call check_open_files.
845
96f7c2a9
ILT
8462018-01-25 Ian Lance Taylor <iant@golang.org>
847
848 * elf.c (elf_open_debugfile_by_debuglink): Don't check CRC if the
849 desired CRC is zero.
850 (elf_add): Don't clear *found_sym and *found_dwarf if debuginfo.
851
a794e494
ILT
8522018-01-25 Ian Lance Taylor <iant@golang.org>
853
854 * pecoff.c (coff_add): Only release syms_view if it is valid.
855
45f3ab19
ILT
8562018-01-25 Ian Lance Taylor <iant@golang.org>
857
858 * pecoff.c (coff_add): Another memcpy -> coff_read4 fix.
859
017707ce
ILT
8602018-01-24 Ian Lance Taylor <iant@golang.org>
861
862 * pecoff.c (coff_add): Use coff_read4, not memcpy.
863
3fe3c7d7
ILT
8642018-01-24 Ian Lance Taylor <iant@golang.org>
865
866 PR other/68239
867 * mmap.c (backtrace_free_locked): Don't put more than 16 entries
868 on the free list.
869
47c699f5
TR
8702018-01-19 Tony Reix <tony.reix@atos.net>
871
872 * xcoff.c (xcoff_incl_compare): New function.
873 (xcoff_incl_search): New function.
874 (xcoff_process_linenos): Use bsearch to find include file.
875 (xcoff_initialize_fileline): Sort include file information.
876
566588f1
ILT
8772018-01-16 Ian Lance Taylor <iant@golang.org>
878
879 * elf.c (codes) [GENERATE_FIXED_HUFFMAN_TABLE]: Fix size to be
880 288.
881 (main) [GENERATE_FIXED_HUFFMAN_TABLE]: Pass 288 to
882 elf_zlib_inflate_table. Generate elf_zlib_default_dist_table.
883 (elf_zlib_default_table): Update.
884 (elf_zlib_default_dist_table): New static array.
885 (elf_zlib_inflate): Use elf_zlib_default_dist_table for dist table
886 for block type 1.
887 * ztest.c (struct zlib_test): Add uncompressed_len.
888 (tests): Initialize uncompressed_len field. Add new test case.
889 (test_samples): Use uncompressed_len field.
890
85ec4feb
JJ
8912018-01-03 Jakub Jelinek <jakub@redhat.com>
892
893 Update copyright years.
894
44685d37
IT
8952017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
896
897 * configure.ac: Add CET_FLAGS to EXTRA_FLAGS.
898 * aclocal.m4: Regenerate.
899 * Makefile.in: Likewise.
900 * configure: Likewise.
901
549d24e9
ILT
9022017-10-06 Ian Lance Taylor <iant@golang.org>
903
904 * ztest.c (test_large): Pass unsigned long *, not size_t *, to
905 zlib uncompress function.
906
a978e26b
ILT
9072017-10-05 Ian Lance Taylor <iant@golang.org>
908
909 * elf.c (elf_zlib_fetch): Change pval argument to uint64_t *.
910 Read a four byte integer.
911 (elf_zlib_inflate): Change val to uint64_t. Align pin to a 32-bit
912 boundary before ever calling elf_zlib_fetch.
913 * ztest.c (test_large): Simplify print statements a bit.
914
8398c1df
ILT
9152017-10-02 Ian Lance Taylor <iant@golang.org>
916
917 * ztest.c: #include <errno.h>.
918 (TEST_TIMING): Don't define, don't test.
919 (xclock_gettime, xclockid_t): Define if !HAVE_CLOCK_GETTIME.
920 (clockid_t, clock_gettime, CLOCK_REALTIME): Likewise.
921 (ZLIB_CLOCK_GETTIME_ARG): Define.
922 * configure.ac: Change clock_gettime_link to CLOCK_GETTIME_LINK.
923 * Makefile.am: Likewise.
924 * configure, Makefile.in: Rebuild.
925
dbc31f20
TS
9262017-10-02 Thomas Schwinge <thomas@codesourcery.com>
927
dd954c67
TS
928 PR other/67165
929 * Makefile.am: Append the content of clock_gettime_link to
930 ztest_LDADD.
931 * configure.ac: Test for the case that clock_gettime is in librt.
932 * Makefile.in: Regenerate.
933 * configure: Likewise.
934
dbc31f20
TS
935 PR other/67165
936 * configure.ac: Check for clock_gettime.
937 * config.h.in: Regenerate.
938 * configure: Likewise.
939 * ztest.c (average_time, test_large): Conditionalize test timing
940 on clock_gettime availability.
941
e90c74f5
TR
9422017-09-29 Tony Reix <tony.reix@atos.net>
943
944 * xcoff.c: Initial support for DWARF debug sections in XCOFF.
945 (STYP_DWARF, SSUBTYP_DW*): Define.
946 (enum dwarf_section): Define.
947 (struct dwsect_info): Define.
948 (xcoff_add): Look for DWARF sections, pass them to
949 backtrace_dwarf_add.
950
8da872d9
ILT
9512017-09-28 Ian Lance Taylor <iant@golang.org>
952
953 PR other/67165
954 * elf.c (__builtin_prefetch): Define if not __GNUC__.
955 (unlikely): Define.
956 (SHF_UNCOMPRESSED, ELFCOMPRESS_ZLIB): Define.
957 (b_elf_chdr): Define type.
958 (enum debug_section): Add ZDEBUG_xxx values.
959 (debug_section_names): Add names for new sections.
960 (struct debug_section_info): Add compressed field.
961 (elf_zlib_failed, elf_zlib_fetch): New static functions.
962 (HUFFMAN_TABLE_SIZE, HUFFMAN_VALUE_MASK): Define.
963 (HUFFMAN_BITS_SHIFT, HUFFMAN_BITS_MASK): Define.
964 (HUFFMAN_SECONDARY_SHIFT): Define.
965 (ZDEBUG_TABLE_SIZE): Define.
966 (ZDEBUG_TABLE_CODELEN_OFFSET, ZDEBUG_TABLE_WORK_OFFSET): Define.
967 (final_next_secondary): New static variable if
968 BACKTRACE_GENERATE_FIXED_HUFFMAN_TABLE.
969 (elf_zlib_inflate_table): New static function.
970 (BACKTRACE_GENERATE_FIXED_HUFFMAN_TABLE): If define, define main
971 function to produce fixed Huffman table.
972 (elf_zlib_default_table): New static variable.
973 (elf_zlib_inflate): New static function.
974 (elf_zlib_verify_checksum): Likewise.
975 (elf_zlib_inflate_and_verify): Likewise.
976 (elf_uncompress_zdebug): Likewise.
977 (elf_uncompress_chdr): Likewise.
978 (backtrace_uncompress_zdebug): New extern function.
979 (elf_add): Look for .zdebug sections and SHF_COMPRESSED debug
980 sections, and uncompress them.
981 * internal.h (backtrace_compress_zdebug): Declare.
982 * ztest.c: New file.
983 * configure.ac: Check for -lz and check whether the linker
984 supports --compress-debug-sections.
985 * Makefile.am (ztest_SOURCES): New variable.
986 (ztest_CFLAGS, ztest_LDADD): New variables.
987 (check_PROGRAMS): Add ztest.
988 (ctestg_SOURCES): New variable.
989 (ctestg_CFLAGS, ctestg_LDFLAGS, ctestg_LDADD): New variables.
990 (ctesta_SOURCES): New variable.
991 (ctesta_CFLAGS, ctesta_LDFLAGS, ctesta_LDADD): New variables.
992 (check_PROGRAMS): Add ctestg and ctesta.
993 * configure, config.h.in, Makefile.in: Rebuild.
994
8c2ea6b2
ILT
9952017-09-22 Ian Lance Taylor <iant@golang.org>
996
997 PR sanitizer/77631
998 * configure.ac: Check for lstat and readlink.
999 * elf.c (lstat, readlink): Provide dummy versions if real versions
1000 are not available.
1001 * configure, config.h.in: Rebuild.
1002
f0de4542
ILT
10032017-09-21 Ian Lance Taylor <iant@google.com>
1004
1005 PR go/82284
1006 * elf.c (backtrace_initialize): Set pd.exe_filename.
1007
9283471b
ILT
10082017-09-20 Ian Lance Taylor <iant@golang.org>
1009 Denis Khalikov <d.khalikov@partner.samsung.com>
1010
1011 PR sanitizer/77631
1012 Support for external debug info.
1013 * elf.c: Include <errno.h>, <sys/stat.h>, <unistd.h>.
1014 (S_ISLNK): Define if not defined.
1015 (xstrnlen): Define if strnlen is not available.
1016 (b_elf_note): Define type.
1017 (NT_GNU_BUILD_ID): Define macro.
1018 (elf_crc32, elf_crc32_file): New static functions.
1019 (elf_is_symlink, elf_readlink): New static functions.
1020 (elf_open_debugfile_by_buildid): New static function.
1021 (elf_try_debugfile): New static function.
1022 (elf_find_debugfile_by_debuglink): New static function.
1023 (elf_open_debugfile_by_debuglink): New static function.
1024 (elf_add): Add filename and debuginfo parameters. Adjust all
1025 callers. Look for external debug info notes, and try to fetch
1026 debug info from external file.
1027 (struct phdr_data): Add exe_filename field.
1028 (phdr_callback): Pass filename to elf_add.
1029 (backtrace_initialize): Add filename parameter.
1030 * internal.h (backtrace_initialize): Add filename parameter.
1031 * fileline.c (fileline_initialize): Pass filename to
1032 backtrace_initialize.
1033 * pecoff.c (fileline_initialize): Add unused filename parameter.
1034 * unknown.c (fileline_initialize): Likewise.
1035 * xcoff.c (fileline_initialize): Likewise.
1036 * configure.ac: Check for objcopy --add-gnu-debuglink.
1037 * Makefile.am (dtest): New test target.
1038 * configure, Makefile.in: Rebuild.
1039
29788f90
SE
10402017-09-12 Steve Ellcey <sellcey@cavium.com>
1041
1042 PR other/81096
1043 * Makefile.am (ttest_CFLAGS): Add $(AM_CFLAGS)
1044 * Makefile.in: Regenerate.
1045
917a804c
SE
10462017-09-12 Steve Ellcey <sellcey@cavium.com>
1047
1048 PR other/81096
1049 * libbacktrace/Makefile.in
1050 (HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ttest_CFLAGS): Add $(AM_CFLAGS)
1051
2e6af1b8
DE
10522017-08-02 David Edelsohn <dje.gcc@gmail.com>
1053
8a0e6224 1054 PR bootstrap/81638
2e6af1b8
DE
1055 * xcoff.c (xcoff_process_linenos): Initialize incl to NULL.
1056
afce7deb
TR
10572017-07-28 Tony Reix <tony.reix@atos.net>
1058
1059 * xcoff.c: Don't leak a file descriptor if an archive is malformed.
1060
cf311b03
RO
10612017-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1062
1063 * fileline.c (fileline_initialize): Print pid_t as long.
1064
7e2a8417
TR
10652017-07-26 Tony Reix <tony.reix@atos.net>
1066
1067 * configure.ac: Check for XCOFF32/XCOFF64. Check for loadquery.
1068 * filetype.awk: Separate AIX XCOFF32 and XCOFF64.
1069 * xcoff.c: Add support for AIX XCOFF32 and XCOFF64 formats.
1070 * configure, config.h.in: Regenerate.
1071
b3530b94
TR
10722017-07-21 Tony Reix <tony.reix@atos.net>
1073
1074 * filetype.awk: Add AIX XCOFF type detection.
1075 * configure.ac: Recognize xcoff format.
1076 * Makefile.am (FORMAT_FILES): Add xcoff.c.
1077 * fileline.c: Include <unistd.h>.
1078 (fileline_initialize): Add case for AIX procfs.
1079 * xcoff.c: New file.
1080 * configure, Makefile.in: Rebuild.
1081
e91a2ddc
RB
10822017-06-21 Richard Biener <rguenther@suse.de>
1083
1084 * configure.ac: Add AC_SYS_LARGEFILE.
1085 * config.h.in: Regenerate.
1086 * configure: Likewise.
1087
d1609a23
ILT
10882017-06-11 Ian Lance Taylor <iant@golang.org>
1089
1090 * elf.c (backtrace_initialize): Always set *fileline_fn.
1091 * ttest.c: New file.
1092 * btest.c: Move support functions into testlib.c. Change calls to
1093 check to pass file name.
1094 * testlib.c: New file, copied from (part of) btest.c.
1095 * testlib.h: New file, declarations for testlib.c.
1096 * edtest.c: Use testlib.h and testlib.c.
1097 * configure.ac: Test for -pthread, set HAVE_PTHREAD conditional.
1098 * Makefile.am (btest_SOURCES): Add testlib.c.
1099 (edtest_SOURCES): Likewise.
1100 (CHECK_PROGRAMS): Add ttest if HAVE_PTHREAD.
1101 (ttest_SOURCES, ttest_CFLAGS, ttest_LDADD): Define.
1102 * configure, Makefile.in: Rebuild.
1103
281161d1
TM
11042017-05-19 Than McIntosh <thanm@google.com>
1105
1106 * dwarf.c (free_line_header): Don't free dirs if dirs_count == 0.
1107 (read_line_header): Don't allocate dirs if dirs_count == 0.
1108 * edtest.c: New file.
1109 * edtest2.c: New file.
1110 * Makefile.am (edtest_SOURCES, edtest_LDADD): Define.
1111 (check_PROGRAMS): Add edtest.
1112 (edtest2_build.c, gen_edtest2_build): New targets.
1113 * Makefile.in: Rebuild.
1114
121eb024
ST
11152017-03-08 Sam Thursfield <sam.thursfield@codethink.co.uk>
1116
1117 * btest.c (test5): Replace #ifdef guard with 'unused' attribute
1118 to fix compile warning when BACKTRACE_SUPPORTED isn't defined.
1119
cbe34bb5
JJ
11202017-01-01 Jakub Jelinek <jakub@redhat.com>
1121
1122 Update copyright years.
1123
84c1b9d3
MK
11242016-11-15 Matthias Klose <doko@ubuntu.com>
1125
1126 * configure: Regenerate.
1127
84ebf639
CL
11282016-09-11 Carlos Liam <carlos@aarzee.me>
1129
1130 * all: Remove meaningless trailing whitespace.
1131
28644f75
UB
11322016-05-18 Uros Bizjak <ubizjak@gmail.com>
1133
1134 PR target/71161
1135 * elf.c (phdr_callback) [__i386__]: Add
1136 __attribute__((__force_align_arg_pointer__)).
1137
26ac52db
MO
11382016-03-02 Maxim Ostapenko <m.ostapenko@partner.samsung.com>
1139
1140 * elf.c (backtrace_initialize): Properly initialize elf_fileline_fn to
1141 avoid possible crash.
1142 (elf_add): Don't set *fileline_fn to elf_nodebug value in case of
1143 missing debug info anymore.
1144
09b08e17
JDA
11452016-02-06 John David Anglin <danglin@gcc.gnu.org>
1146
1147 * mmap.c (MAP_FAILED): Define if not defined.
1148
818ab71a
JJ
11492016-01-04 Jakub Jelinek <jakub@redhat.com>
1150
1151 Update copyright years.
1152
5b4bbc7d
AP
11532015-12-18 Andris Pavenis <andris.pavenis@iki.fi>
1154
28644f75
UB
1155 * configure.ac: Specify that DJGPP do not have mmap
1156 even when sys/mman.h exists.
5b4bbc7d
AP
1157 * configure: Regenerate
1158
2f401a8f
JDA
11592015-12-09 John David Anglin <danglin@gcc.gnu.org>
1160
28644f75 1161 PR libgfortran/68115
2f401a8f
JDA
1162 * configure.ac: Set libbacktrace_cv_sys_sync to no on hppa*-*-hpux*.
1163 * configure: Regenerate.
1164 * elf.c (backtrace_initialize): Cast __sync_bool_compare_and_swap call
1165 to void.
1166
750cdaf7
ILT
11672015-09-17 Ian Lance Taylor <iant@google.com>
1168
1169 * posix.c (backtrace_open): Cast second argument of open() to int.
1170
fc002444
ILT
11712015-09-11 Ian Lance Taylor <iant@google.com>
1172
1173 * Makefile.am (backtrace.lo): Depend on internal.h.
1174 (sort.lo, stest.lo): Add explicit dependencies.
1175 * Makefile.in: Rebuild.
1176
50809ff9
HPN
11772015-09-09 Hans-Peter Nilsson <hp@axis.com>
1178
1179 * backtrace.c: #include <sys/types.h>.
1180
c478516b
ILT
11812015-09-08 Ian Lance Taylor <iant@google.com>
1182
1183 PR other/67457
1184 * backtrace.c: #include "internal.h".
1185 (struct backtrace_data): Add can_alloc field.
1186 (unwind): If can_alloc is false, don't try to get file/line
1187 information.
1188 (backtrace_full): Set can_alloc field in bdata.
1189 * alloc.c (backtrace_alloc): Don't call error_callback if it is
1190 NULL.
1191 * mmap.c (backtrace_alloc): Likewise.
1192 * internal.h: Update comments for backtrace_alloc and
1193 backtrace_free.
1194
981d281f
ILT
11952015-09-08 Ian Lance Taylor <iant@google.com>
1196
1197 PR other/67457
1198 * mmap.c (backtrace_alloc): Correct test for mmap failure.
1199
8f5027bf
UW
12002015-08-31 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1201
1202 * configure.ac: For spu-*-* targets, set have_fcntl to no.
1203 * configure: Regenerate.
1204
7e5c7547
UW
12052015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1206
1207 * configure.ac: Remove [disable-shared] argument to LT_INIT.
1208 Remove setting PIC_FLAG when building as target library.
1209 * configure: Regenerate.
1210
7ce9cf39
HPN
12112015-08-26 Hans-Peter Nilsson <hp@axis.com>
1212
1213 * configure.ac: Only compile with -fPIC if the target
1214 supports it.
1215 * configure: Regenerate.
1216
1b533361
UW
12172015-08-24 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1218
1219 * configure.ac: Set have_mmap to no on spu-*-* targets.
1220 * configure: Regenerate.
1221
d96fa208
ILT
12222015-08-13 Ian Lance Taylor <iant@google.com>
1223
1224 * dwarf.c (read_function_entry): Add vec_inlined parameter.
1225 Change all callers.
1226
d99a7b4d
MS
12272015-06-11 Martin Sebor <msebor@redhat.com>
1228
1229 PR sanitizer/65479
1230 * dwarf.c (struct line): Add new field idx.
1231 (line_compare): Use it.
1232 (add_line): Set it.
1233 (read_line_info): Reset it.
1234
e24afc10
TG
12352015-05-29 Tristan Gingold <gingold@adacore.com>
1236
1237 * pecoff.c: New file.
1238 * Makefile.am (FORMAT_FILES): Add pecoff.c and dependencies.
1239 * Makefile.in: Regenerate.
1240 * filetype.awk: Detect pecoff.
1241 * configure.ac: Define BACKTRACE_SUPPORTS_DATA on elf platforms.
1242 Add pecoff.
1243 * btest.c (test5): Test enabled only if BACKTRACE_SUPPORTS_DATA is
1244 true.
1245 * backtrace-supported.h.in (BACKTRACE_SUPPORTS_DATA): Define.
1246 * configure: Regenerate.
1247 * pecoff.c: New file.
1248
df96c0f7
MH
12492015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
1250
1251 * Makefile.in: Regenerated with automake-1.11.6.
1252 * aclocal.m4: Likewise.
1253 * configure: Likewise.
1254
2b8fa469
MK
12552015-01-24 Matthias Klose <doko@ubuntu.com>
1256
1257 * configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
1258 * configure: Regenerate.
1259
5624e564
JJ
12602015-01-05 Jakub Jelinek <jakub@redhat.com>
1261
1262 Update copyright years.
1263
a699d672
L
12642014-11-21 H.J. Lu <hongjiu.lu@intel.com>
1265
1266 PR bootstrap/63784
1267 * configure: Regenerated.
1268
35485da9
DM
12692014-11-11 David Malcolm <dmalcolm@redhat.com>
1270
1271 * ChangeLog.jit: New.
1272
ebf6d33b
FXC
12732014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1274
1275 PR target/63610
1276 * configure: Regenerate.
1277
c96601d2
ILT
12782014-10-23 Ian Lance Taylor <iant@google.com>
1279
1280 * internal.h (backtrace_atomic_load_pointer) [no atomic or sync]:
1281 Fix to return void *.
1282
d573fd89
ILT
12832014-05-08 Ian Lance Taylor <iant@google.com>
1284
1285 * mmap.c (backtrace_free): If freeing a large aligned block of
1286 memory, call munmap rather than holding onto it.
1287 (backtrace_vector_grow): When growing a vector, double the number
1288 of pages requested. When releasing the old version of a grown
1289 vector, pass the correct size to backtrace_free.
1290
dbe20842
ILT
12912014-03-07 Ian Lance Taylor <iant@google.com>
1292
1293 * sort.c (backtrace_qsort): Use middle element as pivot.
1294
c5604b48
ILT
12952014-03-06 Ian Lance Taylor <iant@google.com>
1296
1297 * sort.c: New file.
1298 * stest.c: New file.
1299 * internal.h (backtrace_qsort): Declare.
1300 * dwarf.c (read_abbrevs): Call backtrace_qsort instead of qsort.
1301 (read_line_info, read_function_entry): Likewise.
1302 (read_function_info, build_dwarf_data): Likewise.
1303 * elf.c (elf_initialize_syminfo): Likewise.
1304 * Makefile.am (libbacktrace_la_SOURCES): Add sort.c.
1305 (stest_SOURCES, stest_LDADD): Define.
1306 (check_PROGRAMS): Add stest.
1307
63fefb4b
MDM
13082014-02-07 Misty De Meo <misty@brew.sh>
1309
1310 PR target/58710
1311 * configure.ac: Use AC_LINK_IFELSE in check for
1312 _Unwind_GetIPInfo.
1313 * configure: Regenerate.
1314
afeba5cb
RS
13152014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1316
1317 Update copyright years
1318
0284b52e
JJ
13192013-12-06 Jakub Jelinek <jakub@redhat.com>
1320
1321 * elf.c (ET_DYN): Undefine and define again.
1322 (elf_add): Add exe argument, if true and ehdr.e_type is ET_DYN,
1323 return early -1 without closing the descriptor.
1324 (struct phdr_data): Add exe_descriptor.
1325 (phdr_callback): If pd->exe_descriptor is not -1, for very first
1326 call if dlpi_name is NULL just call elf_add with the exe_descriptor,
1327 otherwise backtrace_close the exe_descriptor if not -1. Adjust
1328 call to elf_add.
1329 (backtrace_initialize): Adjust call to elf_add. If it returns
1330 -1, set pd.exe_descriptor to descriptor, otherwise set it to -1.
1331
bfd74f22
ILT
13322013-12-05 Ian Lance Taylor <iant@google.com>
1333
1334 * alloc.c (backtrace_vector_finish): Add error_callback and data
1335 parameters. Call backtrace_vector_release. Return address base.
1336 * mmap.c (backtrace_vector_finish): Add error_callback and data
1337 parameters. Return address base.
1338 * dwarf.c (read_function_info): Get new address base from
1339 backtrace_vector_finish.
1340 * internal.h (backtrace_vector_finish): Update declaration.
1341
b8ddd61b
ILT
13422013-11-27 Ian Lance Taylor <iant@google.com>
1343
1344 * dwarf.c (find_address_ranges): New static function, broken out
1345 of build_address_map.
1346 (build_address_map): Call it.
1347 * btest.c (check): Check for missing filename or function, rather
1348 than crashing.
1349 (f3): Check that enough frames were returned.
1350
64856e1e
JJ
13512013-11-19 Jakub Jelinek <jakub@redhat.com>
1352
1f96a712
JJ
1353 * backtrace.h (backtrace_syminfo_callback): Add symsize argument.
1354 * elf.c (elf_syminfo): Pass 0 or sym->size to the callback as
1355 last argument.
1356 * btest.c (struct symdata): Add size field.
1357 (callback_three): Add symsize argument. Copy it to the data->size
1358 field.
1359 (f23): Set symdata.size to 0.
1360 (test5): Likewise. If sizeof (int) > 1, lookup address of
1361 ((uintptr_t) &global) + 1. Verify symdata.val and symdata.size
1362 values.
1363
64856e1e
JJ
1364 * atomic.c: Include sys/types.h.
1365
49579c7e
ILT
13662013-11-18 Ian Lance Taylor <iant@google.com>
1367
1368 * configure.ac: Check for support of __atomic extensions.
1369 * internal.h: Declare or #define atomic functions for use in
1370 backtrace code.
1371 * atomic.c: New file.
1372 * dwarf.c (dwarf_lookup_pc): Use atomic functions.
1373 (dwarf_fileline, backtrace_dwarf_add): Likewise.
1374 * elf.c (elf_add_syminfo_data, elf_syminfo): Likewise.
1375 (backtrace_initialize): Likewise.
1376 * fileline.c (fileline_initialize): Likewise.
1377 * Makefile.am (libbacktrace_la_SOURCES): Add atomic.c.
1378 * configure, config.h.in, Makefile.in: Rebuild.
1379
582f5a2d
JJ
13802013-11-18 Jakub Jelinek <jakub@redhat.com>
1381
f1857815
JJ
1382 * elf.c (SHN_UNDEF): Define.
1383 (elf_initialize_syminfo): Add base_address argument. Ignore symbols
1384 with st_shndx == SHN_UNDEF. Add base_address to address fields.
1385 (elf_add): Adjust caller.
1386
582f5a2d
JJ
1387 * elf.c (phdr_callback): Process info->dlpi_addr == 0 normally.
1388
25e6253e
ILT
13892013-11-16 Ian Lance Taylor <iant@google.com>
1390
1391 * backtrace.h (backtrace_create_state): Correct comment about
1392 threading.
1393
cfa658e4
ILT
13942013-11-15 Ian Lance Taylor <iant@google.com>
1395
1396 * backtrace.h (backtrace_syminfo): Update comment and parameter
1397 name to take any address, not just a PC value.
1398 * elf.c (STT_OBJECT): Define.
1399 (elf_nosyms): Rename parameter pc to addr.
1400 (elf_symbol_search): Rename local variable pc to addr.
1401 (elf_initialize_syminfo): Add STT_OBJECT symbols to elf_symbols.
1402 (elf_syminfo): Rename parameter pc to addr.
1403 * btest.c (global): New global variable.
1404 (test5): New test.
1405 (main): Call test5.
1406
6c084a5b
ILT
14072013-10-17 Ian Lance Taylor <iant@google.com>
1408
1409 * elf.c (elf_add): Don't get the wrong offsets if a debug section
1410 is missing.
1411
459260ec
DM
14122013-10-15 David Malcolm <dmalcolm@redhat.com>
1413
1414 * configure.ac: Add --enable-host-shared, setting up
1415 pre-existing PIC_FLAG variable within Makefile.am et al.
1416 * configure: Regenerate.
1417
3cbe17f7
AM
14182013-09-20 Alan Modra <amodra@gmail.com>
1419
1420 * configure: Regenerate.
1421
78625ce6
AM
14222013-07-23 Alexander Monakov <amonakov@ispras.ru>
1423
1424 * elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
1425
0153887c
AM
14262013-07-23 Alexander Monakov <amonakov@ispras.ru>
1427
1428 * elf.c (backtrace_initialize): Pass elf_fileline_fn to
1429 dl_iterate_phdr callbacks.
1430
85d8c21e
ILT
14312013-03-25 Ian Lance Taylor <iant@google.com>
1432
1433 * alloc.c: #include <sys/types.h>.
1434 * mmap.c: Likewise.
1435
38811401
ILT
14362013-01-31 Ian Lance Taylor <iant@google.com>
1437
1438 * dwarf.c (read_function_info): Permit fvec parameter to be NULL.
1439 (dwarf_lookup_pc): Don't use ddata->fvec if threaded.
1440
1e678aed
JJ
14412013-01-25 Jakub Jelinek <jakub@redhat.com>
1442
1443 PR other/56076
1444 * dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir
1445 attribute was not seen.
1446
6b514c53
ILT
14472013-01-16 Ian Lance Taylor <iant@google.com>
1448
1449 * dwarf.c (struct unit): Add filename and abs_filename fields.
1450 (build_address_map): Set new fields when reading unit.
1451 (dwarf_lookup_pc): If we don't find an entry in the line table,
1452 just return the main file name.
1453
f8a7e1a4
RS
14542013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
1455
1456 Update copyright years.
1457
c3de1960
ILT
14582013-01-01 Ian Lance Taylor <iant@google.com>
1459
1460 PR bootstrap/54834
1461 * Makefile.am (AM_CPPFLAGS): Remove -I ../gcc/include and -I
1462 $(MULTIBUILDTOP)/../../gcc/include.
1463 * Makefile.in: Rebuild.
1464
2a5195d9
ILT
14652013-01-01 Ian Lance Taylor <iant@google.com>
1466
1467 PR other/55536
1468 * mmap.c (backtrace_alloc): Don't call sync functions if not
1469 threaded.
1470 (backtrace_free): Likewise.
1471
85619b6f
JDA
14722012-12-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1473
1474 * mmapio.c: Define MAP_FAILED if not defined.
1475
36a58fb3
JJ
14762012-12-11 Jakub Jelinek <jakub@redhat.com>
1477
1478 PR bootstrap/54926
1479 * Makefile.am (AM_CFLAGS): Remove -frandom-seed=$@.
1480 * configure.ac: If --with-target-subdir, add -frandom-seed=$@
1481 to EXTRA_FLAGS unconditionally, otherwise check whether the compiler
1482 accepts it.
1483 * Makefile.in: Regenerated.
1484 * configure: Regenerated.
1485
a58dfde0
JJ
14862012-12-07 Jakub Jelinek <jakub@redhat.com>
1487
1488 PR bootstrap/54926
1489 * Makefile.am (AM_CFLAGS): Add -frandom-seed=$@.
1490 * Makefile.in: Regenerated.
1491
b20ade36
ILT
14922012-11-20 Ian Lance Taylor <iant@google.com>
1493
1494 * dwarf.c (read_attribute): Always clear val.
1495
73c3ed27
ILT
14962012-11-13 Ian Lance Taylor <iant@google.com>
1497
1498 PR other/55312
1499 * configure.ac: Only add -Werror if building a target library.
2a5195d9 1500 * configure: Rebuild.
73c3ed27 1501
33521509
ILT
15022012-11-12 Ian Lance Taylor <iant@google.com>
1503 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1504 Gerald Pfeifer <gerald@pfeifer.com>
1505
1506 * configure.ac: Check for getexecname.
1507 * fileline.c: #include <errno.h>. Define getexecname if not
1508 available.
1509 (fileline_initialize): Try to find the executable in a few
1510 different ways.
1511 * print.c (error_callback): Only print the filename if it came
1512 from the backtrace state.
1513 * configure, config.h.in: Rebuild.
1514
8fe91dea
ILT
15152012-10-29 Ian Lance Taylor <iant@google.com>
1516
1517 * mmap.c (backtrace_vector_release): Correct last patch: add
1518 aligned, not size.
1519
8277de34
ILT
15202012-10-29 Ian Lance Taylor <iant@google.com>
1521
1522 * mmap.c (backtrace_vector_release): Make sure freed block is
1523 aligned on 8-byte boundary.
1524
73f41491
ILT
15252012-10-26 Ian Lance Taylor <iant@google.com>
1526
1527 PR other/55087
1528 * posix.c (backtrace_open): Add does_not_exist parameter.
1529 * elf.c (phdr_callback): Do not warn if shared library could not
1530 be opened.
1531 * fileline.c (fileline_initialize): Update calls to
1532 backtrace_open.
1533 * internal.h (backtrace_open): Update declaration.
1534
385710cf
JH
15352012-10-26 Jack Howarth <howarth@bromo.med.uc.edu>
1536
1537 PR target/55061
1538 * configure.ac: Check for _Unwind_GetIPInfo function declaration.
1539 * configure: Regenerate.
1540
32061319
ILT
15412012-10-24 Ian Lance Taylor <iant@google.com>
1542
1543 PR target/55061
1544 * configure.ac: Check whether -funwind-tables option works.
1545 * configure: Rebuild.
1546
5551b12c
ILT
15472012-10-11 Ian Lance Taylor <iant@google.com>
1548
1549 * configure.ac: Do not use dl_iterate_phdr on Solaris 10.
1550 * configure: Rebuild.
1551
40d15b5b
ILT
15522012-10-10 Ian Lance Taylor <iant@google.com>
1553
1554 * elf.c: Rename all Elf typedefs to start with b_elf, and be all
1555 lower case.
1556
74f80620
HPN
15572012-10-10 Hans-Peter Nilsson <hp@bitrange.com>
1558
1559 * elf.c (elf_add_syminfo_data): Add casts to avoid warning.
1560
ce8aa074
ILT
15612012-10-09 Ian Lance Taylor <iant@google.com>
1562
1563 * dwarf.c (dwarf_fileline): Add cast to avoid warning.
1564 (backtrace_dwarf_add): Likewise.
1565
e561a992
ILT
15662012-10-09 Ian Lance Taylor <iant@google.com>
1567
1568 Add support for tracing through shared libraries.
1569 * configure.ac: Check for link.h and dl_iterate_phdr.
1570 * elf.c: #include <link.h> if system has dl_iterate_phdr. #undef
1571 ELF macros before #defining them.
1572 (dl_phdr_info, dl_iterate_phdr): Define if system does not have
1573 dl_iterate_phdr.
1574 (struct elf_syminfo_data): Add next field.
1575 (elf_initialize_syminfo): Initialize next field.
1576 (elf_add_syminfo_data): New static function.
1577 (elf_add): New static function, broken out of
1578 backtrace_initialize. Call backtrace_dwarf_add instead of
1579 backtrace_dwarf_initialize.
1580 (struct phdr_data): Define.
1581 (phdr_callback): New static function.
1582 (backtrace_initialize): Call elf_add.
1583 * dwarf.c (struct dwarf_data): Add next and base_address fields.
1584 (add_unit_addr): Add base_address parameter. Change all callers.
1585 (add_unit_ranges, build_address_map): Likewise.
1586 (add_line): Add ddata parameter. Change all callers.
1587 (read_line_program, add_function_range): Likewise.
1588 (dwarf_lookup_pc): New static function, broken out of
1589 dwarf_fileline.
1590 (dwarf_fileline): Call dwarf_lookup_pc.
1591 (build_dwarf_data): New static function.
1592 (backtrace_dwarf_add): New function.
1593 (backtrace_dwarf_initialize): Remove.
1594 * internal.h (backtrace_dwarf_initialize): Don't declare.
1595 (backtrace_dwarf_add): Declare.
1596 * configure, config.h.in: Rebuild.
1597
068ef6d1
GP
15982012-10-04 Gerald Pfeifer <gerald@pfeifer.com>
1599
1600 * btest.c (f23): Avoid uninitialized variable warning.
e561a992 1601
244e2d9c
ILT
16022012-10-04 Ian Lance Taylor <iant@google.com>
1603
1604 * dwarf.c: If the system header files do not declare strnlen,
1605 provide our own version.
1606
be4ba8ae
ILT
16072012-10-03 Ian Lance Taylor <iant@google.com>
1608
1609 * dwarf.c (read_uleb128): Fix overflow test.
1610 (read_sleb128): Likewise.
1611 (build_address_map): Don't change unit_buf.start.
1612
56195009
UB
16132012-10-02 Uros Bizjak <ubizjak@gmail.com>
1614
faf86a02
UB
1615 PR other/54761
1616 * configure.ac (EXTRA_FLAGS): New.
56195009 1617 * Makefile.am (AM_FLAGS): Add $(EXTRA_FLAGS).
faf86a02 1618 * configure, Makefile.in: Regenerate.
56195009 1619
8a447b3d
ILT
16202012-09-29 Ian Lance Taylor <iant@google.com>
1621
1622 PR other/54749
1623 * fileline.c (fileline_initialize): Pass errnum as -1 when
1624 reporting that we could not read executable information after a
1625 previous failure.
1626
af710874
ILT
16272012-09-27 Ian Lance Taylor <iant@google.com>
1628
1629 PR bootstrap/54732
1630 * configure.ac: Add no-dependencies to AM_INIT_AUTOMAKE.
1631 * Makefile.am: Add dependencies for all objects.
1632 * configure, aclocal.m4, Makefile.in: Rebuild.
1633
588f4f8f
ILT
16342012-09-27 Ian Lance Taylor <iant@google.com>
1635
1636 PR other/54726
1637 * elf.c (backtrace_initialize): Set *fileln_fn, not
1638 state->fileln_fn.
1639
64b89453
ILT
16402012-09-19 Ian Lance Taylor <iant@google.com>
1641
1642 * configure.ac: Only use GCC_CHECK_UNWIND_GETIPINFO when compiled
1643 as a target library.
1644 * configure: Rebuild.
1645
76850556
RO
16462012-09-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1647 Ian Lance Taylor <iant@google.com>
1648
92a285c1
ML
1649 * configure.ac (GCC_HEADER_STDINT): Invoke.
1650 * backtrace.h: If we can't find <stdint.h>, use "gstdint.h".
1651 * btest.c: Don't include <stdint.h>.
1652 * dwarf.c: Likewise.
1653 * configure, aclocal.m4, Makefile.in, config.h.in: Rebuild.
76850556 1654
9425c00b
ILT
16552012-09-18 Ian Lance Taylor <iant@google.com>
1656
1657 PR bootstrap/54623
1658 * Makefile.am (AM_CPPFLAGS): Define.
1659 (AM_CFLAGS): Remove -I options.
1660 * Makefile.in: Rebuild.
1661
3319ef17
ILT
16622012-09-18 Ian Lance Taylor <iant@google.com>
1663
1664 * posix.c (O_BINARY): Define if not defined.
1665 (backtrace_open): Pass O_BINARY to open. Only call fcntl if
1666 HAVE_FCNTL is defined.
1667 * configure.ac: Test for the fcntl function.
1668 * configure, config.h.in: Rebuild.
1669
bd3e497d
ILT
16702012-09-18 Ian Lance Taylor <iant@google.com>
1671
1672 * btest.c (test1, test2, test3, test4): Add the unused attribute.
1673
30e15876
ILT
16742012-09-18 Ian Lance Taylor <iant@google.com>
1675
1676 * dwarf.c: Correct test of HAVE_DECL_STRNLEN.
1677
d4c059d5
ILT
16782012-09-18 Ian Lance Taylor <iant@google.com>
1679
1680 * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
1681 * mmapio.c: Don't define _GNU_SOURCE.
1682 * configure, config.h.in: Rebuild.
1683
772a71a9
ILT
16842012-09-18 Ian Lance Taylor <iant@google.com>
1685
1686 * configure.ac: Check whether strnlen is declared.
1687 * dwarf.c: Declare strnlen if not declared.
1688 * configure, config.h.in: Rebuild.
1689
c0558468
RO
16902012-09-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1691
1692 * fileline.c: Include <stdlib.h>.
1693 * mmap.c: Likewise.
1694
c5812e0b
ILT
16952012-09-17 Ian Lance Taylor <iant@google.com>
1696
1697 PR bootstrap/54611
1698 * nounwind.c (backtrace_full): Rename from backtrace. Add state
1699 parameter.
1700
e8f4008a
GP
17012012-09-17 Gerald Pfeifer <gerald@pfeifer.com>
1702
1703 PR bootstrap/54611
1704 * nounwind.c (backtrace_simple): Add state parameter.
1705
f588eb27
ILT
17062012-09-17 Ian Lance Taylor <iant@google.com>
1707
1708 PR bootstrap/54609
1709 * unknown.c (unknown_fileline): Add state parameter, remove
1710 fileline_data parameter, name error_callback parameter.
1711 (backtrace_initialize): Add state parameter.
1712
eff02e4f
ILT
17132012-09-17 Ian Lance Taylor <iant@google.com>
1714
1715 * Initial implementation.
818ab71a 1716\f
c48514be 1717Copyright (C) 2012-2021 Free Software Foundation, Inc.
818ab71a
JJ
1718
1719Copying and distribution of this file, with or without modification,
1720are permitted in any medium without royalty provided the copyright
1721notice and this notice are preserved.