* Bringing over sky (dvp) gas change from branch.
Wed Jul 22 17:39:28 1998 Frank Ch. Eigler <fche@cygnus.com>
* config/tc-dvp.c (parse_float): Accept 0xhex constants
also for VU LOI operand.
Use symbolic names of relocation entries for the various
architectures. Correct more layout details. Print names of MIPS
specific section types. Print Alpha, ARM, and MIPS relocation type
names.
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