blob: ca8ae9be0cde6668faccc19c2cd0edadcd246481 [file] [log] [blame]
Roland McGrath08333122006-02-27 04:54:26 +000012006-02-22 Roland McGrath <roland@redhat.com>
2
3 * libdw.map: Bump to 0.120; export dwfl_version.
4
Roland McGrath50ffcbf2005-12-23 01:51:43 +000052005-12-22 Roland McGrath <roland@redhat.com>
6
7 * libdw.map: Bump to 0.119; export dwfl_linux_proc_maps_report.
8
Roland McGrathdec3a242005-12-12 08:35:55 +000092005-12-12 Roland McGrath <roland@redhat.com>
10
11 * dwarf_ranges.c: Copy CU base address-finding code from
12 dwarf_getlocation.
13
Roland McGrathf64a4422005-12-09 23:40:30 +0000142005-12-09 Roland McGrath <roland@redhat.com>
15
16 * dwarf_getlocation.c (dwarf_getlocation_addr): Add some unlikelys.
17 Delay CU base lookup until it's needed.
18 If CU base lookup fails with no error, flag invalid DWARF.
19
Roland McGrath994b4892005-12-05 22:46:21 +0000202005-11-25 Roland McGrath <roland@redhat.com>
21
22 * libdw.map: Bump to 0.118; export dwfl_module_register_names.
23
Roland McGrathe47ab762005-11-17 03:16:00 +0000242005-11-15 Roland McGrath <roland@redhat.com>
25
26 * Makefile.am [BUILD_STATIC] (AM_CFLAGS): Add -fpic.
27
282005-11-13 Roland McGrath <roland@redhat.com>
29
30 * libdw.map: Bump to 0.117; export dwfl_module_return_value_location.
31
Roland McGrath07d4f2f2005-10-28 06:56:24 +0000322005-10-27 Roland McGrath <roland@redhat.com>
33
34 * dwarf_entry_breakpoints.c (search_range): Fix binary search code;
35 don't match end_sequence markers.
36
37 * dwarf_getsrclines.c (compare_lines): Sort end_sequence markers
38 before normal records at the same address.
39 * dwarf_getsrc_die.c (dwarf_getsrc_die): Don't match an end_sequence
40 marker.
41
422005-10-26 Roland McGrath <roland@redhat.com>
43
Roland McGrath6724c902005-10-28 07:07:19 +000044 * dwarf_getfuncs.c (dwarf_getfuncs): Use Dwarf_Die, not Dwarf_Func.
45 * dwarf_func_file.c: Renamed to ...
46 * dwarf_decl_file.c: ... here.
47 * dwarf_func_col.c: Renamed to ...
48 * dwarf_decl_column.c: ... here.
49 * dwarf_func_line.c: Renamed to ...
50 * dwarf_decl_line.c: ... here.
51 (dwarf_func_line): Renamed to ...
52 (dwarf_decl_line): ... this. Take a Dwarf_Die * argument.
53 (__libdw_func_intval): Renamed __libdw_attr_intval.
54 * dwarf_func_name.c: File removed.
55 * dwarf_func_lowpc.c: File removed.
56 * dwarf_func_highpc.c: File removed.
57 * dwarf_func_entrypc.c: File removed.
58 * dwarf_func_die.c: File removed.
59 * Makefile.am (libdw_a_SOURCES): Updated.
60 * libdw.h: Update decls.
61 (Dwarf_Func): Type removed.
62 * libdwP.h: Update decls.
63 (struct Dwarf_Func_s): Type removed.
64 * libdw.map: Updated.
65
66 * libdwP.h (CUDIE): New macro.
67 * dwarf_getlocation.c (dwarf_getlocation_addr): Use it.
68 * dwarf_getscopes_die.c (dwarf_getscopes_die): Likewise.
69 * dwarf_ranges.c (dwarf_ranges): Likewise.
70
71 * dwarf_getloclist.c: Renamed to ...
72 * dwarf_getlocation.c: ... here.
73 (getloclist): Renamed to getlocation.
74 (dwarf_getloclist): Renamed to dwarf_getlocation.
75 (dwarf_addrloclists): Renamed to dwarf_getlocation_addr.
76 * Makefile.am (libdw_a_SOURCES): Updated.
77 * libdw.h (dwarf_getloclist): Renamed to dwarf_getlocation.
78 (dwarf_addrloclists): Renamed dwarf_getlocation_addr.
79 (Dwarf_Loc): Renamed Dwarf_Op.
80 * libdwP.h (struct loc_s): Update use.
81 * libdw.map: Update map.
82
Roland McGrath07d4f2f2005-10-28 06:56:24 +000083 * dwarf_entry_breakpoints.c: Use the second line record within the
84 function, regardless of its source location data.
85
862005-10-25 Roland McGrath <roland@redhat.com>
87
88 * dwarf_entry_breakpoints.c: Fall back to entrypc for contiguous too.
89
90 * libdw.map: Add dwarf_entrypc, dwarf_entry_breakpoints.
91
922005-10-14 Roland McGrath <roland@redhat.com>
93
94 * dwarf_diecu.c (dwarf_diecu): New file.
95 * Makefile.am (libdw_a_SOURCES): Add it.
96 * libdw.h: Declare dwarf_diecu.
97 * libdw.map: Export it.
98
99 * libdw.map: Bump to 0.116; export dwarf_ranges.
100
1012005-09-20 Roland McGrath <roland@redhat.com>
102
103 * dwarf_haspc.c: Use dwarf_ranges.
104 * dwarf_entry_breakpoints.c: Likewise.
105
106 * dwarf_ranges.c: New file.
107 * Makefile.am (libdw_a_SOURCES): Add it.
108 * libdw.h: Declare dwarf_ranges.
109 * libdwP.h: Add INTDECL.
110
1112005-09-14 Roland McGrath <roland@redhat.com>
112
113 * dwarf_entry_breakpoints.c (dwarf_entry_breakpoints): Fix braino in
114 prologue_end marker scanning loop.
115
1162005-09-11 Roland McGrath <roland@redhat.com>
117
118 * dwarf.h: Comment typo fix.
119
1202005-09-07 Roland McGrath <roland@redhat.com>
121
122 * dwarf_entry_breakpoints.c: New file.
123 * Makefile.am (libdw_a_SOURCES): Add it.
124 * libdw.h: Declare dwarf_entry_breakpoints.
125
126 * dwarf_entrypc.c: New file.
127 * Makefile.am (libdw_a_SOURCES): Add it.
128 * libdw.h: Declare dwarf_entrypc.
129 * libdwP.h: Add INTDECL.
130
Ulrich Drepperfbe998a2005-08-29 16:27:10 +00001312005-08-28 Ulrich Drepper <drepper@redhat.com>
132
133 * Makefile.am: Use $(LINK) not $(CC) when creating DSO.
134 (%.os): Use COMPILE.os.
135 (COMPILE.os): Filter out gconv options.
136
Roland McGrath71e15a02005-08-27 10:33:26 +00001372005-08-27 Roland McGrath <roland@redhat.com>
138
139 * dwarf_getscopes.c (dwarf_getscopes): Rewritten using
140 __libdw_visit_scopes.
141
142 * dwarf_getscopes_die.c: New file.
143 * Makefile.am (libdw_a_SOURCES): Add it.
144 * libdw.h: Declare dwarf_getscopes_die.
145 * libdw.map: Bump to 0.115 and add it.
146
147 * libdw_visit_scopes.c (__libdw_visit_scopes): Pass a struct
148 containing a DIE and its parent pointer, instead of just Dwarf_Die.
149 Take two functions for both preorder and postorder visitors.
150 * libdwP.h: Update decl.
151 (struct Dwarf_Die_Chain): New type.
152 * dwarf_func_inline.c: Update uses.
153
154 * dwarf_diename.c (dwarf_diename): Use dwarf_attr_integrate.
155 Add INTDEF.
156 * libdwP.h: Add INTDECL.
157 * dwarf_func_name.c (dwarf_func_name): Use dwarf_diename.
158
Roland McGrathd17fac72005-08-23 08:20:21 +00001592005-08-23 Roland McGrath <roland@redhat.com>
160
161 * dwarf_attr_integrate.c (dwarf_attr_integrate): Treat
162 DW_AT_specification the same as DW_AT_abstract_origin.
163
1642005-08-20 Roland McGrath <roland@redhat.com>
165
166 * libdw.map: Add dwfl_cumodule, remove dwfl_linecu.
167 Add dwfl_linux_kernel_report_offline, dwfl_offline_section_address,
168 and dwfl_report_offline.
169
1702005-08-19 Roland McGrath <roland@redhat.com>
171
172 * libdw.map: Bump version to ELFUTILS_0.114 for libdwfl changes.
173 Add dwfl_module_relocate_address, dwfl_module_relocations,
174 dwfl_module_relocation_info.
175
Roland McGrathf5fda7d2005-08-18 22:01:57 +00001762005-08-18 Roland McGrath <roland@redhat.com>
177
178 * dwarf_getscopes.c (dwarf_getscopes): Include the CU itself as
179 outermost scope in the results.
180
Roland McGrath1ecb6062005-08-15 09:53:04 +00001812005-08-15 Roland McGrath <roland@redhat.com>
182
183 * dwarf_func_inline.c: New file.
184 * Makefile.am (libdw_a_SOURCES): Add it.
185 * libdw.h: Declare dwarf_func_inline, dwarf_func_inline_instances.
186 * libdw.map: Add them.
187
188 * dwarf_func_die.c: New file.
189 * Makefile.am (libdw_a_SOURCES): Add it.
190 * libdw.h: Declare dwarf_func_die.
191 * libdw.map: Add it. Bump version to ELFUTILS_0.114.
192
Roland McGrath1c83bf12005-08-11 07:03:55 +00001932005-08-10 Ulrich Drepper <drepper@redhat.com>
Ulrich Drepper6d5c3bd2005-08-11 04:37:52 +0000194
Roland McGrath1c83bf12005-08-11 07:03:55 +0000195 * dwarf_getsrclines.c (dwarf_getsrclines): Correct fallout of renaming
196 of DW_LNS_set_epilog_begin.
Ulrich Drepper6d5c3bd2005-08-11 04:37:52 +0000197
Roland McGrath4959bf82005-08-09 10:31:08 +00001982005-08-09 Roland McGrath <roland@redhat.com>
199
Roland McGrathb6312e12005-08-09 10:36:01 +0000200 * dwarf.h (DW_LNS_set_epilog_begin): Renamed DW_LNS_set_epilogue_begin.
201
Roland McGrath4959bf82005-08-09 10:31:08 +0000202 * dwarf_end.c: Add INTDEF.
203 * dwarf_error.c (dwarf_errmsg): Likewise.
204 * libdwP.h (dwarf_end, dwarf_errmsg): Add INTDECLs.
205
Roland McGratha5a89682005-08-02 01:24:01 +00002062005-08-01 Roland McGrath <roland@redhat.com>
207
208 * dwarf_getaranges.c (dwarf_getaranges): Check for bogus offset.
209 * dwarf_getabbrev.c (__libdw_getabbrev): Likewise.
210
Ulrich Drepper18618fd2005-07-28 21:29:22 +00002112005-07-28 Ulrich Drepper <drepper@redhat.com>
212
213 * Makefile.am (libdw.so): No need to link with libeu.a anymore.
214 (libdw_a_LIBADD): Add all files from libdwfl.a.
215
Roland McGrath366784a2005-07-28 06:20:53 +00002162005-07-27 Roland McGrath <roland@redhat.com>
217
Roland McGrath18385902005-07-28 07:12:38 +0000218 * Makefile.am (libdw.so): Link ../libdwfl/libdwfl_pic.a in,
219 along with ../libebl/libebl.a and ../lib/libeu.a;
220 depend on ../libelf/libelf.so.
221 (libdw_so_LDADD): New variable.
222 * libdw.map: Add dwfl_* symbols formerly in ../libdwfl/libdwfl.map.
223
Roland McGrath366784a2005-07-28 06:20:53 +0000224 * libdw.map: Define an empty base version and move all symbols to
225 version ELFUTILS_0.111; don't define ELFUTILS_1.0 at all yet.
226
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00002272005-07-23 Ulrich Drepper <drepper@redhat.com>
228
229 * dwarf_error.c: Add internal alias for dwarf_errno.
230 * libdwP.h: Declare __dwarf_errno_internal.
231 * dwarf_getloclist.c: Use INTDEF for dwarf_errno.
232
233 * dwarf_error.c [USE_TLS]: Actually use __thread in definition of
234 global_error.
235
2362005-06-01 Roland McGrath <roland@redhat.com>
237
238 * dwarf_getaranges.c (dwarf_getaranges): Sort result array.
239 * dwarf_getarange_addr.c (dwarf_getarange_addr): Use binary search.
240
2412005-06-08 Roland McGrath <roland@redhat.com>
242
243 * memory-access.h (get_uleb128_step, get_uleb128): Remove casts.
244 (get_sleb128_step, get_sleb128): Likewise.
245 * dwarf_getattrs.c (dwarf_getattrs): Add consts.
246 * dwarf_getloclist.c (getloclist): Likewise.
247 * dwarf_formblock.c (dwarf_formblock): Likewise.
248 * dwarf_getsrclines.c (dwarf_getsrclines): Likewise.
249 * dwarf_getabbrevattr.c (dwarf_getabbrevattr): Likewise.
250 * dwarf_formref.c (dwarf_formref): Likewise.
251 * dwarf_formsdata.c (dwarf_formsdata): Likewise.
252 * dwarf_formudata.c (dwarf_formudata): Likewise.
253 * dwarf_haschildren.c (dwarf_haschildren): Likewise.
254 * dwarf_child.c (__libdw_find_attr, __libdw_find_attr): Likewise.
255 * dwarf_tag.c (dwarf_tag): Likewise.
256 * dwarf_getabbrev.c (__libdw_getabbrev): Likewise.
257 * memory-access.c (__libdw_get_uleb128, __libdw_get_sleb128): Likewise.
258 * libdw_form.c (__libdw_form_val_len): Likewise.
259 * libdwP.h: Update decl.
260
2612005-06-04 Roland McGrath <roland@redhat.com>
262
263 * memory-access.h (get_uleb128_rest_return): New macro.
264 [! IS_LIBDW] (__libdw_get_uleb128): New static, defined using it.
265 (get_sleb128_rest_return): New macro.
266 [! IS_LIBDW] (__libdw_get_sleb128): New static, defined using it.
267 * memory-access.c: New file.
268 * Makefile.am (libdw_a_SOURCES): Add it.
269 (DEFS): Add -DIS_LIBDW.
270
2712005-05-31 Roland McGrath <roland@redhat.com>
272
273 * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to
274 formref offset.
275
2762005-05-30 Roland McGrath <roland@redhat.com>
277
278 * dwarf_getloclist.c (dwarf_addrloclists): Use DW_AT_entry_pc for base
279 address if DW_AT_low_pc is missing. Not to spec, but GCC generates it.
280
281 * dwarf_getloclist.c (dwarf_addrloclists): Don't sign-extend 4-byte
282 BEGIN value. Instead, match base address entries separately for
283 32/64 size cases.
284
2852005-05-28 Roland McGrath <roland@redhat.com>
286
287 * dwarf_getloclist.c (dwarf_addrloclists): Fix decoding to advance
288 past location expression contents.
289
2902005-05-23 Roland McGrath <roland@redhat.com>
291
292 * dwarf_getsrclines.c: Comment typo fix.
293
294 * dwarf_haspc.c (dwarf_haspc): Fix CU DIE address calculation.
295 * dwarf_getloclist.c (dwarf_addrloclists): Likewise.
296
2972005-05-22 Ulrich Drepper <drepper@redhat.com>
298
299 * libdwP.h: Only use INTDECL for alias prototypes.
300
3012005-05-19 Roland McGrath <roland@redhat.com>
302
303 * dwarf_getloclist.c (attr_ok): Permit DW_AT_static_link too.
304
305 * dwarf_getscopevar.c: New file.
306 * Makefile.am (libdw_a_SOURCES): Add it.
307 * libdw.h: Declare dwarf_getscopevar.
308
309 * dwarf_getsrcfiles.c: Add INTDEF.
310 * dwarf_haschildren.c: Likewise.
311 * libdwP.h (dwarf_getsrcfiles, dwarf_haschildren): Add INTDECL.
312
313 * dwarf_getscopes.c: New file.
314 * Makefile.am (libdw_a_SOURCES): Add it.
315 * libdw.h: Declare dwarf_getscopes.
316 * libdw.map: Add it.
317
3182005-05-18 Roland McGrath <roland@redhat.com>
319
320 * libdwP.h (IDX_debug_ranges): New enum constant.
321 * dwarf_begin_elf.c (dwarf_scnnames): Add it for ".debug_ranges".
322 * libdwP.h (DWARF_E_NO_DEBUG_RANGES): New enum constant.
323 * dwarf_error.c (errmsgs): Add it.
324 * dwarf_haspc.c: New file.
325 * libdw.h: Declare dwarf_haspc.
326 * libdw.map: Add it.
327 * libdwP.h: Add INTDECL.
328
329 * dwarf_attr_integrate.c: New file.
330 * dwarf_hasattr_integrate.c: New file.
331 * Makefile.am (libdw_a_SOURCES): Add them.
332 * libdw.h: Declare dwarf_attr_integrate, dwarf_hasattr_integrate.
333 * libdw.map: Add them.
334
335 * dwarf_hasattr.c: Add INTDEF.
336 * libdwP.h: Add INTDECL for it.
337
338 * dwarf_formref_die.c: New file.
339 * Makefile.am (libdw_a_SOURCES): Add it.
340 * libdw.h (dwarf_formref_die): Declare it.
341 * libdwP.h (dwarf_formref_die): Add INTDECL.
342 * libdw.map: Add it.
343
344 * dwarf_getloclist.c (attr_ok, getloclist): New functions, broken out
345 of ...
346 (dwarf_getloclist): ... here. Call them.
347 (dwarf_addrloclists): New function.
348 * libdw.h: Declare it.
349 * libdw.map: Add it.
350
351 * dwarf_getmacros.c (dwarf_getmacros): Don't bail at
352 DW_MACINFO_end_file. Recognize type 0 as terminator.
353
3542005-05-05 Roland McGrath <roland@redhat.com>
355
356 * dwarf_getsrc_die.c (dwarf_getsrc_die): Use binary search.
357
358 * dwarf_getsrclines.c (dwarf_getsrclines): Sort result array, since
359 the line program does not produce all entries in ascending order.
360
3612005-04-25 Ulrich Drepper <drepper@redhat.com>
362
363 * dwarf_getsrc_file.c (dwarf_getsrc_file): Handle multiple
364 occurences (e.g., inlines) better.
365
3662005-04-24 Ulrich Drepper <drepper@redhat.com>
367
368 * libdw.h (DWARF_END_ABBREV): Define.
369 * dwarf_getabbrev.c (__libdw_getabbrev): Return DWARF_END_ABBREV if
370 end is reached.
371 * dwarf_offabbrev.c (dwarf_offabbrev): Return -1 on error, 1 if end
372 of records reached.
373 * dwarf_tag.c (__libdw_findabbrev): Also recognize DWARF_END_ABBREV
374 as error of __libdw_getabbrev.
375
3762005-04-04 Ulrich Drepper <drepper@redhat.com>
377
378 * dwarf_getsrc_file.c (dwarf_getsrc_file): Minor optimization.
379
380 * dwarf_getsrc_file.c (dwarf_getsrc_file): Always pass number of
381 results back to caller.
382
3832005-04-04 Roland McGrath <roland@redhat.com>
384
385 * dwarf_getsrc_file.c (dwarf_getsrc_file): Use size_t for CUHL.
386
387 * dwarf_func_line.c (__libdw_func_intval): Use internal_function in
388 defn.
389
3902005-04-04 Ulrich Drepper <drepper@redhat.com>
391
392 * dwarf_getsrc_file.c (dwarf_getsrc_file): Use INTUSE.
393
394 * dwarf_getsrc_file.c: New file.
395 * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrc_file.c.
396 * libdw.h: Declare dwarf_getsrc_file.
397 * libdw.map: Add dwarf_getsrc_file.
398
3992005-04-02 Ulrich Drepper <drepper@redhat.com>
400
401 * dwarf_func_entrypc.c: New file.
402 * dwarf_func_col.c: New file.
403 * dwarf_func_line.c: New file.
404 * dwarf_func_file.c: New file.
405 * libdw.h: Add prototypes for new functions.
406 * libdw.map: Add dwarf_func_entrypc, dwarf_func_col, dwarf_func_line,
407 dwarf_func_file.
408 * Makefile.am (libdw_a_SOURCES): Add dwarf_func_entrypc.c,
409 dwarf_func_col.c, dwarf_func_line.c, dwarf_func_file.c.
410 * libdwP.h (struct Dwarf_Func_s): Add cudie element.
411 Declare __libdw_func_intval and __dwarf_formsdata_internal.
412 * dwarf_getfuncs.c: Also fill in cudie in Dwarf_Func object.
413 * dwarf_formsdata.c: Use INTUSE and INTDEF to avoid PLTs.
414
415 * dwarf.h: Add some DWARF3 definitions.
416
4172005-04-01 Ulrich Drepper <drepper@redhat.com>
418
419 * dwarf_getfuncs.c: New file.
420 * dwarf_func_highpc.c: New file.
421 * dwarf_func_lowpc.c: New file.
422 * dwarf_func_name.c: New file.
423 * Makefile.am (libdw_a_SOURCES): Add dwarf_getfuncs.c,
424 dwarf_func_highpc.c, dwarf_func_lowpc.c, and dwarf_func_name.c.
425 * libdw.map: Add dwarf_getfuncs, dwarf_func_highpc, dwarf_func_lowpc,
426 and dwarf_func_name.
427 * libdw.h: Add prototypes for new functions.
428 * dwarf_child.c: Use INTUSE and INTDEF to avoid PLTs.
429 * dwarf_siblingof.c: Likewise.
430 * dwarf_dieoffset.c: Likewise.
431 * dwarf_highpc.c: Likewise.
432 * dwarf_lowpc.c: Likewise.
433 * libdwP.h: Add prototypes for internal functions.
434 Define Dwarf_Func_s structure.
435
4362005-03-29 Ulrich Drepper <drepper@redhat.com>
437
438 * libdw.h: Add padding in Dwarf_die.
439
440 * dwarf_arrayorder.c: Use INTUSE and INTDEF to avoid PLTs.
441 * dwarf_attr.c: Likewise.
442 * dwarf_begin.c: Likewise.
443 * dwarf_begin_elf.c: Likewise.
444 * dwarf_bitoffset.c: Likewise.
445 * dwarf_bitsize.c: Likewise.
446 * dwarf_bytesize.c: Likewise.
447 * dwarf_diename.c: Likewise.
448 * dwarf_formaddr.c: Likewise.
449 * dwarf_formblock.c: Likewise.
450 * dwarf_formref.c: Likewise.
451 * dwarf_formstring.c: Likewise.
452 * dwarf_formudata.c: Likewise.
453 * dwarf_getarange_addr.c: Likewise.
454 * dwarf_getarangeinfo.c: Likewise.
455 * dwarf_getaranges.c: Likewise.
456 * dwarf_getloclist.c: Likewise.
457 * dwarf_getmacros.c: Likewise.
458 * dwarf_getsrc_die.c: Likewise.
459 * dwarf_getsrcfiles.c: Likewise.
460 * dwarf_getsrclines.c: Likewise.
461 * dwarf_highpc.c: Likewise.
462 * dwarf_lowpc.c: Likewise.
463 * dwarf_nextcu.c: Likewise.
464 * dwarf_offdie.c: Likewise.
465 * dwarf_siblingof.c: Likewise.
466 * dwarf_srclang.c: Likewise.
467 * dwarf_tag.c: Likewise.
468 * libdw_findcu.c: Likewise.
469 * libdwP.h: Add prototypes for internal functions.
470
471 * dwarf_addrdie.c: New file.
472 * dwarf_macro_opcode.c: New file.
473 * dwarf_macro_param1.c: New file.
474 * dwarf_macro_param2.c: New file.
475 * libdw.h: Add declarations. Move Dwarf_Macro definition to libdwP.h.
476 * libdwP.h: Remove Dwarf_Macro definition.
477 * Makefile.am (libdw_a_SOURCES): Add dwarf_addrdie.c,
478 dwarf_macro_opcode.c, dwarf_macro_param1.c, and dwarf_macro_param2.c.
479 * libdw.map: Add entries for new functions.
480
4812005-03-21 Ulrich Drepper <drepper@redhat.com>
482
483 * libdw.h: Handle broken gcc < 4.
484
4852005-02-15 Ulrich Drepper <drepper@redhat.com>
486
487 * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
488
489 * dwarf_begin_elf.c: Fix warnings.
490 * dwarf_dieoffset.c: Likewise.
491 * dwarf_end.c: Likewise.
492 * dwarf_error.c: Likewise.
493 * dwarf_getpubnames.c: Likewise.
494
495 * libdwP.h: Add new error values.
496 * dwarf_error.c: Support new error values.
497 * dwarf_getpubnames.c: Check parameter value.
498
4992005-02-05 Ulrich Drepper <drepper@redhat.com>
500
501 * Makefile.am: Check for text relocations in constructed DSO.
502
503 * Makefile.am [MUDFLAP] (AM_CFLAGS): Add -fmudflap.
504
5052005-02-04 Ulrich Drepper <drepper@redhat.com>
506
507 * dwarf_siblingof.c (dwarf_siblingof): Add some buffer boundary
508 checks to not read over buffer boundaries for ill-formed DWARF data.
509
5102004-09-25 Ulrich Drepper <drepper@redhat.com>
511
512 * dwarf_child.c: Make compile with gcc 4.0.
513 * dwarf_error.c: Likewise.
514 * dwarf_formblock.c: Likewise.
515 * dwarf_getabbrev.c: Likewise.
516 * dwarf_getattrs.c: Likewise.
517 * dwarf_getsrclines.c: Likewise.
518 * dwarf_tag.c: Likewise.
519 * libdw_form.c: Likewise.
520
5212004-01-20 Ulrich Drepper <drepper@redhat.com>
522
523 * Makefile.am: Support building with mudflap.
524
525 * dwarf_getloclist.c: Fix warnings gcc 3.4 spits out.
526 * dwarf_getsrclines.c: Likewise.
527 * dwarf_memory-access.h: Likewise.
528
5292004-01-19 Ulrich Drepper <drepper@redhat.com>
530
531 * dwarf_getsrcfiles.c: Third parameter can be NULL.
532
533 * libdw.h: Define Dwarf_macro. Declare dwarf_getmacros.
534 Third parameter of dwarf_getsrcfiles can be NULL.
535
536 * libdw.map: Add dwarf_getmacros.
537 * Makefile.am (libdw_a_SOURCES): Add dwarf_getmacros.
538 * dwarf_getmacros.c: New file.
539
5402004-01-18 Ulrich Drepper <drepper@redhat.com>
541
542 * libdw.h: Second parameter of dwarf_getaranges can be NULL.
543
544 * dwarf_nextcu.c: Return -1 if dwarf parameter is NULL.
545
546 * dwarf_getsrclines.c:
547 Use read_2ubyte_unaligned_inc instead of _inc-less variant.
548
549 * dwarf_getaranges.c: Allow naranges parameter to be NULL.
550
551 * libdwP.h (_): Use elfutils domain.
552
553 * dwarf_getsrclines.c (dwarf_getsrclines): Add more branch prediction.
554
555 * dwarf_getsrclines.c: Fix typo in comment.
556
5572004-01-17 Ulrich Drepper <drepper@redhat.com>
558
559 * Makefile.am: Support building with mudflap.
560
5612004-01-16 Ulrich Drepper <drepper@redhat.com>
562
563 * memory-access.h: Add lots of const in case a pointer passed is const.
564
565 * dwarf_formflag.c: New file.
566 * dwarf_getattrs.c: New file.
567 * dwarf_error.c: Add new error value.
568 * libdw.h: Add prototypes for new functions. Adjust prototype for
569 dwarf_getpubnames.
570 * libdw.map: Add new functions.
571 * dwarf_getpubnames.c: Change type of return value and fourth parameter
572 to ptrdiff_t.
573 * libdwP.h: Add new error value.
574 * Makefile.am (libdw_a_SOURCES): Add dwarf_getattrs.c and
575 dwarf_formflag.c.
576
577 * dwarf_getpubnames.c (dwarf_getpubnames): Just fail if dbg is NULL.
578
5792004-01-12 Ulrich Drepper <drepper@redhat.com>
580
581 * dwarf_getarange_addr.c: New file
582 * dwarf_getarangeinfo.c: New file.
583 * dwarf_getaranges.c: New file.
584 * dwarf_onerange.c: New file.
585 * libdw.h: Declare new functions. Define Dwarf_Arange and
586 Dwarf_Aranges.
587 * libdw.map: Add new functions.
588 * libdwP.h: Add new errors. Add aranges member to struct Dwarf.
589 Define Dwarf_Aranges_s and Dwarf_Arange_s.
590 * Makefile.am (libdw_a_SOURCES): Add dwarf_getaranges.c,
591 dwarf_onearange.c, dwarf_getarangeinfo.c, dwarf_getarange_addr.c.
592 * dwarf_error.c: Add new message.
593
5942004-01-11 Ulrich Drepper <drepper@redhat.com>
595
596 * Makefile.am (libdw_a_SOURCES): Add dwarf_lineaddr.c, dwarf_linecol.c,
597 dwarf_linebeginstatement.c, dwarf_lineendsequence.c, dwarf_lineblock.c,
598 dwarf_lineprologueend.c, dwarf_lineepiloguebegin.c, dwarf_onesrcline.c.
599 * dwarf_error.c: Add another message.
600 * dwarf_getsrc_die.c: Adjust for Dwarf_Files and Dwarf_Lines
601 introduction.
602 * dwarf_filesrc.c: Likewise.
603 * dwarf_getsrcfiles.c: Likewise.
604 * dwarf_getsrclines.c: Likewise.
605 * dwarf_lineaddr.c: New file.
606 * dwarf_linebeginstatement.c: New file.
607 * dwarf_lineblock.c: New file.
608 * dwarf_linecol.c: New file.
609 * dwarf_lineendsequence.c: New file.
610 * dwarf_lineepiloguebegin.c: New file.
611 * dwarf_lineno.c: New file.
612 * dwarf_lineprologueend.c: New file.
613 * dwarf_onesrcline.c: New file.
614 * dwarf_lineno.c: Change interface to store result in object pointed
615 to by second parameter.
616 * libdw.h: Add prototypes for new functions. Change dwarf_lineno
617 prototype. Define Dwarf_Files and Dwarf_Lines.
618 * libdw.map: Add new functions.
619 * libdwP.h: Define Dwarf_Files_s and Dwarf_Lines_s.
620 * libdw_findcu.c: Don't initialize nlines field.
621
622 * dwarf_siblingof: Little optimization.
623
624 * dwarf_begin.c: Remember that the ELF descriptor must be closed.
625 * dwarf_end.c: Close ELF descriptor if free_elf is set.
626 * libdwP.h (struct Dwarf): Add free_elf field.
627
628 * Makefile.am (libdw_a_SOURCES): Add dwarf_getstring.c and
629 dwarf_offabbrev.c.
630 * dwarf_getstring.c: New file.
631 * dwarf_offabbrev.c: New file.
632 * libdw.map: Add dwarf_getstring and dwarf_offabbrev.
633 * dwarf_getabbrev.c (__libdw_getabbrev): Add new dbg and result
634 parameters. Don't allocate memory if not necessary and don't lookup
635 previous results if no CU given.
636 (dwarf_getabbrev): Adjust call to __libdw_getabbrev.
637 * dwarf_tag.c: Adjust call to __libdw_getabbrev.
638 * libdw.h: Declare dwarf_offabbrev and dwarf_getstring.
639 * libdwP.h: Change prototype for __libdw_getabbrev.
640
641 * dwarf_getabbrevattr.c: Add offsetp parameter. Fill in before
642 returning if this is wanted.
643
6442004-01-09 Ulrich Drepper <drepper@redhat.com>
645
646 * dwarf_nextcu.c: Add new parameter offset_sizep. Initialize it
647 with offset_size value.
648 * libdw.h: Adjust dwarf_nextcu prototype.
649 * libdwP.h (struct Dwarf_CU): Add offset_size member.
650 * libdw_findcu.c: Adjust dwarf_nextcu call. Initialize offset_size
651 member of new CU struct.
652 * dwarf_formstring.c: Depend on offset_size not address_size for
653 DW_FORM_strp handling.
654 * dwarf_form.c: Likewise for DW_FORM_strp and DW_FORM_ref_addr.
655
656 * dwarf_tag.c (__libdw_findabbrev): Return correct value for
657 failing lookup.
658 (dwarf_tag): Correctly recognize failed lookup.
659
660 * dwarf_end.c (cu_free): Call tdestroy for locs member. Use new
661 function noop_free.
662 * dwarf_error.c: Add message for DWARF_E_NO_BLOCK.
663 * dwarf_formblock.c: New file.
664 * dwarf_getloclist.c: Rewrite to handle a single block.
665 * libdw.h: Define Dwarf_Block. Rename Dwarf_Loc members. Remove
666 Dwarf_Locdesc definition. Declare dwarf_formblock. Remove
667 dwarf_getloclistent declaration.
668 * libdw.map: Add dwarf_formblock, remove dwarf_getloclistent.
669 * libdwP.h: Define struct loc_s and DWARF_E_NO_BLOCK.
670 Add locs member to struct Dwarf_CU.
671 * libdw_fundcu.c: Initialize locs member of new CU.
672 * Makefile.am (libdw_a_SOURCES): Add dwarf_formblock.c.
673 Remove dwarf_getloclistent.c.
674
6752004-01-07 Ulrich Drepper <drepper@redhat.com>
676
677 * libdw.h: Use __nonnull__ attribute only for gcc >= 3.3.
678 * libdwP.h: Likewise.
679
680 * dwarf_getloclist.c: New file.
681 * dwarf_getloclistent.c: New file.
682 * libdw.h: Define Dwarf_Loc and Dwarf_Locdesc.
683 Declare dwarf_getloclistent and dwarf_getloclist.
684 * libdw.map: Add dwarf_getloclistent and dwarf_getloclist.
685 * libdwP.h: Define DWARF_E_NO_LOCLIST.
686 * Makefile.am (libdw_a_SOURCES): Add dwarf_getloclistent.c and
687 dwarf_getloclist.c.
688
689 * dwarf_error.c: More error messages.
690
6912004-01-06 Ulrich Drepper <drepper@redhat.com>
692
693 * dwarf_getsrclines.c: Remove debugging support.
694
695 * dwarf_getsrcfiles.c: New file.
696 * dwarf_filesrc.c: New file.
697 * libdw.h: Declare these functions. Define Dwarf_File.
698 * libdwP.c: Adjust Dwarf_File_s definition.
699 * libdw.map: Add these functions.
700 * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrcfiles.c and
701 dwarf_filesrc.c.
702 * dwarf_getsrclines.c: Initialize cu->files.
703
7042004-01-05 Ulrich Drepper <drepper@redhat.com>
705
706 * libdw.h: Add more nonnull function attributes.
707
708 * dwarf_begin_elf.c (dwarf_begin_elf): Don't initialize mem_tail->next.
709 * dwarf_end.c (cu_free): New function.
710 (dwarf_end): Also free CU tree. Correct freeing of memory blocks.
711 * dwarf_error.c (errmsgs): Add new messages.
712 * dwarf_getsrc_die.c: New file.
713 * dwarf_getsrclines.c: New file.
714 * dwarf_lineno.c: New file.
715 * dwarf_linesrc.c: New file.
716 * dwarf_nextcu.c (dwarf_nextcu): Use read_*byte_unaligned_inc
717 instead of the *_inc-less variants.
718 * libdw.h: Define Dwarf_Line. Add some function attributes. Declare
719 dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno, and dwarf_linesrc.
720 * libdw.map: Add dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno,
721 and dwarf_linesrc.
722 * libdwP.h: Add more error codes.
723 (struct Dwarf): Remove mem_tail.next member.
724 (Dwarf_File): Define type.
725 (struct Dwarf_Line_s): Define type.
726 (struct Dwarf_CU): Add lines and nlines members.
727 (libdw_alloc): Define local variable _tail and use it.
728 Add some function attributes.
729 * libdw_alloc.c (__libdw_allocate): Don't initialize next member.
730 * libdw_findcu.c (__libdw_findcu): Initialize lines and nlines members.
731 * memory-access.h: Add unlikely for the endian conversion paths.
732 * Makefile.am (AM_CFLAGS): Add -std parameter.
733 (libdw_a_SOURCES): Add dwarf_getsrclines, dwarf_getsrc_die,
734 dwarf_lineno, and dwarf_linesrc.
735
7362003-08-11 Ulrich Drepper <drepper@redhat.com>
737
738 * Moved to CVS archive.