shown by dwarfdump.
dwarfdump/dwarfdump.1
Now we get the real section names from
libdwarf.
dwarfdump/print_aranges.c
dwarfdump/print_die.c
dwarfdump/print_lines.c
dwarfdump/print_ranges.c
dwarfdump/print_strings.c
Add functions to get the true
section names.
libdwarf/dwarf_die_deliv.c
libdwarf/dwarf_line.c
libdwarf/libdwarf.h.in
Document the new functions. Version 2.35
libdwarf/libdwarf2.1.mm
Regenerate.
libdwarf/libdwarf2.1.pdf
that emits DWARF4. The check failed when:
a) The DW_TAG_compile_unit, does have a DW_AT_low_pc and DW_AT_ranges.
Dwarfdump is expecting the pair DW_AT_low_pc and DW_AT_high_pc values.
b) The DW_AT_high_pc is an offset from DW_AT_low_pc.
Dwarfdump is expecting the DW_AT_high_pc to be a relocated address.
change to make consistent use of 'if', 'for' and 'while'.
===================
dwarfdump.c lines 73-78 Any time an 'extern foo' appears in a .c or a .cc
file it represents a current or future error that cannot be easily detected
at compile time. Bad.
Instead, put print_attributes_encoding and current_cu_die_for_print_frames
declarations into appropriate .h files (possibly new one or ones?) and
include the header in each .c/.cc where it is needed. That prevents future
spelling errors from causing mysterious runtime failures due to argument
errors: the compiler will catch argument errors.
Now line 56-58 is special in that it refers to some windows thing, not
defined in dwarfdump. So that one perhaps should or must stay as written.
===================
dwarfdump.c line 549: the variable 'bitmap' should be named something else.
bitmap is just too generic, not helpful to the reader. Easier for a
reviewer to see this sort of issue than the author :-)
Possibly local_section_bitmap? Somehow get 'section' in there in that
function-argument-name?
=======
dwarfdump.c: good catch on the indent errors in qsort_compare_compiler(),
I have no idea how I failed to run dicheck on that.
======
dwarfdump.c line 1043. The 'Just for the moment' comment is odd. What
does that mean? Why 'for the moment'? I am not going to try to guess
why you did that, but it has to be somehow wrong?
Either the code or the comment?
========
dwarfdump.c line 1162. The comment says do not do reloc_flag = TRUE
yet you added exactly that! Yikes! I don't know what to do about
this, but something has to change. Comment or statement. Can we detect
non-elf somehow? We probably already do, but...
===================
dwarfdump.c line 1630. Oops. Good catch on removing the mistaken extra
break;