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
|
2009-12-30 DavidAnderson <davea42@earthlink.net>
* configure: Regenerated with autoconf 2.64.
2009-11-24 DavidAnderson <davea42@earthlink.net>
* tag_common.h: Updated 'standard tag table row' and
tag table column maximums now the DWARF4 entries are
in the .list files. Removed dos 'CR' characters at line ends.
* tag_tree.list, tag_attr.list: Added various
DWARF4 entries and added DW_TAG_enumeration_type
under DW_TAG_union_type.
2009-11-17 DavidAnderson <davea42@earthlink.net>
* dwarfdump.1: Document the -u option more fully.
* print_die.cc: Check for both info_flag and
cu_name_flag to decide when to print DIEs.
2009-10-12 DavidAnderson <davea42@earthlink.net>
* dwarfdump.cc: Updated dwarfdump version string to today.
2009-09-30 DavidAnderson <davea42@earthlink.net>
* dwarfdump.cc: Added globals for aranges checking and
to print the resulting error count.
* print_aranges.cc: Added checking that all 3 ways
of computing a cu_die_offset from an arange get
the same offset (checked with -r -ka).
* print_frames.cc: DW_CFA_cfa_offset_extended_sf
corrected to DW_CFA_offset_extended_sf.
The print_frames code now uses the dwarf_get_CFA_name() call
from libdwarf to print frame operation names.
* globals.h: New function SpaceSurround() so we can use
dwarf_get_CFA_name concisely in print_frames.cc.
Added aranges_result
and check_aranges so print_aranges.cc can use them.
2009-09-01 DavidAnderson <davea42@earthlink.net>
* tag_tree.list: We add
DW_TAG_class_type as a valid child of a DW_TAG_union_type.
2009-08-05 DavidAnderson <davea42@earthlink.net>
* gennames.c: Change include from getopt.h to unistd.h
so the code is more universally compilable.
2009-06-23: David Anderson <davea42@earthlink.net>
* strstrnocase.cc: Corrected typo in TEST code and
added a new test.
2009-06-22: David Anderson <davea42@earthlink.net>
* Makefile.in: switched to personally written
string comparison, strstrnocase.c.
* stristr.c: deleted.
* strstrnocase.c: New code, written by me so no
license issues.
* print_die.c: Call is_strstrnocase(),
the new function. Change a local variable to unsigned
to avoid a compiler warning about signed/unsigned comparison.
* dwarfdump.1: More fully document -S.
* globals.h: Create extern for is_strstrnocase().
2009-06-18: David Anderson <davea42@earthlink.net>
* configure: Regenerated.
* Makefile.in: Added stristr.o
* dieholder.h,print_die.cc, dwarfdump.cc,print_lines.cc,print_aranges.cc:
Added support for -S
* Test for regex, set HAV_REGEX for -S support.
* dwarfdump.1: document -S
* stristr.cc: New public domain source file.
* config.h.in: Adding HAVE_REGEX default value.
* globals.h: Adding support for -S.
2009-06-06: David Anderson <davea42@earthlink.net>
* fderegs.h: Remove unused line and switch
an argument to unsigned to avoid -Wall warning.
* naming.cc,naming.h: New files that implement the
ellipsis functionality of dwarfdump and defer to
libdwarf to get the names of the TAGs, FORMs, etc..
* gennames.cc: This file has moved to libdwarf, no longer
present in dwarfdump.
* print_static_vars.cc,print_static_funcs.cc,
print_sections.cc,print_strings.cc, print_locs.cc,
print_lines.cc, print_pubnames.cc,print_ranges.cc,
print_macros.cc,print_types.cc,tag_common.cc,
print_weaknames.cc, print_aranges.cc: Include
changed from dwarf_names.h to naming.h
* dwarfdump.cc: Updated DWARFDUMP_VERSION string.
* tag_tree.cc,tag_attr.cc: Include changed from
dwarf_names.h to naming.h. Remove dbg argument to get_TAG_name.
* print_die.cc,print_abbrevs.cc: Include changed from
dwarf_names.h to naming.h.
Calls to get_TAG_name (etc) no longer have a dbg argument.
* Makefile.in: We no longer build generated file names.c,
we build naming.c (hand coded, not generated).
* tag_common.h: Delete table of TAG names, libdwarf provides
the name strings now.
2009-05-10: David Anderson <davea42@earthlink.net>
* dwarfdump.cc: updated DWARF_VERSION string.
* print_frames.cc: When using the older frame register
interface with -v, suggest use of -R instead of erroring off
or segfaulting in dwarfdump.
2009-05-07: David Anderson <davea42@earthlink.net>
* Makefile.in: The dwarf_names* files are all
generated by C++ now, so clean cleans them out.
2009-05-04: David Anderson <davea42@earthlink.net>
* dwarf_names.awk, at_list.awk: deleted. gennames.cc replaces these.
* common.h, common.cc: Extracted simple utility routines
into their own files.
* tag_common.c, tag_common.h: Removed the simple utility
routines from these files to simplify dependencies.
* tag_attr.cc, tag_tree.cc: Include new common.h.
* print_frames.cc, print_frames.h: Adding address_size argument to call.
* print_locs.cc: Gets and uses CU-specific address_size.
* print_ranges.cc: Adding commentary.
* print_die.cc: adding DIE argument to ensure correct
address size used for the CU in question.
* Makefile.in: Now handles common.* and gennames.cc changes.
* gennames.cc: New code emitting string 'get name' source.
* print_frames.h: Adding new address_size argument to
get_string_from_locs().
* dwarf_names_new.h: Deleted from svn, this is generated.
2009-04-03: David Anderson <davea42@earthlink.net>
* Makefile.in: clean up 'clean' and 'distclean'
so that distributed files are not cleaned out by 'clean'
and all generated files (even those shipped in distribution)
are cleaned out by distclean.
* fderegs.h: New class that reads interface 2 and 3 libdwarf
and reduces to a common interface to simplify print_frames.cc
It also radically speeds up frame printing when there are
large numbers of registers in the ABI by using a different
libdwarf interface than before.
* print_frames.cc: Uses FdeRegs class to simplify and unify
getting frame registers. Uses a different libdwarf interface
to speed up register acquisition.
* dwarfdump.cc: Added calls to libdwarf to specify the correct
'same value' and 'undefined value' pseudo-register numbers.
* dwarfdump.1: Amplified -R and -x abi= documentation.
* dwconf.cc: Added comments and deleted a few duplicated lines.
* dwarfdump.conf: Added generic500 generic100 abis.
Now all ABIs have same_val_reg: and undefined_val_reg:
defined.
* dwarf_names_enum.h: delete dwarf_names_enum.h from svn,
it is a generated file.
2009-03-29: David Anderson <davea42@earthlink.net>
* Makefile.in: References dieholder.h and srcfilesholder.h.
* dieholder.h: New: Implements DieHolder class.
* srcfilesholder.h: New: Implements SrcfilesHolder class.
* print_aranges.cc: Use SrcfilesHolder and DieHolder classes.
* print_sections.cc: The dwarf_names_print_on_error flag
is now a bool.
* globals.h: Some interfaces use SrcfilesHolder and DieHolder classes.
Some values now external so they are visible (used in print_infos()
which is now in print_die.cc.
The dwarf_names_print_on_error flag is now a bool.
* print_lines.cc: Use SrcefilesHolder and DieHolder classes.
* dwarfdump.cc: If should_skip_this_cu() we need to
continue; and this fixes the omission of the continue.
print_infos() moved out of here.
* print_die.cc: Moved print_infos() to here. Interfaces use
DieHolder and SrcfilesHolder classes now.
* print_locs.cc: Add a new -v (verbose) output field so
entries can be matched to .debug_info output.
* dwarf_names.awk: The 'print on error' arg is now a bool.
Removed a superfluous space from the generated code.
* print_macros.cc: A ) was missing from the output.
* tag_tree.cc,tag_attr.cc: The 'print on error' argument
of the generated code (and all uses) is now a bool.
2009-02-28: David Anderson <davea42@earthlink.net>
* Created a new source base based on dwarfdump.
|