1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434
|
2015-12-31 David Anderson
* configure.in: Now allows --enable-shared and --disable-nonshared
* configure: regenerated.
2015-12-19 David Anderson
* dwarfdump.c: Now we print macros alone by CU with -m
(at least for DWARF5 macro format)
* print_lines.c(print_source_intro): Minor local
variable ordering change.
* print_macro.c(print_source_intro): Minor local
variable ordering change.
2015-12-19 David Anderson
* print_macro.c: Print the actual macro offset size we will use.
2015-12-18 David Anderson
* dwarfdump.c,globals.h print_die.c,print_lines.c,
print_macro.c,print_pubnames.c,print_ranges.c:
Removed globals elf_max_address and elf_address_size
in favor of local variables and new
global function get_address_size_and_max().
2015-12-16 David Anderson
* print_aranges.c, print_die.c: Ensure the four
error-reporting globals DIE_[CU_][global_]_offset are
set properly.
2015-12-16 David Anderson
* common.c: Update version string.
* dwarfdump.c: Update version string. Fix PRINT_CU_INFO()
to do what was intended (and not have a side effect).
* print_aranges.c: Folded a too-long line.
* print_die.c: Folded a line so both offsets listed on same line.
* print_macro.c: moved macro_context call above the print of
".debug_macro" so if the section does not exist we print nothing.
2015-12-15 David Anderson
* print_macro.c: Much of printing DWARF5 macros now works.
2015-12-13 David Anderson
* print_macro.c: Call new function dwarf_get_macro_ops_count() and
print returned values.
2015-12-12 David Anderson
* print_macro.c: Now does -vv intro with cu_die print too.
* print_macros.c: Only print .debug_macro name if there are some.
2015-12-11 David Anderson
* naming.h,naming.c: Added get_MACRO_name().
* print_macro.c: Now reads and prints macro5 header.
2015-12-11 David Anderson
* esb.c: esb_append now checks for NULL string pointer.
Added comment esb functions do NOT check for NULL pointers
generally.
2015-12-10 David Anderson
* esb.c: esb_get_copy() failed to account for the trailing NUL.
esb_get_copy was not being tested by SELFTEST. Fixed both issues.
2015-12-08 David Anderson
* common.c,dwarfdump.c: Update version string.
* print_frames.c: Fix trailing whitespace.
Implement an attempt at DW_CFA_METAWARE_info.
2015-12-08 David Anderson
* print_frames.c: Fix indents and remove trailing whitespace.
Add comments: Errors in DIE info just result in omitting
procedure names, no warning/errors.
* dwarfdump.c: Deleted Elf64_Ehdr *eh64 declaration
that can never be used.
2015-11-30 David Anderson
* print_frames.c: Remove trailing whitespace.
2015-11-30 David Anderson
* Makefile.in: Add print_macro.o to build list.
* dwarfdump.c: Add macro_flag flag to signal print
of DWARF5 debug_macro data.
* globals.h: Export new macro print function.
* print_die.c: Call new macro print function, skip that attr
in checking-only run..
2015-11-28 David Anderson
* globals.h: Added DEBUG_FRAME_EH_GNU define for consistency..
* print_frames.c: use the new dwarf_get_frame_section_name()
and dwarf_get_frame_section_name_eh_gnu() functions for
section names.
* print_lines.c: Use the new dwarf_get_line_section_name_from_die()
function for the section name.
* print_locs.c,print_macros.c,print_pubnames.c,print_static_funcs.c,
print_types.c,print_weaknames.c: Added comments. These are
places where the section is either obsolete or the section
name is rarely of any use.
2015-11-27 David Anderson
* dwarfdump.1: Mentions that with zdebug sections offsets
refer to expanded object section, not compressed section.
* print_aranges.c,print_die.c,print_lines.c,print_ranges.c,
print_strings.c: Get the real section name from libdwarf.
2015-11-26 David Anderson
* common.c,dwarfdump.c: Updated version string.
* config.h.in, configure.in, Makefile.in: Deals with
zlib when present.
2015-11-15 David Anderson
* Makefile.in: Now supports building in a clean separate directory.
2015-11-11 David Anderson
* print_abbrevs.c(dwarf_get_array_info): Initialize local variable.
* print_die.c(get_location_list): Initialize local variable.:
* dwarf_loc.h: Add declaration of _dwarf_loc_block_sanity_check().
* dwarf_loc.c: Call new function _dwarf_loc_block_sanity_check
* dwarf_loc2.c: Implement and call new function
_dwarf_loc_block_sanity_check to avoid duplicating code.
2015-11-07 David Anderson
* dwarfdump.1: Documented -x line5=.
* dwarfdump.c: Revised -g so it no longer turns on -i.
Revised the meaning of -g to mean use old loclist interfaces
(for testing the older interfaces with dwarfdump).
* print_die.c(get_small_encoding_integer_and_name): a dwarf_dealloc
referenced err whereas *err was correct.
Revised loclist output making it look a bit like DWARF5
even for DWARF2,3,4 output. Reads better, I think.
* print_locs.c: -l gets a 'no longer supported' message
as it was never safe to do anyway.
2015-11-01 David Anderson
* configure.in: Add -O0 to --enable-wall.
So if a coredump during debugging gdb will work really well.
* configure: Regenerated.
* print_frames.c: Ommitted a 'return' statement so
some output duplicated. Added in the missing return.
2015-11-01 David Anderson
* Makefile.in, configure.in: Implement --enable-wall for compile-time
checking.
* configure: Regenerate.
* print_die.c: Add DWARF5 DW_OPs and .debug_loc.dwo loclists are
handled.
Now uses either latest (DWARF5)
interfaces or earlier, repurposing the old -g option to select.
* print_frames.c,print_frames.h: Printing expressions
(in .debug_frame, .eh_frame)
now honors -g so DWARF5 expressions handled.
* print_lines.c: Fixed some formatting.
* print_locs.c: Changes reflecting code calling into print_frames.c
2015-10-26 David Anderson
* print_die.c: Removed debug printf.Corrected DW_OP_GNU_const_type
handling (cannot be fully reported
for certain new location operators).
2015-10-15 David Anderson
* print_die.c: Added DW_FORM_strp_sup,
same idea as DW_FORM_GNU_strp_alt.
2015-10-15 David Anderson
* dwarfdump.c: Add enum line_flag_type_e so we can test
all the srclines interfaces (4 of them). Expand -x
for that too.
* print_die.c: Support DW_FORM_GNU_strp_alt.
* print_lines.c: Update for old and new srclines
interfaces.
* globals.h: Added the enum line_flag_e variable for
recording -x line5= value.
2015-10-06 David Anderson
* dwarfdump.c: Now allow selecting alternate line table
reading code so line table routines can be tested thoroughly.
* print_lines.c: Uses one of the selected line table routine
sets. Adds new line access routine calls to test those too.
* globals.h: Declares new flag line_skeleton_flag;
* print_die.c: Moved a local declaration to where it is used.
Added a missing DW_DLV_ERROR check so in case of error
we do not leak memory.
2015-09-26 David Anderson
* dwarfdump.c, common.c: Update version string.
* print_lines.c: Added local variables for clarity
in a call, changed the dwarf_srclines_dealloc() location
to fully clean up after a two-level line table srcfiles call.
2015-09-26 David Anderson
* dwarfdump.c, common.c: Update version string.
2015-09-24 David Anderson
* dwarfdump.c, common.c: Update version string.
* print_lines.c: IA in line header hint is
really spelled IS. Fixed now.
* dwarf_elf_access.c: Added R_IA64* and R_390 relocation ifdefs
for cases where they are not in a test machines elf.h or the like.
2015-09-23 David Anderson
* print_lines.c: Removed accidental newline from output.
2015-09-22 David Anderson
* print_die.c: Removed trailing whitespace and fixed indentation mistake.
* print_lines.c: Fixed indentation and inconsistencies
in spelling line table field hints.
Leaving IA as has been for a long time
though it should be spelled IS.
2015-09-19 David Anderson
* print_lines.c: Tweaking two-level line table code, mostly
comments..
2015-09-17 David Anderson
* print_lines.c: Adding handling of experimental two-level
line table.
2015-09-15 Carlos Alberto Enciso
* common.c: For Windows version, add a symbol with the
release date (taken from the distributed compressed archive),
to be used by print_version_details() for better
tracking of versions.
* print_die.c: The text search (-S), now follows
the DW_AT_specification
and the DW_AT_abstract_origin attributes,
to get the associated name;
this finds the declaration and definitions
DIEs for a member functions
or the abstract and concrete instance DIEs for inlined functions.
Fix some C99 issues with local variable declarations in
get_attr_value().
* print_aranges.c: Add an extra newline in print_aranges().
2015-09-15 David Anderson
* print_die.c: for case DW_AT_dwo_id a c99-ism has been
changed to be like C89.
2015-09-14 David Anderson
* dwarfdump.c: Remove trailing space.
* print_frames.c, globals.h: print_frame_inst_bytes() defined and used
in one file, so made a static function, removed from globals.h
2015-09-13 David Anderson
* dwarfdump.c, common.c: Update version string.
2015-09-11 David Anderson
* dwarfdump.c: Update usage message to mention
-x tied= and update version strings.
* common.c: Update version string.
2015-09-11 David Anderson
* dwarfdump.c: Fixed copy/paste errors so DebugFission
code works (see tieddbg in the source).
2015-09-11 David Anderson
* dwarfdump.c, dwarfdump.1: Added -x tied=<path>
option so one can get .debug_addr data when referencing
a .dwp or .dwo. Tieing these together.
* print_die.c: Fixed indent errors.
2015-09-05 David Anderson
* tag_attr.list,tag_attr_ext.list,tag_tree.list: removed
trailing whitespace.
2015-07-12 David Anderson
* dwarfdump.c: Use dwoptind dwoptarg, not optind, optarg
* dwgetopt.c,dwgetopt.h,dwgetopttest.c,tag_attr.c,
tag_tree.c: Use dwoptind dwoptarg etc,
not optind, optarg, optopt op6error etc.
* print_die.c: updated commentary.
2015-05-07 David Anderson
* common.c, dwarfdump.c: Update version string.
* print_die.c: Print DW_AT_dwo_id properly as a Dwarf_Sig8 value.
2015-05-03 David Anderson
* print_die.c: Print the fission data from the
index section when we print cu header, not when printing cu DIE.
Moved cu header/cu die print code to functions, simplifying
calling code.
2015-05-01 David Anderson
* tag_attr.list: Added a DW_AT_signature and
moved a couple attributes to match the standard-document
order of attributes.
2015-03-10 David Anderson
* dwarfdump.c: Update version string.
* common.c: Update version string.
* dwgetopt.c: Was mishandling options
missing their required argument and
coredumping dwarfdump.
* getopttest.c: Added new tests to ensure
we have the dwgetopt() fixes working properly.
* Makefile.in: Added new test runs to 'make test'.
* print_die.c, print_lines.c: Removed instances
of trailing whitespace.
2015-03-09 David Anderson
* Makefile.in: added new tests of dwgetopt.
Runs not only dwgetopt but system getopt.
* dwarfdump.c: New function set_checks_off()
so if printing we don't do checks (intended
to be this way for a long time now).
Updated version string.
* common.c: Updated version string.
* print_die.c: Was not always recognizing unit DIES
DW_TAG_partial_unit or DW_TAG_type_unit where it saw
DW_TAG_compile_unit. Now does so.
* dwgetopt.c: Errors could lead to dwarfdump coredump. Fixed.
* getopttest.c: Added several new tests. Now one
can run single tests and run against either getopt or dwgetopt
(set at compile time of getopttest.c).
2015-03-03 David Anderson
* tag_attr.list: Removed DW_AT_sibling from DW_TAG_partial_unit.
DW_TAG_compile_unit. Removed DW_AT_containing_type from
DW_TAG_subprogram, DW_TAG_structure_type.
* dwarfdump.c,common.c: Update version strings.
* print_die.c: Fix indent mistakes. Add comment
in _dwarf_print_one_expr_op() that one error is
not presently realizable (FreeBSD compiler
noticed the situation).
* print_ranges.c: Fix indent mistakes.
* tag_attr.c: Remove trailing whitespace from a #include line.
2015-03-03 Carlos Alberto Enciso
* dwarfdump.c: Add allocate_range_array_info(),
release_range_array_info() calls to help fix range checking.
* globals.h: Add declarations of range checking functions.
* print_die.c: Add check_range_array_info() call.
Add record_range_array_info_entry() call.
Move all the range check code out of print_die.c.
Add handling of high_pc as an offset, not just as a value.
* print_ranges.c: Delete unneeded includes.
Add check_ranges_list() implementation moved from
print_die.c. Add new ranges check functions.
Range check error messages now appear later in the output,
though the content is identical.
* tag_attr_ext.list: Add DW_TAG_GNU_call_site and
DW_TAG_GNU_call_site_parameter tag attr combinations.
* tag_tree_ext.list: Add DW_TAG_GNU_call_site DW_TAG_call_site_parameter
2015-02-22 David Anderson
* configure.in: removed getopt.h from tests, we use
local dwgetopt now.
* dwgetopt.h: Function name is dwgetopt. Prototype named right now.
Copied from libdwarf dwgetopt.h
* configure: regenerated
* Makefile.in: build dwgetopt.o
* dwgetopt.c: Copied from libdwarf source.
* tag_attr.c,tag_tree.c: Now call dwgetopt() instead of getopt().
2015-02-04 David Anderson
* common.c,dwarfdump.c:Updated version string.
* print_debugfission.c: Now we are using a Dwarf_Sig8
for fission hash so we introduce an esb_s to do
the formatting.
* tag_attr.c: Now we format a more detailed message when
we detect an insufficient static tag_attr or tag_tree
array instance. It's code only used at build time so
just giving up is fine: someone changed dwarf.h.
* tag_attr.list: Adding new TAGs and new Attrs
from DWARF5. Since the DWARF5 standard not yet final
these could change!
* tag_attr_ext.list: Added new GNU attributes.
* tag_common.h: updated DW_TAG_last and DW_AT_last
STD_TAG_TABLE_ROWS STD_ATTR_TABLE_COLUMNS values
due to dwarf.h updates.
* tag_tree.list: New entries from DWARF5.
2015-01-31 David Anderson
* DWARFDUMPCOPYRIGHT: updated to
reflect changes today. Old versions
of the copyright notices still shown here.
* common.c,dwarfdump.c,dwconf.c,esb.c,makename.c,naming.c,
print_abbrevs.c,print_aranges.c,print_die.c,print_frames.c,
print_lines.c,print_locs.c,print_macros.c,print_pubnames.c,
print_ranges.c,print_reloc.c,print_sections.c,print_static_funcs.c,
print_static_vars.c,print_strings.c,print_types.c,print_weaknames.c,
strstrnocase.c,tag_attr.c,tag_attr.list,tag_attr_ext.list,
tag_common.c,tag_tree.c,tag_tree.list,tag_tree_ext.list,
uri.c,uritablebuild.c: Removed obsolete SGI postal
address and web references.
2015-01-31 David Anderson
* common.h,dwconf.h,esb.h,globals.h,makename.h,naming.h,
print_frames.h,print_reloc.h,print_sections.h,tag_common.h,uri.h:
The address and URI for SGI is obsolete and there is no
replacement so deleted some lines from the copyright
statements.
2015-01-30 David Anderson
* common.c,dwarfdump.c: Update version string.
* globals.h: Added format_sig8_string() to global functions.
* print_debug_fission.c: Updated .debug_cu/tu_index hash signature
code to match libdwarf (Dwarf_Sig8, not Dwarf_Unsigned).
Allow for missing hash (?).
* print_die.c: Use format_sig8_string().
2015-01-29 David Anderson
* print_die.c: Two places used C99-only variable
declaration. Moved declarations up to conform to C90.
2015-01-24 David Anderson
* dwgetopt.c,dwgetopt.h: Using NetBSD getopt source with
modifications to support :: for uniform behavior
for all users. Not all getopt are the same. Named dwgetopt().
* dwgetopttest.c: Does tests of dwgetopt() for conformance
with dwarfdump requirements. See 'make selftest'.
* Makefile.in: Now has selftest for dwgetopt and
links dwgetopt.o into dwarfdump.
* esb.c: Now prints PASS on success and counts errors.
* dwarfdump.c: Now calls dwgetopt and includes dwgetopt.h
Added a new global so we recognize where needed
not to do some checks when checking (
for debugfission some things not sensible).
* globals.h: Removed cu_offset (not needed) and added
suppress_checking_on_dwp flags.
* print_die.c:renamed cu_offset to be a static: dieprint_cu_offset
Reset it when finished with a CU. (-k checks got into trouble
when both .debug_info and .debug_types present).
2015-01-21 David Anderson
* common.c, dwarfdump.c: Update version string.
* print_die.c: For a DW_FORM_ref_sig8 type signature
value, if not printing the actual FORM print
<type signature> so the hex value makes sense.
It is obviously not a .debug_info global offset.
Now prints debug fission (dwp) information for
each CU with such.
2015-01-18 David Anderson
* common.c, dwarfdump.c: Update version string.
2015-01-15 David Anderson
* dwarfdump.c: dump_unique_errors_table() ifdef out
of normal compiles, it is unused. Unused local variables
removed.
Update version string.
* esb.c: Moved stdarg.h include just after stdio.h include
for positioning consistency.
* globals.h: Added stdarg.h include just after stdio.h
include as we use va_list a lot and so stdarg.h
is required.
* print_debugfission.c: Remove two unused local variables.
* print_frames.c: Remove trailing whitespace.
* tag_attr.c: #include stdarg.h. Add {} to array initializers
output to avoid compiler warning.
* tag_common.c: Move stdarg.h include to just after
stdio.h for positioning consistency.
Update version string.
* tag_tree.c: Revised include order to start with
globals.h and to not duplicate includes of stdio.h etc.
Add {} to array initializers
output to avoid compiler warning.
* testesb.c: Add include of stdarg.h.
2015-01-12 David Anderson
* tag_common.c: Add comments about va_start, va_end.
* esb.c: Add comments about va_start, va_end.
Add va_end in the selftest code.
* common.c: Update version string.
* dwarfdump.c: Update version string. Add va_end()
and comments about va_end.
2015-01-08 David Anderson and Carlos Alberto Enciso
* Makefile.in: add selftest: rule, which tests esb.c
* dwarfdump.c: Add new options -O file=path, -kD -kG -ku kuf.
New checking and reporting features intended to give a
report on attribute and tag usage.
Update version string.
* common.c: Update version string.
* esb.c, esb.h: Added new interface using stdarg.
Added self-test feature.
* dwarf_makename.c: new #pragma (not Linux/Unix related).
* print_die.c: Implements collecting the new statistics
dwarfdump reports.
* print_lines.c: New statistics collected.
* tag_attr.c: New checks for the tag/attr table correctness.
* tag_attr.list: Fixes duplicated entries.
* tag_attr.list_ext: Adds APPLE attribute DW_AT_APPLE_optimized
that llvm emits.
* tag_common.c: bad_line_input() now allows stdarg calls so
its easier to emit good error messages.
* tag_common.h: bad_line_input() arg list changed a little. Stdarg now.
* tag_tree.c: New tag tree checking done. New statistics
available.
* tag_tree.list: Adds DW_TAG_unspecified_type,
DW_TAG_rvalue_reference_type,
DW_TAG_restrict_type.
* tag_tree_ext.list: Adds DW_TAG_GNU_template_template_parameter.
Fixes duplication of entries.
2015-01-05 David Anderson
* dwarfdump.c: Don't call dwarf_finish() if
the dwarf-init call failed.
* common.c,dwarfdump.c: Updated version string.
2015-01-01 David Anderson
* A new year begins.
|