blob: b74d26b09ae46a3e69f895ffa04e00421b9615b8 [file] [log] [blame]
Roland McGrath07d4f2f2005-10-28 06:56:24 +000012005-10-27 Roland McGrath <roland@redhat.com>
2
3 * dwarf_entry_breakpoints.c (search_range): Fix binary search code;
4 don't match end_sequence markers.
5
6 * dwarf_getsrclines.c (compare_lines): Sort end_sequence markers
7 before normal records at the same address.
8 * dwarf_getsrc_die.c (dwarf_getsrc_die): Don't match an end_sequence
9 marker.
10
112005-10-26 Roland McGrath <roland@redhat.com>
12
13 * dwarf_entry_breakpoints.c: Use the second line record within the
14 function, regardless of its source location data.
15
162005-10-25 Roland McGrath <roland@redhat.com>
17
18 * dwarf_entry_breakpoints.c: Fall back to entrypc for contiguous too.
19
20 * libdw.map: Add dwarf_entrypc, dwarf_entry_breakpoints.
21
222005-10-14 Roland McGrath <roland@redhat.com>
23
24 * dwarf_diecu.c (dwarf_diecu): New file.
25 * Makefile.am (libdw_a_SOURCES): Add it.
26 * libdw.h: Declare dwarf_diecu.
27 * libdw.map: Export it.
28
29 * libdw.map: Bump to 0.116; export dwarf_ranges.
30
312005-09-20 Roland McGrath <roland@redhat.com>
32
33 * dwarf_haspc.c: Use dwarf_ranges.
34 * dwarf_entry_breakpoints.c: Likewise.
35
36 * dwarf_ranges.c: New file.
37 * Makefile.am (libdw_a_SOURCES): Add it.
38 * libdw.h: Declare dwarf_ranges.
39 * libdwP.h: Add INTDECL.
40
412005-09-14 Roland McGrath <roland@redhat.com>
42
43 * dwarf_entry_breakpoints.c (dwarf_entry_breakpoints): Fix braino in
44 prologue_end marker scanning loop.
45
462005-09-11 Roland McGrath <roland@redhat.com>
47
48 * dwarf.h: Comment typo fix.
49
502005-09-07 Roland McGrath <roland@redhat.com>
51
52 * dwarf_entry_breakpoints.c: New file.
53 * Makefile.am (libdw_a_SOURCES): Add it.
54 * libdw.h: Declare dwarf_entry_breakpoints.
55
56 * dwarf_entrypc.c: New file.
57 * Makefile.am (libdw_a_SOURCES): Add it.
58 * libdw.h: Declare dwarf_entrypc.
59 * libdwP.h: Add INTDECL.
60
Ulrich Drepperfbe998a2005-08-29 16:27:10 +0000612005-08-28 Ulrich Drepper <drepper@redhat.com>
62
63 * Makefile.am: Use $(LINK) not $(CC) when creating DSO.
64 (%.os): Use COMPILE.os.
65 (COMPILE.os): Filter out gconv options.
66
Roland McGrath71e15a02005-08-27 10:33:26 +0000672005-08-27 Roland McGrath <roland@redhat.com>
68
69 * dwarf_getscopes.c (dwarf_getscopes): Rewritten using
70 __libdw_visit_scopes.
71
72 * dwarf_getscopes_die.c: New file.
73 * Makefile.am (libdw_a_SOURCES): Add it.
74 * libdw.h: Declare dwarf_getscopes_die.
75 * libdw.map: Bump to 0.115 and add it.
76
77 * libdw_visit_scopes.c (__libdw_visit_scopes): Pass a struct
78 containing a DIE and its parent pointer, instead of just Dwarf_Die.
79 Take two functions for both preorder and postorder visitors.
80 * libdwP.h: Update decl.
81 (struct Dwarf_Die_Chain): New type.
82 * dwarf_func_inline.c: Update uses.
83
84 * dwarf_diename.c (dwarf_diename): Use dwarf_attr_integrate.
85 Add INTDEF.
86 * libdwP.h: Add INTDECL.
87 * dwarf_func_name.c (dwarf_func_name): Use dwarf_diename.
88
Roland McGrathd17fac72005-08-23 08:20:21 +0000892005-08-23 Roland McGrath <roland@redhat.com>
90
91 * dwarf_attr_integrate.c (dwarf_attr_integrate): Treat
92 DW_AT_specification the same as DW_AT_abstract_origin.
93
942005-08-20 Roland McGrath <roland@redhat.com>
95
96 * libdw.map: Add dwfl_cumodule, remove dwfl_linecu.
97 Add dwfl_linux_kernel_report_offline, dwfl_offline_section_address,
98 and dwfl_report_offline.
99
1002005-08-19 Roland McGrath <roland@redhat.com>
101
102 * libdw.map: Bump version to ELFUTILS_0.114 for libdwfl changes.
103 Add dwfl_module_relocate_address, dwfl_module_relocations,
104 dwfl_module_relocation_info.
105
Roland McGrathf5fda7d2005-08-18 22:01:57 +00001062005-08-18 Roland McGrath <roland@redhat.com>
107
108 * dwarf_getscopes.c (dwarf_getscopes): Include the CU itself as
109 outermost scope in the results.
110
Roland McGrath1ecb6062005-08-15 09:53:04 +00001112005-08-15 Roland McGrath <roland@redhat.com>
112
113 * dwarf_func_inline.c: New file.
114 * Makefile.am (libdw_a_SOURCES): Add it.
115 * libdw.h: Declare dwarf_func_inline, dwarf_func_inline_instances.
116 * libdw.map: Add them.
117
118 * dwarf_func_die.c: New file.
119 * Makefile.am (libdw_a_SOURCES): Add it.
120 * libdw.h: Declare dwarf_func_die.
121 * libdw.map: Add it. Bump version to ELFUTILS_0.114.
122
Roland McGrath1c83bf12005-08-11 07:03:55 +00001232005-08-10 Ulrich Drepper <drepper@redhat.com>
Ulrich Drepper6d5c3bd2005-08-11 04:37:52 +0000124
Roland McGrath1c83bf12005-08-11 07:03:55 +0000125 * dwarf_getsrclines.c (dwarf_getsrclines): Correct fallout of renaming
126 of DW_LNS_set_epilog_begin.
Ulrich Drepper6d5c3bd2005-08-11 04:37:52 +0000127
Roland McGrath4959bf82005-08-09 10:31:08 +00001282005-08-09 Roland McGrath <roland@redhat.com>
129
Roland McGrathb6312e12005-08-09 10:36:01 +0000130 * dwarf.h (DW_LNS_set_epilog_begin): Renamed DW_LNS_set_epilogue_begin.
131
Roland McGrath4959bf82005-08-09 10:31:08 +0000132 * dwarf_end.c: Add INTDEF.
133 * dwarf_error.c (dwarf_errmsg): Likewise.
134 * libdwP.h (dwarf_end, dwarf_errmsg): Add INTDECLs.
135
Roland McGratha5a89682005-08-02 01:24:01 +00001362005-08-01 Roland McGrath <roland@redhat.com>
137
138 * dwarf_getaranges.c (dwarf_getaranges): Check for bogus offset.
139 * dwarf_getabbrev.c (__libdw_getabbrev): Likewise.
140
Ulrich Drepper18618fd2005-07-28 21:29:22 +00001412005-07-28 Ulrich Drepper <drepper@redhat.com>
142
143 * Makefile.am (libdw.so): No need to link with libeu.a anymore.
144 (libdw_a_LIBADD): Add all files from libdwfl.a.
145
Roland McGrath366784a2005-07-28 06:20:53 +00001462005-07-27 Roland McGrath <roland@redhat.com>
147
Roland McGrath18385902005-07-28 07:12:38 +0000148 * Makefile.am (libdw.so): Link ../libdwfl/libdwfl_pic.a in,
149 along with ../libebl/libebl.a and ../lib/libeu.a;
150 depend on ../libelf/libelf.so.
151 (libdw_so_LDADD): New variable.
152 * libdw.map: Add dwfl_* symbols formerly in ../libdwfl/libdwfl.map.
153
Roland McGrath366784a2005-07-28 06:20:53 +0000154 * libdw.map: Define an empty base version and move all symbols to
155 version ELFUTILS_0.111; don't define ELFUTILS_1.0 at all yet.
156
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00001572005-07-23 Ulrich Drepper <drepper@redhat.com>
158
159 * dwarf_error.c: Add internal alias for dwarf_errno.
160 * libdwP.h: Declare __dwarf_errno_internal.
161 * dwarf_getloclist.c: Use INTDEF for dwarf_errno.
162
163 * dwarf_error.c [USE_TLS]: Actually use __thread in definition of
164 global_error.
165
1662005-06-01 Roland McGrath <roland@redhat.com>
167
168 * dwarf_getaranges.c (dwarf_getaranges): Sort result array.
169 * dwarf_getarange_addr.c (dwarf_getarange_addr): Use binary search.
170
1712005-06-08 Roland McGrath <roland@redhat.com>
172
173 * memory-access.h (get_uleb128_step, get_uleb128): Remove casts.
174 (get_sleb128_step, get_sleb128): Likewise.
175 * dwarf_getattrs.c (dwarf_getattrs): Add consts.
176 * dwarf_getloclist.c (getloclist): Likewise.
177 * dwarf_formblock.c (dwarf_formblock): Likewise.
178 * dwarf_getsrclines.c (dwarf_getsrclines): Likewise.
179 * dwarf_getabbrevattr.c (dwarf_getabbrevattr): Likewise.
180 * dwarf_formref.c (dwarf_formref): Likewise.
181 * dwarf_formsdata.c (dwarf_formsdata): Likewise.
182 * dwarf_formudata.c (dwarf_formudata): Likewise.
183 * dwarf_haschildren.c (dwarf_haschildren): Likewise.
184 * dwarf_child.c (__libdw_find_attr, __libdw_find_attr): Likewise.
185 * dwarf_tag.c (dwarf_tag): Likewise.
186 * dwarf_getabbrev.c (__libdw_getabbrev): Likewise.
187 * memory-access.c (__libdw_get_uleb128, __libdw_get_sleb128): Likewise.
188 * libdw_form.c (__libdw_form_val_len): Likewise.
189 * libdwP.h: Update decl.
190
1912005-06-04 Roland McGrath <roland@redhat.com>
192
193 * memory-access.h (get_uleb128_rest_return): New macro.
194 [! IS_LIBDW] (__libdw_get_uleb128): New static, defined using it.
195 (get_sleb128_rest_return): New macro.
196 [! IS_LIBDW] (__libdw_get_sleb128): New static, defined using it.
197 * memory-access.c: New file.
198 * Makefile.am (libdw_a_SOURCES): Add it.
199 (DEFS): Add -DIS_LIBDW.
200
2012005-05-31 Roland McGrath <roland@redhat.com>
202
203 * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to
204 formref offset.
205
2062005-05-30 Roland McGrath <roland@redhat.com>
207
208 * dwarf_getloclist.c (dwarf_addrloclists): Use DW_AT_entry_pc for base
209 address if DW_AT_low_pc is missing. Not to spec, but GCC generates it.
210
211 * dwarf_getloclist.c (dwarf_addrloclists): Don't sign-extend 4-byte
212 BEGIN value. Instead, match base address entries separately for
213 32/64 size cases.
214
2152005-05-28 Roland McGrath <roland@redhat.com>
216
217 * dwarf_getloclist.c (dwarf_addrloclists): Fix decoding to advance
218 past location expression contents.
219
2202005-05-23 Roland McGrath <roland@redhat.com>
221
222 * dwarf_getsrclines.c: Comment typo fix.
223
224 * dwarf_haspc.c (dwarf_haspc): Fix CU DIE address calculation.
225 * dwarf_getloclist.c (dwarf_addrloclists): Likewise.
226
2272005-05-22 Ulrich Drepper <drepper@redhat.com>
228
229 * libdwP.h: Only use INTDECL for alias prototypes.
230
2312005-05-19 Roland McGrath <roland@redhat.com>
232
233 * dwarf_getloclist.c (attr_ok): Permit DW_AT_static_link too.
234
235 * dwarf_getscopevar.c: New file.
236 * Makefile.am (libdw_a_SOURCES): Add it.
237 * libdw.h: Declare dwarf_getscopevar.
238
239 * dwarf_getsrcfiles.c: Add INTDEF.
240 * dwarf_haschildren.c: Likewise.
241 * libdwP.h (dwarf_getsrcfiles, dwarf_haschildren): Add INTDECL.
242
243 * dwarf_getscopes.c: New file.
244 * Makefile.am (libdw_a_SOURCES): Add it.
245 * libdw.h: Declare dwarf_getscopes.
246 * libdw.map: Add it.
247
2482005-05-18 Roland McGrath <roland@redhat.com>
249
250 * libdwP.h (IDX_debug_ranges): New enum constant.
251 * dwarf_begin_elf.c (dwarf_scnnames): Add it for ".debug_ranges".
252 * libdwP.h (DWARF_E_NO_DEBUG_RANGES): New enum constant.
253 * dwarf_error.c (errmsgs): Add it.
254 * dwarf_haspc.c: New file.
255 * libdw.h: Declare dwarf_haspc.
256 * libdw.map: Add it.
257 * libdwP.h: Add INTDECL.
258
259 * dwarf_attr_integrate.c: New file.
260 * dwarf_hasattr_integrate.c: New file.
261 * Makefile.am (libdw_a_SOURCES): Add them.
262 * libdw.h: Declare dwarf_attr_integrate, dwarf_hasattr_integrate.
263 * libdw.map: Add them.
264
265 * dwarf_hasattr.c: Add INTDEF.
266 * libdwP.h: Add INTDECL for it.
267
268 * dwarf_formref_die.c: New file.
269 * Makefile.am (libdw_a_SOURCES): Add it.
270 * libdw.h (dwarf_formref_die): Declare it.
271 * libdwP.h (dwarf_formref_die): Add INTDECL.
272 * libdw.map: Add it.
273
274 * dwarf_getloclist.c (attr_ok, getloclist): New functions, broken out
275 of ...
276 (dwarf_getloclist): ... here. Call them.
277 (dwarf_addrloclists): New function.
278 * libdw.h: Declare it.
279 * libdw.map: Add it.
280
281 * dwarf_getmacros.c (dwarf_getmacros): Don't bail at
282 DW_MACINFO_end_file. Recognize type 0 as terminator.
283
2842005-05-05 Roland McGrath <roland@redhat.com>
285
286 * dwarf_getsrc_die.c (dwarf_getsrc_die): Use binary search.
287
288 * dwarf_getsrclines.c (dwarf_getsrclines): Sort result array, since
289 the line program does not produce all entries in ascending order.
290
2912005-04-25 Ulrich Drepper <drepper@redhat.com>
292
293 * dwarf_getsrc_file.c (dwarf_getsrc_file): Handle multiple
294 occurences (e.g., inlines) better.
295
2962005-04-24 Ulrich Drepper <drepper@redhat.com>
297
298 * libdw.h (DWARF_END_ABBREV): Define.
299 * dwarf_getabbrev.c (__libdw_getabbrev): Return DWARF_END_ABBREV if
300 end is reached.
301 * dwarf_offabbrev.c (dwarf_offabbrev): Return -1 on error, 1 if end
302 of records reached.
303 * dwarf_tag.c (__libdw_findabbrev): Also recognize DWARF_END_ABBREV
304 as error of __libdw_getabbrev.
305
3062005-04-04 Ulrich Drepper <drepper@redhat.com>
307
308 * dwarf_getsrc_file.c (dwarf_getsrc_file): Minor optimization.
309
310 * dwarf_getsrc_file.c (dwarf_getsrc_file): Always pass number of
311 results back to caller.
312
3132005-04-04 Roland McGrath <roland@redhat.com>
314
315 * dwarf_getsrc_file.c (dwarf_getsrc_file): Use size_t for CUHL.
316
317 * dwarf_func_line.c (__libdw_func_intval): Use internal_function in
318 defn.
319
3202005-04-04 Ulrich Drepper <drepper@redhat.com>
321
322 * dwarf_getsrc_file.c (dwarf_getsrc_file): Use INTUSE.
323
324 * dwarf_getsrc_file.c: New file.
325 * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrc_file.c.
326 * libdw.h: Declare dwarf_getsrc_file.
327 * libdw.map: Add dwarf_getsrc_file.
328
3292005-04-02 Ulrich Drepper <drepper@redhat.com>
330
331 * dwarf_func_entrypc.c: New file.
332 * dwarf_func_col.c: New file.
333 * dwarf_func_line.c: New file.
334 * dwarf_func_file.c: New file.
335 * libdw.h: Add prototypes for new functions.
336 * libdw.map: Add dwarf_func_entrypc, dwarf_func_col, dwarf_func_line,
337 dwarf_func_file.
338 * Makefile.am (libdw_a_SOURCES): Add dwarf_func_entrypc.c,
339 dwarf_func_col.c, dwarf_func_line.c, dwarf_func_file.c.
340 * libdwP.h (struct Dwarf_Func_s): Add cudie element.
341 Declare __libdw_func_intval and __dwarf_formsdata_internal.
342 * dwarf_getfuncs.c: Also fill in cudie in Dwarf_Func object.
343 * dwarf_formsdata.c: Use INTUSE and INTDEF to avoid PLTs.
344
345 * dwarf.h: Add some DWARF3 definitions.
346
3472005-04-01 Ulrich Drepper <drepper@redhat.com>
348
349 * dwarf_getfuncs.c: New file.
350 * dwarf_func_highpc.c: New file.
351 * dwarf_func_lowpc.c: New file.
352 * dwarf_func_name.c: New file.
353 * Makefile.am (libdw_a_SOURCES): Add dwarf_getfuncs.c,
354 dwarf_func_highpc.c, dwarf_func_lowpc.c, and dwarf_func_name.c.
355 * libdw.map: Add dwarf_getfuncs, dwarf_func_highpc, dwarf_func_lowpc,
356 and dwarf_func_name.
357 * libdw.h: Add prototypes for new functions.
358 * dwarf_child.c: Use INTUSE and INTDEF to avoid PLTs.
359 * dwarf_siblingof.c: Likewise.
360 * dwarf_dieoffset.c: Likewise.
361 * dwarf_highpc.c: Likewise.
362 * dwarf_lowpc.c: Likewise.
363 * libdwP.h: Add prototypes for internal functions.
364 Define Dwarf_Func_s structure.
365
3662005-03-29 Ulrich Drepper <drepper@redhat.com>
367
368 * libdw.h: Add padding in Dwarf_die.
369
370 * dwarf_arrayorder.c: Use INTUSE and INTDEF to avoid PLTs.
371 * dwarf_attr.c: Likewise.
372 * dwarf_begin.c: Likewise.
373 * dwarf_begin_elf.c: Likewise.
374 * dwarf_bitoffset.c: Likewise.
375 * dwarf_bitsize.c: Likewise.
376 * dwarf_bytesize.c: Likewise.
377 * dwarf_diename.c: Likewise.
378 * dwarf_formaddr.c: Likewise.
379 * dwarf_formblock.c: Likewise.
380 * dwarf_formref.c: Likewise.
381 * dwarf_formstring.c: Likewise.
382 * dwarf_formudata.c: Likewise.
383 * dwarf_getarange_addr.c: Likewise.
384 * dwarf_getarangeinfo.c: Likewise.
385 * dwarf_getaranges.c: Likewise.
386 * dwarf_getloclist.c: Likewise.
387 * dwarf_getmacros.c: Likewise.
388 * dwarf_getsrc_die.c: Likewise.
389 * dwarf_getsrcfiles.c: Likewise.
390 * dwarf_getsrclines.c: Likewise.
391 * dwarf_highpc.c: Likewise.
392 * dwarf_lowpc.c: Likewise.
393 * dwarf_nextcu.c: Likewise.
394 * dwarf_offdie.c: Likewise.
395 * dwarf_siblingof.c: Likewise.
396 * dwarf_srclang.c: Likewise.
397 * dwarf_tag.c: Likewise.
398 * libdw_findcu.c: Likewise.
399 * libdwP.h: Add prototypes for internal functions.
400
401 * dwarf_addrdie.c: New file.
402 * dwarf_macro_opcode.c: New file.
403 * dwarf_macro_param1.c: New file.
404 * dwarf_macro_param2.c: New file.
405 * libdw.h: Add declarations. Move Dwarf_Macro definition to libdwP.h.
406 * libdwP.h: Remove Dwarf_Macro definition.
407 * Makefile.am (libdw_a_SOURCES): Add dwarf_addrdie.c,
408 dwarf_macro_opcode.c, dwarf_macro_param1.c, and dwarf_macro_param2.c.
409 * libdw.map: Add entries for new functions.
410
4112005-03-21 Ulrich Drepper <drepper@redhat.com>
412
413 * libdw.h: Handle broken gcc < 4.
414
4152005-02-15 Ulrich Drepper <drepper@redhat.com>
416
417 * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
418
419 * dwarf_begin_elf.c: Fix warnings.
420 * dwarf_dieoffset.c: Likewise.
421 * dwarf_end.c: Likewise.
422 * dwarf_error.c: Likewise.
423 * dwarf_getpubnames.c: Likewise.
424
425 * libdwP.h: Add new error values.
426 * dwarf_error.c: Support new error values.
427 * dwarf_getpubnames.c: Check parameter value.
428
4292005-02-05 Ulrich Drepper <drepper@redhat.com>
430
431 * Makefile.am: Check for text relocations in constructed DSO.
432
433 * Makefile.am [MUDFLAP] (AM_CFLAGS): Add -fmudflap.
434
4352005-02-04 Ulrich Drepper <drepper@redhat.com>
436
437 * dwarf_siblingof.c (dwarf_siblingof): Add some buffer boundary
438 checks to not read over buffer boundaries for ill-formed DWARF data.
439
4402004-09-25 Ulrich Drepper <drepper@redhat.com>
441
442 * dwarf_child.c: Make compile with gcc 4.0.
443 * dwarf_error.c: Likewise.
444 * dwarf_formblock.c: Likewise.
445 * dwarf_getabbrev.c: Likewise.
446 * dwarf_getattrs.c: Likewise.
447 * dwarf_getsrclines.c: Likewise.
448 * dwarf_tag.c: Likewise.
449 * libdw_form.c: Likewise.
450
4512004-01-20 Ulrich Drepper <drepper@redhat.com>
452
453 * Makefile.am: Support building with mudflap.
454
455 * dwarf_getloclist.c: Fix warnings gcc 3.4 spits out.
456 * dwarf_getsrclines.c: Likewise.
457 * dwarf_memory-access.h: Likewise.
458
4592004-01-19 Ulrich Drepper <drepper@redhat.com>
460
461 * dwarf_getsrcfiles.c: Third parameter can be NULL.
462
463 * libdw.h: Define Dwarf_macro. Declare dwarf_getmacros.
464 Third parameter of dwarf_getsrcfiles can be NULL.
465
466 * libdw.map: Add dwarf_getmacros.
467 * Makefile.am (libdw_a_SOURCES): Add dwarf_getmacros.
468 * dwarf_getmacros.c: New file.
469
4702004-01-18 Ulrich Drepper <drepper@redhat.com>
471
472 * libdw.h: Second parameter of dwarf_getaranges can be NULL.
473
474 * dwarf_nextcu.c: Return -1 if dwarf parameter is NULL.
475
476 * dwarf_getsrclines.c:
477 Use read_2ubyte_unaligned_inc instead of _inc-less variant.
478
479 * dwarf_getaranges.c: Allow naranges parameter to be NULL.
480
481 * libdwP.h (_): Use elfutils domain.
482
483 * dwarf_getsrclines.c (dwarf_getsrclines): Add more branch prediction.
484
485 * dwarf_getsrclines.c: Fix typo in comment.
486
4872004-01-17 Ulrich Drepper <drepper@redhat.com>
488
489 * Makefile.am: Support building with mudflap.
490
4912004-01-16 Ulrich Drepper <drepper@redhat.com>
492
493 * memory-access.h: Add lots of const in case a pointer passed is const.
494
495 * dwarf_formflag.c: New file.
496 * dwarf_getattrs.c: New file.
497 * dwarf_error.c: Add new error value.
498 * libdw.h: Add prototypes for new functions. Adjust prototype for
499 dwarf_getpubnames.
500 * libdw.map: Add new functions.
501 * dwarf_getpubnames.c: Change type of return value and fourth parameter
502 to ptrdiff_t.
503 * libdwP.h: Add new error value.
504 * Makefile.am (libdw_a_SOURCES): Add dwarf_getattrs.c and
505 dwarf_formflag.c.
506
507 * dwarf_getpubnames.c (dwarf_getpubnames): Just fail if dbg is NULL.
508
5092004-01-12 Ulrich Drepper <drepper@redhat.com>
510
511 * dwarf_getarange_addr.c: New file
512 * dwarf_getarangeinfo.c: New file.
513 * dwarf_getaranges.c: New file.
514 * dwarf_onerange.c: New file.
515 * libdw.h: Declare new functions. Define Dwarf_Arange and
516 Dwarf_Aranges.
517 * libdw.map: Add new functions.
518 * libdwP.h: Add new errors. Add aranges member to struct Dwarf.
519 Define Dwarf_Aranges_s and Dwarf_Arange_s.
520 * Makefile.am (libdw_a_SOURCES): Add dwarf_getaranges.c,
521 dwarf_onearange.c, dwarf_getarangeinfo.c, dwarf_getarange_addr.c.
522 * dwarf_error.c: Add new message.
523
5242004-01-11 Ulrich Drepper <drepper@redhat.com>
525
526 * Makefile.am (libdw_a_SOURCES): Add dwarf_lineaddr.c, dwarf_linecol.c,
527 dwarf_linebeginstatement.c, dwarf_lineendsequence.c, dwarf_lineblock.c,
528 dwarf_lineprologueend.c, dwarf_lineepiloguebegin.c, dwarf_onesrcline.c.
529 * dwarf_error.c: Add another message.
530 * dwarf_getsrc_die.c: Adjust for Dwarf_Files and Dwarf_Lines
531 introduction.
532 * dwarf_filesrc.c: Likewise.
533 * dwarf_getsrcfiles.c: Likewise.
534 * dwarf_getsrclines.c: Likewise.
535 * dwarf_lineaddr.c: New file.
536 * dwarf_linebeginstatement.c: New file.
537 * dwarf_lineblock.c: New file.
538 * dwarf_linecol.c: New file.
539 * dwarf_lineendsequence.c: New file.
540 * dwarf_lineepiloguebegin.c: New file.
541 * dwarf_lineno.c: New file.
542 * dwarf_lineprologueend.c: New file.
543 * dwarf_onesrcline.c: New file.
544 * dwarf_lineno.c: Change interface to store result in object pointed
545 to by second parameter.
546 * libdw.h: Add prototypes for new functions. Change dwarf_lineno
547 prototype. Define Dwarf_Files and Dwarf_Lines.
548 * libdw.map: Add new functions.
549 * libdwP.h: Define Dwarf_Files_s and Dwarf_Lines_s.
550 * libdw_findcu.c: Don't initialize nlines field.
551
552 * dwarf_siblingof: Little optimization.
553
554 * dwarf_begin.c: Remember that the ELF descriptor must be closed.
555 * dwarf_end.c: Close ELF descriptor if free_elf is set.
556 * libdwP.h (struct Dwarf): Add free_elf field.
557
558 * Makefile.am (libdw_a_SOURCES): Add dwarf_getstring.c and
559 dwarf_offabbrev.c.
560 * dwarf_getstring.c: New file.
561 * dwarf_offabbrev.c: New file.
562 * libdw.map: Add dwarf_getstring and dwarf_offabbrev.
563 * dwarf_getabbrev.c (__libdw_getabbrev): Add new dbg and result
564 parameters. Don't allocate memory if not necessary and don't lookup
565 previous results if no CU given.
566 (dwarf_getabbrev): Adjust call to __libdw_getabbrev.
567 * dwarf_tag.c: Adjust call to __libdw_getabbrev.
568 * libdw.h: Declare dwarf_offabbrev and dwarf_getstring.
569 * libdwP.h: Change prototype for __libdw_getabbrev.
570
571 * dwarf_getabbrevattr.c: Add offsetp parameter. Fill in before
572 returning if this is wanted.
573
5742004-01-09 Ulrich Drepper <drepper@redhat.com>
575
576 * dwarf_nextcu.c: Add new parameter offset_sizep. Initialize it
577 with offset_size value.
578 * libdw.h: Adjust dwarf_nextcu prototype.
579 * libdwP.h (struct Dwarf_CU): Add offset_size member.
580 * libdw_findcu.c: Adjust dwarf_nextcu call. Initialize offset_size
581 member of new CU struct.
582 * dwarf_formstring.c: Depend on offset_size not address_size for
583 DW_FORM_strp handling.
584 * dwarf_form.c: Likewise for DW_FORM_strp and DW_FORM_ref_addr.
585
586 * dwarf_tag.c (__libdw_findabbrev): Return correct value for
587 failing lookup.
588 (dwarf_tag): Correctly recognize failed lookup.
589
590 * dwarf_end.c (cu_free): Call tdestroy for locs member. Use new
591 function noop_free.
592 * dwarf_error.c: Add message for DWARF_E_NO_BLOCK.
593 * dwarf_formblock.c: New file.
594 * dwarf_getloclist.c: Rewrite to handle a single block.
595 * libdw.h: Define Dwarf_Block. Rename Dwarf_Loc members. Remove
596 Dwarf_Locdesc definition. Declare dwarf_formblock. Remove
597 dwarf_getloclistent declaration.
598 * libdw.map: Add dwarf_formblock, remove dwarf_getloclistent.
599 * libdwP.h: Define struct loc_s and DWARF_E_NO_BLOCK.
600 Add locs member to struct Dwarf_CU.
601 * libdw_fundcu.c: Initialize locs member of new CU.
602 * Makefile.am (libdw_a_SOURCES): Add dwarf_formblock.c.
603 Remove dwarf_getloclistent.c.
604
6052004-01-07 Ulrich Drepper <drepper@redhat.com>
606
607 * libdw.h: Use __nonnull__ attribute only for gcc >= 3.3.
608 * libdwP.h: Likewise.
609
610 * dwarf_getloclist.c: New file.
611 * dwarf_getloclistent.c: New file.
612 * libdw.h: Define Dwarf_Loc and Dwarf_Locdesc.
613 Declare dwarf_getloclistent and dwarf_getloclist.
614 * libdw.map: Add dwarf_getloclistent and dwarf_getloclist.
615 * libdwP.h: Define DWARF_E_NO_LOCLIST.
616 * Makefile.am (libdw_a_SOURCES): Add dwarf_getloclistent.c and
617 dwarf_getloclist.c.
618
619 * dwarf_error.c: More error messages.
620
6212004-01-06 Ulrich Drepper <drepper@redhat.com>
622
623 * dwarf_getsrclines.c: Remove debugging support.
624
625 * dwarf_getsrcfiles.c: New file.
626 * dwarf_filesrc.c: New file.
627 * libdw.h: Declare these functions. Define Dwarf_File.
628 * libdwP.c: Adjust Dwarf_File_s definition.
629 * libdw.map: Add these functions.
630 * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrcfiles.c and
631 dwarf_filesrc.c.
632 * dwarf_getsrclines.c: Initialize cu->files.
633
6342004-01-05 Ulrich Drepper <drepper@redhat.com>
635
636 * libdw.h: Add more nonnull function attributes.
637
638 * dwarf_begin_elf.c (dwarf_begin_elf): Don't initialize mem_tail->next.
639 * dwarf_end.c (cu_free): New function.
640 (dwarf_end): Also free CU tree. Correct freeing of memory blocks.
641 * dwarf_error.c (errmsgs): Add new messages.
642 * dwarf_getsrc_die.c: New file.
643 * dwarf_getsrclines.c: New file.
644 * dwarf_lineno.c: New file.
645 * dwarf_linesrc.c: New file.
646 * dwarf_nextcu.c (dwarf_nextcu): Use read_*byte_unaligned_inc
647 instead of the *_inc-less variants.
648 * libdw.h: Define Dwarf_Line. Add some function attributes. Declare
649 dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno, and dwarf_linesrc.
650 * libdw.map: Add dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno,
651 and dwarf_linesrc.
652 * libdwP.h: Add more error codes.
653 (struct Dwarf): Remove mem_tail.next member.
654 (Dwarf_File): Define type.
655 (struct Dwarf_Line_s): Define type.
656 (struct Dwarf_CU): Add lines and nlines members.
657 (libdw_alloc): Define local variable _tail and use it.
658 Add some function attributes.
659 * libdw_alloc.c (__libdw_allocate): Don't initialize next member.
660 * libdw_findcu.c (__libdw_findcu): Initialize lines and nlines members.
661 * memory-access.h: Add unlikely for the endian conversion paths.
662 * Makefile.am (AM_CFLAGS): Add -std parameter.
663 (libdw_a_SOURCES): Add dwarf_getsrclines, dwarf_getsrc_die,
664 dwarf_lineno, and dwarf_linesrc.
665
6662003-08-11 Ulrich Drepper <drepper@redhat.com>
667
668 * Moved to CVS archive.