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