blob: eda753d342837f4f91bf17b0cbe07bff3b500147 [file] [log] [blame]
Roland McGrathbca43152009-01-05 23:59:32 -080012009-01-05 Roland McGrath <roland@redhat.com>
2
3 * Makefile.am (libdw.so): Link in $(zip_LIBS).
4
Roland McGrathb4d6f0f2008-08-25 22:55:17 +000052008-08-15 Roland McGrath <roland@redhat.com>
6
7 * libdw.map (ELFUTILS_0.136): New version set, inherits from
8 ELFUTILS_0.130. Add dwfl_addrsegment, dwfl_report_segment.
9
Ulrich Drepper8d358d92008-01-22 06:34:31 +0000102008-01-21 Ulrich Drepper <drepper@redhat.com>
11
12 * dwarf_child.c: Minor optimizations.
13 * dwarf_getattrs.c: Likewise.
14 * dwarf_getpubnames.c: Likewise.
15 * dwarf_siblingof.c: Likewise.
16 * dwarf_tag.c: Likewise.
17
Ulrich Drepperb27ce002008-01-18 20:08:54 +0000182008-01-18 Ulrich Drepper <drepper@redhat.com>
19
20 * dwarf_getsrclines.c (dwarf_getsrclines): Don't require exact match
21 of DWARF_VERSION comparison, just fail if the file's version is newer.
22
Ulrich Drepper35f08c42008-01-18 19:59:08 +0000232008-01-17 Nick Clifton <nickc@redhat.com>
24
25 * dwarf.h (DWARF3_LENGTH_MIN_ESCAPE_CODE): New define.
26 (DWARF3_LENGTH_MAX_ESCAPE_CODE): New define.
27 (DWARF3_LENGTH_64_BIT): New define.
28 * dwarf_getaranges (dwarf_getaranges): Use the new definitions.
29 * dwarf_getpubnames: Include dwarf.h.
30 (get_offsets): Use the new definitions.
31 * dwarf_getsrclines.c (dwarf_getsrclines): Use the new defintions.
32 * dwarf_nextcu.c: Include dwarf.h. Correct comment.
33 (dwarf_nextcu): Use the new definitions.
34
35 * libdwP.h (DIE_OFFSET_FROM_CU_OFFSET): New macro.
Ulrich Dreppera969d8e2008-01-22 06:15:00 +000036 * dwarf_diecu.c (dwarf_diecu): Use the new macro.
Ulrich Drepper35f08c42008-01-18 19:59:08 +000037 * dwarf_getaranges (dwarf_getaranges): Use the new macro.
38 * dwarf_nextcu.c (dwarf_nextcu): Use the new macro.
39
40 * dwarf_getpubnames (get_offsets): Replace assertion with test and
41 error return.
42
43 * dwarf_entry_breakpoints.c (dwarf_entry_breakpoints): Use CUDIE.
44
45 * dwarf_siblingof (dwarf_siblingof): Detect a NULL return pointer.
46 Set the address in the return structure to the address of the next
47 non-sibling die, if there is no sibling and the return pointer is
48 not the same as the die pointer.
49 * libdw.h: Expand the description of the dwarf_siblingof prototype.
50
51 * dwarf_child.c: Fix typo in comment.
52
53 * libdwP.h (DWARF_VERSION): Change to 3.
54
55 * dwarf_formref.c (__libdw_formref.c): Handle attributes which do
56 not have a initialised valp pointer.
57
58 * dwarf_getattrs.c (dwarf_getattrs): Return 1 rather than 0 when
59 the end of the attributes is reached. When the callback fails,
60 return the address of the failing attribute, not the address of
61 its successor.
62 * libdw.h: Expand the description of the dwarf_getattrs prototype.
63
64 * dwarf_child.c (__libdw_find_attr): Use the new definition.
65 (dwarf_child): Likewise.
66 * dwarf_tag.c (__libdw_findabbrev): Likewise.
67 (dwarf_tag): Likewise.
68
Ulrich Dreppere219f1c2008-01-09 05:49:49 +0000692008-01-08 Roland McGrath <roland@redhat.com>
70
71 * Makefile.am (euinclude): Variable removed.
72 (pkginclude_HEADERS): Set this instead of euinclude_HEADERS.
73 (libdw.so): Pass -Wl,--enable-new-dtags,-rpath,$(pkglibdir).
74
Roland McGrathe4c22ea2007-10-23 13:07:39 +0000752007-10-17 Roland McGrath <roland@redhat.com>
76
77 * libdw.h (__deprecated_attribute__): New macro.
78 (dwarf_formref): Mark it deprecated.
79 * dwarf_formref.c (__libdw_formref): New function, broken out of ...
80 (dwarf_formref): ... here. Call it. Remove INTDEF.
81 * libdwP.h: Remove INTDECL.
82 Declare __libdw_formref.
83 * dwarf_siblingof.c (dwarf_siblingof): Call __libdw_formref instead.
84 * dwarf_formref_die.c: Likewise. Handle DW_FORM_ref_addr here.
85
86 * libdw_form.c (__libdw_form_val_len): Fix DW_FORM_ref_addr result,
87 needs to check CU->version.
88
89 * libdwP.h (struct Dwarf_CU): New member `version'.
90 * libdw_findcu.c (__libdw_findcu): Initialize it.
91
92 * dwarf_child.c: Return 1 for null entry as first child.
93
Ulrich Drepperb597dfa2007-10-16 05:21:27 +0000942007-10-05 Roland McGrath <roland@redhat.com>
95
96 * dwarf_begin_elf.c (check_section): Punt on SHT_NOBITS sections.
97
98 * libdw.h (__extern_inline): Rename to __libdw_extern_inline.
99 [__OPTIMIZE__] (dwarf_whatattr, dwarf_whatform): Update uses.
100
Roland McGrath59ea7f32007-10-04 08:50:09 +00001012007-10-03 Roland McGrath <roland@redhat.com>
102
103 * libdw.map (ELFUTILS_0.130: Add dwfl_build_id_find_elf
104 and dwfl_build_id_find_debuginfo.
105
106 * libdw.map (ELFUTILS_0.130): New version set, inherits from
107 ELFUTILS_0.127. Add dwfl_module_build_id, dwfl_module_report_build_id.
108
Roland McGrath057ec6b2007-10-02 20:55:05 +00001092007-10-02 Roland McGrath <roland@redhat.com>
110
111 * libdw_visit_scopes.c (classify_die): Return walk for class_type and
112 structure_type.
113
Roland McGrathd1a48172007-08-07 19:51:01 +00001142007-08-07 Roland McGrath <roland@redhat.com>
115
116 * dwarf_getscopes.c (pc_match): Swallow dwarf_haspc error return when
117 error code is DWARF_E_NOERROR (0).
118
119 * dwarf_getscopes.c (pc_record): Always bail early if DIE->prune.
120 Fix typo in __libdw_visit_scopes argument.
121
122 * dwarf_getscopes.c (pc_match): Check dwarf_haspc error return,
123 swallow DWARF_E_NO_DEBUG_RANGES but not other errors.
124
Roland McGrath87d47802007-07-16 22:23:37 +00001252007-07-03 Roland McGrath <roland@redhat.com>
126
127 * libdw.h (__extern_inline): New macro.
128 [__OPTIMIZE__] (dwarf_whatattr, dwarf_whatform): Use it.
129
Roland McGrath43da9892007-04-16 23:13:37 +00001302007-04-16 Roland McGrath <roland@redhat.com>
131
132 * libdw.map (ELFUTILS_0.127): Add dwfl_module_address_section.
133
Roland McGrathbf2ee482007-04-05 09:27:36 +00001342007-04-05 Roland McGrath <roland@redhat.com>
135
Roland McGrath43da9892007-04-16 23:13:37 +0000136 * dwarf_getsrcdirs.c: New file.
137 * Makefile.am (libdw_a_SOURCES): Add it.
138 * libdw.h: Declare dwarf_getsrcdirs.
139 * libdw.map (ELFUTILS_0.127): Add it.
140
141 * libdwP.h (struct Dwarf_Files_s): New member ndirs.
142 * dwarf_getsrclines.c (dwarf_getsrclines): Don't clobber NDIRLIST to
143 zero before we use it to check for DWARF_E_INVALID_DIR_IDX.
144 Save DIRARRAY in the Dwarf_Files.
145
Roland McGrathbf2ee482007-04-05 09:27:36 +0000146 * dwarf_ranges.c (dwarf_ranges): Don't sign-extend 32-bit BEGIN
147 address to check for all-ones base address entry. Check directly.
148 Reported by Sébastien Dugué <sebastien.dugue@bull.net>.
149
Ulrich Drepperc07fbb32007-03-30 19:14:59 +00001502007-03-25 Roland McGrath <roland@redhat.com>
151
152 * dwarf_begin_elf.c (check_section): Return Dwarf * instead of void.
153 Return NULL when freeing RESULT on error.
154 (global_read, scngrp_read): Check return value from check_section,
155 break out of loop after it has freed RESULT.
156 (valid_p): Handle null argument.
157
Ulrich Drepper6258e742007-03-13 06:22:40 +00001582007-03-12 Roland McGrath <roland@redhat.com>
159
160 * libdw.map (ELFUTILS_0.127): Add dwfl_report_begin_add.
161
1622007-03-04 Roland McGrath <roland@redhat.com>
163
164 * libdw.map (ELFUTILS_0.127): New version set, inherits from
165 ELFUTILS_0.126. Add dwfl_module_addrsym.
166
Ulrich Drepper903c1162007-02-15 19:40:37 +00001672007-02-10 Roland McGrath <roland@redhat.com>
168
169 * dwarf.h (DW_OP_fbreg): Comment fix.
170
Ulrich Drepperaa915fd2007-02-05 07:25:33 +00001712007-02-03 Roland McGrath <roland@redhat.com>
172
173 * dwarf_getelf.c (dwarf_getelf): Renamed from dwarf_get_elf.
174 * libdw.map (ELFUTILS_0.126): New version set, inherits from
175 ELFUTILS_0.122. Move dwarf_getelf there; it was never truly
176 exported in the past.
177
Roland McGrath8190db62006-12-17 23:56:51 +00001782006-12-17 Roland McGrath <roland@redhat.com>
179
180 * dwarf_getlocation.c (dwarf_getlocation_addr): Use zero as base
181 address when the CU is missing attributes due to buggy GCC.
182
Roland McGrathc373d852006-10-10 00:25:21 +00001832006-08-29 Roland McGrath <roland@redhat.com>
184
185 * Makefile.am (CLEANFILES): Add libdw.so.$(VERSION).
186
187 * libdw.h (dwarf_diecu): Add __nonnull_attribute__.
188 (dwarf_child): Don't list arg 1 in __nonnull_attribute__.
189
190 * libdw_alloc.c (__libdw_allocate): Take new ALIGN argument, make sure
191 result is aligned. Adjust NEWP->remaining here for this allocation.
192 * libdwP.h: Update decl.
193 (libdw_alloc): Update caller.
194
Ulrich Drepper077c65f2006-07-12 19:54:51 +00001952006-07-12 Ulrich Drepper <drepper@redhat.com>
196
197 * dwarf_child.c: Adjust for internal_function_def removal.
198 * dwarf_getabbrev.c: Likewise.
199 * dwarf_tag.c: Likewise.
200 * libdw_form.c: Likewise.
201 * memory-access.c: Likewise.
202
Ulrich Dreppere1812e12006-07-12 07:46:03 +00002032006-06-28 Roland McGrath <roland@redhat.com>
204
205 * libdw.map: Export dwfl_linecu, dwfl_line_comp_dir.
206
207 * libdw.map: Bump to 0.122; export dwfl_module_getsymtab and
208 dwfl_module_getsym.
209
Ulrich Drepper3be74472006-05-27 18:15:40 +00002102006-05-27 Ulrich Drepper <drepper@redhat.com>
211
212 * libdw.h: Add extern "C".
213
Ulrich Dreppere7a73172006-05-22 18:16:45 +00002142006-05-22 Ulrich Drepper <drepper@redhat.com>
215
216 * dwarf_getaranges.c (dwarf_getaranges): Handle files without
217 aranges information.
218
Ulrich Drepper4f3d2a22006-05-22 01:30:56 +00002192006-05-21 Ulrich Drepper <drepper@redhat.com>
220
221 * libdw.h: Add nonnull attributes to dwarf_tag, dwarf_getattrs,
222 dwarf_haschildren.
223
Roland McGrath2dade662006-02-28 22:13:20 +00002242006-02-28 Roland McGrath <roland@redhat.com>
225
226 * dwarf.h: Add missing DW_ATE_*, DW_TAG_*, DW_LANG_*, DW_CFA_*,
227 DW_OP_* values, to match DWARF 3.0. Add new DW_DS_*, DW_END_*
228 values from DWARF 3.0.
229
Roland McGrath08333122006-02-27 04:54:26 +00002302006-02-22 Roland McGrath <roland@redhat.com>
231
232 * libdw.map: Bump to 0.120; export dwfl_version.
233
Roland McGrath50ffcbf2005-12-23 01:51:43 +00002342005-12-22 Roland McGrath <roland@redhat.com>
235
236 * libdw.map: Bump to 0.119; export dwfl_linux_proc_maps_report.
237
Roland McGrathdec3a242005-12-12 08:35:55 +00002382005-12-12 Roland McGrath <roland@redhat.com>
239
240 * dwarf_ranges.c: Copy CU base address-finding code from
241 dwarf_getlocation.
242
Roland McGrathf64a4422005-12-09 23:40:30 +00002432005-12-09 Roland McGrath <roland@redhat.com>
244
245 * dwarf_getlocation.c (dwarf_getlocation_addr): Add some unlikelys.
246 Delay CU base lookup until it's needed.
247 If CU base lookup fails with no error, flag invalid DWARF.
248
Roland McGrath994b4892005-12-05 22:46:21 +00002492005-11-25 Roland McGrath <roland@redhat.com>
250
251 * libdw.map: Bump to 0.118; export dwfl_module_register_names.
252
Roland McGrathe47ab762005-11-17 03:16:00 +00002532005-11-15 Roland McGrath <roland@redhat.com>
254
255 * Makefile.am [BUILD_STATIC] (AM_CFLAGS): Add -fpic.
256
2572005-11-13 Roland McGrath <roland@redhat.com>
258
259 * libdw.map: Bump to 0.117; export dwfl_module_return_value_location.
260
Roland McGrath07d4f2f2005-10-28 06:56:24 +00002612005-10-27 Roland McGrath <roland@redhat.com>
262
263 * dwarf_entry_breakpoints.c (search_range): Fix binary search code;
264 don't match end_sequence markers.
265
266 * dwarf_getsrclines.c (compare_lines): Sort end_sequence markers
267 before normal records at the same address.
268 * dwarf_getsrc_die.c (dwarf_getsrc_die): Don't match an end_sequence
269 marker.
270
2712005-10-26 Roland McGrath <roland@redhat.com>
272
Roland McGrath6724c902005-10-28 07:07:19 +0000273 * dwarf_getfuncs.c (dwarf_getfuncs): Use Dwarf_Die, not Dwarf_Func.
274 * dwarf_func_file.c: Renamed to ...
275 * dwarf_decl_file.c: ... here.
276 * dwarf_func_col.c: Renamed to ...
277 * dwarf_decl_column.c: ... here.
278 * dwarf_func_line.c: Renamed to ...
279 * dwarf_decl_line.c: ... here.
280 (dwarf_func_line): Renamed to ...
281 (dwarf_decl_line): ... this. Take a Dwarf_Die * argument.
282 (__libdw_func_intval): Renamed __libdw_attr_intval.
283 * dwarf_func_name.c: File removed.
284 * dwarf_func_lowpc.c: File removed.
285 * dwarf_func_highpc.c: File removed.
286 * dwarf_func_entrypc.c: File removed.
287 * dwarf_func_die.c: File removed.
288 * Makefile.am (libdw_a_SOURCES): Updated.
289 * libdw.h: Update decls.
290 (Dwarf_Func): Type removed.
291 * libdwP.h: Update decls.
292 (struct Dwarf_Func_s): Type removed.
293 * libdw.map: Updated.
294
295 * libdwP.h (CUDIE): New macro.
296 * dwarf_getlocation.c (dwarf_getlocation_addr): Use it.
297 * dwarf_getscopes_die.c (dwarf_getscopes_die): Likewise.
298 * dwarf_ranges.c (dwarf_ranges): Likewise.
299
300 * dwarf_getloclist.c: Renamed to ...
301 * dwarf_getlocation.c: ... here.
302 (getloclist): Renamed to getlocation.
303 (dwarf_getloclist): Renamed to dwarf_getlocation.
304 (dwarf_addrloclists): Renamed to dwarf_getlocation_addr.
305 * Makefile.am (libdw_a_SOURCES): Updated.
306 * libdw.h (dwarf_getloclist): Renamed to dwarf_getlocation.
307 (dwarf_addrloclists): Renamed dwarf_getlocation_addr.
308 (Dwarf_Loc): Renamed Dwarf_Op.
309 * libdwP.h (struct loc_s): Update use.
310 * libdw.map: Update map.
311
Roland McGrath07d4f2f2005-10-28 06:56:24 +0000312 * dwarf_entry_breakpoints.c: Use the second line record within the
313 function, regardless of its source location data.
314
3152005-10-25 Roland McGrath <roland@redhat.com>
316
317 * dwarf_entry_breakpoints.c: Fall back to entrypc for contiguous too.
318
319 * libdw.map: Add dwarf_entrypc, dwarf_entry_breakpoints.
320
3212005-10-14 Roland McGrath <roland@redhat.com>
322
323 * dwarf_diecu.c (dwarf_diecu): New file.
324 * Makefile.am (libdw_a_SOURCES): Add it.
325 * libdw.h: Declare dwarf_diecu.
326 * libdw.map: Export it.
327
328 * libdw.map: Bump to 0.116; export dwarf_ranges.
329
3302005-09-20 Roland McGrath <roland@redhat.com>
331
332 * dwarf_haspc.c: Use dwarf_ranges.
333 * dwarf_entry_breakpoints.c: Likewise.
334
335 * dwarf_ranges.c: New file.
336 * Makefile.am (libdw_a_SOURCES): Add it.
337 * libdw.h: Declare dwarf_ranges.
338 * libdwP.h: Add INTDECL.
339
3402005-09-14 Roland McGrath <roland@redhat.com>
341
342 * dwarf_entry_breakpoints.c (dwarf_entry_breakpoints): Fix braino in
343 prologue_end marker scanning loop.
344
3452005-09-11 Roland McGrath <roland@redhat.com>
346
347 * dwarf.h: Comment typo fix.
348
3492005-09-07 Roland McGrath <roland@redhat.com>
350
351 * dwarf_entry_breakpoints.c: New file.
352 * Makefile.am (libdw_a_SOURCES): Add it.
353 * libdw.h: Declare dwarf_entry_breakpoints.
354
355 * dwarf_entrypc.c: New file.
356 * Makefile.am (libdw_a_SOURCES): Add it.
357 * libdw.h: Declare dwarf_entrypc.
358 * libdwP.h: Add INTDECL.
359
Ulrich Drepperfbe998a2005-08-29 16:27:10 +00003602005-08-28 Ulrich Drepper <drepper@redhat.com>
361
362 * Makefile.am: Use $(LINK) not $(CC) when creating DSO.
363 (%.os): Use COMPILE.os.
364 (COMPILE.os): Filter out gconv options.
365
Roland McGrath71e15a02005-08-27 10:33:26 +00003662005-08-27 Roland McGrath <roland@redhat.com>
367
368 * dwarf_getscopes.c (dwarf_getscopes): Rewritten using
369 __libdw_visit_scopes.
370
371 * dwarf_getscopes_die.c: New file.
372 * Makefile.am (libdw_a_SOURCES): Add it.
373 * libdw.h: Declare dwarf_getscopes_die.
374 * libdw.map: Bump to 0.115 and add it.
375
376 * libdw_visit_scopes.c (__libdw_visit_scopes): Pass a struct
377 containing a DIE and its parent pointer, instead of just Dwarf_Die.
378 Take two functions for both preorder and postorder visitors.
379 * libdwP.h: Update decl.
380 (struct Dwarf_Die_Chain): New type.
381 * dwarf_func_inline.c: Update uses.
382
383 * dwarf_diename.c (dwarf_diename): Use dwarf_attr_integrate.
384 Add INTDEF.
385 * libdwP.h: Add INTDECL.
386 * dwarf_func_name.c (dwarf_func_name): Use dwarf_diename.
387
Roland McGrathd17fac72005-08-23 08:20:21 +00003882005-08-23 Roland McGrath <roland@redhat.com>
389
390 * dwarf_attr_integrate.c (dwarf_attr_integrate): Treat
391 DW_AT_specification the same as DW_AT_abstract_origin.
392
3932005-08-20 Roland McGrath <roland@redhat.com>
394
395 * libdw.map: Add dwfl_cumodule, remove dwfl_linecu.
396 Add dwfl_linux_kernel_report_offline, dwfl_offline_section_address,
397 and dwfl_report_offline.
398
3992005-08-19 Roland McGrath <roland@redhat.com>
400
401 * libdw.map: Bump version to ELFUTILS_0.114 for libdwfl changes.
402 Add dwfl_module_relocate_address, dwfl_module_relocations,
403 dwfl_module_relocation_info.
404
Roland McGrathf5fda7d2005-08-18 22:01:57 +00004052005-08-18 Roland McGrath <roland@redhat.com>
406
407 * dwarf_getscopes.c (dwarf_getscopes): Include the CU itself as
408 outermost scope in the results.
409
Roland McGrath1ecb6062005-08-15 09:53:04 +00004102005-08-15 Roland McGrath <roland@redhat.com>
411
412 * dwarf_func_inline.c: New file.
413 * Makefile.am (libdw_a_SOURCES): Add it.
414 * libdw.h: Declare dwarf_func_inline, dwarf_func_inline_instances.
415 * libdw.map: Add them.
416
417 * dwarf_func_die.c: New file.
418 * Makefile.am (libdw_a_SOURCES): Add it.
419 * libdw.h: Declare dwarf_func_die.
420 * libdw.map: Add it. Bump version to ELFUTILS_0.114.
421
Roland McGrath1c83bf12005-08-11 07:03:55 +00004222005-08-10 Ulrich Drepper <drepper@redhat.com>
Ulrich Drepper6d5c3bd2005-08-11 04:37:52 +0000423
Roland McGrath1c83bf12005-08-11 07:03:55 +0000424 * dwarf_getsrclines.c (dwarf_getsrclines): Correct fallout of renaming
425 of DW_LNS_set_epilog_begin.
Ulrich Drepper6d5c3bd2005-08-11 04:37:52 +0000426
Roland McGrath4959bf82005-08-09 10:31:08 +00004272005-08-09 Roland McGrath <roland@redhat.com>
428
Roland McGrathb6312e12005-08-09 10:36:01 +0000429 * dwarf.h (DW_LNS_set_epilog_begin): Renamed DW_LNS_set_epilogue_begin.
430
Roland McGrath4959bf82005-08-09 10:31:08 +0000431 * dwarf_end.c: Add INTDEF.
432 * dwarf_error.c (dwarf_errmsg): Likewise.
433 * libdwP.h (dwarf_end, dwarf_errmsg): Add INTDECLs.
434
Roland McGratha5a89682005-08-02 01:24:01 +00004352005-08-01 Roland McGrath <roland@redhat.com>
436
437 * dwarf_getaranges.c (dwarf_getaranges): Check for bogus offset.
438 * dwarf_getabbrev.c (__libdw_getabbrev): Likewise.
439
Ulrich Drepper18618fd2005-07-28 21:29:22 +00004402005-07-28 Ulrich Drepper <drepper@redhat.com>
441
442 * Makefile.am (libdw.so): No need to link with libeu.a anymore.
443 (libdw_a_LIBADD): Add all files from libdwfl.a.
444
Roland McGrath366784a2005-07-28 06:20:53 +00004452005-07-27 Roland McGrath <roland@redhat.com>
446
Roland McGrath18385902005-07-28 07:12:38 +0000447 * Makefile.am (libdw.so): Link ../libdwfl/libdwfl_pic.a in,
448 along with ../libebl/libebl.a and ../lib/libeu.a;
449 depend on ../libelf/libelf.so.
450 (libdw_so_LDADD): New variable.
451 * libdw.map: Add dwfl_* symbols formerly in ../libdwfl/libdwfl.map.
452
Roland McGrath366784a2005-07-28 06:20:53 +0000453 * libdw.map: Define an empty base version and move all symbols to
454 version ELFUTILS_0.111; don't define ELFUTILS_1.0 at all yet.
455
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00004562005-07-23 Ulrich Drepper <drepper@redhat.com>
457
458 * dwarf_error.c: Add internal alias for dwarf_errno.
459 * libdwP.h: Declare __dwarf_errno_internal.
460 * dwarf_getloclist.c: Use INTDEF for dwarf_errno.
461
462 * dwarf_error.c [USE_TLS]: Actually use __thread in definition of
463 global_error.
464
4652005-06-01 Roland McGrath <roland@redhat.com>
466
467 * dwarf_getaranges.c (dwarf_getaranges): Sort result array.
468 * dwarf_getarange_addr.c (dwarf_getarange_addr): Use binary search.
469
4702005-06-08 Roland McGrath <roland@redhat.com>
471
472 * memory-access.h (get_uleb128_step, get_uleb128): Remove casts.
473 (get_sleb128_step, get_sleb128): Likewise.
474 * dwarf_getattrs.c (dwarf_getattrs): Add consts.
475 * dwarf_getloclist.c (getloclist): Likewise.
476 * dwarf_formblock.c (dwarf_formblock): Likewise.
477 * dwarf_getsrclines.c (dwarf_getsrclines): Likewise.
478 * dwarf_getabbrevattr.c (dwarf_getabbrevattr): Likewise.
479 * dwarf_formref.c (dwarf_formref): Likewise.
480 * dwarf_formsdata.c (dwarf_formsdata): Likewise.
481 * dwarf_formudata.c (dwarf_formudata): Likewise.
482 * dwarf_haschildren.c (dwarf_haschildren): Likewise.
483 * dwarf_child.c (__libdw_find_attr, __libdw_find_attr): Likewise.
484 * dwarf_tag.c (dwarf_tag): Likewise.
485 * dwarf_getabbrev.c (__libdw_getabbrev): Likewise.
486 * memory-access.c (__libdw_get_uleb128, __libdw_get_sleb128): Likewise.
487 * libdw_form.c (__libdw_form_val_len): Likewise.
488 * libdwP.h: Update decl.
489
4902005-06-04 Roland McGrath <roland@redhat.com>
491
492 * memory-access.h (get_uleb128_rest_return): New macro.
493 [! IS_LIBDW] (__libdw_get_uleb128): New static, defined using it.
494 (get_sleb128_rest_return): New macro.
495 [! IS_LIBDW] (__libdw_get_sleb128): New static, defined using it.
496 * memory-access.c: New file.
497 * Makefile.am (libdw_a_SOURCES): Add it.
498 (DEFS): Add -DIS_LIBDW.
499
5002005-05-31 Roland McGrath <roland@redhat.com>
501
502 * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to
503 formref offset.
504
5052005-05-30 Roland McGrath <roland@redhat.com>
506
507 * dwarf_getloclist.c (dwarf_addrloclists): Use DW_AT_entry_pc for base
508 address if DW_AT_low_pc is missing. Not to spec, but GCC generates it.
509
510 * dwarf_getloclist.c (dwarf_addrloclists): Don't sign-extend 4-byte
511 BEGIN value. Instead, match base address entries separately for
512 32/64 size cases.
513
5142005-05-28 Roland McGrath <roland@redhat.com>
515
516 * dwarf_getloclist.c (dwarf_addrloclists): Fix decoding to advance
517 past location expression contents.
518
5192005-05-23 Roland McGrath <roland@redhat.com>
520
521 * dwarf_getsrclines.c: Comment typo fix.
522
523 * dwarf_haspc.c (dwarf_haspc): Fix CU DIE address calculation.
524 * dwarf_getloclist.c (dwarf_addrloclists): Likewise.
525
5262005-05-22 Ulrich Drepper <drepper@redhat.com>
527
528 * libdwP.h: Only use INTDECL for alias prototypes.
529
5302005-05-19 Roland McGrath <roland@redhat.com>
531
532 * dwarf_getloclist.c (attr_ok): Permit DW_AT_static_link too.
533
534 * dwarf_getscopevar.c: New file.
535 * Makefile.am (libdw_a_SOURCES): Add it.
536 * libdw.h: Declare dwarf_getscopevar.
537
538 * dwarf_getsrcfiles.c: Add INTDEF.
539 * dwarf_haschildren.c: Likewise.
540 * libdwP.h (dwarf_getsrcfiles, dwarf_haschildren): Add INTDECL.
541
542 * dwarf_getscopes.c: New file.
543 * Makefile.am (libdw_a_SOURCES): Add it.
544 * libdw.h: Declare dwarf_getscopes.
545 * libdw.map: Add it.
546
5472005-05-18 Roland McGrath <roland@redhat.com>
548
549 * libdwP.h (IDX_debug_ranges): New enum constant.
550 * dwarf_begin_elf.c (dwarf_scnnames): Add it for ".debug_ranges".
551 * libdwP.h (DWARF_E_NO_DEBUG_RANGES): New enum constant.
552 * dwarf_error.c (errmsgs): Add it.
553 * dwarf_haspc.c: New file.
554 * libdw.h: Declare dwarf_haspc.
555 * libdw.map: Add it.
556 * libdwP.h: Add INTDECL.
557
558 * dwarf_attr_integrate.c: New file.
559 * dwarf_hasattr_integrate.c: New file.
560 * Makefile.am (libdw_a_SOURCES): Add them.
561 * libdw.h: Declare dwarf_attr_integrate, dwarf_hasattr_integrate.
562 * libdw.map: Add them.
563
564 * dwarf_hasattr.c: Add INTDEF.
565 * libdwP.h: Add INTDECL for it.
566
567 * dwarf_formref_die.c: New file.
568 * Makefile.am (libdw_a_SOURCES): Add it.
569 * libdw.h (dwarf_formref_die): Declare it.
570 * libdwP.h (dwarf_formref_die): Add INTDECL.
571 * libdw.map: Add it.
572
573 * dwarf_getloclist.c (attr_ok, getloclist): New functions, broken out
574 of ...
575 (dwarf_getloclist): ... here. Call them.
576 (dwarf_addrloclists): New function.
577 * libdw.h: Declare it.
578 * libdw.map: Add it.
579
580 * dwarf_getmacros.c (dwarf_getmacros): Don't bail at
581 DW_MACINFO_end_file. Recognize type 0 as terminator.
582
5832005-05-05 Roland McGrath <roland@redhat.com>
584
585 * dwarf_getsrc_die.c (dwarf_getsrc_die): Use binary search.
586
587 * dwarf_getsrclines.c (dwarf_getsrclines): Sort result array, since
588 the line program does not produce all entries in ascending order.
589
5902005-04-25 Ulrich Drepper <drepper@redhat.com>
591
592 * dwarf_getsrc_file.c (dwarf_getsrc_file): Handle multiple
593 occurences (e.g., inlines) better.
594
5952005-04-24 Ulrich Drepper <drepper@redhat.com>
596
597 * libdw.h (DWARF_END_ABBREV): Define.
598 * dwarf_getabbrev.c (__libdw_getabbrev): Return DWARF_END_ABBREV if
599 end is reached.
600 * dwarf_offabbrev.c (dwarf_offabbrev): Return -1 on error, 1 if end
601 of records reached.
602 * dwarf_tag.c (__libdw_findabbrev): Also recognize DWARF_END_ABBREV
603 as error of __libdw_getabbrev.
604
6052005-04-04 Ulrich Drepper <drepper@redhat.com>
606
607 * dwarf_getsrc_file.c (dwarf_getsrc_file): Minor optimization.
608
609 * dwarf_getsrc_file.c (dwarf_getsrc_file): Always pass number of
610 results back to caller.
611
6122005-04-04 Roland McGrath <roland@redhat.com>
613
614 * dwarf_getsrc_file.c (dwarf_getsrc_file): Use size_t for CUHL.
615
616 * dwarf_func_line.c (__libdw_func_intval): Use internal_function in
617 defn.
618
6192005-04-04 Ulrich Drepper <drepper@redhat.com>
620
621 * dwarf_getsrc_file.c (dwarf_getsrc_file): Use INTUSE.
622
623 * dwarf_getsrc_file.c: New file.
624 * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrc_file.c.
625 * libdw.h: Declare dwarf_getsrc_file.
626 * libdw.map: Add dwarf_getsrc_file.
627
6282005-04-02 Ulrich Drepper <drepper@redhat.com>
629
630 * dwarf_func_entrypc.c: New file.
631 * dwarf_func_col.c: New file.
632 * dwarf_func_line.c: New file.
633 * dwarf_func_file.c: New file.
634 * libdw.h: Add prototypes for new functions.
635 * libdw.map: Add dwarf_func_entrypc, dwarf_func_col, dwarf_func_line,
636 dwarf_func_file.
637 * Makefile.am (libdw_a_SOURCES): Add dwarf_func_entrypc.c,
638 dwarf_func_col.c, dwarf_func_line.c, dwarf_func_file.c.
639 * libdwP.h (struct Dwarf_Func_s): Add cudie element.
640 Declare __libdw_func_intval and __dwarf_formsdata_internal.
641 * dwarf_getfuncs.c: Also fill in cudie in Dwarf_Func object.
642 * dwarf_formsdata.c: Use INTUSE and INTDEF to avoid PLTs.
643
644 * dwarf.h: Add some DWARF3 definitions.
645
6462005-04-01 Ulrich Drepper <drepper@redhat.com>
647
648 * dwarf_getfuncs.c: New file.
649 * dwarf_func_highpc.c: New file.
650 * dwarf_func_lowpc.c: New file.
651 * dwarf_func_name.c: New file.
652 * Makefile.am (libdw_a_SOURCES): Add dwarf_getfuncs.c,
653 dwarf_func_highpc.c, dwarf_func_lowpc.c, and dwarf_func_name.c.
654 * libdw.map: Add dwarf_getfuncs, dwarf_func_highpc, dwarf_func_lowpc,
655 and dwarf_func_name.
656 * libdw.h: Add prototypes for new functions.
657 * dwarf_child.c: Use INTUSE and INTDEF to avoid PLTs.
658 * dwarf_siblingof.c: Likewise.
659 * dwarf_dieoffset.c: Likewise.
660 * dwarf_highpc.c: Likewise.
661 * dwarf_lowpc.c: Likewise.
662 * libdwP.h: Add prototypes for internal functions.
663 Define Dwarf_Func_s structure.
664
6652005-03-29 Ulrich Drepper <drepper@redhat.com>
666
667 * libdw.h: Add padding in Dwarf_die.
668
669 * dwarf_arrayorder.c: Use INTUSE and INTDEF to avoid PLTs.
670 * dwarf_attr.c: Likewise.
671 * dwarf_begin.c: Likewise.
672 * dwarf_begin_elf.c: Likewise.
673 * dwarf_bitoffset.c: Likewise.
674 * dwarf_bitsize.c: Likewise.
675 * dwarf_bytesize.c: Likewise.
676 * dwarf_diename.c: Likewise.
677 * dwarf_formaddr.c: Likewise.
678 * dwarf_formblock.c: Likewise.
679 * dwarf_formref.c: Likewise.
680 * dwarf_formstring.c: Likewise.
681 * dwarf_formudata.c: Likewise.
682 * dwarf_getarange_addr.c: Likewise.
683 * dwarf_getarangeinfo.c: Likewise.
684 * dwarf_getaranges.c: Likewise.
685 * dwarf_getloclist.c: Likewise.
686 * dwarf_getmacros.c: Likewise.
687 * dwarf_getsrc_die.c: Likewise.
688 * dwarf_getsrcfiles.c: Likewise.
689 * dwarf_getsrclines.c: Likewise.
690 * dwarf_highpc.c: Likewise.
691 * dwarf_lowpc.c: Likewise.
692 * dwarf_nextcu.c: Likewise.
693 * dwarf_offdie.c: Likewise.
694 * dwarf_siblingof.c: Likewise.
695 * dwarf_srclang.c: Likewise.
696 * dwarf_tag.c: Likewise.
697 * libdw_findcu.c: Likewise.
698 * libdwP.h: Add prototypes for internal functions.
699
700 * dwarf_addrdie.c: New file.
701 * dwarf_macro_opcode.c: New file.
702 * dwarf_macro_param1.c: New file.
703 * dwarf_macro_param2.c: New file.
704 * libdw.h: Add declarations. Move Dwarf_Macro definition to libdwP.h.
705 * libdwP.h: Remove Dwarf_Macro definition.
706 * Makefile.am (libdw_a_SOURCES): Add dwarf_addrdie.c,
707 dwarf_macro_opcode.c, dwarf_macro_param1.c, and dwarf_macro_param2.c.
708 * libdw.map: Add entries for new functions.
709
7102005-03-21 Ulrich Drepper <drepper@redhat.com>
711
712 * libdw.h: Handle broken gcc < 4.
713
7142005-02-15 Ulrich Drepper <drepper@redhat.com>
715
716 * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
717
718 * dwarf_begin_elf.c: Fix warnings.
719 * dwarf_dieoffset.c: Likewise.
720 * dwarf_end.c: Likewise.
721 * dwarf_error.c: Likewise.
722 * dwarf_getpubnames.c: Likewise.
723
724 * libdwP.h: Add new error values.
725 * dwarf_error.c: Support new error values.
726 * dwarf_getpubnames.c: Check parameter value.
727
7282005-02-05 Ulrich Drepper <drepper@redhat.com>
729
730 * Makefile.am: Check for text relocations in constructed DSO.
731
732 * Makefile.am [MUDFLAP] (AM_CFLAGS): Add -fmudflap.
733
7342005-02-04 Ulrich Drepper <drepper@redhat.com>
735
736 * dwarf_siblingof.c (dwarf_siblingof): Add some buffer boundary
737 checks to not read over buffer boundaries for ill-formed DWARF data.
738
7392004-09-25 Ulrich Drepper <drepper@redhat.com>
740
741 * dwarf_child.c: Make compile with gcc 4.0.
742 * dwarf_error.c: Likewise.
743 * dwarf_formblock.c: Likewise.
744 * dwarf_getabbrev.c: Likewise.
745 * dwarf_getattrs.c: Likewise.
746 * dwarf_getsrclines.c: Likewise.
747 * dwarf_tag.c: Likewise.
748 * libdw_form.c: Likewise.
749
7502004-01-20 Ulrich Drepper <drepper@redhat.com>
751
752 * Makefile.am: Support building with mudflap.
753
754 * dwarf_getloclist.c: Fix warnings gcc 3.4 spits out.
755 * dwarf_getsrclines.c: Likewise.
756 * dwarf_memory-access.h: Likewise.
757
7582004-01-19 Ulrich Drepper <drepper@redhat.com>
759
760 * dwarf_getsrcfiles.c: Third parameter can be NULL.
761
762 * libdw.h: Define Dwarf_macro. Declare dwarf_getmacros.
763 Third parameter of dwarf_getsrcfiles can be NULL.
764
765 * libdw.map: Add dwarf_getmacros.
766 * Makefile.am (libdw_a_SOURCES): Add dwarf_getmacros.
767 * dwarf_getmacros.c: New file.
768
7692004-01-18 Ulrich Drepper <drepper@redhat.com>
770
771 * libdw.h: Second parameter of dwarf_getaranges can be NULL.
772
773 * dwarf_nextcu.c: Return -1 if dwarf parameter is NULL.
774
775 * dwarf_getsrclines.c:
776 Use read_2ubyte_unaligned_inc instead of _inc-less variant.
777
778 * dwarf_getaranges.c: Allow naranges parameter to be NULL.
779
780 * libdwP.h (_): Use elfutils domain.
781
782 * dwarf_getsrclines.c (dwarf_getsrclines): Add more branch prediction.
783
784 * dwarf_getsrclines.c: Fix typo in comment.
785
7862004-01-17 Ulrich Drepper <drepper@redhat.com>
787
788 * Makefile.am: Support building with mudflap.
789
7902004-01-16 Ulrich Drepper <drepper@redhat.com>
791
792 * memory-access.h: Add lots of const in case a pointer passed is const.
793
794 * dwarf_formflag.c: New file.
795 * dwarf_getattrs.c: New file.
796 * dwarf_error.c: Add new error value.
797 * libdw.h: Add prototypes for new functions. Adjust prototype for
798 dwarf_getpubnames.
799 * libdw.map: Add new functions.
800 * dwarf_getpubnames.c: Change type of return value and fourth parameter
801 to ptrdiff_t.
802 * libdwP.h: Add new error value.
803 * Makefile.am (libdw_a_SOURCES): Add dwarf_getattrs.c and
804 dwarf_formflag.c.
805
806 * dwarf_getpubnames.c (dwarf_getpubnames): Just fail if dbg is NULL.
807
8082004-01-12 Ulrich Drepper <drepper@redhat.com>
809
810 * dwarf_getarange_addr.c: New file
811 * dwarf_getarangeinfo.c: New file.
812 * dwarf_getaranges.c: New file.
813 * dwarf_onerange.c: New file.
814 * libdw.h: Declare new functions. Define Dwarf_Arange and
815 Dwarf_Aranges.
816 * libdw.map: Add new functions.
817 * libdwP.h: Add new errors. Add aranges member to struct Dwarf.
818 Define Dwarf_Aranges_s and Dwarf_Arange_s.
819 * Makefile.am (libdw_a_SOURCES): Add dwarf_getaranges.c,
820 dwarf_onearange.c, dwarf_getarangeinfo.c, dwarf_getarange_addr.c.
821 * dwarf_error.c: Add new message.
822
8232004-01-11 Ulrich Drepper <drepper@redhat.com>
824
825 * Makefile.am (libdw_a_SOURCES): Add dwarf_lineaddr.c, dwarf_linecol.c,
826 dwarf_linebeginstatement.c, dwarf_lineendsequence.c, dwarf_lineblock.c,
827 dwarf_lineprologueend.c, dwarf_lineepiloguebegin.c, dwarf_onesrcline.c.
828 * dwarf_error.c: Add another message.
829 * dwarf_getsrc_die.c: Adjust for Dwarf_Files and Dwarf_Lines
830 introduction.
831 * dwarf_filesrc.c: Likewise.
832 * dwarf_getsrcfiles.c: Likewise.
833 * dwarf_getsrclines.c: Likewise.
834 * dwarf_lineaddr.c: New file.
835 * dwarf_linebeginstatement.c: New file.
836 * dwarf_lineblock.c: New file.
837 * dwarf_linecol.c: New file.
838 * dwarf_lineendsequence.c: New file.
839 * dwarf_lineepiloguebegin.c: New file.
840 * dwarf_lineno.c: New file.
841 * dwarf_lineprologueend.c: New file.
842 * dwarf_onesrcline.c: New file.
843 * dwarf_lineno.c: Change interface to store result in object pointed
844 to by second parameter.
845 * libdw.h: Add prototypes for new functions. Change dwarf_lineno
846 prototype. Define Dwarf_Files and Dwarf_Lines.
847 * libdw.map: Add new functions.
848 * libdwP.h: Define Dwarf_Files_s and Dwarf_Lines_s.
849 * libdw_findcu.c: Don't initialize nlines field.
850
851 * dwarf_siblingof: Little optimization.
852
853 * dwarf_begin.c: Remember that the ELF descriptor must be closed.
854 * dwarf_end.c: Close ELF descriptor if free_elf is set.
855 * libdwP.h (struct Dwarf): Add free_elf field.
856
857 * Makefile.am (libdw_a_SOURCES): Add dwarf_getstring.c and
858 dwarf_offabbrev.c.
859 * dwarf_getstring.c: New file.
860 * dwarf_offabbrev.c: New file.
861 * libdw.map: Add dwarf_getstring and dwarf_offabbrev.
862 * dwarf_getabbrev.c (__libdw_getabbrev): Add new dbg and result
863 parameters. Don't allocate memory if not necessary and don't lookup
864 previous results if no CU given.
865 (dwarf_getabbrev): Adjust call to __libdw_getabbrev.
866 * dwarf_tag.c: Adjust call to __libdw_getabbrev.
867 * libdw.h: Declare dwarf_offabbrev and dwarf_getstring.
868 * libdwP.h: Change prototype for __libdw_getabbrev.
869
870 * dwarf_getabbrevattr.c: Add offsetp parameter. Fill in before
871 returning if this is wanted.
872
8732004-01-09 Ulrich Drepper <drepper@redhat.com>
874
875 * dwarf_nextcu.c: Add new parameter offset_sizep. Initialize it
876 with offset_size value.
877 * libdw.h: Adjust dwarf_nextcu prototype.
878 * libdwP.h (struct Dwarf_CU): Add offset_size member.
879 * libdw_findcu.c: Adjust dwarf_nextcu call. Initialize offset_size
880 member of new CU struct.
881 * dwarf_formstring.c: Depend on offset_size not address_size for
882 DW_FORM_strp handling.
883 * dwarf_form.c: Likewise for DW_FORM_strp and DW_FORM_ref_addr.
884
885 * dwarf_tag.c (__libdw_findabbrev): Return correct value for
886 failing lookup.
887 (dwarf_tag): Correctly recognize failed lookup.
888
889 * dwarf_end.c (cu_free): Call tdestroy for locs member. Use new
890 function noop_free.
891 * dwarf_error.c: Add message for DWARF_E_NO_BLOCK.
892 * dwarf_formblock.c: New file.
893 * dwarf_getloclist.c: Rewrite to handle a single block.
894 * libdw.h: Define Dwarf_Block. Rename Dwarf_Loc members. Remove
895 Dwarf_Locdesc definition. Declare dwarf_formblock. Remove
896 dwarf_getloclistent declaration.
897 * libdw.map: Add dwarf_formblock, remove dwarf_getloclistent.
898 * libdwP.h: Define struct loc_s and DWARF_E_NO_BLOCK.
899 Add locs member to struct Dwarf_CU.
900 * libdw_fundcu.c: Initialize locs member of new CU.
901 * Makefile.am (libdw_a_SOURCES): Add dwarf_formblock.c.
902 Remove dwarf_getloclistent.c.
903
9042004-01-07 Ulrich Drepper <drepper@redhat.com>
905
906 * libdw.h: Use __nonnull__ attribute only for gcc >= 3.3.
907 * libdwP.h: Likewise.
908
909 * dwarf_getloclist.c: New file.
910 * dwarf_getloclistent.c: New file.
911 * libdw.h: Define Dwarf_Loc and Dwarf_Locdesc.
912 Declare dwarf_getloclistent and dwarf_getloclist.
913 * libdw.map: Add dwarf_getloclistent and dwarf_getloclist.
914 * libdwP.h: Define DWARF_E_NO_LOCLIST.
915 * Makefile.am (libdw_a_SOURCES): Add dwarf_getloclistent.c and
916 dwarf_getloclist.c.
917
918 * dwarf_error.c: More error messages.
919
9202004-01-06 Ulrich Drepper <drepper@redhat.com>
921
922 * dwarf_getsrclines.c: Remove debugging support.
923
924 * dwarf_getsrcfiles.c: New file.
925 * dwarf_filesrc.c: New file.
926 * libdw.h: Declare these functions. Define Dwarf_File.
927 * libdwP.c: Adjust Dwarf_File_s definition.
928 * libdw.map: Add these functions.
929 * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrcfiles.c and
930 dwarf_filesrc.c.
931 * dwarf_getsrclines.c: Initialize cu->files.
932
9332004-01-05 Ulrich Drepper <drepper@redhat.com>
934
935 * libdw.h: Add more nonnull function attributes.
936
937 * dwarf_begin_elf.c (dwarf_begin_elf): Don't initialize mem_tail->next.
938 * dwarf_end.c (cu_free): New function.
939 (dwarf_end): Also free CU tree. Correct freeing of memory blocks.
940 * dwarf_error.c (errmsgs): Add new messages.
941 * dwarf_getsrc_die.c: New file.
942 * dwarf_getsrclines.c: New file.
943 * dwarf_lineno.c: New file.
944 * dwarf_linesrc.c: New file.
945 * dwarf_nextcu.c (dwarf_nextcu): Use read_*byte_unaligned_inc
946 instead of the *_inc-less variants.
947 * libdw.h: Define Dwarf_Line. Add some function attributes. Declare
948 dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno, and dwarf_linesrc.
949 * libdw.map: Add dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno,
950 and dwarf_linesrc.
951 * libdwP.h: Add more error codes.
952 (struct Dwarf): Remove mem_tail.next member.
953 (Dwarf_File): Define type.
954 (struct Dwarf_Line_s): Define type.
955 (struct Dwarf_CU): Add lines and nlines members.
956 (libdw_alloc): Define local variable _tail and use it.
957 Add some function attributes.
958 * libdw_alloc.c (__libdw_allocate): Don't initialize next member.
959 * libdw_findcu.c (__libdw_findcu): Initialize lines and nlines members.
960 * memory-access.h: Add unlikely for the endian conversion paths.
961 * Makefile.am (AM_CFLAGS): Add -std parameter.
962 (libdw_a_SOURCES): Add dwarf_getsrclines, dwarf_getsrc_die,
963 dwarf_lineno, and dwarf_linesrc.
964
9652003-08-11 Ulrich Drepper <drepper@redhat.com>
966
967 * Moved to CVS archive.