Home | History | Annotate | Download | only in src
      1 2012-01-31  Mark Wielaard  <mjw (a] redhat.com>
      2 
      3 	* readelf.c (attr_callback): Don't special case DW_FORM_sec_offset.
      4 
      5 2012-01-21  Ulrich Drepper  <drepper (a] gmail.com>
      6 
      7 	* addr2line.c: Update copyright year.
      8 	* ar.c: Likewise.
      9 	* elfcmp.c: Likewise.
     10 	* elflint.c: Likewise.
     11 	* findtextrel.c: Likewise.
     12 	* ld.c: Likewise.
     13 	* nm.c: Likewise.
     14 	* objdump.c: Likewise.
     15 	* ranlib.c: Likewise.
     16 	* readelf.c: Likewise.
     17 	* size.c: Likewise.
     18 	* strings.c: Likewise.
     19 	* strip.c: Likewise.
     20 	* unstrip.c: Likewise.
     21 
     22 	* nm.c (argp_children): Define.
     23 	(argp): Hook up argp_children.
     24 	(handle_ar): Optimize puts call.
     25 	(show_symbols_bsd): Use positional parameters to also print color
     26 	codes.  Don't print STT_FILE symbols.
     27 	* objdump.c (options): Improve help text.
     28 	(argp_children): Define.
     29 	(argp): Hook up argp_children.
     30 	(disasm_info): Add elements for color codes.
     31 	(disasm_output): Print color codes as well.
     32 	(show_disasm): Set up disasm_info data for callback.
     33 
     34 2012-01-20  Roland McGrath  <roland (a] hack.frob.com>
     35 
     36 	* arlib-argp.c (arlib_deterministic_output): Initialize from
     37 	configured value.
     38 	(help_filter): New function.
     39 	(argp): Use it.
     40 
     41 	* ar.c (main): Handle oper_none as usage error.
     42 
     43 	* arlib-argp.c (options, parse_opt): Grok -U as inverse of -D.
     44 
     45 	* ranlib.c (argp): Use arlib_argp_children.
     46 
     47 	* arlib.c (arlib_init): Obey arlib_deterministic_output.
     48 
     49 	* arlib-argp.c: New file.
     50 	* Makefile.am (libar_a_SOURCES): Add it.
     51 	* arlib.h (arlib_deterministic_output, arlib_argp_children):
     52 	Declare new variables.
     53 	* ar.c (deterministic_output): Variable removed.
     54 	(do_oper_insert): Use arlib_deterministic_output instead.
     55 	(options, parse_opt): Don't handle -D here.  Add group numbers.
     56 	(argp): Use arlib_argp_children.
     57 
     58 2011-12-20  Roland McGrath  <roland (a] hack.frob.com>
     59 
     60 	* readelf.c (print_debug): Initialize DUMMY_DBG.elf.
     61 	Reported by Karel Klic <kklic (a] redhat.com>.
     62 
     63 2011-11-05  Roland McGrath  <roland (a] hack.frob.com>
     64 
     65 	* ar.c (deterministic_output): New flag variable.
     66 	(options, parse_opt): Grok -D to set it.
     67 	(do_oper_insert): When set, use zero from mtime, uid, and gid.
     68 
     69 	* ar.c (do_oper_insert): Fix check on elf_rawfile return value.
     70 
     71 2011-10-04  Marek Polacek  <mpolacek (a] redhat.com>
     72 
     73 	* readelf.c (register_info): Assume the right size of an array.
     74 
     75 2011-10-03  Ulrich Drepper  <drepper (a] gmail.com>
     76 
     77 	* nm.c: Recognize option --mark-special.  Still recognize --mark-weak
     78 	but don't show it in help anymore.
     79 	(mark_special): Renamed from mark_weak.
     80 	(parse_opt): Adjust.
     81 	(class_type_char): Take additional parameters for ELF file and ELF
     82 	header.  Treat TLS symbols like objects.
     83 	In case of D symbols, show u for unique symbols, R for symbols in
     84 	read-only sections, B for symbols in BSS sections.
     85 	(show_symbols_bsd): Take additional parameters for ELF file and ELF
     86 	header.  Adjust for class_type_char change.  Show TLS symbols with
     87 	@ after them in case --mark-special is selected.
     88 	(show_symbols_posix): Likewise.
     89 	(show_symbols): Adjust calls to show_symbols_bsd and
     90 	show_symbols_posix.
     91 	(show_symbols_sysv): Avoid printing adress and size for undefined
     92 	symbols.  Don't print initial special entry and section entries.
     93 
     94 2011-10-02  Ulrich Drepper  <drepper (a] gmail.com>
     95 
     96 	* Makefile.am (demanglelib): Define.
     97 	(nm_LDADD): Add demanglelib.
     98 	* nm.c (options): Add -C option.
     99 	(demangle): Define as global variable.
    100 	(parse_opt): Recognize -C.
    101 	(show_symbols_sysv): Handle demangling.
    102 	(show_symbols_bad): Likewise.
    103 	(show_symbols_posix): Likewise.
    104 	(show_symbols): Likewise.
    105 
    106 2011-07-09  Roland McGrath  <roland (a] hack.frob.com>
    107 
    108 	* readelf.c (options, parse_opt): Grok -W/--wide and ignore it.
    109 
    110 	* ar.c (parse_opt): Grok -u.
    111 
    112 2011-05-30  Mark Wielaard  <mjw (a] redhat.com>
    113 
    114 	* strip.c (relocate): Make offset check overflow-proof.
    115 
    116 2011-05-23  Mark Wielaard  <mjw (a] redhat.com>
    117 
    118 	* strip.c (relocate): Take new arguments is_rela to indicate
    119 	whether the relocation is from a SHT_REL or SHT_RELA section.
    120 	Relocate against any debug section symbol, not just STT_SECTION
    121 	symbols. For SHT_REL relocations, fetch addend from offset and
    122 	add it to symbol value if not zero.
    123 
    124 2011-05-23  Mark Wielaard  <mjw (a] redhat.com>
    125 
    126 	* strip.c (OPT_RELOC_DEBUG): New option.
    127 	(argp_option): Add new --reloc-debug-sections option.
    128 	(main): Check new option.
    129 	(parse_opt): Likewise.
    130 	(handle_elf): Remove any relocations between debug sections
    131 	in ET_REL for the debug file when requested.
    132 
    133 2011-05-18  Mark Wielaard  <mjw (a] redhat.com>
    134 
    135 	* strip.c (handle_elf): Make sure all sections of a removed group
    136 	section are removed too. Don't discard SHT_GROUP sections, copy
    137 	section table before it gets modified. Section group signature
    138 	symbols don't have to be retained.
    139 
    140 2011-05-16  Jakub Jelinek  <jakub (a] redhat.com>
    141 
    142 	* readelf.c (print_ops): Handle DW_OP_GNU_const_type,
    143 	DW_OP_GNU_regval_type, DW_OP_GNU_deref_type, DW_OP_GNU_convert
    144 	and DW_OP_GNU_reinterpret.
    145 
    146 2011-05-17  Mark Wielaard  <mjw (a] redhat.com>
    147 
    148 	* readelf.c (dwarf_tag_string): Fixup DW_TAG_GNU_call_site and
    149 	DW_TAG_GNU_call_site_parameter return strings.
    150 
    151 2011-05-11  Marek Polacek  <mpolacek (a] redhat.com>
    152 
    153 	* nm.c (show_symbols_sysv): Remove unused if/else, remove
    154 	unused `prefix' and `fname' parameters.
    155 
    156 2011-05-07  Marek Polacek  <mpolacek (a] redhat.com>
    157 
    158 	* unstrip.c (compare_sections_nonrel): Mark this function as static.
    159 
    160 2011-04-26  Mark Wielaard  <mjw (a] redhat.com>
    161 
    162 	* readelf.c (handle_notes_data): Call ebl_object_note_type_name
    163 	with note name.
    164 
    165 2011-04-14  Mark Wielaard  <mjw (a] redhat.com>
    166 
    167 	* readelf.c (options): Add gdb_index.
    168 	(section_e): Define section_gdb_index.
    169 	(parse_opt): Recognize gdb_index debug-dump argument.
    170 	(print_gdb_index_section): New function.
    171 	(print_debug): Add gdb_index to debug_sections.
    172 
    173 2011-03-24  Petr Machata  <pmachata (a] redhat.com>
    174 
    175 	* readelf.c (print_debug_line_section): Emit initial space for all
    176 	opcode lines.  Print offset in front of each opcode.
    177 
    178 2011-03-22  Marek Polacek  <mpolacek (a] redhat.com>
    179 
    180 	* readelf.c (handle_dynamic): Don't segfault at DT_PLTREL case.
    181 
    182 2011-03-22  Mark Wielaard  <mjw (a] redhat.com>
    183 
    184 	* readelf.c (dwarf_tag_string): Support DW_TAG_GNU_call_site
    185 	and DW_TAG_GNU_call_site_parameter.
    186 	(dwarf_attr_string): Support DW_AT_GNU_call_site_value,
    187 	DW_AT_GNU_call_site_data_value,
    188 	DW_AT_GNU_call_site_target,
    189 	DW_AT_GNU_call_site_target_clobbered,
    190 	DW_AT_GNU_tail_call,
    191 	DW_AT_GNU_all_tail_call_sites,
    192 	DW_AT_GNU_all_call_sites,
    193 	and DW_AT_GNU_all_source_call_sites.
    194 	(print_ops): Handle DW_OP_GNU_entry_value.
    195 	(attr_callback): Handle DW_AT_GNU_call_site_value,
    196 	DW_AT_GNU_call_site_data_value,
    197 	DW_AT_GNU_call_site_target,
    198 	and DW_AT_GNU_call_site_target_clobbered.
    199 
    200 2011-03-10  Mark Wielaard  <mjw (a] redhat.com>
    201 
    202 	* elflint.c (check_symtab): Use ebl_check_st_other_bits.
    203 
    204 2011-02-27  Jan Kratochvil  <jan.kratochvil (a] redhat.com>
    205 
    206 	* readelf.c (reset_listptr): Clear TABLE->TABLE.
    207 
    208 2011-02-25  Mark Wielaard  <mjw (a] redhat.com>
    209 
    210 	* readelf.c (dwarf_attr_string): Add DW_AT_GNU_* handling.
    211 	(dwarf_form_string): Properly format and return unknown form.
    212 
    213 2011-02-23  Roland McGrath  <roland (a] redhat.com>
    214 
    215 	* readelf.c (section_name): New function.
    216 	(print_debug_abbrev_section): Use it instead of constant.
    217 	(print_debug_aranges_section): Likewise.
    218 	(print_debug_ranges_section): Likewise.
    219 	(print_debug_units): Likewise.
    220 	(print_debug_line_section): Likewise.
    221 	(print_debug_loc_section): Likewise.
    222 	(print_debug_macinfo_section): Likewise.
    223 	(print_debug_pubnames_section): Likewise.
    224 	(print_debug_str_section): Likewise.
    225 	(print_debug) [USE_ZLIB]: Match .zdebug_* sections too.
    226 	(print_debug_abbrev_section): Use decoded d_size, not sh_size.
    227 	(print_debug_str_section): Likewise.
    228 
    229 	* readelf.c (dwarf_attr_string): Grok DW_AT_GNU_odr_signature.
    230 
    231 2011-02-11  Roland McGrath  <roland (a] redhat.com>
    232 
    233 	* elfcmp.c (verbose): New variable.
    234 	(options, parse_opt): Grok -l/--verbose to set it.
    235 	(main): Under -l, keep going after first difference.
    236 
    237 	* elfcmp.c (ignore_build_id): New variable.
    238 	(options, parse_opt): Grok --ignore-build-id to set it.
    239 	(main): For SHT_NOTE sections, compare note details rather than raw
    240 	bytes.  Under --ignore-build-id, don't complain about differing build
    241 	ID contents if lengths match.
    242 
    243 2011-02-08  Roland McGrath  <roland (a] redhat.com>
    244 
    245 	* ldscript.y (filename_id_star): Remove unused variable.
    246 
    247 	* unstrip.c (copy_elided_sections): Remove unused variable.
    248 
    249 	* elflint.c (check_dynamic): Remove unused variables.
    250 
    251 	* elflint.c (check_symtab): Warn about missing xndx section only once.
    252 
    253 	* ldgeneric.c (check_for_duplicate2): Remove unused variable.
    254 
    255 2011-01-06  Roland McGrath  <roland (a] redhat.com>
    256 
    257 	* strip.c (handle_elf): Under --strip-sections, remove all
    258 	non-allocated sections and never generate .gnu_debuglink.
    259 
    260 2011-01-04  Roland McGrath  <roland (a] redhat.com>
    261 
    262 	* strip.c (remove_shdrs): New variable.
    263 	(options, parse_opt): Grok --strip-sections to set it.
    264 	(handle_elf): When that's set, truncate off .shstrtab and shdrs.
    265 
    266 2010-11-10  Roland McGrath  <roland (a] redhat.com>
    267 
    268 	* findtextrel.c (process_file): Don't assume order of sections.
    269 	Reported by Mike Hommey <mh (a] glandium.org>.
    270 
    271 2010-07-26  Roland McGrath  <roland (a] redhat.com>
    272 
    273 	* readelf.c (print_ops): Handle DW_OP_GNU_implicit_pointer.
    274 
    275 2010-08-30  Roland McGrath  <roland (a] redhat.com>
    276 
    277 	Print .debug_loc/.debug_ranges with cognizance of actual DIE uses.
    278 	* readelf.c (parse_opt): Add section_info to implicit_debug_sections
    279 	for ranges, loc.
    280 	(struct listptr, struct listptr_table): New types.
    281 	(compare_listptr, reset_listptr, sort_listptr): New functions.
    282 	(notice_listptr, skip_listptr_hole): New functions.
    283 	(struct attrcb_args): Add silent member.
    284 	(attr_callback): Call notice_listptr for loclistptr and rangelistptr.
    285 	Suppress output if silent, but still call notice_listptr.
    286 	(print_debug_units): Suppress output if section_info not requested.
    287 	(print_debug_loc_section): Call sort_listptr, skip_listptr_hole.
    288 	(print_debug_ranges_section): Likewise.
    289 	(print_debug): Call reset_listptr on both tables.
    290 
    291 	* readelf.c (print_debug_ranges_section): Print empty list.
    292 	(print_debug_loc_section): Likewise.
    293 
    294 	* readelf.c (print_debug_loc_section): Check for bogus length
    295 	before calling print_ops.
    296 	(print_ops): Check harder for bogus data that would read off end.
    297 
    298 2010-08-11  Roland McGrath  <roland (a] redhat.com>
    299 
    300 	* readelf.c (for_each_section_argument): Process all sections with
    301 	matching name, not just the first.
    302 
    303 2010-07-26  Roland McGrath  <roland (a] redhat.com>
    304 
    305 	* readelf.c (print_ops): Take new argument for CU version.
    306 	Fix DW_OP_call_ref decoding to depend on it.
    307 	(print_debug_loc_section): Update caller.
    308 	(print_cfa_program): Take new argument, pass it down.
    309 	(print_debug_frame_section): Update caller.
    310 	(struct attrcb_args): New member version.
    311 	(print_debug_units): Initialize it.
    312 
    313 2010-07-02  Roland McGrath  <roland (a] redhat.com>
    314 
    315 	* readelf.c (print_debug_frame_section): Use format_dwarf_addr for
    316 	initial_location.
    317 
    318 2010-06-30  Roland McGrath  <roland (a] redhat.com>
    319 
    320 	* strings.c (main): Use STDIN_FILENO, not STDOUT_FILENO.
    321 	Ignore st_size for a non-S_ISREG file descriptor.
    322 	(read_block): Move assert after no-mmap bail-out.
    323 	(read_block_no_mmap): Fix size calculations for moving buffer remnant.
    324 
    325 2010-06-22  Roland McGrath  <roland (a] redhat.com>
    326 
    327 	* readelf.c (print_debug_line_section): Fix braino in DW_LNS_set_isa.
    328 
    329 2010-06-21  Roland McGrath  <roland (a] redhat.com>
    330 
    331 	* readelf.c (dwarf_tag_string): Handle new v4 tags.
    332 	(dwarf_attr_string): Add new attributes.
    333 	(dwarf_tag_string): Handle DW_TAG_GNU_*.
    334 
    335 	* readelf.c (print_ops): Use 64-bit types for LEB128 operands.
    336 	(print_cfa_program): Likewise.
    337 
    338 2010-06-20  Roland McGrath  <roland (a] redhat.com>
    339 
    340 	* readelf.c (print_debug_units): New function, broken out of ...
    341 	(print_debug_info_section): ... here.  Call it.
    342 	(print_debug_types_section): New function.
    343 	(enum section_e): Add section_types alias for section_info.
    344 	(print_debug): Add types to the sections table.
    345 
    346 	* readelf.c (print_debug_frame_section): Handle version 4 format.
    347 
    348 	* readelf.c (print_debug_line_section): Handle version 4 format.
    349 
    350 2010-06-14  Roland McGrath  <roland (a] redhat.com>
    351 
    352 	* unstrip.c (copy_elided_sections): Make sure all sections' data have
    353 	been read in before we write anything out.
    354 
    355 2010-06-04  Roland McGrath  <roland (a] redhat.com>
    356 
    357 	* unstrip.c (update_shdr): New function.
    358 	(update_sh_size): Call it instead of gelf_update_shdr.
    359 	(adjust_relocs, add_new_section_symbols): Likewise.
    360 	(new_shstrtab, copy_elided_sections): Likewise.
    361 
    362 	* unstrip.c (copy_elided_sections): Bail if stripped file has more
    363 	sections than unstripped file, rather than getting confused later.
    364 
    365 2010-06-01  Roland McGrath  <roland (a] redhat.com>
    366 
    367 	* readelf.c (dwarf_form_string): Handle DWARF 4 forms.
    368 	(attr_callback): Handle DW_FORM_flag_present, DW_FORM_exprloc,
    369 	DW_FORM_sec_offset, DW_FORM_ref_sig8.
    370 
    371 	* readelf.c (print_debug): Don't bail if libdw setup fails.
    372 	Suppress complaint if we only want .eh_frame anyway.
    373 
    374 2010-05-28  Ulrich Drepper  <drepper (a] redhat.com>
    375 
    376 	* readelf.c (attr_callback): Also print form information.
    377 
    378 2010-05-19  Roland McGrath  <roland (a] redhat.com>
    379 
    380 	* addr2line.c (find_symbol): Short-circuit on empty name.
    381 	(handle_address): Handle SYMBOL with no +OFFSET.
    382 
    383 2010-05-08  Roland McGrath  <roland (a] redhat.com>
    384 
    385 	* readelf.c (print_ops): Take new arg OFFSET_SIZE.
    386 	Use that for DW_OP_call_ref, not ADDRSIZE.
    387 	(print_cfa_program): Update caller.
    388 	(struct attrcb_args): Add offset_size field.
    389 	(attr_callback): Use it for print_ops call.
    390 	(print_debug_info_section): Initialize it.
    391 	(print_ops): Likewise.
    392 
    393 2010-04-14  Roland McGrath  <roland (a] redhat.com>
    394 
    395 	* readelf.c (handle_core_item): Fix bitmask printing.
    396 
    397 2010-04-06  Roland McGrath  <roland (a] redhat.com>
    398 
    399 	* ld.c (options): Fix some typos in messages.
    400 	* elflint.c (check_scn_group, check_group): Likewise.
    401 	* ldscript.y (add_id_list): Likewise.
    402 	* readelf.c (print_hash_info): Add xgettext:no-c-format magic comment
    403 	before translated string containing a literal %.
    404 
    405 2010-02-26  Roland McGrath  <roland (a] redhat.com>
    406 
    407 	* readelf.c (process_file): Don't leak an fd in failure case.
    408 
    409 2010-02-15  Roland McGrath  <roland (a] redhat.com>
    410 
    411 	* Makefile.am: Use config/eu.am for common stuff.
    412 
    413 	* readelf.c (print_debug_frame_section): Add a cast to avoid sign
    414 	mismatch in comparison.
    415 
    416 2010-02-02  Roland McGrath  <roland (a] redhat.com>
    417 
    418 	* readelf.c (print_encoding_base): Handle DW_EH_PE_absptr (zero).
    419 	(read_encoded): Likewise.
    420 	(print_debug_frame_section): Check for bogus augmentation length.
    421 	For P augmentation, use read_encoded, print the encoding description,
    422 	and use hex for unsigned values.
    423 
    424 2010-01-15  Roland McGrath  <roland (a] redhat.com>
    425 
    426 	* ar.c: Include <sys/stat.h>.
    427 	* elflint.c: Likewise.
    428 	* readelf.c: Likewise.
    429 	* strip.c: Likewise.
    430 	* unstrip.c: Likewise
    431 
    432 2010-01-07  Roland McGrath  <roland (a] redhat.com>
    433 
    434 	* readelf.c (print_ehdr): Handle PN_XNUM.
    435 	(phnum): New static variable.
    436 	(process_elf_file): Set it with elf_getphdrnum.
    437 	(print_phdr): Use phnum instead of EHDR->e_phnum.
    438 	(print_dynamic, handle_notes): Likewise.
    439 	(handle_relocs_rel, handle_relocs_rela): Likewise.
    440 
    441 	* elfcmp.c (main): Use elf_getshdrnum and elf_getphdrnum.
    442 
    443 	* elflint.c (phnum): New static variable.
    444 	(check_elf_header): Set it, handling PN_XNUM.
    445 	Use that in place of EHDR->e_phnum throughout.
    446 	(check_symtab, check_reloc_shdr, check_dynamic): Likewise.
    447 	(unknown_dependency_p, check_sections, check_program_header): Likewise.
    448 
    449 2010-01-05  Roland McGrath  <roland (a] redhat.com>
    450 
    451 	* readelf.c (dwarf_attr_string): Match DW_AT_GNU_vector and
    452 	DW_AT_GNU_template_name.
    453 
    454 2010-01-04  Roland McGrath  <roland (a] redhat.com>
    455 
    456 	* readelf.c (handle_notes_data): Grab NT_AUXV only for name "CORE".
    457 	(handle_core_note): Pass NHDR and NAME to ebl_core_note.
    458 	(handle_core_item): Handle .format of '\n' as \n-separated strings.
    459 
    460 	* readelf.c (implicit_debug_sections): New variable.
    461 	(parse_opt): Set it instead of print_debug_sections for -a.
    462 	OR them together for print_debug check.
    463 	(print_debug): OR them together for section check.
    464 
    465 	* readelf.c (options): Repartition into set implied by -a and others.
    466 	Correct -a text to match reality.
    467 
    468 	* readelf.c (struct section_argument): Add bool member 'implicit'.
    469 	(parse_opt): Set it for -a cases, clear it for -x args.
    470 	(for_each_section_argument): Don't complain about a missing section by
    471 	name if it's implicit.
    472 
    473 2009-11-16  Roland McGrath  <roland (a] redhat.com>
    474 
    475 	* readelf.c (print_string_section): Punt SHT_NOBITS like empty
    476 	sections, just as dump_data_section already does.
    477 
    478 2009-09-21  Ulrich Drepper  <drepper (a] redhat.com>
    479 
    480 	* elflint.c (special_sections): Allow MERGE and STRINGS flags to be
    481 	set for .comment section.
    482 	Patch by Mark Wielaard <mjw (a] redhat.com>.
    483 
    484 2009-09-08  Roland McGrath  <roland (a] redhat.com>
    485 
    486 	* ar.c (main): Fix typo in message format.
    487 
    488 2009-08-21  Roland McGrath  <roland (a] redhat.com>
    489 
    490 	* readelf.c (attr_callback): Use print_block only when we don't use
    491 	print_ops.
    492 
    493 2009-08-14  Roland McGrath  <roland (a] redhat.com>
    494 
    495 	* ar.c (do_oper_extract): Use pathconf instead of statfs.
    496 
    497 2009-08-01  Ulrich Drepper  <drepper (a] redhat.com>
    498 
    499 	* debugpred.h: Add two most const.
    500 
    501 2009-07-26  Mark Wielaard  <mjw (a] redhat.com>
    502 
    503 	* elflint.c (check_note_data): Recognize NT_GNU_GOLD_VERSION.
    504 
    505 2009-07-25  Mark Wielaard  <mjw (a] redhat.com>
    506 
    507 	* Makefile.am (addr2line_LDADD): Add $(libelf).
    508 
    509 2009-07-24  Roland McGrath  <roland (a] redhat.com>
    510 
    511 	* readelf.c (print_block): New function.
    512 	(print_ops): Use it.
    513 	(attr_callback): Use it for DW_FORM_block* forms.
    514 
    515 2009-07-20  Mark Wielaard  <mjw (a] redhat.com>
    516 
    517 	* readelf.c (print_ops): Add handling of DW_OP_implicit_value
    518 	and DW_OP_stack_value.
    519 
    520 2009-07-14  Ulrich Drepper  <drepper (a] redhat.com>
    521 
    522 	* elflint.c (check_elf_header): Allow Linux ABI.
    523 	(check_symtab): Handle STB_GNU_UNIQUE.
    524 
    525 2009-07-08  Mark Wielaard  <mjw (a] redhat.com>
    526 
    527 	* readelf.c (attr_callback): Handle DW_Form constants for
    528 	DW_AT_data_member_location.
    529 
    530 2009-07-06  Roland McGrath  <roland (a] redhat.com>
    531 
    532 	* readelf.c (register_info): New function.  Handle unknown register #s.
    533 	(print_cfa_program): Use it.
    534 	(handle_core_register, handle_core_registers): Likewise.
    535 
    536 2009-06-28  Roland McGrath  <roland (a] redhat.com>
    537 
    538 	* readelf.c (print_address_names): New static variable.
    539 	(options, parse_opt): Grok -N/--numeric-addresses to clear it.
    540 	(format_dwarf_addr): Don't look up name if !print_address_names.
    541 
    542 2009-06-13  Ulrich Drepper  <drepper (a] redhat.com>
    543 
    544 	* ldgeneric.c: Don't use deprecated libelf functions.
    545 	* nm.c: Likewise.
    546 	* objdump.c: Likewise.
    547 	* readelf.c: Likewise.
    548 	* size.c: Likewise.
    549 	* strip.c: Likewise.
    550 	* unstrip.c: Likewise.
    551 	* ld.h: Fix up comment.
    552 
    553 2009-06-01  Ulrich Drepper  <drepper (a] redhat.com>
    554 
    555 	* readelf.c (print_relocs): Expect ELF header argument and pass on
    556 	to handle_relocs_rel* functions. Adjust caller.
    557 	(handle_relocs_rel): Add ELF header argument.  Add special case for
    558 	the IRELATIVE relocations in statically linked executables.
    559 	(handle_relocs_rela): Likewise.
    560 
    561 2009-04-29  Ulrich Drepper  <drepper (a] redhat.com>
    562 
    563 	* elflint.c (check_symtab): Add tests of st_other field.
    564 
    565 2009-04-23  Ulrich Drepper  <drepper (a] redhat.com>
    566 
    567 	* Makefile [BUILD_STATIC] (libdw): Add $(zip_LIBS).
    568 
    569 2009-04-20  Roland McGrath  <roland (a] redhat.com>
    570 
    571 	* addr2line.c (print_dwarf_function): Honor -s and -A for file names
    572 	of inline call sites.
    573 
    574 	* addr2line.c (just_section): New variable.
    575 	(adjust_to_section): New function, broken out of ...
    576 	(handle_address): ... here.
    577 	(options, parse_opt): Add -j/--section=NAME to set it.
    578 
    579 2009-04-15  Roland McGrath  <roland (a] redhat.com>
    580 
    581 	* readelf.c (print_debug_frame_section): Check for DW_CIE_ID_64 in
    582 	64-bit format header, DW_CIE_ID_32 in 32-bit format header.
    583 
    584 2009-04-14  Roland McGrath  <roland (a] redhat.com>
    585 
    586 	* readelf.c (print_attributes): Treat SHT_ARM_ATTRIBUTES on EM_ARM
    587 	like SHT_GNU_ATTRIBUTES.
    588 
    589 	* readelf.c (handle_core_registers): Fix error message.
    590 
    591 	* strip.c (handle_elf: check_preserved): Don't note any change when
    592 	.debug_data is already filled from a previous pass.
    593 
    594 2009-02-05  Ulrich Drepper  <drepper (a] redhat.com>
    595 
    596 	* objdump.c (show_relocs_x): Minor cleanups.
    597 
    598 	* readelf.c (print_cfa_program): Correct a few labels.
    599 	Print first DW_CFA_expression and DW_CFA_val_expression parameter
    600 	as register.
    601 
    602 2009-02-01  Ulrich Drepper  <drepper (a] redhat.com>
    603 
    604 	* objdump.c (show_relocs_rel, show_relocs_rela): Split common parts
    605 	into ...
    606 	(show_relocs_x): ...here.  New function.
    607 	(show_relocs): Better spacing in output.
    608 
    609 	* objdump.c (show_relocs_rela): Show offsets as signed values.
    610 
    611 	* ar.c (main): Fix recognition of invalid modes for a, b, i modifiers.
    612 	Improve some error messages.
    613 	Use program_invocation_short_name instead of AR macro.
    614 	* Makefile.am (CFLAGS_ar): Remove.
    615 	* elflint.c (parse_opt): ARGP_HELP_EXIT_ERR does nothing for argp_help.
    616 	* objdump.c (parse_opt): Likewise.
    617 	* readelf.c (parse_opt): Likewise.
    618 
    619 2009-01-27  Roland McGrath  <roland (a] redhat.com>
    620 
    621 	* readelf.c (print_ops): Notice short length, don't overrun buffer
    622 	(still need to fix LEB128).
    623 
    624 	* readelf.c (print_ops): Fix DW_OP_call[24] decoding.
    625 
    626 	* readelf.c (print_ops): Print (empty)\n when LEN == 0.
    627 
    628 2009-01-24  Ulrich Drepper  <drepper (a] redhat.com>
    629 
    630 	* readelf.c (print_debug_frame_section): Fix computation of vma_base
    631 	for PC-relative mode.
    632 
    633 2009-01-23  Ulrich Drepper  <drepper (a] redhat.com>
    634 
    635 	* size.c (process_file): When handling archive, close file descriptor
    636 	here.  For unknown file format also close file descriptor.
    637 	(handle_ar): Don't close file descriptor here.
    638 
    639 	* readelf.c (parse_opt): Move code to add to dump_data_sections and
    640 	string_sections list in local function add_dump_section.  Adjust 'x'
    641 	key handling.  For 'a' key add .strtab, .dynstr, and .comment section
    642 	to string_sections list.
    643 
    644 2009-01-22  Roland McGrath  <roland (a] redhat.com>
    645 
    646 	* readelf.c (print_phdr): Don't print section mapping when no sections.
    647 
    648 	* Makefile.am (AM_CFLAGS): Pass -Wno-format for *_no_Wformat.
    649 
    650 	* readelf.c (print_debug_frame_section): Initialize IS_SIGNED to false
    651 	and reset it only for the 'true' cases.
    652 
    653 	* Makefile.am (addr2line_no_Wformat): New variable.
    654 
    655 	* readelf.c (print_debug_frame_section): Use t instead of j formats
    656 	for ptrdiff_t OFFSET.
    657 
    658 2009-01-21  Ulrich Drepper  <drepper (a] redhat.com>
    659 
    660 	* elflint.c (check_program_header): Fix typo in .eh_frame_hdr section
    661 	test.  Handle debuginfo files.
    662 	(check_exception_data): First sanity test.
    663 
    664 2009-01-17  Ulrich Drepper  <drepper (a] redhat.com>
    665 
    666 	* readelf.c (print_debug_exception_table): Show target of ar_disp
    667 	field.
    668 
    669 	* elflint.c (check_program_header): Add most consistency checks for
    670 	PT_GNU_EH_FRAME entry.
    671 
    672 	* addr2line.c: Use ARGP_PROGRAM_VERSION_HOOK_DEF and
    673 	ARGP_PROGRAM_BUG_ADDRESS_DEF.
    674 	* ar.c: Likewise.
    675 	* elfcmp.c: Likewise.
    676 	* elflint.c: Likewise.
    677 	* findtextrel.c: Likewise.
    678 	* ld.c: Likewise.
    679 	* nm.c: Likewise.
    680 	* objdump.c: Likewise.
    681 	* ranlib.c: Likewise.
    682 	* readelf.c: Likewise.
    683 
    684 	* size.c: Likewise.
    685 	* strings.c: Likewise.
    686 	* strip.c: Likewise.
    687 	* unstrip.c: Likewise.
    688 
    689 2009-01-16  Ulrich Drepper  <drepper (a] redhat.com>
    690 
    691 	* elflint.c (check_program_header): Check that PT_GNU_EH_FRAME entry
    692 	matches .eh_frame_hdr section, if it is available.  Also check that
    693 	the segment is allocated, not writable, not executable.
    694 
    695 	* readelf.c: Add -e option.  Dump exception and unwind related
    696 	sections.  Add -e to -a.
    697 	(print_encoding_base): Handle DW_EH_PE_omit.
    698 	(print_debug_exception_table): Beginning of support.
    699 	(print_debug): Hook up print_debug_exception_table for
    700 	.gcc_except_table sections.
    701 
    702 	* readelf.c (print_debug_frame_section): Some fixes for last change.
    703 
    704 2009-01-15  Ulrich Drepper  <drepper (a] redhat.com>
    705 
    706 	* readelf.c (print_encoding): Now a toplevel function.
    707 	(print_relinfo): Likewise.
    708 	(print_encoding_base): Broken out of print_debug_frame_section.
    709 	(print_debug_frame_section): Print different header for .eh_frame
    710 	sections.  Fix recognition of matching CIEs in .debug_frame sections.
    711 	Print absolute offset for PC-relative FDE locations.  Don't print
    712 	table header for FDEs if the table is empty.
    713 	(read_encoded): New function.
    714 	(print_debug_frame_hdr_section): New function.
    715 	(print_debug): Hook up print_debug_frame_hdr_section for .eh_frame_hdr
    716 	sections.
    717 
    718 	* readelf.c (handle_relocs_rel): Print section number.
    719 	(print_debug_abbrev_section): Likewise.
    720 	(print_debug_aranges_section): Likewise.
    721 	(print_debug_ranges_section): Likewise.
    722 	(print_debug_info_section): Likewise.
    723 	(print_debug_line_section): Likewise.
    724 	(print_debug_loc_section): Likewise.
    725 	(print_debug_macinfo_section): Likewise.
    726 	(print_debug_pubnames_section): Likewise.
    727 	(print_debug_str_section): Likewise.
    728 
    729 2009-01-10  Ulrich Drepper  <drepper (a] redhat.com>
    730 
    731 	* strings.c (read_block): Fix typo in error message string.
    732 
    733 2009-01-07  Ulrich Drepper  <drepper (a] redhat.com>
    734 
    735 	* ld.c (ld_new_searchdir): Fix adding to search path list.
    736 
    737 2009-01-06  Ulrich Drepper  <drepper (a] redhat.com>
    738 
    739 	* readelf.c: Implement call frame debug section dumping.
    740 
    741 2009-01-05  Roland McGrath  <roland (a] redhat.com>
    742 
    743 	* elfcmp.c: Exit with status 2 for errors (like cmp, diff, grep).
    744 	Status 1 (aka EXIT_FAILURE) is only for completed OK but not equal.
    745 
    746 2009-01-01  Ulrich Drepper  <drepper (a] redhat.com>
    747 
    748 	* addr2line.c: Update copyright year.
    749 	* ar.c: Likewise.
    750 	* elfcmp.c: Likewise.
    751 	* elflint.c: Likewise.
    752 	* findtextrel.c: Likewise.
    753 	* ld.c: Likewise.
    754 	* nm.c: Likewise.
    755 	* objdump.c: Likewise.
    756 	* ranlib.c: Likewise.
    757 	* readelf.c: Likewise.
    758 	* size.c: Likewise.
    759 	* strings.c: Likewise.
    760 	* strip.c: Likewise.
    761 	* unstrip.c: Likewise.
    762 
    763 2008-12-11  Roland McGrath  <roland (a] redhat.com>
    764 
    765 	* nm.c (sym_name): New function.
    766 	(show_symbols_sysv): Use it in place of elf_strptr.
    767 	(show_symbols_bsd, show_symbols_posix): Likewise.
    768 	Fixes RHBZ#476136.
    769 
    770 	* nm.c (show_symbols_sysv): Use an alloca'd backup section name when
    771 	elf_strptr fails.
    772 
    773 2008-12-02  Roland McGrath  <roland (a] redhat.com>
    774 
    775 	* readelf.c (count_dwflmod, process_file): Don't presume encoding of
    776 	nonzero OFFSET argument to dwfl_getmodules.
    777 
    778 2008-08-07  Roland McGrath  <roland (a] redhat.com>
    779 
    780 	* addr2line.c (main): Pass string to handle_address.
    781 	(see_one_module): New function, subroutine of handle_address.
    782 	(find_symbol): Likewise.
    783 	(handle_address): Take string argument rather than address.
    784 	Convert plain number, or handle strings like "(section)+offset"
    785 	or "symbol+offset".
    786 
    787 2008-08-01  Roland McGrath  <roland (a] redhat.com>
    788 
    789 	* readelf.c (handle_core_item): Handle 'B' type for 1-origin bitset.
    790 	For 'b' and 'B', print <x-y,z> or ~<x,y-z> rather than 1/0 string.
    791 
    792 	* readelf.c (convert): Take new argument SIZE.
    793 	(handle_core_register, handle_core_item): Update callers.
    794 	(handle_core_item): Take new arg REPEATED_SIZE.
    795 	(handle_core_items): Special case for a singleton item,
    796 	let handle_core_item handle repeats if it wants to.
    797 
    798 	* readelf.c (handle_core_items): Give abridged output
    799 	for identical groups repeated more than twice.
    800 
    801 2008-07-04  Roland McGrath  <roland (a] redhat.com>
    802 
    803 	* readelf.c (handle_core_items): Handle ELF_T_ADDR.
    804 
    805 2008-04-10  Roland McGrath  <roland (a] redhat.com>
    806 
    807 	* strip.c (handle_elf): Don't keep sections that kept symbol tables
    808 	refer to.  Instead, just be sure to preserve the original symbol
    809 	table in the debug file so those symbols go with their sections and
    810 	can be elided from the stripped version of the symbol table.
    811 
    812 	* strip.c (handle_elf): When a discarded section kept in the debug
    813 	file refers to a nondiscard section via sh_link/sh_info, preserve
    814 	that nondiscarded section unmodified in the debug file as well.
    815 	Skip adjustment of discarded sections symbol table references when
    816 	that symbol table is copied in this way.
    817 
    818 	* elflint.c (check_symtab): Don't crash from missing symbol names
    819 	after diagnosing bogus strtab.
    820 
    821 	* strip.c (handle_elf): Cosmetic cleanup in special section contents
    822 	adjustment for symtab changes.
    823 
    824 2008-03-31  Roland McGrath  <roland (a] redhat.com>
    825 
    826 	* elflint.c (check_sections): Add checks on SHF_EXECINSTR sections:
    827 	must be SHT_PROGBITS, must not be SHF_WRITE.  Let backend hook
    828 	excuse a special section.
    829 
    830 2008-03-27  Roland McGrath  <roland (a] redhat.com>
    831 
    832 	* elflint.c (check_sections): Check that executability and writability
    833 	of sections is reflected in segment p_flags.
    834 
    835 2008-03-26  Roland McGrath  <roland (a] redhat.com>
    836 
    837 	* elflint.c (check_program_header): Accept PT_GNU_RELRO p_flags
    838 	that matches its PT_LOAD's p_flags &~ PF_W.  On sparc, PF_X really
    839 	is valid in RELRO.
    840 
    841 2008-02-29  Roland McGrath  <roland (a] redhat.com>
    842 
    843 	* readelf.c (print_attributes): Add a cast.
    844 	* elflint.c (check_attributes): Likewise.
    845 
    846 	* unaligned.h (add_8ubyte_unaligned): Cast PTR argument for parity
    847 	with [UNALIGNED_ACCESS_CLASS == BYTE_ORDER] definition.
    848 	(add_4ubyte_unaligned, add_2ubyte_unaligned): Likewise.
    849 
    850 2008-02-03  Ulrich Drepper  <drepper (a] redhat.com>
    851 
    852 	* i386_ld.c (elf_i386_count_relocations): Implement R_386_TLS_GD
    853 	when linked into executable.
    854 	(elf_i386_create_relocations): Likewise.
    855 
    856 2008-02-20  Roland McGrath  <roland (a] redhat.com>
    857 
    858 	* readelf.c (print_attributes): New function.
    859 	(process_elf_file): Call it under -A.
    860 
    861 	* elflint.c (check_attributes): Implement it for real.
    862 
    863 2008-02-19  Roland McGrath  <roland (a] redhat.com>
    864 
    865 	* elflint.c (special_sections): Handle .gnu.attributes section.
    866 	(check_sections): Likewise.
    867 	(check_attributes): New function.
    868 
    869 2008-02-10  Roland McGrath  <roland (a] redhat.com>
    870 
    871 	* elfcmp.c (main): Ignore sh_offset differences in non-SHF_ALLOC
    872 	sections and ET_REL files.
    873 
    874 2008-02-02  Ulrich Drepper  <drepper (a] redhat.com>
    875 
    876 	* elf32-i386.script: Add .eh_frame_hdr, .tdata, and .tbss sections.
    877 	* i386_ld.c (elf_i386_count_relocations): Handle R_386_TLS_LDO_32
    878 	and R_386_TLS_LE.
    879 	(elf_i386_create_relocations): Likewise.
    880 	* ld.h (struct ld_state): Add need_tls, tls_start, and tls_tcb
    881 	elements.
    882 	* ldgeneric.c (add_section): If TLS section is used, set need_tls flag.
    883 	(ld_generic_create_outfile): Add PT_TLS entry to program  header.
    884 	Fix generation of PT_GNU_STACK entry.
    885 
    886 2008-02-01  Ulrich Drepper  <drepper (a] redhat.com>
    887 
    888 	* ld.c (replace_args): Prevent loop over replacements if the parameter
    889 	is only two characters long.
    890 
    891 	* ld.c: Recognize sha1 argument for --build-id parameter.
    892 	* ldgeneric.c (create_build_id_section): Handle sha1.
    893 	(compute_hash_sum): New function.  Broken out of compute_build_id.
    894 	Take hash function and context as parameters.
    895 	(compute_build_id): Use compute_hash_sum for md5 and the new sha1
    896 	implementation.
    897 
    898 2008-01-31  Ulrich Drepper  <drepper (a] redhat.com>
    899 
    900 	* elf32-i386.script: Add .note.ABI-tag and .note.gnu.build-id sections.
    901 	* ld.c: Recognize --build-id command line parameter.
    902 	* ld.h: Define scn_dot_note_gnu_build_id.
    903 	(struct ld_state): Add build_id and buildidscnidx elements.
    904 	* ldgeneric.c: Implement --build-id command line parameter.
    905 	* ldlex.l (ID): Recognize - as valid character after the first one.
    906 
    907 2008-01-29  Ulrich Drepper  <drepper (a] redhat.com>
    908 
    909 	* ld.c (replace_args): New function.
    910 	(main): Use it to rewrite old-style parameters.
    911 
    912 	* elf32-i386.script: Add .gnu.hash section.
    913 	* ldgeneric.c (optimal_bucket_size): A tiny bit more efficient.
    914 	(fillin_special_symbol): Initialize st_size.
    915 	(sortfct_hashval): New function.
    916 	(create_gnu_hash): New function.
    917 	(create_hash): New function.
    918 	(ld_generic_create_outfile): Use the new functions to create the
    919 	hash tables.
    920 
    921 	* elflint.c (check_gnu_hash): Fix index value printed in error message.
    922 
    923 2008-01-24  Ulrich Drepper  <drepper (a] redhat.com>
    924 
    925 	* elflint.c (check_group): Check that signature symbol for section
    926 	group is not an empty string.
    927 	* ldgeneric.c: Remove magic assignment of indeces in the dynsym
    928 	section.  Start implementation of --hash-style.
    929 	* i386_ld.c: Likewise.
    930 	* ld.c: Recognize --hash-style.
    931 	* ld.h (struct scninfo): Add comdat_group.
    932 	Add additional parameter to finalize_plt callback.
    933 
    934 2008-01-22  Ulrich Drepper  <drepper (a] redhat.com>
    935 
    936 	* ld.h (struct callbacks): Add initialize_gotplt.
    937 	(struct scnhead): Add scn_dot_gotplt.
    938 	(struct ld_state): Add gotpltscnidx.
    939 	* i386_ld.c (elf_i386_initialize_plt): Minor optimization.
    940 	(elf_i386_initialize_pltrel): Likewise.
    941 	(elf_i386_initialize_got): There is now a separate .got.plt, so
    942 	don't do the PLT-related work here.  Initialize d_type.
    943 	(elf_i386_initialize_gotplt): New function.
    944 	(elf_i386_plt0): Use ud2a after indirect jump.
    945 	(elf_i386_pic_plt0_entry): Likewise.
    946 	(elf_i386_finalize_plt): Reference now .got.plt.
    947 	(elf_i386_count_relocations): For GOT entries which need no relocation
    948 	don't bump nrel_got.
    949 	(elf_i386_create_relocations): Also get .got.plt.  Rewrite R-386_GOT32
    950 	handling for split .got/.got.plt.
    951 	(elf_i386_ld_init): Initialize callbacks.initialize_gotplt.
    952 	* elf32-i386.script: Sort sections for security.  There are no .got
    953 	input sections.  Add .got.plt.
    954 	* ldgeneric.c (ld_generic_generate_sections): Add .got.plt section.
    955 	(ld_generic_create_outfile): Initialize .got.plt section.
    956 	Use .got.plt address for _GLOBAL_OFFSET_TABLE_ symbol and DT_PLTGOT.
    957 
    958 2008-01-19  Ulrich Drepper  <drepper (a] redhat.com>
    959 
    960 	* i386_ld.c (elf_i386_count_relocations): PLT relocations for undefined
    961 	symbols are not carried over into statically linked output files.
    962 	Add dummy entries for more TLS relocations.
    963 
    964 	* ld.c (options): Add long names for -( and -).
    965 
    966 	* ldgeneric.c (check_definition): For newly found definitions don't
    967 	mark section as used if symbol is absolute.
    968 	(extract_from_archive): Only assign archive sequence number the first
    969 	time the archive is handled.  Update ld_state.last_archive_used
    970 	if any symbol was used.  Remove nround variable.
    971 	(file_process2): When using symbol from an archive, update
    972 	ld_state.group_start_archive, ld_state.archives, and
    973 	ld_state.tailarchives.
    974 	(ld_generic_file_process): If group is not handled anymore, after
    975 	freeing ELF handles for the archives, clear ld_state.archives and
    976 	*nextp.  Fix wrong logic in recognizing first iteration of group
    977 	loop.  When clearing flags, also clear ld_state.group_start_archive.
    978 
    979 2008-01-11  Ulrich Drepper  <drepper (a] redhat.com>
    980 
    981 	* objdump.c (show_disasm): Adjust disassembler format string for
    982 	removal of %e.
    983 
    984 2008-01-04  Roland McGrath  <roland (a] redhat.com>
    985 
    986 	* readelf.c (handle_core_items): Take new arg DESCSZ; if nonzero,
    987 	a size greater than the items cover means multiple sets of items.
    988 	(handle_core_note): Update caller.
    989 
    990 2008-01-04  Roland McGrath  <roland (a] redhat.com>
    991 
    992 	* strip.c (handle_elf): Move SHDRIDX defn to silence gcc warning.
    993 
    994 2008-01-03  Roland McGrath  <roland (a] redhat.com>
    995 
    996 	* ld.h (linked_from_dso_p): Use __attribute__ ((__gnu_inline__)).
    997 
    998 	* elflint.c (check_dynamic): Remove duplicate initializer.
    999 
   1000 2008-01-02  Ulrich Drepper  <drepper (a] redhat.com>
   1001 
   1002 	* addr2line.c: Update copyright year.
   1003 	* ar.c: Likewise.
   1004 	* elfcmp.c: Likewise.
   1005 	* elflint.c: Likewise.
   1006 	* findtextrel.c: Likewise.
   1007 	* ld.c: Likewise.
   1008 	* nm.c: Likewise.
   1009 	* objdump.c: Likewise.
   1010 	* ranlib.c: Likewise.
   1011 	* readelf.c: Likewise.
   1012 	* size.c: Likewise.
   1013 	* strings.c: Likewise.
   1014 	* strip.c: Likewise.
   1015 	* unstrip.c: Likewise.
   1016 
   1017 2007-12-30  Ulrich Drepper  <drepper (a] redhat.com>
   1018 
   1019 	* objdump (show_disasm): Use %e after third parameter.
   1020 
   1021 2007-12-21  Ulrich Drepper  <drepper (a] redhat.com>
   1022 
   1023 	* strip.c: Fix wrong parenthesis in a few branch predictions.
   1024 	* strings.c: Likewise.
   1025 
   1026 2007-12-20  Ulrich Drepper  <drepper (a] redhat.com>
   1027 
   1028 	* Makefile.am (DEFS): Add DEBUGPRED.
   1029 	* addr2line.c: Include debugpred.h.
   1030 	* ar.c: Likewise.
   1031 	* elfcmp.c: Likewise.
   1032 	* elflint.c: Likewise.
   1033 	* findtextrel.c: Likewise.
   1034 	* nm.c: Likewise.
   1035 	* objdump.c: Likewise.
   1036 	* ranlib.c: Likewise.
   1037 	* readelf.c: Likewise.
   1038 	* size.c: Likewise.
   1039 	* strings.c: Likewise.
   1040 	* strip.c: Likewise.
   1041 	* unstrip.c: Likewise.
   1042 	* debugpred.h: New file.
   1043 
   1044 	* readelf.c (handle_relocs_rel): Use elf_scnshndx.
   1045 	(handle_relocs_rela): Likewise.
   1046 
   1047 	* readelf.c: Add lots of likely/unlikely.
   1048 
   1049 	* elflint.c: Minor cleanups.
   1050 
   1051 2007-11-19  Roland McGrath  <roland (a] redhat.com>
   1052 
   1053 	* readelf.c (print_ops): Handle all bad op codes gracefully.
   1054 	Print their numbers instead of just ???.
   1055 
   1056 2007-11-09  Roland McGrath  <roland (a] redhat.com>
   1057 
   1058 	* readelf.c (attr_callback): Handle DW_AT_data_location.
   1059 	Handle block forms to mean a DWARF expression for DW_AT_allocated,
   1060 	DW_AT_associated, DW_AT_bit_size, DW_AT_bit_offset, DW_AT_bit_stride,
   1061 	DW_AT_byte_size, DW_AT_byte_stride, DW_AT_count, DW_AT_lower_bound,
   1062 	DW_AT_upper_bound.
   1063 
   1064 2007-10-20  Roland McGrath  <roland (a] redhat.com>
   1065 
   1066 	* unstrip.c (options): Update -R description.
   1067 	(struct symbol): Put symbol details a union with a size_t pointer
   1068 	`duplicate'.
   1069 	(compare_symbols_output): Use null ->name as marker for discard
   1070 	symbols, not zero *->map.
   1071 	(copy_elided_sections): Record forwarding pointers for discarded
   1072 	duplicates and fill SYMNDX_MAP elements through them.
   1073 
   1074 	* readelf.c (process_file): Set offline_next_address to 0 at start.
   1075 	(struct process_dwflmod_args): New type.
   1076 	(process_dwflmod): Take args in it, pass fd to process_elf_file.
   1077 	(process_file): Update caller; dup FD for passing to libdwfl.
   1078 	(process_elf_file): Take new arg FD.  For ET_REL file when
   1079 	displaying data affected by libdwfl relocation, open a new Elf handle.
   1080 
   1081 2007-10-17  Roland McGrath  <roland (a] redhat.com>
   1082 
   1083 	* readelf.c (print_debug_line_section): For invalid data inside a
   1084 	unit with plausible length, keep printing at the next unit boundary.
   1085 
   1086 	* readelf.c (attr_callback): Use dwarf_formref_die, not dwarf_formref.
   1087 
   1088 2007-10-16  Roland McGrath  <roland (a] redhat.com>
   1089 
   1090 	* readelf.c (hex_dump): Fix rounding error in whitespace calculation.
   1091 
   1092 2007-10-15  Roland McGrath  <roland (a] redhat.com>
   1093 
   1094 	* make-debug-archive.in: New file.
   1095 	* Makefile.am (EXTRA_DIST): Add it.
   1096 	(make-debug-archive): New target.
   1097 	(bin_SCRIPTS, CLEANFILES): Add it.
   1098 
   1099 2007-10-10  Roland McGrath  <roland (a] redhat.com>
   1100 
   1101 	* elflint.c (special_sections): Add new attrflag value exact_or_gnuld.
   1102 	Use it to check MERGE|STRINGS for .debug_str.
   1103 	(check_sections): Handle exact_or_gnuld.
   1104 
   1105 2007-10-08  Roland McGrath  <roland (a] redhat.com>
   1106 
   1107 	* readelf.c (handle_core_item): Handle 'T'|0x80 to indicate
   1108 	64-bit struct timeval with 32-bit tv_usec.
   1109 
   1110 2007-10-07  Roland McGrath  <roland (a] redhat.com>
   1111 
   1112 	* readelf.c (check_archive_index): New function.
   1113 	(process_file): Call it.  Change signature to take only fd and name.
   1114 	Use libdwfl to open the file, then iterate on its modules (multiple
   1115 	for an archive) to print file name and call process_elf_file.
   1116 	(main): Update caller.  Let process_file do elf_begin.
   1117 	(count_dwflmod, process_dwflmod, find_no_debuginfo): New functions.
   1118 	(process_elf_file): Take only Dwfl_Module * argument.
   1119 	Don't print the file name here.
   1120 	(print_debug_*_section): Take Dwfl_Module * argument.
   1121 	(print_debug): Likewise.  Update caller.
   1122 	(format_dwarf_addr): New function.
   1123 	(print_debug_ranges_section): Use it.
   1124 	(attr_callback): Likewise.
   1125 	(print_debug_line_section, print_debug_loc_section): Likewise.
   1126 
   1127 	* readelf.c (print_debug_ranges_section): Translate all strings.
   1128 	(print_debug_loc_section): Likewise.
   1129 
   1130 	* unstrip.c (copy_elided_sections): Initialize SEC.
   1131 
   1132 	* ar.c (do_oper_insert): Put trailing / on short names.
   1133 
   1134 	* arlib.h (MAX_AR_NAME_LEN): Decrease by one.
   1135 
   1136 	* arlib2.c (arlib_add_long_name): Adjust for header size.
   1137 
   1138 	* arlib.c (arlib_finalize): Pad long name table to keep size even.
   1139 
   1140 	* ar.c (do_oper_insert): Use write_retry for padding write.
   1141 
   1142 	* ar.c (do_oper_insert): Initialize CUR_OFF in no_old case.
   1143 	Unconditionally set FOUND[CNT]->elf when setting ->mem.
   1144 	(remember_long_name): New function.
   1145 	(do_oper_insert): Call it.  Correctly use length of basename,
   1146 	not original name.  Don't store long name twice for new member.
   1147 
   1148 2007-10-06  Roland McGrath  <roland (a] redhat.com>
   1149 
   1150 	* elflint.c (check_note): Skip empty segment.
   1151 	(check_note_section): Skip empty section.
   1152 
   1153 	* unstrip.c (options, parse_opt, struct arg_info): Grok -R/--relocate.
   1154 	(handle_output_dir_module, handle_implicit_modules): Pass it down.
   1155 	(handle_dwfl_module): When set, use ET_REL already loaded by Dwfl.
   1156 	(compare_alloc_sections): Take new arg REL, ignore address if true.
   1157 	(compare_sections): Likewise, pass it down.
   1158 	(compare_sections_rel, compare_sections_nonrel): New functions.
   1159 	(find_alloc_sections_prelink, copy_elided_sections): Use them
   1160 	instead of compare_sections.
   1161 	(sections_match): New function, broken out of ...
   1162 	(find_alloc_section): ... here.
   1163 	(copy_elided_sections): Reorganize section match-up logic.
   1164 	Use sections_match for SHF_ALLOC in ET_REL.
   1165 	For ET_REL, let the nonzero sh_addr from the debug file dominate.
   1166 
   1167 	* unstrip.c (add_new_section_symbols): Take new arg REL.
   1168 	When true, do not update section symbol values.
   1169 	(collect_symbols): Likewise.  Update section symbols with address
   1170 	of chosen output section, not original section.
   1171 	(check_symtab_section_symbols, copy_elided_sections): Update callers.
   1172 
   1173 	* unstrip.c (compare_alloc_sections): At the same address, preserve
   1174 	original section order.
   1175 
   1176 	* elflint.c (special_sections): Don't require MERGE|STRINGS for
   1177 	.debug_str, it didn't always have them with older tools.
   1178 
   1179 	* elflint.c (check_symtab, check_one_reloc): Ignore sh_addr in ET_REL.
   1180 
   1181 2007-10-05  Roland McGrath  <roland (a] redhat.com>
   1182 
   1183 	* elflint.c (check_symtab): Allow SHN_UNDEF _GLOBAL_OFFSET_TABLE_ in
   1184 	ET_REL file.
   1185 
   1186 	* elflint.c (check_symtab): For _GLOBAL_OFFSET_TABLE_, diagnose
   1187 	SHN_UNDEF as "bad section".  Use shndx value in messages.
   1188 
   1189 	* elflint.c (special_sections): Add ".debug_str".  Decrement namelen
   1190 	for ".debug" so it matches as a prefix.
   1191 	(IS_KNOWN_SPECIAL): New macro.
   1192 	(check_sections): Use it for ".plt" match.  Cite wrong SHT_NOBITS
   1193 	type even under -d, for a .debug* or .shstrtab section.
   1194 
   1195 	* readelf.c (print_ops): Use hex for address operand.
   1196 
   1197 2007-10-04  Roland McGrath  <roland (a] redhat.com>
   1198 
   1199 	* unstrip.c (copy_elided_sections): Initialize NDX_SECTION element for
   1200 	.gnu_debuglink section to SHN_UNDEF.  Drop STT_SECTION symbols for
   1201 	sections mapped to SHN_UNDEF.
   1202 
   1203 2007-10-04  Ulrich Drepper  <drepper (a] redhat.com>
   1204 
   1205 	* readelf.c (dump_archive_index): Avoid warning about uninitialized
   1206 	variable with older glibc versions.
   1207 	Add some branch prediction.
   1208 
   1209 2007-10-04  Roland McGrath  <roland (a] redhat.com>
   1210 
   1211 	* readelf.c (print_archive_index): New variable.
   1212 	(options, parse_opt): Accept -c/--archive-index to set it.
   1213 	(dump_archive_index): New function.
   1214 	(process_file): Take new arg WILL_PRINT_ARCHIVE_INDEX.
   1215 	Call dump_archive_index on archives if set.
   1216 	(main): Update caller.
   1217 	(any_control_option): Give it file scope, moved out of ...
   1218 	(parse_opt): ... here.
   1219 
   1220 2007-10-03  Roland McGrath  <roland (a] redhat.com>
   1221 
   1222 	* unstrip.c (struct arg_info): Add `list' flag.
   1223 	(options, parse_opt): Grok -n/--list to set it.
   1224 	(list_module): New function.
   1225 	(handle_implicit_modules): Call it under -n.
   1226 
   1227 	* elflint.c (check_note_section): New function.
   1228 	(check_sections): Call it for SHT_NOTE.
   1229 
   1230 	* readelf.c (handle_notes): Use sections when available.
   1231 
   1232 	* elflint.c (check_note_data): New function, broken out of ...
   1233 	(check_note): ... here.  Call it and elf_getdata_rawchunk.
   1234 
   1235 	* readelf.c (handle_auxv_note): Take offset as argument, not buffer.
   1236 	Use elf_getdata_rawchunk and gelf_getauxv.
   1237 	(handle_notes_data): New function, broken out of ...
   1238 	(handle_notes): ... here.  Call it and elf_getdata_rawchunk.
   1239 
   1240 2007-10-01  Roland McGrath  <roland (a] redhat.com>
   1241 
   1242 	* readelf.c (hex_dump): Fix transposed subtraction generating spaces.
   1243 
   1244 	* readelf.c (hex_dump): Fix line header to be hex instead of decimal.
   1245 
   1246 2007-09-10  Roland McGrath  <roland (a] redhat.com>
   1247 
   1248 	* readelf.c (options): Give -p optional argument, alias --string-dump.
   1249 	(string_sections, string_sections_tail): New static variables.
   1250 	(parse_opt): Set them when -p has an argument.
   1251 	(print_string_section): New function, broken out of ...
   1252 	(print_strings): ... here.  Call it.
   1253 	(dump_data_section): New function, broken out of ...
   1254 	(dump_data): ... here.  Call it.
   1255 	(for_each_section_argument): New function, broken out of ...
   1256 	(dump_data): ... here.  Call it.
   1257 	(dump_strings): New function.
   1258 
   1259 2007-08-31  Roland McGrath  <roland (a] redhat.com>
   1260 
   1261 	* readelf.c (print_strings): Typo fix.
   1262 
   1263 2007-08-23  Roland McGrath  <roland (a] redhat.com>
   1264 
   1265 	* readelf.c (printf_with_wrap): Function removed.
   1266 	(REGISTER_WRAP_COLUMN): New macro.
   1267 	(handle_core_register): Use print_core_item instead.
   1268 	(struct register_info): New type.
   1269 	(compare_registers, compare_register_sets): New functions.
   1270 	(register_bitpos, compare_sets_by_info): New functions.
   1271 	(handle_core_registers): Use those to segregate and sort registers
   1272 	for display.
   1273 
   1274 	* readelf.c (ITEM_WRAP_COLUMN): New macro.
   1275 	(print_core_item): New function.
   1276 	(handle_core_item): Use it instead of printf_with_wrap.
   1277 	(compare_core_items, compare_core_item_groups): New functions.
   1278 	(handle_core_items): Use them.  Sort by group and force line breaks
   1279 	between groups.
   1280 
   1281 	* readelf.c (handle_core_registers, handle_core_items): New functions,
   1282 	broken out of ...
   1283 	(handle_core_note): ... here.   Call them.
   1284 
   1285 2007-08-22  Roland McGrath  <roland (a] redhat.com>
   1286 
   1287 	* unstrip.c (new_shstrtab): New function, broken out of ...
   1288 	(copy_elided_sections): ... here.
   1289 
   1290 2007-08-20  Roland McGrath  <roland (a] redhat.com>
   1291 
   1292 	Avoid local function trampolines in nm binary.
   1293 	* nm.c (sort_by_address): Move to a static function instead of local
   1294 	inside show_symbols.
   1295 	(sort_by_name_strtab): New static variable.
   1296 	(sort_by_name): Use it.  Move to a static function instead of local
   1297 	inside show_symbols.
   1298 	(show_symbols): Set sort_by_name_strtab.
   1299 
   1300 2007-08-19  Roland McGrath  <roland (a] redhat.com>
   1301 
   1302 	* readelf.c (handle_auxv_note): New function.
   1303 	(handle_notes): Call it.
   1304 
   1305 	* readelf.c (printf_with_wrap, convert): New functions.
   1306 	(handle_core_item, (handle_core_register): New functions.
   1307 	(handle_notes): Call those with details from ebl_core_note.
   1308 
   1309 2007-08-12  Roland McGrath  <roland (a] redhat.com>
   1310 
   1311 	* elflint.c (check_note): Accept type 0 with name "Linux".
   1312 
   1313 	* elflint.c (special_sections): Accept SHF_ALLOC for ".note".
   1314 
   1315 	* elflint.c (section_flags_string): Return "none" for 0, not "".
   1316 
   1317 2007-08-11  Roland McGrath  <roland (a] redhat.com>
   1318 
   1319 	* elflint.c (check_note): Accept NT_GNU_HWCAP, NT_GNU_BUILD_ID.
   1320 
   1321 2007-08-04  Ulrich Drepper  <drepper (a] redhat.com>
   1322 
   1323 	* readelf.c (hex_dump): Use isprint to determine whether to print
   1324 	character itself or full stop character.
   1325 	(dump_data): No need to check endp for NULL after strtol call.
   1326 
   1327 2007-08-03  Roland McGrath  <roland (a] redhat.com>
   1328 
   1329 	* readelf.c (print_string_sections): New variable.
   1330 	(options, parse_opt): Handle --strings/-p to set it.
   1331 	(print_strings): New function.
   1332 	(process_elf_file): Call it under -p.
   1333 
   1334 	* readelf.c (options): Add hidden aliases --segments, --sections,
   1335 	as taken by binutils readelf.
   1336 
   1337 2007-08-01  Roland McGrath  <roland (a] redhat.com>
   1338 
   1339 	* readelf.c (dump_data_sections, dump_data_sections_tail):
   1340 	New variables.
   1341 	(options, parse_opt): Handle --hex-dump/-x, set them.
   1342 	(hex_dump): New function.
   1343 	(dump_data): New function, call it.
   1344 	(process_elf_file): Call it.
   1345 
   1346 2007-07-25  Roland McGrath  <roland (a] redhat.com>
   1347 
   1348 	* addr2line.c (show_symbols): New variable.
   1349 	(print_addrsym): New function.
   1350 	(handle_address): Call it.
   1351 	(options, parse_opt): Handle -S/--symbols.
   1352 
   1353 2007-06-05  Ulrich Drepper  <drepper (a] redhat.com>
   1354 
   1355 	* addr2line.c: Update for latest autoconf header.
   1356 	* ar.c: Likewise.
   1357 	* elfcmp.c: Likewise.
   1358 	* elflint.c: Likewise.
   1359 	* findtextrel.c: Likewise.
   1360 	* ld.c: Likewise.
   1361 	* ldgeneric.c: Likewise.
   1362 	* nm.c: Likewise.
   1363 	* objdump.c: Likewise.
   1364 	* ranlib.c: Likewise.
   1365 	* readelf.c: Likewise.
   1366 	* size.c: Likewise.
   1367 	* strings.c: Likewise.
   1368 	* strip.c: Likewise.
   1369 	* unstrip.c: Likewise.
   1370 
   1371 2007-05-18  Roland McGrath  <roland (a] redhat.com>
   1372 
   1373 	* unstrip.c (copy_elided_sections): Match up non-NOBITS sections with
   1374 	stripped file, so as not to duplicate a section copied in both.
   1375 
   1376 	* strip.c (handle_elf): Keep SHT_NOTE section copies in the debug file.
   1377 
   1378 2007-05-17  Roland McGrath  <roland (a] redhat.com>
   1379 
   1380 	* unstrip.c (copy_elided_sections): Don't call gelf_newphdr for 0.
   1381 
   1382 	* unstrip.c (handle_file): Tweak BIAS != 0 warning.
   1383 
   1384 	* unstrip.c (handle_file): Take new arg CREATE_DIRS.  If set,
   1385 	call make_directories here.
   1386 	(handle_explicit_files): Take new arg CREATE_DIRS, pass it down.
   1387 	(handle_dwfl_module): Likewise.
   1388 	(handle_implicit_modules): Update callers.
   1389 	(handle_output_dir_module): Likewise.  Don't do make_directories here.
   1390 
   1391 	* unstrip.c (get_section_name): New function, broken out of ...
   1392 	(copy_elided_sections): here.  Update callers.
   1393 	(find_alloc_section): Broken out of ...
   1394 	(copy_elided_sections): ... here.  Update caller.
   1395 	(symtab_count_leading_section_symbols): Take new arg NEWSYMDATA,
   1396 	update STT_SECTION symbols' st_value fields as a side effect.
   1397 	(check_symtab_section_symbols): Update caller.
   1398 	(add_new_section_symbols): Set st_value in symbols added.
   1399 	(collect_symbols): Reset S->value for STT_SECTION symbols recorded.
   1400 	Take new arg SPLIT_BSS.  Adjust S->shndx recorded for symbols moved
   1401 	from .bss to .dynbss.
   1402 	(find_alloc_sections_prelink): New function.  Associate debug file
   1403 	allocated SHT_NOBITS shdrs with stripped moved by prelink via
   1404 	.gnu.prelink_undo information.
   1405 	(copy_elided_sections): Call it when we couldn't find every allocated
   1406 	section.  Don't use a debug file non-NOBITS section if SHF_ALLOC.
   1407 	Take STRIPPED_EHDR arg instead of E_TYPE and PHNUM.
   1408 	(handle_file): Update callers.
   1409 
   1410 	* unstrip.c (copy_elided_sections): Ignore unfound unallocated section
   1411 	named ".comment".
   1412 
   1413 	* elflint.c (check_sections): Fix association of segments with
   1414 	sections when p_memsz > p_filesz.
   1415 
   1416 2007-04-29  Roland McGrath  <roland (a] redhat.com>
   1417 
   1418 	* addr2line.c (options, main): Tweak argp group settings to fix
   1419 	usage output.
   1420 
   1421 2007-04-28  Roland McGrath  <roland (a] redhat.com>
   1422 
   1423 	* strip.c (handle_elf): Update debug file's SHT_NOBITS sections'
   1424 	sizes to match sections adjusted in the stripped file.
   1425 
   1426 2007-04-24  Roland McGrath  <roland (a] redhat.com>
   1427 
   1428 	* elfcmp.c (OPT_HASH_INEXACT): New macro.
   1429 	(hash_inexact): New variable.
   1430 	(options, parse_opt): Add --hash-inexact option to set it.
   1431 	(hash_content_equivalent): New function.
   1432 	(main): Call it for differing SHT_HASH sections under --hash-inexact.
   1433 
   1434 2007-04-23  Roland McGrath  <roland (a] redhat.com>
   1435 
   1436 	* unstrip.c: New file.
   1437 	* Makefile.am (bin_PROGRAMS): Add it.
   1438 	(unstrip_LDADD): New variable.
   1439 
   1440 	* strip.c (options): Allow --output for -o.
   1441 
   1442 2007-02-15  Ulrich Drepper  <drepper (a] redhat.com>
   1443 
   1444 	* readelf.c: Remove unused code.  Add a few consts.
   1445 
   1446 2007-02-15  Roland McGrath  <roland (a] redhat.com>
   1447 
   1448 	* readelf.c (print_debug): Fix brainos in SHDR test.
   1449 
   1450 2007-02-05  Roland McGrath  <roland (a] redhat.com>
   1451 
   1452 	* ar.c: Include <limits.h>, since we use LONG_MAX.
   1453 
   1454 2007-02-05  Ulrich Drepper  <drepper (a] redhat.com>
   1455 
   1456 	* ar.c: Add ugly hack to work around gcc complaining that we
   1457 	ignore fchown's return value.
   1458 	(do_oper_insert): Handle error when writing padding.
   1459 	* ranlib.c: Add fchown complain work around.
   1460 
   1461 	* arlib.c: Make symtab a global variable.  Change all users.
   1462 	* arlib2.c: Likewise.
   1463 	* ranlib.c: Likewise.
   1464 	* ar.c: Likewise.
   1465 	* arlib.h: Declare it.
   1466 
   1467 2007-01-11  Roland McGrath  <roland (a] redhat.com>
   1468 
   1469 	* elflint.c (check_sections): Use ebl_machine_section_flag_check on
   1470 	SHF_MASKPROC bits separately from generic sh_flags validation.
   1471 
   1472 2007-02-04  Ulrich Drepper  <drepper (a] redhat.com>
   1473 
   1474 	* ar.c: New file.
   1475 	* arlib.c: New file.
   1476 	* arlib2.c: New file.
   1477 	* arlib.h: New file.
   1478 	* Makefile (noinst_LIBRARIES): Add libar.
   1479 	(libar_a_SOURCES): Define.
   1480 	(ar_LDADD): Define.
   1481 	(CFLAGS_ar): Define.
   1482 	* ranlib.c: Change to use arlib.
   1483 
   1484 	* elflint.c (check_symtab): Work around GNU ld bug which omits
   1485 	sections but not symbols in those sections.
   1486 
   1487 2007-01-10  Ulrich Drepper  <drepper (a] redhat.com>
   1488 
   1489 	* addr2line.c: Update copyright year.
   1490 	* elfcmp.c: Likewise.
   1491 	* elflint.c: Likewise.
   1492 	* findtextrel.c: Likewise.
   1493 	* ld.c: Likewise.
   1494 	* nm.c: Likewise.
   1495 	* objdump.c: Likewise.
   1496 	* ranlib.c:  Likewise.
   1497 	* readelf.c: Likewise.
   1498 	* size.c: Likewise.
   1499 	* strings.c: Likewise.
   1500 	* strip.c: Likewise.
   1501 
   1502 2006-12-09  Ulrich Drepper  <drepper (a] redhat.com>
   1503 
   1504 	* elflint.c (compare_hash_gnu_hash): New function.  Report if the
   1505 	two hash tables have different content (module expected omission
   1506 	of undefined symbols).
   1507 
   1508 2006-10-31  Roland McGrath  <roland (a] redhat.com>
   1509 
   1510 	* elflint.c (check_program_header): Don't complain about
   1511 	p_filesz > p_memsz if p_memsz is zero and p_type is PT_NOTE.
   1512 
   1513 2006-09-19  Jakub Jelinek  <jakub (a] redhat.com>
   1514 
   1515 	* strip.c (process_file): Disallow -f on archives.
   1516 
   1517 2006-10-09  Roland McGrath  <roland (a] redhat.com>
   1518 
   1519 	* Makefile.am (libld_elf_i386.so): Use $(LINK), not $(CC).
   1520 
   1521 2006-08-29  Roland McGrath  <roland (a] redhat.com>
   1522 
   1523 	* Makefile.am (MAINTAINERCLEANFILES): New variable.
   1524 
   1525 	* readelf.c (handle_relocs_rel): Typo fix, test DESTSHDR properly.
   1526 	Reported by Christian Aichinger <Greek0 (a] gmx.net>.
   1527 
   1528 	* elflint.c (valid_e_machine): Add EM_ALPHA.
   1529 	Reported by Christian Aichinger <Greek0 (a] gmx.net>.
   1530 
   1531 2006-08-08  Ulrich Drepper  <drepper (a] redhat.com>
   1532 
   1533 	* elflint.c (check_dynamic): Don't require DT_HASH for DT_SYMTAB.
   1534 	Keep track of which "high DT" entries are present.
   1535 	Check that either old or GNU-style hash table is present.
   1536 	If GNU-style hash table is used a symbol table is mandatory.
   1537 	Check that if any prelink entry is present all of them are.
   1538 	(check_gnu_hash): Only fail for undefined symbols in GNU-style hash
   1539 	table if they don't refer to functions.
   1540 
   1541 2006-07-17  Roland McGrath  <roland (a] redhat.com>
   1542 
   1543 	* elflint.c (struct version_namelist): Use GElf_Versym for `ndx' field.
   1544 	(add_version): Likewise for argument.
   1545 	(check_versym): Cast constant to GElf_Versym for comparison.
   1546 
   1547 2006-07-12  Roland McGrath  <roland (a] redhat.com>
   1548 
   1549 	* readelf.c (handle_gnu_hash): Add casts for machines where
   1550 	Elf32_Word != unsigned int.
   1551 
   1552 2006-07-12  Ulrich Drepper  <drepper (a] redhat.com>
   1553 
   1554 	* elflint.c (check_sysv_hash64): Fix printf format.
   1555 
   1556 2006-07-11  Roland McGrath  <roland (a] redhat.com>
   1557 
   1558 	* addr2line.c (options): English fix in -f doc string.
   1559 
   1560 	* addr2line.c (use_comp_dir): New variable.
   1561 	(options, parse_opt): Grok -A/--absolute to set it.
   1562 	(handle_address): If set, prepend dwfl_line_comp_dir results to
   1563 	relative file names.
   1564 
   1565 2006-07-06  Ulrich Drepper  <drepper (a] redhat.com>
   1566 
   1567 	* elflint.c: Adjust for latest new hash table format.
   1568 	* readelf.c: Likewise.
   1569 
   1570 	* elflint.c (check_versym): Ignore hidden bit when comparing version
   1571 	numbers.
   1572 
   1573 2006-07-05  Ulrich Drepper  <drepper (a] redhat.com>
   1574 
   1575 	* ldgeneric.c (ld_generic_create_outfile): Correctly recognize
   1576 	discarded COMDAT symbols.
   1577 
   1578 	* i386_ld.c (elf_i386_count_relocations): Lot of corrections.
   1579 	(elf_i386_create_relocations): Likewise.
   1580 	* ld.h (struct symbol): Add local and hidden bits.
   1581 	* ld.c (create_special_section_symbol): These synthsized symbols
   1582 	are local and hidden.
   1583 	* ldgeneric.c (file_process2): Check whether input file matches
   1584 	the emulation.
   1585 	(fillin_special_symbol): Create symbols as local and/or hidden
   1586 	if requested.
   1587 	(ld_generic_create_outfile): Make local copy of symbol.
   1588 	Don't hide global, defined symbols in dynamic symbol table unless
   1589 	requested.  Synthetic symbols have no version information.
   1590 
   1591 	* elflint.c: Add support for checking 64-bit SysV-style hash tables.
   1592 	* readelf.c: Add support for printing 64-bit SysV-style hash tables.
   1593 
   1594 2006-07-04  Ulrich Drepper  <drepper (a] redhat.com>
   1595 
   1596 	* elflint.c (is_rel_dyn): Fix and extend DT_RELCOUNT/DT_RELACOUNT
   1597 	testing.
   1598 
   1599 2006-07-03  Ulrich Drepper  <drepper (a] redhat.com>
   1600 
   1601 	* elflint.c: Add testing of DT_GNU_HASH.
   1602 	* readelf.c: Implement showing histogram for DT_GNU_HASH section.
   1603 
   1604 	* Makefile.am: Add hacks to create dependency files for non-generic
   1605 	linker.
   1606 
   1607 2006-06-12  Ulrich Drepper  <drepper (a] redhat.com>
   1608 
   1609 	* ldgeneric.c (ld_generic_generate_sections): Don't create .interp
   1610 	section if creating a DSO and no interpreter is given.
   1611 	(ld_generic_create_outfile): Don't store reference to symbols in
   1612 	discarded COMDAT groups.  Don't create PHDR and INTERP program header
   1613 	for DSO if no interpreter is specified.
   1614 	(create_verneed_data): Pretty printing.
   1615 
   1616 	* ldscript.y (content): If a DSO is created don't set default
   1617 	interpreter from linker script.
   1618 
   1619 	* i386_ld.c (elf_i386_count_relocations): Do not add relocations
   1620 	for symbols in discarded COMDAT groups.
   1621 	(elf_i386_create_relocations): Likewise.
   1622 	* ld.h (struct scninfo): Add unused_comdat.
   1623 	* ldgeneric.c (add_section): Also check group signature when
   1624 	matching COMDAT sections.
   1625 	(add_relocatable_file): Ignore symbols in COMDAT group which are
   1626 	discarded.
   1627 
   1628 	* elflint.c (check_one_reloc): For *_NONE relocs only check type
   1629 	and symbol reference.
   1630 
   1631 2006-06-11  Ulrich Drepper  <drepper (a] redhat.com>
   1632 
   1633 	* elflint.c (check_dynamic): Fix checking value of tags which are
   1634 	offsets in the string section.  Make sure DT_STRTAB points to the
   1635 	section referenced in sh_link.
   1636 
   1637 	* ld.c (options): Add headers.  Add short option 'R' for '--rpath'.
   1638 
   1639 	* ld.c: Recognize --eh-frame-hdr option.
   1640 	* ld.h (struct ld_state): Add eh_frame_hdr field.
   1641 	* ldgeneric.c (struct unw_eh_frame_hdr): Define.
   1642 
   1643 	* ldgeneric.c (add_section): Use ebl_sh_flags_combine instead of
   1644 	SH_FLAGS_COMBINE.
   1645 	(add_relocatable_file): Minor optimization of last change.
   1646 	(match_section): Don't preserve SHF_GROUP flag any longer.
   1647 
   1648 2006-06-10  Ulrich Drepper  <drepper (a] redhat.com>
   1649 
   1650 	* ld.c (parse_z_option): Recognize execstack and noexecstack.
   1651 	Handle record and ignore as position dependent options.
   1652 	(parse_z_option_2): Handle ignore and record here.
   1653 	* ld.h (struct ld_state): Add execstack field.
   1654 	* ldgeneric.c (add_relocatable_file): Recognize .note.GNU-stack
   1655 	sections.
   1656 	(ld_generic_create_outfile): Fix program header creation in native
   1657 	linker.  Add PT_GNU_STACK program header.
   1658 
   1659 2006-06-09  Ulrich Drepper  <drepper (a] redhat.com>
   1660 
   1661 	* i386_ld.c (elf_i386_finalize_plt): Don't change symbol table entries
   1662 	for PLT entries if there is no local definition.
   1663 
   1664 	* ld.c (parse_option): Handle -z ignore like --as-needed and
   1665 	-z record like --no-as-needed.
   1666 	* ld.h (struct ld_state): Remove ignore_unused_dsos field.
   1667 	* ldgeneric.c (new_generated_scn): Always compute ndt_needed by
   1668 	looping over DSOs.  When deciding about adding DT_NEEDED entries
   1669 	use ->as_needed instead of ignore_unused_dsos.
   1670 
   1671 2006-05-31  Ulrich Drepper  <drepper (a] redhat.com>
   1672 
   1673 	* ld.c: Recognize --as-needed and --no-as-needed options.
   1674 	* ld.h (struct usedfile): Add as_needed field.
   1675 	(struct ld_state): Likewise.
   1676 	* ldgeneric.c (ld_handle_filename_list): Copy as_needed flag from
   1677 	the list.
   1678 	* ldscript.y (filename_id_list): Split to correctly parse all
   1679 	combinations.
   1680 	(mark_as_needed): Fix loop.
   1681 
   1682 2006-05-28  Ulrich Drepper  <drepper (a] redhat.com>
   1683 
   1684 	* addr2line.c (print_dwarf_function): Use unsigned type for lineno
   1685 	and colno.
   1686 
   1687 2006-05-27  Ulrich Drepper  <drepper (a] redhat.com>
   1688 
   1689 	* readelf.c (handle_relocs_rela): Better notations for addon value.
   1690 	(print_ehdr): Distinguish e_ident[EI_VERSION] from e_version.
   1691 
   1692 2006-04-04  Ulrich Drepper  <drepper (a] redhat.com>
   1693 
   1694 	* addr2line.c: Update copyright year.
   1695 	* elfcmp.c: Likewise.
   1696 	* elflint.c: Likewise.
   1697 	* findtextrel.c: Likewise.
   1698 	* ld.c: Likewise.
   1699 	* nm.c: Likewise.
   1700 	* objdump.c: Likewise.
   1701 	* ranlib.c: Likewise.
   1702 	* readelf.c: Likewise.
   1703 	* size.c: Likewise.
   1704 	* strings.c: Likewise.
   1705 	* strip.c: Likewise.
   1706 
   1707 2006-03-09  Roland McGrath  <roland (a] redhat.com>
   1708 
   1709 	* Makefile.am (AM_LDFLAGS): New variable.
   1710 
   1711 2006-03-01  Roland McGrath  <roland (a] redhat.com>
   1712 
   1713 	* readelf.c (dwarf_tag_string, dwarf_attr_string): Update name tables
   1714 	for dwarf.h changes matching 3.0 spec.
   1715 	(dwarf_encoding_string, dwarf_lang_string, print_ops): Likewise.
   1716 
   1717 2005-12-04  Ulrich Drepper  <drepper (a] redhat.com>
   1718 
   1719 	* elflint.c (check_one_reloc): If relocation section is not loaded,
   1720 	don't check whether the relocations modify read-only sections or
   1721 	loaded and unloaded sections.
   1722 
   1723 2005-11-28  Ulrich Drepper  <drepper (a] redhat.com>
   1724 
   1725 	* elflint.c (check_one_reloc): Take additional parameters.  Use
   1726 	them to determine whether relocation is valid in this type of
   1727 	file.  DSOs and executables can contain relocation sections in
   1728 	unloaded sections which just show the relocations the linker
   1729 	applied.  Adjust all callers.
   1730 	(check_program_header): Check that PT_PHDR is loaded and that offset
   1731 	matches the one in the ELF header.
   1732 
   1733 2005-10-26  Roland McGrath  <roland (a] redhat.com>
   1734 
   1735 	* nm.c (get_var_range): dwarf_getloclist -> dwarf_getlocation.
   1736 
   1737 2005-09-03  Ulrich Drepper  <drepper (a] redhat.com>
   1738 
   1739 	* strip.c (handle_elf): Unify some error messages.
   1740 	* ld.c (main): Likewise.
   1741 	* ldgeneric.c (open_elf): Likewise.
   1742 	* elfcmp.c (main): Likewise.
   1743 	* elflint.c (check_elf_header): Likewise.
   1744 
   1745 	* size.c (process_file): Fix typo in error message.
   1746 
   1747 	* readelf.c: Lots of little cleanups.  Use _unlocked functions.
   1748 
   1749 2005-09-02  Ulrich Drepper  <drepper (a] redhat.com>
   1750 
   1751 	* strings.c (main): Reset elfmap variable after munmap call.
   1752 	[_MUDFLAP] (map_file): Simplify mudflap debugging by not using mmap.
   1753 
   1754 2005-08-28  Ulrich Drepper  <drepper (a] redhat.com>
   1755 
   1756 	* ranlib.c: Don't define pread_retry and write_retry here.
   1757 
   1758 	* Makefile.an [BUILD_STATIC] (libdw): Add -ldl.
   1759 	(CLEANFILES): Add *.gcno *.gcda *.gconv.
   1760 
   1761 	* strings.c (process_chunk): Reorder expressions in conditional
   1762 	(process_chunk_mb): Likewise.
   1763 
   1764 	* strings.c: New file.
   1765 	* Makefile.am (bin_PROGRAMS): Add strings.
   1766 	(strings_no_Wstring): Define.
   1767 	(strings_LDADD): Define.
   1768 
   1769 2005-08-27  Roland McGrath  <roland (a] redhat.com>
   1770 
   1771 	* addr2line.c (dwarf_diename_integrate): Function removed.
   1772 	(print_dwarf_function): Use plain dwarf_diename.
   1773 
   1774 2005-08-24  Ulrich Drepper  <drepper (a] redhat.com>
   1775 
   1776 	* elflint.c (check_versym): Versioned symbols should not have
   1777 	local binding.
   1778 
   1779 2005-08-15  Ulrich Drepper  <drepper (a] redhat.com>
   1780 
   1781 	* elflint.c (check_versym): Allow VER_NDX_LOCAL symbols to be
   1782 	undefined.
   1783 
   1784 	* Makefile.am: Add rules to build ranlib.
   1785 	* ranlib.c: New file.
   1786 
   1787 2005-08-14  Roland McGrath  <roland (a] redhat.com>
   1788 
   1789 	* elflint.c (check_sections): Use ebl_section_type_name and allow any
   1790 	sh_type it recognizes.
   1791 
   1792 	* elflint.c (check_sections): Print unknown flags in hex, don't
   1793 	truncate high bits.  Print section number and name for unknown type.
   1794 
   1795 2005-08-13  Roland McGrath  <roland (a] redhat.com>
   1796 
   1797 	* elflint.c (check_program_header): Use ebl_segment_type_name and
   1798 	allow any p_type it recognizes.  Include p_type value in error
   1799 	message for unknown type.
   1800 
   1801 2005-08-13  Ulrich Drepper  <drepper (a] redhat.com>
   1802 
   1803 	* elflint.c (check_symtab): Simplify last change a bit.  Pass ehdr
   1804 	to ebl_check_special_symbol.
   1805 	(check_sections): Pass ehdr to ebl_bss_plt_p.
   1806 
   1807 2005-08-12  Roland McGrath  <roland (a] redhat.com>
   1808 
   1809 	* elflint.c (check_symtab): Check that _GLOBAL_OFFSET_TABLE_ st_shndx
   1810 	refers to the right section if it's not SHN_ABS.
   1811 	Let ebl_check_special_symbol override _G_O_T_ value and size checks.
   1812 
   1813 	* elflint.c (check_sections): Don't complain about a non-NOBITS
   1814 	section taking no segment space, if it's sh_size is 0.
   1815 
   1816 	* elflint.c (check_sections): Use ebl_bss_plt_p to see if .plt should
   1817 	be PROGBITS or NOBITS.
   1818 
   1819 	* elflint.c (check_symtab): Use ebl_check_special_symbol to override
   1820 	standard st_value and st_size checks.
   1821 
   1822 2005-07-28  Roland McGrath  <roland (a] redhat.com>
   1823 
   1824 	* addr2line.c (options, parse_opt): Don't handle -e here.
   1825 	(executable): Variable removed.
   1826 	(argp_children): New static variable.
   1827 	(argp): Use it.  Make const.
   1828 	(main): Fill in argp_children from dwfl_standard_argp ().
   1829 	Let libdwfl handle file selection, pass Dwfl handle to handle_address.
   1830 	(print_dwarf_function): New function.  Try to figure out inline chain.
   1831 	(elf_getname): Function removed, libdwfl does it for us.
   1832 	(handle_address): Take Dwfl handle instead of Elf, Dwarf handles.
   1833 	Use dwfl_module_addrname instead of elf_getname.
   1834 	Use dwfl_module_getsrc and dwfl_lineinfo instead of libdw calls.
   1835 	* Makefile.am (INCLUDES): Add libdwfl directory to path.
   1836 
   1837 2005-08-10  Ulrich Drepper  <drepper (a] redhat.com>
   1838 
   1839 	* strip.c (parse_opt): STATE parameter is now used.
   1840 	Various little cleanups.
   1841 
   1842 	* readelf.c (print_debug_line_section): Correct fallout of renaming
   1843 	of DW_LNS_set_epilog_begin.
   1844 
   1845 2005-08-08  Roland McGrath  <roland (a] redhat.com>
   1846 
   1847 	* strip.c (options, parse_opt): Grok -R .comment for compatibility
   1848 	with binutils strip.  Likewise -d, -S, as aliases for -g.
   1849 	Likewise ignore -s/--strip-all.
   1850 
   1851 2005-08-07  Roland McGrath  <roland (a] redhat.com>
   1852 
   1853 	* strip.c (process_file): Open read-only when using a different output
   1854 	file.
   1855 
   1856 2005-08-06  Ulrich Drepper  <drepper (a] redhat.com>
   1857 
   1858 	* elflint.c (in_nobits_scn): New function.
   1859 	(check_versym): Allow references for defined symbols against versions
   1860 	of other DSOs also for symbols in nobits sections.
   1861 	Move a few variables around.
   1862 
   1863 	* Makefile.am (AM_CFLAGS): Avoid duplication.
   1864 	Link with statis libs if BUILD_STATIC.
   1865 
   1866 2005-08-05  Ulrich Drepper  <drepper (a] redhat.com>
   1867 
   1868 	* elflint.c: Many, many more tests.  Mostly related to symbol
   1869 	versioning.  Those sections should now be completely checked.
   1870 
   1871 	* readelf.c (print_dynamic): Use gelf_offscn.
   1872 
   1873 2005-08-04  Ulrich Drepper  <drepper (a] redhat.com>
   1874 
   1875 	* elflint.c: Add lots more tests: more extension symbol table sanity,
   1876 	versioning section tests, hash table tests.  General cleanup.
   1877 
   1878 2005-08-02  Ulrich Drepper  <drepper (a] redhat.com>
   1879 
   1880 	* objdump.c: New file.
   1881 	* Makefile.am (bin_PROGRAMS): Add objdump.
   1882 	(objdump_LDADD): Define.
   1883 
   1884 	* elflint.c (check_reloc_shdr): New function split out from check_rela
   1885 	and check_rel.
   1886 	(check_one_reloc): New function.  Likewise.
   1887 	(check_rela): Use check_reloc_shdr and check_one_reloc.
   1888 	(check_rel): Likewise.
   1889 	(check_program_header): Check that PT_DYNAMIC entry matches .dynamic
   1890 	section.
   1891 	Add checks that relocations against read-only segments are flagged,
   1892 	that the text relocation flag is not set unnecessarily, and that
   1893 	relocations in one section are either against loaded or not-loaded
   1894 	segments.
   1895 
   1896 2005-08-01  Ulrich Drepper  <drepper (a] redhat.com>
   1897 
   1898 	* elfcmp.c (main): Ignore section count and section name string table
   1899 	section index.
   1900 
   1901 2005-07-27  Roland McGrath  <roland (a] redhat.com>
   1902 
   1903 	* elfcmp.c: Include <locale.h>.
   1904 
   1905 2005-07-27  Ulrich Drepper  <drepper (a] redhat.com>
   1906 
   1907 	* elfcmp.c: Print name and index of differing section.
   1908 
   1909 2005-07-24  Ulrich Drepper  <drepper (a] redhat.com>
   1910 
   1911 	* elfcmp.c: Implement comparing gaps between sections.
   1912 
   1913 2005-07-23  Ulrich Drepper  <drepper (a] redhat.com>
   1914 
   1915 	* elflint.c: Include libeblP.h instead of libebl.h.
   1916 	* nm.c: Likewise.
   1917 	* readelf.c: Likewise.
   1918 	* elfcmp.c: Likewise.
   1919 
   1920 	* elfcmp.c (main): Compare individual ELF header fields, excluding
   1921 	e_shoff instead of the whole struct at once.
   1922 	Use ebl_section_strip_p instead of SECTION_STRIP_P.
   1923 	* strip.c: Use ebl_section_strip_p instead of SECTION_STRIP_P.
   1924 
   1925 2005-07-22  Ulrich Drepper  <drepper (a] redhat.com>
   1926 
   1927 	* elfcmp.c (main): Take empty section into account when comparing
   1928 	section content.
   1929 
   1930 	* elflint.c (check_dynamic): Check that d_tag value is >= 0 before
   1931 	using it.
   1932 
   1933 2005-07-21  Ulrich Drepper  <drepper (a] redhat.com>
   1934 
   1935 	* elfcmp.c: New file.
   1936 	* Makefile.am (bin_PROGRAMS): Add elfcmp.
   1937 	(elfcmp_LDADD): Define.
   1938 
   1939 	* elflint.c (check_rela): Check that copy relocations only reference
   1940 	object symbols or symbols with unknown type.
   1941 	(check_rel): Likewise.
   1942 
   1943 2005-06-08  Roland McGrath  <roland (a] redhat.com>
   1944 
   1945 	* readelf.c (print_ops): Add consts.
   1946 
   1947 2005-05-31  Roland McGrath  <roland (a] redhat.com>
   1948 
   1949 	* readelf.c (print_debug_abbrev_section): Don't bail after first CU's
   1950 	abbreviations.  Print a header line before each CU section.
   1951 
   1952 	* readelf.c (print_debug_loc_section): Fix indentation for larger
   1953 	address size.
   1954 
   1955 2005-05-30  Roland McGrath  <roland (a] redhat.com>
   1956 
   1957 	* readelf.c (print_debug_line_section): Print section offset of each
   1958 	CU's table, so they are easy to find from seeing the stmt_list value.
   1959 
   1960 	* readelf.c (dwarf_attr_string): Add all attributes in <dwarf.h>.
   1961 	(attr_callback): Grok DW_AT_ranges and print offset in hex.
   1962 
   1963 	* readelf.c (attr_callback): Add 2 to addrsize * 2 for %#0* format.
   1964 	(print_debug_ranges_section, print_debug_loc_section): Likewise.
   1965 
   1966 	* readelf.c (print_ops): Take different args for indentation control.
   1967 	(attr_callback): Caller updated.
   1968 	Grok several more block-form attributes as being location expressions.
   1969 	For those same attributes with udata forms, format output differently
   1970 	for location list offset.
   1971 	(print_debug_loc_section): Implement it for real.
   1972 
   1973 	* readelf.c (options): Mention ranges for --debug-dump.
   1974 	(enum section_e): Add section_ranges.
   1975 	(parse_opt): Grok "ranges" for -w/--debug-dump.
   1976 	(print_debug_ranges_section): New function.
   1977 	(print_debug): Handle .debug_ranges section.
   1978 
   1979 2005-05-30  Ulrich Drepper  <drepper (a] redhat.com>
   1980 
   1981 	* readelf.c (handle_notes): At least x86-64 need not have the note
   1982 	section values aligned to 8 bytes.
   1983 
   1984 2005-05-18  Ulrich Drepper  <drepper (a] redhat.com>
   1985 
   1986 	* readelf.c (dwarf_tag_string): Add new tags.
   1987 
   1988 2005-05-08  Roland McGrath  <roland (a] redhat.com>
   1989 
   1990 	* strip.c (handle_elf): Don't translate hash and versym data formats,
   1991 	elf_getdata already did it for us.
   1992 
   1993 2005-05-07  Ulrich Drepper  <drepper (a] redhat.com>
   1994 
   1995 	* Makefile.am (findtextrel_LDADD): Add $(libmudflap).
   1996 	(addr2line_LDADD): Likewise.
   1997 
   1998 2005-05-03  Roland McGrath  <roland (a] redhat.com>
   1999 
   2000 	* strip.c (handle_elf): Apply symbol table fixups to discarded
   2001 	relocation sections when they are being saved in the debug file.
   2002 
   2003 	* strip.c (handle_elf): Pass EHDR->e_ident[EI_DATA] to gelf_xlatetom
   2004 	and gelf_xlatetof, not the native byte order.
   2005 
   2006 	* strip.c (parse_opt): Give error if -f or -o is repeated.
   2007 	(main): Exit if argp_parse returns nonzero.
   2008 
   2009 	* strip.c (debug_fname_embed): New variable.
   2010 	(options, parse_opt): New option -F to set it.
   2011 
   2012 2005-05-07  Ulrich Drepper  <drepper (a] redhat.com>
   2013 
   2014 	* readelf.c (parse_opt): Make any_control_option variable
   2015 	local.  Simplify some tests.
   2016 
   2017 2005-05-03  Roland McGrath  <roland (a] redhat.com>
   2018 
   2019 	* strip.c (crc32_file): Function removed (now in ../lib).
   2020 
   2021 2005-05-03  Roland McGrath  <roland (a] redhat.com>
   2022 
   2023 	* elflint.c (is_debuginfo): New variable.
   2024 	(options, parse_opt): New option --debuginfo/-d to set it.
   2025 	(check_sections): If is_debuginfo, don't complain about SHT_NOBITS.
   2026 	(check_note): If is_debuginfo, don't try to get note contents.
   2027 
   2028 2005-04-24  Ulrich Drepper  <drepper (a] redhat.com>
   2029 
   2030 	* readelf.c (print_debug_abbrev_section): Don't print error when end of
   2031 	section reached.
   2032 
   2033 2005-04-14  Ulrich Drepper  <drepper (a] redhat.com>
   2034 
   2035 	* readelf.c (dwarf_encoding_string): New function.
   2036 	(dwarf_inline_string): New function.
   2037 	(dwarf_access_string): New function.
   2038 	(dwarf_visibility_string): New function.
   2039 	(dwarf_virtuality_string): New function.
   2040 	(dwarf_identifier_case_string): New function.
   2041 	(dwarf_calling_convention_string): New function.
   2042 	(dwarf_ordering_string): New function.
   2043 	(dwarf_discr_list_string): New function.
   2044 	(attr_callback): Decode man more attribute values.
   2045 
   2046 2005-04-01  Ulrich Drepper  <drepper (a] redhat.com>
   2047 
   2048 	* addr2line.c: Finish implementation of -f option.
   2049 
   2050 2005-03-29  Ulrich Drepper  <drepper (a] redhat.com>
   2051 
   2052 	* addr2line.c: New file.
   2053 	* Makefile.am (bin_PROGRAMS): Add addr2line.
   2054 	Define addr2line_LDADD.
   2055 
   2056 	* findtextrel.c: Use new dwarf_addrdie function.
   2057 
   2058 	* findtextrel.c: Fix usage message and re-add accidentally removed
   2059 	line.
   2060 
   2061 2005-03-28  Ulrich Drepper  <drepper (a] redhat.com>
   2062 
   2063 	* findtextrel.c: New file.
   2064 	* Makefile: Add rules to build findtextrel.
   2065 
   2066 2005-02-15  Ulrich Drepper  <drepper (a] redhat.com>
   2067 
   2068 	* ldlex.l: Provide ECHO definition to avoid warning.
   2069 
   2070 	* elflint.c (check_program_header): Fix typo in RELRO test.
   2071 
   2072 	* Makefile.am (AM_CFLAGS): Add more warning options.
   2073 	* elflint.c: Fix warnings introduced by the new warning options.
   2074 	* i386_ld.c: Likewise.
   2075 	* ld.c: Likewise.
   2076 	* ld.h: Likewise.
   2077 	* ldgeneric.c: Likewise.
   2078 	* nm.c: Likewise.
   2079 	* readelf.c: Likewise.
   2080 	* sectionhash.c: Likewise.
   2081 	* size.c: Likewise.
   2082 	* string.c: Likewise.
   2083 
   2084 2005-02-05  Ulrich Drepper  <drepper (a] redhat.com>
   2085 
   2086 	* Makefile.am: Check for text relocations in constructed DSOs.
   2087 
   2088 	* Makefile.am [MUDFLAP] (AM_CFLAGS): Add -fmudflap.  Link all apps
   2089 	with -lmudflap.
   2090 
   2091 	* ldscript.y: Add as_needed handling.
   2092 	* ldlex.l: Recognize AS_NEEDED token.
   2093 	* ld.h (struct filename_list): Add as_needed flag.
   2094 
   2095 2005-02-04  Ulrich Drepper  <drepper (a] redhat.com>
   2096 
   2097 	* elflint.c (check_symtab): Correctly determine size of GOT section.
   2098 
   2099 2005-01-19  Ulrich Drepper  <drepper (a] redhat.com>
   2100 
   2101 	* ld.c: Remove unnecessary more_help function.  Print bug report
   2102 	address using argp.
   2103 	* strip.c: Likewise.
   2104 	* size.c: Likewise.
   2105 	* nm.c: Likewise.
   2106 	* readelf.c: Likewise.
   2107 	* elflint.c: Likewise.
   2108 
   2109 	* elflint.c (main): Don't check for parameter problems here.
   2110 	(parse_opt): Do it here, where we get informed about some of them
   2111 	anyway.
   2112 
   2113 	* readelf.c (main): Don't check for parameter problems here.
   2114 	(parse_opt): Do it here, where we get informed about some of them
   2115 	anyway.
   2116 
   2117 2005-01-11  Ulrich Drepper  <drepper (a] redhat.com>
   2118 
   2119 	* strip.c: Update copyright year.
   2120 	* readelf.c: Likewise.
   2121 	* size.c: Likewise.
   2122 	* nm.c: Likewise.
   2123 	* ld.c: Likewise.
   2124 	* elflint.c: Likewise.
   2125 
   2126 	* elflint.c (check_symtab): Don't warn about wrong size for
   2127 	_DYNAMIC and __GLOBAL_OFFSET_TABLE__ for --gnu-ld.
   2128 
   2129 2004-10-05  Ulrich Drepper  <drepper (a] redhat.com>
   2130 
   2131 	* readelf.c (print_phdr): In section mapping, also indicate
   2132 	sections in read-only segments.
   2133 
   2134 2004-09-25  Ulrich Drepper  <drepper (a] redhat.com>
   2135 
   2136 	* readelf.c: Make compile with gcc 4.0.
   2137 	* strip.c: Likewise.
   2138 
   2139 2004-08-16  Ulrich Drepper  <drepper (a] redhat.com>
   2140 
   2141 	* strip.c (handle_elf): Rewrite dynamic memory handling to use of
   2142 	allocate to work around gcc 3.4 bug.
   2143 
   2144 2004-01-25  Ulrich Drepper  <drepper (a] redhat.com>
   2145 
   2146 	* ldlex.l (invalid_char): Better error message.
   2147 
   2148 2004-01-23  Ulrich Drepper  <drepper (a] redhat.com>
   2149 
   2150 	* readelf.c: Print SHT_GNU_LIBLIST sections.
   2151 
   2152 	* none_ld.c: New file.
   2153 
   2154 2004-01-21  Ulrich Drepper  <drepper (a] redhat.com>
   2155 
   2156 	* Makefile.am: Enable building of machine specific linker.
   2157 
   2158 2004-01-20  Ulrich Drepper  <drepper (a] redhat.com>
   2159 
   2160 	* Makefile.am: Support building with mudflap.
   2161 
   2162 	* i386_ld.c: Fix warnings gcc 3.4 spits out.
   2163 	* ldgeneric.c: Likewise.
   2164 	* ldscript.y: Likewise.
   2165 	* readelf.c: Likewise.
   2166 	* strip.c: Likewise.
   2167 
   2168 	* readelf.c (print_debug_line_section): Determine address size
   2169 	correctly.
   2170 
   2171 2004-01-19  Ulrich Drepper  <drepper (a] redhat.com>
   2172 
   2173 	* readelf.c (print_phdr): Show which sections are covered by the
   2174 	PT_GNU_RELRO entry.
   2175 
   2176 	* elflint.c (check_program_header): Check PT_GNU_RELRO entry.
   2177 
   2178 	* readelf.c (print_debug_macinfo_section): Implement.
   2179 
   2180 2004-01-18  Ulrich Drepper  <drepper (a] redhat.com>
   2181 
   2182 	* readelf.c (print_debug_line_section): Implement.
   2183 
   2184 2004-01-17  Ulrich Drepper  <drepper (a] redhat.com>
   2185 
   2186 	* src/elflint.c: Use PACKAGE_NAME instead of PACKAGE.
   2187 	* src/ld.c: Likewise.
   2188 	* src/nm.c: Likewise.
   2189 	* src/readelf.c: Likewise.
   2190 	* src/size.c: Likewise.
   2191 	* src/strip.c: Likewise.
   2192 
   2193 	* strip.c: Add a few more unlikely.  Reduce scope of some variables.
   2194 
   2195 	* Makefile.am: Support building with mudflap.
   2196 
   2197 2004-01-16  Ulrich Drepper  <drepper (a] redhat.com>
   2198 
   2199 	* readelf.c (print_debug_info_section): Free dies memory.
   2200 
   2201 	* readelf.c: Print .debug_info section content.
   2202 
   2203 2004-01-13  Ulrich Drepper  <drepper (a] redhat.com>
   2204 
   2205 	* readelf.c (print_shdr): Add support for SHF_ORDERED and SHF_EXCLUDE.
   2206 
   2207 2004-01-12  Ulrich Drepper  <drepper (a] redhat.com>
   2208 
   2209 	* readelf.c (print_debug_aranges): Implement using libdw.
   2210 
   2211 2004-01-11  Ulrich Drepper  <drepper (a] redhat.com>
   2212 
   2213 	* nm.c: Adjust for Dwarf_Files type and dwarf_lineno interface change.
   2214 
   2215 	* readelf.c: Use libdw instead of libdwarf.  Not all of the old
   2216 	behavior is available yet.
   2217 	* Makefile.am: Link readelf with libdw.  Remove libdwarf include path.
   2218 
   2219 2004-01-09  Ulrich Drepper  <drepper (a] redhat.com>
   2220 
   2221 	* nm.c (get_local_names): Adjust call to dwarf_nextcu.
   2222 
   2223 	* nm.c: Implement getting information about local variables.
   2224 
   2225 2004-01-07  Ulrich Drepper  <drepper (a] redhat.com>
   2226 
   2227 	* nm.c: Read also debug information for local symbols.
   2228 
   2229 2004-01-05  Ulrich Drepper  <drepper (a] redhat.com>
   2230 
   2231 	* nm.c: Shuffle dwarf handling code around so the maximum column
   2232 	width can be computed ahead of printing.  Avoid collection symbols
   2233 	which are not printed anyway.
   2234 
   2235 	* nm.c: Rewrite dwarf handling to use libdw.
   2236 	* Makefile.am (AM_CFLAGS): Add -std parameter.
   2237 	(INCLUDES): Find header in libdw subdir.
   2238 	(nm_LDADD): Replace libdwarf with libdw.
   2239 
   2240 	* elflint.c: Update copyright year.
   2241 	* readelf.c: Likewise.
   2242 	* size.c: Likewise.
   2243 	* strip.c: Likewise.
   2244 	* nm.c: Likewise.
   2245 
   2246 2003-12-31  Ulrich Drepper  <drepper (a] redhat.com>
   2247 
   2248 	* strip.c (process_file): Close file before returning.
   2249 
   2250 2003-11-19  Ulrich Drepper  <drepper (a] redhat.com>
   2251 
   2252 	* readelf.c (handle_dynamic): Make column for tag name wider.
   2253 
   2254 2003-09-29  Ulrich Drepper  <drepper (a] redhat.com>
   2255 
   2256 	* readelf.c (handle_dynamic): Always terminate tag name with a space.
   2257 
   2258 2003-09-25  Ulrich Drepper  <drepper (a] redhat.com>
   2259 
   2260 	* strip.c (process_file): Don't mmap the input file, we modify the
   2261 	data structures and don't want the change end up on disk.
   2262 
   2263 2003-09-23  Jakub Jelinek  <jakub (a] redhat.com>
   2264 
   2265 	* unaligned.h (union u_2ubyte_unaligned,
   2266 	union u_4ubyte_unaligned, union u_8ubyte_unaligned): Add
   2267 	packed attribute.
   2268 	(add_2ubyte_unaligned, add_4ubyte_unaligned,
   2269 	add_8ubyte_unaligned): Avoid nesting bswap_NN macros.
   2270 	Read/store value through _ptr->u instead of *_ptr.
   2271 
   2272 2003-09-22  Ulrich Drepper  <drepper (a] redhat.com>
   2273 
   2274 	* size.c (show_sysv): Change type of maxlen to int.
   2275 
   2276 	* strip.c (handle_elf): Handle the 64-bit archs which is 64-bit
   2277 	buckets.
   2278 
   2279 	* i386_ld.c: Many many fixes and extensions.
   2280 	* ld.c: Likewise.
   2281 	* ldgeneric.c: Likewise.
   2282 
   2283 2003-08-16  Ulrich Drepper  <drepper (a] redhat.com>
   2284 
   2285 	* ldgeneric.c (check_definition): Don't add symbol on dso_list if
   2286 	the reference is from another DSO.
   2287 
   2288 2003-08-15  Ulrich Drepper  <drepper (a] redhat.com>
   2289 
   2290 	* ldgeneric.c (find_entry_point): It is no fatal error if no entry
   2291 	point is found when creating a DSO.
   2292 
   2293 2003-08-14  Ulrich Drepper  <drepper (a] redhat.com>
   2294 
   2295 	* ld.c (main): Always call FLAG_UNRESOLVED.
   2296 	* ldgeneric.c (ld_generic_flag_unresolved): Only complain about
   2297 	undefined symbols if not creating DSO or ld_state.nodefs is not set.
   2298 
   2299 2003-08-13  Ulrich Drepper  <drepper (a] redhat.com>
   2300 
   2301 	* Makefile.in: Depend on libebl.a, not libebl.so.
   2302 
   2303 	* ld.c (main): Mark stream for linker script as locked by caller.
   2304 	(read_version_script): Likewise.
   2305 	* ldlex.c: Define fread and fwrite to _unlocked variant.
   2306 
   2307 	* i386_ld.c (elf_i386_finalize_plt): Replace #ifdefs with uses of
   2308 	target_bswap_32.
   2309 	* unaligned.h: Define target_bswap_16, target_bswap_32, and
   2310 	target_bswap_64.
   2311 	(store_2ubyte_unaligned, store_4ubyte_unaligned,
   2312 	store_8ubyte_unaligned): Define using new macros.
   2313 
   2314 2003-08-12  Ulrich Drepper  <drepper (a] redhat.com>
   2315 
   2316 	* i386_ld.c (elf_i386_finalize_plt): Use packed structs to access
   2317 	possibly unaligned memory.  Support use of big endian machines.
   2318 
   2319 2003-08-11  Ulrich Drepper  <drepper (a] redhat.com>
   2320 
   2321 	* Moved to CVS archive.
   2322