Ian Lance Taylor [Mon, 20 Jul 1998 16:52:49 +0000 (16:52 +0000)]
Mon Jul 20 12:51:16 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* addr2line.c (find_address_in_section): Only consider a section
if the pc value is completely contained within it.
(translate_addresses): Don't crash if functionname or filename are
null.
Correct reading of .dynamic section.
(dynamic_section): Now a global variable.
(process_mips_fpe_exception, process_mips_specific, process_arch_specific):
New functions.
(get_file_header): Call process_arch_specific.
Martin Hunt [Sun, 19 Jul 1998 09:33:34 +0000 (09:33 +0000)]
Sun Jul 19 02:11:45 1998 Martin M. Hunt <hunt@cygnus.com>
* symtab.c (decode_line_2): Instead of printing a prompt
and calling command_line_input() without a prompt, just
call it with the proper args. This makes the GUI work too.
Sat Jul 18 12:28:39 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_cleanup): Add call to tcl function
gdbtk_cleanup. We need this so the GUI gets to clean
up no matter how GDB exits.
Ron Unrau [Fri, 17 Jul 1998 15:29:11 +0000 (15:29 +0000)]
* blockframe.c (find_pc_sect_partial_function): allow for the possi-
bility of multiple symbols at the same address when finding high.
* breakpoint.c (resolve_sal_pc): if the function based section lookup
fails, try getting the section from the minimal symbol table.
* parse.c (write_exp_msymbol): use symbol_overlayed_address to get
the LMA of a minimal symbol if unmapped.
* symtab.c (find_line_symtab): change interface to return symtab
containing the best linetable found.
(decode_line_1): use find_line_symtab to set val.symtab. This should
improve support for source files with multiple symtabs.
* tm-txvu.h: include tm-mips64.h instead of starting from scratch.
Ian Lance Taylor [Wed, 15 Jul 1998 05:02:34 +0000 (05:02 +0000)]
* Makefile.in ($(CONFIGURE_TARGET_MODULES)): If there are any
multilibs, force reconfiguration the first time we create
multilib.out in a subdirectory, in case TARGET_SUBDIR is `.'.
Ian Lance Taylor [Tue, 14 Jul 1998 16:44:28 +0000 (16:44 +0000)]
Tue Jul 14 12:33:44 1998 Chris Torek <torek@bsdi.com>
* config/tc-sparc.c (log2): New static function.
(s_reserve): Use log2 to convert alignment before calling
record_alignment.
(s_common): Use log2 to convert alignment before calling
record_alignment and frag_align.
(sparc_cons_align): Use log2.
Ian Lance Taylor [Tue, 14 Jul 1998 15:45:55 +0000 (15:45 +0000)]
Tue Jul 14 11:22:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf32-m68k.c (elf_m68k_check_relocs): Also reference count
R_68K_PCxx and R_68K_xx relocations. Make sure that
ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference.
(elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and
R_68K_xx relocations.
(elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol
that has no plt entry.
(elf_m68k_relocate_section): Ignore the plt offset in a static
link.
* elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for
an ignored symbol.
(elf_gc_common_finalize_got_offsets): Set the got offsets also in
a static link.
* elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc
types.
(howto_table, reloc_map): Add entries for them.
(elf_m68k_check_relocs): Handle them. Implement reference
counting for got and plt entries.
(elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions.
(elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt
symbols.
(rtype_to_howto_rel, elf_info_to_howto_rel): Delete.
(elf_m68k_relocate_section): Handle the new reloc types.
(bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook,
elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define.
* elflink.h (elf_link_add_object_symbols): When creating an
indirect reference for symbol versioning also copy the plt
offset.
(elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT
flag also reset the plt offset.
(elf_link_assign_sym_version): Likewise.
(elf_gc_common_finalize_got_offsets): Increment the got offset by
the size of the entry in bytes.
(elf_gc_allocate_got_offsets): Likewise.
Tue Jul 14 11:18:14 1998 Ian Lance Taylor <ian@cygnus.com>
* elflink.h (elf_gc_sections): Return true rather than falling off
the bottom.
Ian Lance Taylor [Mon, 13 Jul 1998 18:54:43 +0000 (18:54 +0000)]
Mon Jul 13 14:53:59 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* i386-dis.c (ckprefix): Handle fwait specially only when it isn't
the first prefix.
(dofloat): Correct test for fnstsw. Print `fnstsw %ax' rather
than `fnstsw %eax'.
(OP_J): Remove unnecessary subtraction when 16-bit displacement
will be masked later.
Ian Lance Taylor [Mon, 13 Jul 1998 17:31:43 +0000 (17:31 +0000)]
Mon Jul 13 13:29:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (mode_from_disp_size): Change arg and return
type to unsigned int.
(md_assemble): Change type used to store offsets from unsigned
long to long.
(i386_operand): Switch error check to only call RESTORE_END_STRING
once after parse_register.
Ian Lance Taylor [Fri, 10 Jul 1998 20:31:44 +0000 (20:31 +0000)]
* ieee.c (ieee_slurp_external_symbols): Select an appropriate
section for an absolute symbol in a fully linked file. Based on
patch from Christian Holland <CHolland@de.lucent.com>.
Ian Lance Taylor [Fri, 10 Jul 1998 20:19:22 +0000 (20:19 +0000)]
From Christian Holland <CHolland@de.lucent.com>:
* ieee.c (parse_ieee): Initialize info.global_vars and
info.global_types.
(parse_ieee_atn): Ignore register lifetime information reportedly
emitted by MRI compiler.
Jeff Law [Thu, 9 Jul 1998 22:23:18 +0000 (22:23 +0000)]
* mn10300-tdep.c (mn10300_generic_register_names): New variable.
(set_machine_hook): New function. Copy the appropriate register
names into reg_names.
(_initialize_mn10300_tdep): Set up to call set_machine_hook.
* tm-mn10300 (NUM_REGS): Bump to 32.
(REGISTER_NAMES): Updated accordingly.
start-sanitize-am33
* mn10300-tdep.c (am33_register_names): New variable.
(mn10300_analyze_prologue): Handle regs saved by am33 prologues.
* tm-mn10300.h (E0_REGNUM): Define.
end-sanitize-am33
Jeff Law [Thu, 9 Jul 1998 19:41:47 +0000 (19:41 +0000)]
* am33.igen: Fix Z bit for remaining addc/subc instructions.
Do not sign extend immediate for mov imm,XRn.
More random mul, mac & div fixes.
Remove some unused variables.
Sign extend 24bit displacement in memory addresses.
Whee, more fixes.
Jeff Law [Thu, 9 Jul 1998 19:04:22 +0000 (19:04 +0000)]
* mn10300.igen: Fix Z bit for addc and subc instructions.
Minor fixes in multiply/divide patterns.
start-sanitize-am33
* am33.igen: Fix Z bit for addc Rm,Rn and subc Rm,Rn. Various
fixes to 2 register multiply, divide and mac instructions. Set
Z,N correctly for sat16. Sign extend 24 bit immediate for add,
and sub instructions.
Jeff Law [Thu, 9 Jul 1998 16:09:24 +0000 (16:09 +0000)]
* am33.igen: Add remaining non-DSP instructions.
Lots of work still remains. PSW handing is probably broken badly and the
mul/mac classes of instructions are probably not handled correctly.
Jeff Law [Wed, 8 Jul 1998 18:25:52 +0000 (18:25 +0000)]
* config/tc-mips.c (mips_ip, case 'i' and 'j'): Mask off high bits
for %lo expressions.
(mips_ip, case 'u'): Move range check after code to mask
off bits in %hi/%lo expressions. Mask off high bits for
%lo expressions.
pr16135
Andrew Cagney [Wed, 8 Jul 1998 08:00:36 +0000 (08:00 +0000)]
Add a printf fmt style version of sim_events_schedule.
This allows the caller to specify extra trace information that is
only evaluated when tracing is enabled.
Jeff Law [Wed, 8 Jul 1998 03:55:07 +0000 (03:55 +0000)]
* readelf.c (byte_get): Use PARAMS in prototype.
(error): Make it work with non-ANSI compilers.
(warn): Likewise.
(get_ver_flags): Don't use an ANSI prototype in the definition.
* Makefile.am (ldver.texi): New target.
(ld.info, ld.dvi): Depend upon ldver.texi.
* ld.texinfo: Include ldver.texi. Mention version number on title
page and in top node.
* Makefile.in: Rebuild.
* doc/Makefile.am (gasver.texi): New target.
(as.info, as.dvi): Depends upon gasver.texi.
* doc/as.texinfo: Include gasver.texi. Mention version number on
title page and in top node.
* doc/Makefile.in: Rebuild.
* listing.c (listing_listing): For EDICT_LIST, skip all lines up to
but not including the line containing the edict.
* listing.h (LISTING_EOF): New.
* input-scrub.c (input_scrub_next_buffer): Call it.
* objcopy.c (filter_bytes): Set size correctly if the size of the
section is not an even multiple of the interleave. Based on patch
from Brion Stone <Brion.Stone@attws.com>.
Tue Jul 7 13:00:37 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (space_chars): Remove. The scrubber converts
sequences of whitespace to a single space.
(is_space_chars): Just compare with space.
(md_begin): Don't initialize space_chars.
(md_assemble): Just skip a single whitespace character.
(i386_operand): Rewrite base-index parsing to use new
parse_register, and to skip white space. Skip white space in a
number of other places too. Don't give error message if
parse_register fails.
(parse_register): Change reg_string parameter to be non-const.
Add end_op parameter. Skip white space after the `%', and return
end of register string. Give error message here rather than
caller.