Michael Snyder [Thu, 19 Jun 2003 02:14:14 +0000 (02:14 +0000)]
2003-06-18 Michael Snyder <msnyder@redhat.com>
* compile.c: Replace "Hitachi" with "Renesas".
(decode): Distinguish AV_H8S from AV_H8H.
(sim_resume): H8SX can use any register for TAS.
(decode): Add support for VECIND.
(sim_resume): Implement rte/l and rts/l.
(GETSR): New macro (actually old macro reincarnated).
(decode): Add handling for IMM2.
(sim_resume): Drop extra block around jmp, jsr, rts.
Add handling for trapa and rte.
For divxu.b, change 0xffff mask to 0xff.
(set_h8300h): Add bfd_mach_h8300sxn machine.
* gdb.texinfo (Remote Debugging): New section "Connecting to a
remote target". Document the "detach" and "disconnect" commands.
(Server, Netware, Debug Session): Reference "Connecting to a
remote target".
(GDB/MI Target Manipulation): Document "-target-disconnect".
Jakub Jelinek [Wed, 18 Jun 2003 17:58:48 +0000 (17:58 +0000)]
* dw2gencfi.c (EH_FRAME_ALIGNMENT): Define if not defined.
(output_cie): Don't pad.
(output_fde): Add align argument. Pad to align if not 0.
(cfi_finish): Set .eh_frame alignment to EH_FRAME_ALIGNMENT.
Pad just last FDE to EH_FRAME_ALIGNMENT.
* elf32-cris.c (cris_elf_relocate_section) <case
R_CRIS_32_GOTREL>: When linking a program, don't complain about a
symbol from a normal object or an undefined weak symbol.
H.J. Lu [Wed, 18 Jun 2003 00:30:04 +0000 (00:30 +0000)]
bfd/
2003-06-17 H.J. Lu <hongjiu.lu@intel.com>
* section.c (struct sec): Put back kept_section.
(STD_SECTION): Put back kept_section initialization.
* bfd-in2.h: Regenerate.
* elflink.h (elf_link_input_bfd): Also check discarded linkonce
sections for relocateable output. Use kept_section to preserve
debug information discarded by linkonce.
ld/
2003-06-17 H.J. Lu <hongjiu.lu@intel.com>
* ldlang.c (section_already_linked): Put back assignment of
kept_section.
Stephane Carrez [Tue, 17 Jun 2003 20:58:32 +0000 (20:58 +0000)]
* ada-tasks.c (find_function_in_inferior): Don't declare it.
("regcache.h"): Include it.
* ada-lex.l (block_lookup): Replace VAR_NAMESPACE with VAR_DOMAIN.
* breakpoint.c (insert_catchpoint): New function.
(insert_breakpoints): Use catch_exceptions to call
insert_catchpoint. Disable catchpoints if they fail to insert.
Alan Modra [Tue, 17 Jun 2003 09:10:41 +0000 (09:10 +0000)]
* elf64-ppc.c (struct ppc_link_hash_table): Remove top_index. Modify
input_list.
(ppc64_elf_link_hash_table_create): Init input_list here.
(ppc64_elf_setup_section_lists): Remove code setting up input lists
per output section. Set toc_off for abs and other standard sections.
(ppc64_elf_reinit_toc): Don't set elf_gp on input bfds lacking a toc.
(ppc64_elf_next_input_section): Adjust for single input section list.
Don't set toc_curr from input bfds that haven't set elf_gp.
(group_sections): Adjust for single input section list.
Andrew Cagney [Mon, 16 Jun 2003 20:05:56 +0000 (20:05 +0000)]
2003-06-16 Andrew Cagney <cagney@redhat.com>
* frame.h (deprecated_get_next_frame_hack): Declare.
* frame.c (legacy_saved_regs_prev_register): Only require
DEPRECATED_FRAME_INIT_SAVED_REGS when it is needed. Assert that
there are always saved regs.
(deprecated_generic_get_saved_register): Do not require
DEPRECATED_FRAME_INIT_SAVED_REGS.
(legacy_get_prev_frame): Do not require DEPRECATED_FRAME_CHAIN,
use frame ID unwind instead.
(deprecated_get_next_frame_hack): New function.
Corinna Vinschen [Mon, 16 Jun 2003 17:13:02 +0000 (17:13 +0000)]
* h8300-tdep.c (E_PSEUDO_CCR_REGNUM): New define.
(E_PSEUDO_EXR_REGNUM): Ditto.
(h8300_is_argument_spill): Check for instructions moving argument
registers into safe registers.
(h8300_skip_prologue): Check for stm instruction to push registers
used for register variables onto stack.
(gdb_print_insn_h8300): Remove.
(h8300_examine_prologue): Add a comment.
(h8300_register_name): Take pseudo registers into account.
(h8300s_register_name): Ditto.
(h8300sx_register_name): Ditto.
(h8300_print_register): Ditto.
(h8300_print_registers_info): Define "nice" printing order.
(h8300_saved_pc_after_call): Take pseudo registers into account.
(h8300_register_type): Ditto. Return type used for remote connection
when requesting real CCR or EXR register, return actual type when
requesting pseudo CCR or EXR.
(h8300_pseudo_register_read): New function.
(h8300_pseudo_register_write): Ditto.
(h8300_dbg_reg_to_regnum): Ditto.
(h8300s_dbg_reg_to_regnum): Ditto.
(h8300_gdbarch_init): Call set_gdbarch_num_pseudo_regs,
set_gdbarch_ecoff_reg_to_regnum, set_gdbarch_dwarf_reg_to_regnum,
set_gdbarch_dwarf2_reg_to_regnum, set_gdbarch_stab_reg_to_regnum and
set_gdbarch_print_insn architecture dependent.
Call set_gdbarch_pseudo_register_read and
set_gdbarch_pseudo_register_write.
(_initialize_h8300_tdep): Remove assignment to deprecated_tm_print_insn.
Thiemo Seufer [Mon, 16 Jun 2003 12:13:10 +0000 (12:13 +0000)]
* config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN,
ADDRESS_LOAD_INSN,ADDRESS_STORE_INSN): New macros.
(macro_build_ldst_constoffset,load_address,macro,s_cpsetup,
s_cprestore,s_cpadd): Use them.
Alan Modra [Mon, 16 Jun 2003 10:50:22 +0000 (10:50 +0000)]
* elf64-ppc.c (ppc64_elf_relocate_section): When optimizing toctprel
tls, check that a TOC16_DS or TOC16_LO_DS reloc isn't pointing to a
dtprel entry. Ensure TLS_LD DTPMOD reloc has a zero addend. Write
got section for RELATIVE relocs. Fix wrong comment. Change condition
under which dynamic relocs update the section contents.
* configure.in: Add specific case for cris-*-linux-gnu* with
em=linux.
* configure: Regenerate.
* config/tc-cris.c (DEFAULT_CRIS_AXIS_LINUX_GNU): New macro, TRUE
if TE_LINUX defined, else FALSE.
(bfd_boolean demand_register_prefix): Set default from
DEFAULT_CRIS_AXIS_LINUX_GNU.
(symbols_have_leading_underscore): Similar.
* config/tc-cris.h (LOCAL_LABELS_DOLLAR): Define to 1.
Theodore A. Roth [Mon, 16 Jun 2003 00:36:59 +0000 (00:36 +0000)]
* avr-tdep.c (avr_scan_prologue): Update comment describing the various
prologue types.
Properly scan prologues generated by gcc with the -mcall-prologues option.
Add code to scan -mcall-prologues for mega devices.
Theodore A. Roth [Sun, 15 Jun 2003 22:01:05 +0000 (22:01 +0000)]
* avr-tdep.c (avr_register_byte): Delete function.
(avr_register_raw_size): Delete function.
(avr_register_virtual_size): Delete function.
(avr_register_virtual_type): Delete function.
(avr_register_type): New function.
(avr_address_to_pointer): Remove unused code.
(avr_read_fp): Need to read FP as two separate bytes due to change to
avr_register_type() usage.
(avr_gdbarch_init): Don't set deprecated_register_size.
Don't set deprecated_register_bytes.
Don't set deprecated_register_byte.
Don't set deprecated_register_raw_size.
Don't set deprecated_max_register_raw_size.
Don't set deprecated_register_virtual_size.
Don't set deprecated_max_register_virtual_size.
Don't set deprecated_register_virtual_type.
Set register_type method.
Mark Kettenis [Sun, 15 Jun 2003 11:01:46 +0000 (11:01 +0000)]
* i386-tdep.c (i386_register_to_value, i386_value_to_register):
Move floating-point code to new function in i387-tdep.c.
* i387-tdep.c (i387_register_to_value, i387_value_to_register):
New functions containing code moved here from i386-tdep.c.
* i387-tdep.h: Add opaque declaration for `struct type'.
(i387_register_to_value, i387_value_to_register): New prototypes.
* x86-64-tdep.c (x86_64_convert_register_p): New function.
(x86_64_init_abi): Set convert_register_p, register_to_value and
value_to_register here.
Andrew Cagney [Sat, 14 Jun 2003 22:35:25 +0000 (22:35 +0000)]
2003-06-14 Andrew Cagney <cagney@redhat.com>
Mark Kettenis <kettenis@gnu.org>
* gdbarch.sh (CONVERT_REGISTER_P): Add "type" parameter.
(REGISTER_TO_VALUE, VALUE_TO_REGISTER): Replace raw buffer
parameter with "frame".
* gdbarch.h, gdbarch.c: Re-generate.
* frame.h (put_frame_register): Declare.
* frame.c (put_frame_register): New function.
* arch-utils.c (legacy_convert_register_p): Add "type" parameter.
(legacy_register_to_value): Rewrite, use "frame" to get the
register value.
(legacy_value_to_register): Rewrite, use "frame" to find the
register's location before storing.
* arch-utils.h (legacy_convert_register_p): Update.
(legacy_register_to_value, legacy_value_to_register): Update.
* findvar.c (value_from_register): Rewrite, eliminate use of
REGISTER_CONVERT_TO_TYPE, pass "type" to CONVERT_REGISTER_P, pass
"frame" to REGISTER_TO_VALUE.
* valops.c (value_assign): Move the CONVERT_REGISTER code to the
lval_reg_frame_relative + lval_register branch of the switch. Do
not use REGISTER_CONVERT_FROM_TYPE. Use put_frame_register.
* i386-tdep.c (I386_EBX_REGNUM, I386_ECX_REGNUM, I386_ESI_REGNUM,
I386_EDI_REGNUM): New defines.
(i386_next_regnum, i386_convert_register_p,
i386_register_to_value, i386_value_to_register): New functions.
(i386_register_convertible, i386_register_convert_to_virtual,
i386_convert_to_raw): Remove functions.
(i386_gdbarch_init): Set convert_register_p, register_to_value and
value_to_register instead of register_convertible,
register_convert_to_virtual and register_convert_to_raw.
* mips-tdep.c (mips_convert_register_p): New function.
(mips_value_to_register): Replace mips_register_convert_from_type.
(mips_register_to_value): Replace mips_register_convert_to_type.
(mips_gdbarch_init): Set conver_register_p, value_to_register and
register_to_value.
* alpha-tdep.c (alpha_convert_register_p): Update.
(alpha_value_to_register): Update, store the register.
(alpha_register_to_value): Update, fetch the register.
Andrew Cagney [Sat, 14 Jun 2003 22:10:47 +0000 (22:10 +0000)]
2003-06-14 Andrew Cagney <cagney@redhat.com>
* gdb.base/store.exp: Test longest and doublest. Test all
parameters. Weaken return statement match.
* gdb.base/store.c: Add longest and doublest - aka long long and
long double functions. Put all parameters into local register
variables. Use negative values.
Theodore A. Roth [Sat, 14 Jun 2003 21:00:46 +0000 (21:00 +0000)]
* avr-tdep.c (avr_remote_translate_xfer_address): Delete function.
(avr_gdbarch_init): Remove avr_call_dummy_words variable.
Don't set deprecated_call_dummy_words.
Remove commented out set_gdbarch_believe_pcc_promotion() call.
Don't set remote_translate_xfer_address.
(avr_io_reg_read_command): Remove commented out debug printf.
Wrap a long line.
Andrew Cagney [Sat, 14 Jun 2003 16:51:42 +0000 (16:51 +0000)]
2003-06-14 Andrew Cagney <cagney@redhat.com>
* gdb.base/fileio.c: Include <errno.h>, and <sys/wait.h>. Gag
-Wformat errors. Add lost line. Use WEXITSTATUS to get system
exit status.
* gdb.base/fileio.exp: Disable target when nointerrupts and
noinferiorio, instead of limiting it to remote. Use remote_exec
instead of system.
Andrew Cagney [Fri, 13 Jun 2003 20:37:28 +0000 (20:37 +0000)]
2003-06-13 Andrew Cagney <cagney@redhat.com>
* infcall.c (call_function_by_hand): When UNWIND_DUMMY_ID is
available, do not use the FP register, and always save the TOS.
* dummy-frame.c (dummy_frame_this_id): Do not assert
SAVE_DUMMY_FRAME_TOS.
* i386-tdep.c (i386_save_dummy_frame_tos): Delete function.
(i386_gdbarch_init): Do not set save_dummy_frame_tos.
(i386_push_dummy_call): Add 8 to the returned SP.
* frame.c (legacy_frame_p): Do not require SAVE_DUMMY_FRAME_TOS.
* d10v-tdep.c (d10v_unwind_dummy_id): Use d10v_unwind_sp.
(d10v_gdbarch_init): Do not set save_dummy_frame_tos.
* x86-64-tdep.c (x86_64_save_dummy_frame_tos): Delete function.
(x86_64_push_dummy_call): Return "sp + 16".
(x86_64_init_abi): Do not set save_dummy_frame_tos.
* alpha-tdep.c (alpha_gdbarch_init): Do not set
save_dummy_frame_tos.
Theodore A. Roth [Fri, 13 Jun 2003 17:52:28 +0000 (17:52 +0000)]
* avr-tdep.c (avr_address_to_pointer): Shift code addrs right 1 bit.
(avr_pointer_to_address): Shift code addrs left 1 bit.
(avr_convert_from_func_ptr_addr): Delete function since operation is
better handled by avr_address_to_pointer and avr_pointer_to_address.
(avr_gdbarch_init): Don't set convert_from_func_ptr_add method.