12009-12-30  DavidAnderson <davea42@earthlink.net>
2      * configure: Regenerated with autoconf 2.64.
3      * config.guess, config.sub: Delete these, best not
4        to have them.
52009-11-24  DavidAnderson <davea42@earthlink.net>
6      * tag_common.h: Updated 'standard tag table row' and
7        tag table column maximums now the DWARF4 entries are
8        in the .list files. Removed dos 'CR' characters at line ends.
9      * tag_tree.list, tag_attr.list: Added various
10        DWARF4 entries and added DW_TAG_enumeration_type
11        under DW_TAG_union_type.
122009-11-17  DavidAnderson <davea42@earthlink.net>
13      * dwarfdump.1: Document the -u option more fully.
14      * print_die.c: Check for both info_flag and
15        cu_name_flag to decide when to print DIEs.
162009-10-12  DavidAnderson <davea42@earthlink.net>
17      * dwarfdump.c: Updated dwarfdump version string to today.
182009-09-30  DavidAnderson <davea42@earthlink.net>
19      * dwarfdump.c: Added globals for aranges checking and
20        to print the resulting error count.
21      * print_aranges.c: Added checking that all 3 ways
22        of computing a cu_die_offset from an arange get
23        the same offset (checked with -r -ka).
24      * print_frames.c: DW_CFA_cfa_offset_extended_sf
25        corrected to DW_CFA_offset_extended_sf.
262009-09-01  DavidAnderson <davea42@earthlink.net>
27      * tag_tree.list:  We add
28        DW_TAG_class_type as a valid child of a DW_TAG_union_type.
292009-08-05  DavidAnderson <davea42@earthlink.net>
30      * gennames.c: Change include from getopt.h to unistd.h
31       so the code is more universally compilable.
322009-07-24: David Anderson <davea42@earthlink.net>
33      * tag_attr.c: Remove duplicate include of naming.h.
342009-06-23: David Anderson <davea42@earthlink.net>
35      * strstrnocase.c: Corrected typo in TEST code and
36              added a new test.
372009-06-22: David Anderson <davea42@earthlink.net>
38      * Makefile.in: switched to personally written
39        string comparison, strstrnocase.c.
40      * stristr.c: deleted.
41      * strstrnocase.c: New code, written by me so no
42        license issues.
43      * print_die.c: Call is_strstrnocase(), the new function.
44      * dwarfdump.1: More fully document -S.
45      * globals.h: Create extern for is_strstrnocase().
462009-06-18: David Anderson <davea42@earthlink.net>
47      * configure:  Regenerated.
48      *  Makefile.in: Add stristr.o
49      * stristr.c: public domain source added to dwarfdump
50      * print_die.c: Add code and arguments to support -S.
51      * print_lines.c: print_one_die argument list changed, added
52        the require argument..
53      * dwarfdump.c: Added the -S option.
54
55      * configure.in: Add test to set HAVE_REGEX for the -S option.
56      * dwarfdump.1: Document the -S options.
57      * config.h.in: Set the default HAVE_REGEX
58      * globals.h: Add -S globals, change the print_one_die()
59        prototype to support -S.
60      * print_aranges.c: Alter the print_one_die calls added
61        to support -S.
622009-06-06: David Anderson <davea42@earthlink.net>
63      * naming.c,naming.h: New files that implement the
64        ellipsis functionality of dwarfdump and defer to
65        libdwarf to get the names of the TAGs, attributes, FORMs, etc.
66      * gennames.c: This file has moved to libdwarf, no longer
67        present in dwarfdump.
68      * esb.h, esb.c: Change certain char* arguments to const char*
69        to avoid compiler warnings.
70      * print_static_vars.c,print_static_funcs.c,
71        print_sections.c,print_strings.c, print_locs.c,
72        print_lines.c, print_pubnames.c,print_ranges.c,
73        print_macros.c,print_types.c,tag_common.c,
74        print_weaknames.c, print_aranges.c: Include
75        changed from dwarf_names.h to naming.h
76      * tag_common.h: Removed the tag_name array, libdwarf
77        provides the TAG, ATTR, etc name strings now.
78      * dwarfdump.c:  Updated DWARFDUMP_VERSION string.
79      * tag_tree.c,tag_attr.c: Include changed from dwarf_names.h to
80        naming.h.  simplified long complicated lines, remove dbg argument
81        to get_TAG_name.
82      * print_die.c,print_abbrevs.c:  Include changed from dwarf_names.h
83        to naming.h.
84        Calls to get_TAG_name (etc) no longer have a dbg argument.
85      * Makefile.in: We no longer build generated file names.c,
86        we build naming.c (hand coded, not generated).
872009-05-07: David Anderson <davea42@earthlink.net>
88      * dwarfdump.cc: updated DWARF_VERSION string.
89      * Makefile.in: dwarf_names* are now generated by C,
90        so 'clean' now cleans them out.
912009-05-04: David Anderson <davea42@earthlink.net>
92      * common.h, common.c: Extracted simple utility routines
93        into their own files.
94      * dwarf_names.awk, at_list.awk: deleted. gennames.c replaces these.
95      * tag_common.c, tag_common.h: Removed the simple utility
96        routines from these files to simplify dependencies.
97      * tag_attr.c, tag_tree.c: Include new common.h.
98      * print_frames.c: Adding address_size argument to call.
99      * print_frames.h: Adding new address_size argument to
100        get_string_from_locs() declaration.
101      * print_locs.c: Gets and uses CU-specific address_size.
102      * print_ranges.c: Adding commentary.
103      * print_die.c: adding DIE argument to ensure correct
104        address size used for the CU in question.
105      * Makefile.in: Now handles common.* and gennames.c changes.
106      * gennames.c: New code emitting string 'get name' source.
107        Replaces awk source.
1082009-04-04: David Anderson <davea42@earthlink.net>
109      * Makefile.in: clean up 'clean' and 'distclean'
110        so that distributed files are not cleaned out by 'clean'
111        and all generated files (even those shipped in
112        distribution) are cleaned out by distclean.
113      * dwarfdump.c: Now calls the new
114        libdwarf function dwarf_set_frame_cfa_value() and other
115        such functions to specify all the values libdwarf needs.
116      * dwarfdump.conf: Sets the cfa_reg: value to
117        a new higher value (1436) to avoid conflict with largest
118        known register count.
119      * dwconf.h: Corrected commentary on DW_FRAME_CFA_COL3.
120      * dwconf.c: Now uses DW_FRAME_CFA_COL3 as default for
121        interface 3, rather than a directly typed number.
122        Sets undefined-value and same-value pseudo-register numbers.
1232009-04-03: David Anderson <davea42@earthlink.net>
124      * dwarfdump.1: Amplified -R and -x abi= documentation.
125      * dwarfdump.conf: Added generic500 generic100 abis.
1262009-03-29: David Anderson <davea42@earthlink.net>
127      * print_die.c: Moved print_infos() to here.
128      * dwarfdump.c: Moved print_infos() out of here.
129      * globals.h: Declarations changed to allow moving
130        print_infos().
131      * dwarf_names.awk: Eliminate a pointless space before
132        a newline in the generated code.
133      * print_locs.c: Add -v section offset output to loclist printing
134        of the debug_loc section so the entries can be matched to
135        loclist printing initiated from .debug_info.
1362009-03-24: David Anderson <davea42@earthlink.net>
137      * README: Would be nice if all could use dwarfdump2,
138        not this C dwarfdump.
139      * dwconf.c: Initialize new frame regs configure data and
140        parse it in the .conf file. Fixed old formatting mistakes.
141      * dwconf.h: Add new fields to frame regs configure struct. Make -R
142        be 1200 regs so that -R covers all the currently popular ABIs.
143      * print_die.c, print_lines.c, print_frames.c: Change %# to
144        0x%  so that zero prints with leading 0x consistently.
145      * dwarfdump.c: -R is now 1200 registers. So config function
146        changed and usage message needed update.
147      * dwarfdump.1: Change -R to 1200 and document -C.
148      * dwarfdump.conf: Add same_val_reg:  and undefined_val_reg:
149        initial values where needed or interesting.
150      * print_macros.c: Fix old formatting mistake.
1512009-03-23: David Anderson <davea42@earthlink.net>
152      * print_sections.h: New file for print_*.c
153        sources.
154      * dwarfdump.1: Added -C documentation.
155      * Makefile.in: updated 'mandir' so it works with
156        current configure (so now make install properly installs
157        the man page).
158      * print_sections.c: Moved get_fde_proc_name() and related
159        code to print_frames.c, where it is referenced.
160      * dwarfdump.c: No longer turn on info_flag with -f or -F.
161        Moved the Usage strings into a string table and loop through
162        to print them.
163      * globals.h: Removed  get_fde_proc_name() declaration.
164      * print_frames.c: Added  get_fde_proc_name() here
165        and removed the 'inlined:' from the abstract origin
166        name.
1672009-03-20: David Anderson <davea42@earthlink.net>
168      * print_static_vars.c, print_static_funcs.c, print_strings.c,
169        print_locs.c, print_pubnames.c, print_lines.c, print_ranges.c,
170        print_abbrevs.c, print_macros.c, print_types.c, print_weaknames.c,
171        print_aranges.c: Moved the print_* functions from print_sections.c
172        into individual sourcefiles.
173      * Makefile.in: Now lists the new sourcefiles.
174      * print_sections.c: Deleted code moved to individual sourcefiles.
175        Added code to try to find the name from a DW_AT_abstract_origin
176	DIE when a subprogram DIE itself has no DW_AT_name;
177      * dwarfdump.c: Remove unused local variables. Use DWARFDUMP_VERSION
178        #define to set version string.
179      * tag_tree.c: Fix && || problem with parentheses.
180      * tag_attr.c: Fix && || problem with parentheses.
181      * print_frames.c: Moved the 'print_frames' function itself from
182        print_sections.c to here.
1832009-03-17: David Anderson <davea42@earthlink.net>
184      * globals.h: Created predicate function
185        should_skip_this_cu() predicate function.  Eliminating
186        code duplication.
187      * print_frames.c: Fix a hex value output to have a leading
188        0x as all hex values should (when printed).
189      * print_sections.c: Call should_skip_this_cu(), which
190        replaces duplicate code.
191        Fix the arange print: now the hex value has a leading 0x
192        as all hex values should.  get_proc_name() had local
193        variable funcnamefound initialized incorrectly, now is
194        set to 0 as it should be. get_nested_proc_name()
195        now initializes string buffers. get_fde_proc_name()
196        now initializes its string buffer.  Surprisingly
197        things worked adequately before in spite of the errors.
198      * dwarfdump.c: Call should_skip_this_cu(). Implementation
199        of that new function is in this source file.
2002009-03-16: David Anderson <davea42@earthlink.net>
201      * print_frames.c:DW_CFA_restore output had a spurious newline.
202        Removed 2 pointless blank lines an initialized 2 local variables.
203      * print_sections.c: Removed a pointless redeclaration of a function
204        in libdwarf.h. check_info_offset_sanity() was missing a
205        return statement in one place, which could lead to spurious
206        extra (and silly) error text.
2072009-03-09: David Anderson <davea42@earthlink.net>
208      * print_die.c: Make a comment easier to understand.
2092009-02-28: David Anderson <davea42@earthlink.net>
210      * Makefile.in: add tmp-*.tmp to the 'clean' rule.
2112009-02-17: David Anderson <davea42@earthlink.net>
212      * print_sections.c,print_die.c,tag_common.c,print_frames.c: C99
213        in-line declarations and // comments are not intended here,
214        this removes a few that were introduced accidentally.
2152009-02-16: David Anderson <davea42@earthlink.net>
216      * Makefile.in: Removed some use of awk and
217        simplified some shell scripting here.
218        renamed temp files, no longer named with
219        underbars, they uniformly start with 'tmp-'.
220      * print_sections.c: Added the new argument required
221        by the updated dwarf_names.c functions argument lists.
222      * tag_tree_ext.list: List 'common extensions'
223        of tag->tag relationships.
224      * tag_attr_ext.list: List 'common extensions'
225        of tag->attr relationships.
226      * print_die.c: New 'common extension' tables used
227        for checking tag->tag and tag->attr relationships
228        unless turned off with -C.
229      * dwarf_names.awk: Removed tabs so generated names.c not so
230        spread out. Added argument to the generated functions so
231        tag_tree.c, tag_attr.c can use these generated functions nicely.
232      * dwarfdump.c: Adding -C option, which exposes
233        some 'common extensions' of dwarf uses as DWARF CHECK
234        (-ka) warnings.  By default these extensions not reported
235        as warnings.
236      * tag_tree.c: Now generates base and extensions tables.
237        Code in common with tag_attr.c is in tag_common* files.
238      * tag_attr.c: Now generates base and extensions tables.
239        Code in common with tag_tree.c is in tag_common* files.
240      * tag_common.c, tag_common.h: New files with the common
241        data extracted from tag_tree.c and tag_attr.c
242      * globals.h: global flag added for -C.
243
2442009-02-14: David Anderson <davea42@earthlink.net>
245      * configure.in: Define --enable-nonstandardprintf
246      * config.h.in: new #undef HAVE_NONSTANDARD_PRINTF_64_FORMAT
247      * configure: Regenerated.
248      * config.guess, config.sub: Latest version from GNU.
249      * Makefile.in: Referenced configure variable to avoid
250        irritating message at configure time.
251      * README: document --enable-nonstandardprintf
252      * print_sections.c, print_die.c, print_reloc.c, dwarfdump.c,
253        dwconf.c, print_frames.c: Use libdwarf.h DW_PR_ printf macros
254        for for better portability.
2552009-02-13: David Anderson <davea42@earthlink.net>
256      * print_sections.c: Ensure we are checking line table header
257        correctness whichever line-table-print code is being used.
258        Allow ARM line header table (which has a bug) to be used.
259      * dwarfdump.c: Print lines_result total with checking on.
260      * globals.h: Add lines_result global to count line botches.
2612009-02-11: David Anderson <davea42@earthlink.net>
262      * print_sections.c, print_die.c: DWARF_CHECK_ERROR*
263        macros now get the count struct passed in.
264      * tag_tree.c, tag_attr.c: Add a comment in the output
265        identifying the output as generated code and
266        with the generation date/time inserted.
267      * globals.h: Accept the struct in DWARF_CHECK_ERROR*
268        macros so we can update the error count in the macro.
2692009-01-31: David Anderson <davea42@earthlink.net>
270      * Makefile.in: Remove compilation of _tag_attr_table.c
271        and _tag_tree_table.c as those are #included in
272        print_die.c, not separately compiled.
273      * print_frames.c: A formerly-static function now called
274        from another file, so declare it here.
275      * print_sections.c: Improve the printing of the .debug_loc
276        section.
277      * print_die.c: A  couple of errors were missing their error
278        count increment.
279      * tag_attr.list tag_tree.list: Some normal relationships
280        were left out of the tables: fixed now.
281