Commit graph

583 commits

Author SHA1 Message Date
Kris Warkentin
27e28cc5db 2003-07-04 Kris Warkentin <kewarken@qnx.com>
* config/i386/nto.mh: Set XM_FILE to xm-i386.h
2003-07-04 15:57:08 +00:00
Kris Warkentin
61bb466e19 2003-07-04 Kris Warkentin <kewarken@qnx.com>
* nto-procfs.c: New file.  Native procfs support for QNX Neutrino.
* config/i386/nto.mh: New file.
* config/i386/nm-nto.h: New file.
* configure.host: Add i[3456]86-*-nto*.
2003-07-04 15:48:57 +00:00
Daniel Jacobowitz
0b1b50c059 * config/arm/linux.mt: Remove code protected by GDBSERVER define.
* config/arm/nm-linux.h: Likewise.
	* config/arm/tm-linux.h: Likewise.
	* config/ia64/nm-linux.h: Likewise.
	* config/ia64/tm-ia64.h: Likewise.
	* config/s390/tm-linux.h: Likewise.
	* config/s390/tm-s390.h: Likewise.
	* s390-nat.c: Likewise.
	* s390-tdep.c: Likewise.

	* config/i386/linux.mt: Don't set GDBSERVER_DEPFILES.
	* config/ia64/linux.mt: Likewise.
	* config/m68k/linux.mh: Likewise.
	* config/mips/linux.mt: Likewise.
	* config/powerpc/linux.mh: Likewise.
	* config/sh/linux.mt: Likewise.
2003-06-20 13:57:30 +00:00
Daniel Jacobowitz
ea67f13b68 * arch-utils.c (default_prepare_to_proceed): Remove.
(generic_prepare_to_proceed): Remove.
	* arch-utils.h (default_prepare_to_proceed): Remove prototype.
	(generic_prepare_to_proceed): Remove prototype.
	* gdbarch.sh (PREPARE_TO_PROCEED): Remove.
	* gdbarch.c: Regenerate.
	* gdbarch.h: Regenerate.
	* hppa-tdep.c (hppa_prepare_to_proceed): Remove dangling prototype.
	* hppah-nat.c (hppa_switched_threads): Remove.
	* infrun.c (prepare_to_proceed): New static function, copied from
	generic_prepare_to_proceed.  Remove select_it argument.
	(proceed): Call prepare_to_proceed.
	* infttrace.c (old_gdb_pid, reported_pid, reported_bpt): Remove
	variables.
	(ptrace_wait): Don't set the removed variables.
	(hppa_switched_threads): Remove.
	* lin-lwp.c (lin_lwp_prepare_to_proceed): Remove.
	* config/nm-linux.h (PREPARE_TO_PROCEED): Don't define.
	(lin_lwp_prepare_to_proceed): Remove prototype.
	* config/i386/nm-x86-64linux.h (PREPARE_TO_PROCEED): Don't undefine.
	* config/pa/nm-hppah.h (PREPARE_TO_PROCEED): Don't define.
2003-06-19 15:04:58 +00:00
Daniel Jacobowitz
3993f6b15a * Makefile.in (linux-nat.o): Add rule.
* linux-nat.c: New file.
	* config/nm-linux.h (CHILD_INSERT_FORK_CATCHPOINT): Define.
	(CHILD_INSERT_VFORK_CATCHPOINT): Define.
	(CHILD_INSERT_EXEC_CATCHPOINT): Define.
	* config/alpha/alpha-linux.mh (NATDEPFILES): Add linux-nat.o.
	* config/arm/linux.mh (NATDEPFILES): Likewise.
	* config/i386/linux.mh (NATDEPFILES): Likewise.
	* config/i386/x86-64linux.mh (NATDEPFILES): Likewise.
	* config/ia64/linux.mh (NATDEPFILES): Likewise.
	* config/m68k/linux.mh (NATDEPFILES): Likewise.
	* config/mips/linux.mh (NATDEPFILES): Likewise.
	* config/powerpc/linux.mh (NATDEPFILES): Likewise.
	* config/s390/s390.mh (NATDEPFILES): Likewise.
	* config/sparc/linux.mh (NATDEPFILES): Likewise.
2003-06-15 20:56:48 +00:00
Andrew Cagney
42c466d75a 2003-06-14 Andrew Cagney <cagney@redhat.com>
* mips-tdep.c (mips_register_to_value): Make static.
	(mips_value_to_register): Make static.
	* i386-tdep.c (i386_fetch_pointer_argument): Make static.
	* ia64-tdep.c (ia64_register_raw_size): Make static.
	(ia64_register_virtual_size): Make static.
	(ia64_register_byte): Make static.
	* i387-tdep.c: Include "i387-tdep.h".
	(print_387_control_word): Delete function.
	(print_387_status_word): Delete function.
	(print_387_status_bits): Delete function.
	(print_387_control_bits): Delete function.
	* Makefile.in (i387-tdep.o): Update dependencies.
	* rdi-share/host.h (Fail): Declare.
	* remote-rdi.c (Fail): Update to match declaration.
2003-06-15 00:27:54 +00:00
Mark Kettenis
c4f35dd8e1 * x86-64-tdep.h (x86_64_num_regs, x86_64_num_gregs): Remove
variable declarations.
(x86_64_register_number, x86_64_register_name): Remove prototypes.
(x86_64_linux_frame_saved_pc, x86_64_linux+saved_pc_after_call,
x86_64_linux_in_sigtramp, x86_64_linux_frame_chain,
x86_64_init_frame_pc, x86_64_init_frame_pc,
x86_64_function_has_prologue): Remove prototypes.
(X86_64_NUM_GREGS): New define.
(x86_64_supply_fxsave, x86_64_fill_fxsave): New prototypes.
* x86-64-tdep.c: Don't include "dwarf2cfi.h".  Include
"dummy_frame.h", "frame.h", "frame-base.h", "frame-unwind.h".
(RAX_REGNUM, RDX_REGNUM, RDI_REGNUM, EFLAGS_REGNUM, ST0_REGNUM,
XMM1_REGNUM): Remove defines.
(X86_64_RAX_REGNUM, X86_64_RDX_REGNUM, X86_64_RDI_REGNUM,
X86_64_RBP_REGNUM, X86_64_RSP_REGNUM, X86_64_RIP_REGNUM,
X86_64_EFLAGS_REGNUM, X86_64_ST0_REGNUM, X86_64_XMM0_REGNUM,
X86_64_XMM1_REGNUM): New defines.
(struct x86_64_register_info): Renamed from `struct
register_info'.  Remove `size' member.
(x86_64_register_info_table): Remove variable.
(x86_64_register_info): New variable.
(X86_64_NUM_REGS): New define.
(X86_64_NUM_GREGS): Remove define.
(x86_64_num_regs, x86_64_num_gregs): Remove variables.
(x86_64_dwarf2gdb_regno_map, x86_64_dwarf2gdb_regno_map_length):
Remove variables.
(x86_54_dwarf2_reg_to_regnum): Remove function.
(x86_64_dwarf_regmap, x86_64_dwarf_regmap_len): New variables.
(x86_64_dwarf_reg_to_regnum): New function.
(x86_64_register_name): Rewrite.
(x86_64_register_raw_size): Remove function.
(x86_64_register_byte_table): Remove variable.
(x86_64_register_byte): Remove function.
(x86_64_register_virtual_type): Remove function.
(x86_64_register_type): New function.
(x86_64_register_convertible, x86_64_register_convert_to_virtual,
x86_64_register_convert_to_raw): Remove functions.
(x86_64_push_return_address, x86_64_pop_frame): Remove functon.
(x86_64_use_struct_convention): Make static.  Adjust for renamed
defines.
(x86_64_frame_init_saved_regs): Remove function.
(x86_64_push_arguments): Make static.  Change to accept a regcache
as argument.
(x86_64_store_return_value, x86_64_extract_return_value): Make
static.  Rewrite based on i386 counterparts.
(x86_64_push_dummy_call): New function.
(X86_64_NUM_SAVED_REGS): New define.
(x86_64_register_number): Remove function.
(x86_64_store_struct_return): Remove function.
(x86_64_frameless_function_invocation,
x86_64_function_has_prologue): Remove functions.
(PROLOG_BUFSIZE): Remove define.
(struct x86_64_frame_cache): New structure.
(x86_64_alloc_frame_cache, x86_64_analyze_prologue,
x86_64_frame_cache, x86_64_frame_this_id,
x86_64_frame_prev_register, x86_64_frame_p,
x86_64_sigtramp_frame_cache, x86_64_sigtramp_frame_this_id,
x86_64_sigtramp_frame_prev_register, x86_sigtramp_frame_p): New
functions.
(x86_64_frame_unwind, x86_64_sigtramp_frame_unwind): New
variables.
(x86_64_skip_prologue): Rewrite in terms of
x86_64_analyze_prologue.
(x86_64_frame_base_address): New function.
(x86_64_frame_base): New variable.
(x86_64_save_dummy_frame_tos, x86_64_unwind_dummy_id): Rewrite.
(x86_64_init_abi): Set register_type and push_dummy_call.  Don't
set deprecated_fp_regnum, deprecated_register_size,
deprecated_register_bytes, register_raw_size, register_byte,
register_virtual_type, register_convertiable,
register_convert_to_virtual, convert_to_raw,
deprecated_get_saved_register, deprecated_target_read_fp,
deprecated_push_arguments, deprecated_push_return_address,
deprecated_pop_frame, deprecated_store_struct_return,
deprecated_frame_init_saved_regs, deprecated_frame_chain,
frameless_function_invocation, deprecated_frame_saved_pc,
deprecated_saved_pc_after_call, frame_num_args, pc_in_sigtramp,
dwarf2_build_frame_info, deprecated_init_extra_frame_info,
deprecated_init_frame_pc and virtual_frame_pointer.  Call
frame_unwind_append_predicate to register x86_64_sigtramp_frame_p
and x86_64_frame_p.  Call frame_base_set_default to register
x86_64_frame_base.
(I387_FISEG_REGNUM, I387_FOSEG_REGNUM): New defines.
(x86_64_supply_fxsave, x86_64_fill_fxsave): New functions.
(_initialize_x86_64_tdep): Remove function.
* x86-64-linux-tdep.c: Don't include "dwarf2cfi.h".
(LINUX_SIGINFO_SIZE, LINUX_UCONTEXT_SIGCONTEXT_OFFSET,
LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_FP_OFFSET): Don't
define.
(X86_64_LINUX_UCONTEXT_SIGCONTEXT_OFFSET): Define.
(x86_64_linux_sigcontext_addr): Rewrite.
(x86_64_linux_sigtramp_saved_pc, x86_64_linux_saved_pc_after_call,
x86_64_linux_frame_saved_pc): Remove functions.
(x86_64_linux_pc_in_sigtramp): Renamed from
x86_64_linux_in_sigtramp.  Try harder to recognize a signal
trampoline.
(x86_64_linux_frame_chain, x86_64_init_frame_pc):
Remove_functions.
(x86_64_linux_init_abi): Set pc_in_sigtramp.  Initialize
TDEP->sigcontext_addr, TDEP->sc_pc_offset and TDEP->sc_sp_offset.
* x86-64-linux-nat.c: Sync with i386-linux-tdep.c.
(x86_64_regmap): Rename to regmap.
(GETREGS_SUPPLIES): Use X86_64_NUM_GREGS instead of
x86_64_num_gregs.
(supply_gregset, fill_gregset): Likewise.  Use regmap instead of
x86_64_regmap.
(x86_64_fxsave_offset): Remove function.
(supply_fpregset): Simply call x86_64_supply_fxsave.
(fill_fpregset): Simply call x86_64_fill_fxsave.
(fetch_inferior_registers, store_inferior_registers): Avoid
asignment in if-statement.
(LINUX_SYSCALL_LEN, LINUX_SYSCALL_REGNUM, SYS_Sigreturn,
SYS_rt_sigreturn, LINUX_SIGCONTEXT_EFLAGS_OFFSET,
LINUX_UCONTEXT_SIGCONTEXT_OFFSET): Remove defines.
(fetch_core_registers): Remove function.
(linux_elf_core_fns): Remove.
(offsetoff): Don't define.
(_initialize_x86_64_linux_nat, kernel_u_size): Remove functions.
* config/i386/x86-64linux.mt (TDEPFILES): Add i386-linux-tdep.o.
* config/i386/x86-64linux.mh (NATDEPFILES): Remove core-aout.o,
add core-regset.o.
* config/i386/nm-x86-64linux.h: Use NM_X86_64_LINUX_H for
protection against multiple includes instead of NM_X86_64_h.  Add
various comments.  Include "config/nm-linux.h".  Don't include
<signal.h>.
(REGISTER_U_ADDR, KERNEL_U_SIZE, U_REGS_OFFSET, KERN_U_ADDR,
GET_THREAD_SIGNALS): Remove defines.
(x86_64_register_u_addr, kernel_u_size,
lin_thread_get_thread_signals): Remove prototypes.
(PTRACE_ARG3_TYPE, PTRACE_XFER_TYPE): Define to `long'.
[HAVE_LINK_H]: Don't include "solib.h".
[HAVE_LINK_H] (SVR4_SHARED_LIBS): Remove define.
* config/i386/tm-x86-64linux.h: Fix comments.
* Makefile.in (x86-64-linux-nat.o, x86_64-linux-tdep.o,
x86-64-tdep.o): Update dependencies.
2003-05-31 08:15:38 +00:00
Mark Kettenis
acd5c79833 * i386-tdep.h (i386bsd_sigcontext_addr): Remove prototype.
(I386_SIZEOF_GREGS, I386_SIZEOF_FREGS, I386_SIZEOF_XREGS): Remove
defenitions.
(IS_FP_REGNUM, IS_SSE_REGNUM): Remove definitions.
* i386-tdep.c: Mark functions that are 64-bit safe as such.
(I386_EAX_REGNUM, I386_EDX_REGNUM, I386_ESP_REGNUM,
I386_EBP_REGNUM, I386_EIP_REGNUM, I386_EFLAGS_REGNUM,
I386_ST0_REGNUM): New defines.
(CODESTREAM_BUFSIZ, codestream_tell, codestream_peek,
codestream_get): Remove define.
(codestream_next_addr, condestream_addr, condestream_buf,
codestream_off, codestream_cnt): Remove variables.
(codestream_fill, codestream_seek, codestream_read): Remove
functions.
(i386_follow_jump): Rewrite to avoid usage of removed codestream
functionality.
(i386_get_frame_setup, i386_frameless_signal_p, i386_frame_chain,
i386_sigtramp_saved_pc, i386_sigtramp_saved_sp,
i386_frame_saved_pc, i386_saved_pc_after_call,
i386_frame_num_args, i386_frame_init_saved_regs,
i386_push_return_address, i386_do_pop_frame, i386_pop_frame,
i386_push_arguments): Remove functions.
(i386_skip_prologue): Rewrite to avoid usage of removed codestream
functionality.  Use i386_analyze_prologue instead of
i386_get_frame_setup.
(I386_NUM_SAVED_REGS): New define.
(struct i386_frame_cache): New structure.
(i386_alloc_frame_cache, i386_analyze_struct_return,
i386_skip_probe, i386_analyze_frame_setup,
i386_analyze_register_saves, i386_analyze_prologue,
i386_unwind_pc, i386_frame_cache, i386_frame_this_id,
i386_frame_prev_register, i386_sigtramp_frame_cache,
i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register,
i386_frame_p, i386_sigtramp_frame_p, i386_frame_base_address,
i386_unwind_dummy_id, i386_save_dummy_tos, i386_push_dummy_call):
New functions.
(i386_frame_unwind, i386_sigtramp_frame_unwind, i386_frame_base):
New variables.
(LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): Define in terms of
I386_EAX_REGNUM and I386_EDX_REGNUM.
(i386_extract_return_value, i386_store_return_value): Use
I386_ST0_REGNUM where appropriate.
(i386_extract_struct_value_address): Rewrite to use extract_address.
(i386_svr4_pc_in_sigtramp): Add comment.
(i386_svr4_sigcontext_addr): Rewrite.
(i386_svr4_init_abi): Adjust TDEP->sc_pc_offset and
TDEP->sc_sp_offset.
(i386_gdbarch_init): Don't set deprecated_init_frame_pc.  Set
sp_regnum, fp_regnum, pc_regnum, ps_regnum and fp0_regnum in terms
of new defines.  Set push_dummy_call, don't set
deprecated_push_arguments, deprecated_push_return_address,
deprecated_pop_frame.  Don't set parm_boundary.  Don't set
deprecated_frame_chain, deprecated_frame_saved_pc,
deprecated_saved_pc_after_call.  Set unwind_dummy_id,
save_dummy_frame_tos, unwind_pc.  Call
frame_unwind_append_predicate and frame_base_set_default.  Don't
set deprecated_dummy_write_pc.  Don't set deprecated_fp_regnum.
Don't set frameless_function_invocation.  Don't set
deprecated_register_bytes, deprecated_register_size,
deprecated_call_dummy_words and deprecated_sizeof_call_dummy.
* i386-linux-tdep.c: Fix formatting in some comments.
(LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2,
LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1): Drop
redundant parentheses.
(I386_LINUX_UCONTEXT_SIGCONTEXT_OFFSET): New define.
(i386_linux_sigcontext_addr): Use it.  Rewrite.
(find_minsym_and_objfile): Change name of second argument.
(skip_gnu_resolver): Renamed from skip_hurd_resolver.  All callers
changed.  Use frame_pc_unwind instead of
DEPRECATED_SAVED_PC_AFTER_CALL.
(i386_linux_init_abi): Don't set deprecated_register_bytes.
* i386bsd-tdep.c (i386bsd_sigcontext_addr): Rewrite.
* i386-nto-tdep.c (i386nto_sigcontext_addr): Adapt for new frame
unwinder.
* i386-cygwin-tdep.c: Don't include "gdbcore.h", "frame.h" and
"dummy-frame.h".
(i386_cygwin_frame_chain_valid, i386_cygwin_frame_chain): Removed.
(_initialize_i386_cygwin_tdep): New prototype.
(i386_cygwin_init_abi): Don't set deprecated_frame_chain and
deprecated_frame_chain_valid.
* i386-sol2-tdep.c (i386_sol2_init_abi): Don't set
TDEP->sigcontext_addr, TDEP->sc_pc_offset and TDEP->sc_sp_offset.
Rely on the SVR4 defaults.
* config/i386/i386sol2.mt (TDEPFILES): Remove i386bsd-tdep.o.
* Makefile.in (i386-tdep.o, i386-cygwin-tdep.o): Update dependencies.
2003-05-30 19:24:30 +00:00
Mark Kettenis
01986c4837 * config/i386/tm-linux.h (I386_GNULINUX_TARGET): Remove define. 2003-05-10 20:14:43 +00:00
Kris Warkentin
1b883d3513 Added i386 QNX Neutrino support. 2003-05-05 13:57:21 +00:00
Andrew Cagney
2fbce69179 2003-04-09 Andrew Cagney <cagney@redhat.com>
* NEWS: Mention that the "Sequent family" is obsolete.
	* configure.tgt: Obsolete i[3456]86-sequent-bsd*,
	i[3456]86-sequent-sysv4*, and i[3456]86-sequent-sysv*.
	* configure.host: Obsolete i[3456]86-sequent-bsd*,
	i[3456]86-sequent-sysv4*, and i[3456]86-sequent-sysv*.
	* config/i386/tm-ptx4.h: Obsolete file.
	* config/i386/tm-ptx.h: Obsolete file.
	* symm-tdep.c: Obsolete file.
	* config/i386/symmetry.mt: Obsolete file.
	* config/i386/tm-symmetry.h: Obsolete file.
	* symm-nat.c: Obsolete file.
	* config/i386/nm-symmetry.h: Obsolete file.
	* config/i386/xm-symmetry.h: Obsolete file.
	* config/i386/symmetry.mh: Obsolete file.
	* config/i386/nm-ptx4.h: Obsolete file.
	* config/i386/ptx4.mh: Obsolete file.
	* config/i386/ptx.mt: Obsolete file.
	* config/i386/ptx.mh: Obsolete file.
	* config/i386/xm-ptx4.h: Obsolete file.
	* config/i386/xm-ptx.h: Obsolete file.
2003-04-09 16:19:52 +00:00
Andrew Cagney
f190828974 2003-04-09 Andrew Cagney <cagney@redhat.com>
* doublest.h: Update copyright.
	(deprecated_store_floating, deprecated_extract_floating): Rename
	store_floating and extract_floating.  Update comments.
	* doublest.c: Update copyright.
	(extract_floating_by_length): Replace extract_floating.
	(store_floating_by_length): Replace store_floating.
	(deprecated_extract_floating): New function.
	(deprecated_store_floating): New function.
	(extract_typed_floating): Call extract_floating_by_length.
	(store_typed_floating): Call store_floating_by_length.
	* x86-64-tdep.c (x86_64_store_return_value): Update.
	* sh-tdep.c (sh3e_sh4_extract_return_value): Update.
	(sh64_extract_return_value): Update.
	(sh_sh4_register_convert_to_virtual): Update.
	(sh_sh64_register_convert_to_virtual): Update.
	(sh_sh4_register_convert_to_raw): Update.
	(sh_sh64_register_convert_to_raw): Update.
	* rs6000-tdep.c (rs6000_register_convert_to_virtual): Update.
	(rs6000_register_convert_to_raw): Update.
	* ia64-tdep.c (ia64_register_convert_to_virtual): Update.
	(ia64_register_convert_to_raw): Update.
	* config/i386/tm-symmetry.h (REGISTER_CONVERT_TO_RAW): Update.
	(REGISTER_CONVERT_TO_VIRTUAL): Update.
	* arm-linux-tdep.c (arm_linux_push_arguments): Update.
	* alpha-tdep.c (alpha_register_convert_to_virtual): Update.
	(alpha_register_convert_to_raw): Update.
2003-04-09 15:08:27 +00:00
Andrew Cagney
43bd9a9e02 2003-04-05 Andrew Cagney <cagney@redhat.com>
Eliminate FRAME_FIND_SAVED_REGS.
	* config/pa/tm-hppah.h (hppa_hpux_frame_find_saved_regs_in_sigtramp):
	Change FSR parameter to a pointer.
	* config/pa/tm-hppa64.h (FRAME_FIND_SAVED_REGS_IN_SIGTRAMP):
	Assume FSR parameter is a pointer.
	* hppa-hpux-tdep.c (hppa_hpux_frame_find_saved_regs_in_sigtramp):
	Make fsr a pointer.
	* hppa-tdep.c (hppa_frame_find_saved_regs): New function.
	(hppa_frame_saved_pc): Call hppa_frame_init_saved_regs.  Make
	saved_regs a pointer.
	(hppa_frame_saved_pc): Ditto.
	(find_dummy_frame_regs): Make frame_saved_regs a pointer
	(hppa_pop_frame): Call hppa_frame_init_saved_regs.  Make fsr a
	pointer.
	(restore_pc_queue): Make fsr a pointer.
	(hppa_frame_find_saved_regs): Make frame_saved_regs a pointer.
	(hppa_frame_chain): Make saved_regs a pointer, call
	hppa_frame_init_saved_regs.
	* sparc-tdep.c: Include "gdb_assert.h".
	(sparc_frame_find_saved_regs): Replace internal_error with
	gdb_assert.
	* remote-vxsparc.c (vx_read_register): Delete reference to
	FRAME_FIND_SAVED_REGS.
	* gdbarch.sh: Delete check for FRAME_FIND_SAVED_REGS.
	* gdbarch.h: Regenerate.
	* frame.h (DEPRECATED_FRAME_INIT_SAVED_REGS): Delete macro.
	(deprecated_get_frame_saved_regs): Delete declaration.
	(struct frame_saved_regs): Delete definition.
	* frame.c (deprecated_get_frame_saved_regs): Delete function.
	* config/pa/tm-hppa.h (hppa_frame_init_saved_regs): Declare.
	(hppa_frame_find_saved_regs): Delete declaration.
	(FRAME_FIND_SAVED_REGS): Delete macro.
	(DEPRECATED_FRAME_INIT_SAVED_REGS): Define.
	* config/i386/tm-ptx.h (FRAME_FIND_SAVED_REGS): Delete
	FRAME_FIND_SAVED_REGS in comment.
2003-04-06 01:13:59 +00:00
Andrew Cagney
b81774d89c 2003-03-26 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (DEPRECATED_PUSH_ARGUMENTS): Rename PUSH_ARGUMENTS.
	(push_dummy_call): New pure multi-arch replacement with gdbarch,
	regcache and dummy_addr parameters.
	* gdbarch.h, gdbarch.c: Re-generate.
	* valops.c (hand_function_call): Use gdbarch_push_dummy_call when
	available; assume it will handle stack alignment and return
	address issues.  Fall back to DEPRECATED_PUSH_ARGUMENTS and
	legacy_push_arguments.
	(legacy_push_arguments): Rename default_push_arguments.
	* value.h (legacy_push_arguments): Rename default_push_arguments.
	* i386-tdep.c (i386_push_arguments): Call legacy_push_arguments.
	* config/sparc/tm-sparc.h (DEPRECATED_PUSH_ARGUMENTS): Update.
	* config/sparc/tm-sp64.h (DEPRECATED_PUSH_ARGUMENTS): Update.
	* config/pa/tm-hppa.h (DEPRECATED_PUSH_ARGUMENTS): Update.
	* config/i386/tm-symmetry.h: Update.
	* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
	* x86-64-tdep.c (x86_64_init_abi): Update.
	* v850-tdep.c (v850_gdbarch_init): Update.
	* sparc-tdep.c (sparc_gdbarch_init): Update.
	* sh-tdep.c (sh_gdbarch_init): Update.
	* s390-tdep.c (s390_gdbarch_init): Update.
	* rs6000-tdep.c (rs6000_gdbarch_init): Update.
	* mn10300-tdep.c (mn10300_gdbarch_init): Update.
	* mips-tdep.c (mips_gdbarch_init): Update.
	* mcore-tdep.c (mcore_gdbarch_init): Update.
	* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
	* ia64-tdep.c (ia64_gdbarch_init): Update.
	* i386-tdep.c (i386_gdbarch_init): Update.
	* hppa-tdep.c (hppa_gdbarch_init): Update.
	* h8300-tdep.c (h8300_gdbarch_init): Update.
	* frv-tdep.c (frv_gdbarch_init): Update.
	* d10v-tdep.c (d10v_gdbarch_init): Update.
	* cris-tdep.c (cris_gdbarch_init): Update.
	* avr-tdep.c (avr_gdbarch_init): Update.
	* arm-tdep.c (arm_gdbarch_init): Update.
	* arm-linux-tdep.c (arm_linux_init_abi): Update.
	* alpha-tdep.c (alpha_gdbarch_init): Update.

2003-03-26  Andrew Cagney  <cagney@redhat.com>

	* gdbint.texinfo (Target Architecture Definition): Replace
	PUSH_ARGUMENTS with push_dummy_call, add gdbarch, regcache and
	dummy_addr parameters.
2003-03-26 22:39:53 +00:00
Corinna Vinschen
1762d96d29 * Makefile.in (ALLDEPFILES): Add i386-cygwin-tdep.c.
(i386-cygwin-tdep.o): Add dependencies.
	* defs.h (enum gdb_osabi): Add GDB_OSABI_CYGWIN.
	* i386-cygwin-tdep.c: New file.
	* osabi.c (gdb_osabi_name): Add string for GDB_OSABI_CYGWIN.
	* config/i386/cygwin.mt (TDEPFILES): Add i386-cygwin-tdep.o.
2003-03-21 10:07:18 +00:00
Andrew Cagney
a0ed55327d 2003-03-03 Andrew Cagney <cagney@redhat.com>
Make MAX_REGISTER_RAW_SIZE and MAX_REGISTER_VIRTUAL_SIZE optional.
	* gdbarch.sh (DEPRECATED_MAX_REGISTER_RAW_SIZE): Variable with
	predicate.  Replace MAX_REGISTER_RAW_SIZE.
	(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto for
	MAX_REGISTER_VIRTUAL_SIZE.
	* regcache.c (legacy_max_register_raw_size): New function.
	(legacy_max_register_virtual_size): New function.
	* defs.h (MAX_REGISTER_VIRTUAL_SIZE): Define.
	(MAX_REGISTER_RAW_SIZE): Define.
	(legacy_max_register_raw_size): Declare.
	(legacy_max_register_virtual_size): Declare.
	* config/sparc/tm-sparc.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
	(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Update.
	* config/sparc/tm-sp64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
	(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto.
	* config/pa/tm-hppa.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
	(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto.
	* config/pa/tm-hppa64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
	* config/ia64/tm-ia64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
	* config/i386/tm-ptx.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
	* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
	* vax-tdep.c (vax_gdbarch_init): Update.
	* v850-tdep.c (v850_gdbarch_init): Update.
	* sparc-tdep.c (sparc_gdbarch_init): Update.
	* sh-tdep.c (sh_gdbarch_init): Update.
	* s390-tdep.c (s390_gdbarch_init): Update.
	* rs6000-tdep.c (rs6000_gdbarch_init): Update.
	* ns32k-tdep.c (ns32k_gdbarch_init): Update.
	* mn10300-tdep.c (mn10300_gdbarch_init): Update.
	* mips-tdep.c (mips_gdbarch_init): Update.
	* mcore-tdep.c (mcore_gdbarch_init): Update.
	* m68k-tdep.c (m68k_gdbarch_init): Update.
	* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
	* ia64-tdep.c (ia64_gdbarch_init): Update.
	* i386-tdep.c (i386_gdbarch_init): Update.
	* hppa-tdep.c (hppa_gdbarch_init): Update.
	* h8300-tdep.c (h8300_gdbarch_init): Update.
	* frv-tdep.c (frv_gdbarch_init): Update.
	* cris-tdep.c (cris_gdbarch_init): Update.
	* avr-tdep.c (avr_gdbarch_init): Update.
	* arm-tdep.c (arm_gdbarch_init): Update.
	* alpha-tdep.c (alpha_gdbarch_init): Update.
	* d10v-tdep.c (d10v_gdbarch_init): Do not set
	max_register_raw_size or max_register_virtual_size.
2003-03-03 20:50:20 +00:00
Kris Warkentin
7df1a32481 add HAVE_CONTINUABLE_WATCHPOINT to target_ops 2003-02-24 21:56:51 +00:00
Mark Kettenis
ff3b581062 * configure.tgt (i[3456]86-*-sysv4.2*, i[3456]86-*-sysv4*,
i[3456]86-*-sysv5*, i[3456]86-*-sco3.2v5*): Remove.  These are all
handled fine by i[3456]86-*sco* and i[3456]86-sysv*.
* config/i386/i386sco5.mt, config/i386/i386v4.mt,
config/i386/i386v42mp.mt: Removed.
2003-02-05 23:14:47 +00:00
Andrew Cagney
5aa5d4b987 2003-02-05 Andrew Cagney <ac131313@redhat.com>
Remove orphaned hosts, targets and files.
	* config/i386/gdbserve.mt, config/m68k/nm-apollo68b.h: Delete.
	* config/m68k/nm-hp300bsd.h, config/m68k/tm-apollo68b.h: Delete.
	* config/m68k/tm-es1800.h, config/m68k/tm-hp300bsd.h: Delete.
	* config/m68k/tm-mac.h, config/m68k/xm-apollo68b.h: Delete.
	* config/pa/hpux1020.mt, config/pa/hpux11.mt: Delete.
	* config/pa/hpux11w.mt, config/powerpc/gdbserve.mt: Delete.
	* config/powerpc/ppcle-eabi.mt, config/powerpc/ppcle-sim.mt: Delete.
	* config/powerpc/tm-ppc-sim.h, config/sparc/sp64sim.mt: Delete.
	* config/sparc/tm-sp64sim.h: Delete.
	* configure.host: Delete strongarm-*-*, xscale-*-*, and arm*-*-*
	hosts.
	* configure.tgt: Delete i[3456]86-*-sco3.2v4*, and
	mips*-dec-mach3* targets.
2003-02-05 15:31:56 +00:00
Andrew Cagney
31a85ea289 2003-02-01 Andrew Cagney <ac131313@redhat.com>
* infcmd.c (print_float_info): Delete code conditional on
	FLOAT_INFO.
	* config/nm-lynx.h: Delete #undef FLOAT_INFO.  Update copyright.
	* config/m68k/nm-apollo68b.h: Ditto.
	* config/i386/tm-ptx.h (FLOAT_INFO): Delete.  Update copyright.
	* config/ns32k/nm-nbsd.h (FLOAT_INFO): Ditto.
	* config/i386/tm-symmetry.h (FLOAT_INFO): Ditto.

Index: doc/ChangeLog
2003-02-01  Andrew Cagney  <ac131313@redhat.com>

	* gdbint.texinfo (Target Architecture Definition): Delete
	FLOAT_INFO.
2003-02-01 17:28:41 +00:00
Mark Kettenis
6015b6a047 * config/i386/tm-i386os9k.h: Removed. 2003-02-01 12:35:49 +00:00
Mark Kettenis
f7a30bdf92 * configure.host (i[3456]86-*-isc*): Set gdb_host to i386v.
Remove i[3456]86-*-sysv3.2* and i[3456]86-*-sysv32* entries since
they're identical to i[3456]86-*-sysv* now.
* config/i386/i386v32.mh: Removed.
* config/i386/xm-i386v32.h: Removed.
* config/i386/xm-i386sco.h (U_FPSTATE): Remove macro.
2003-02-01 12:28:00 +00:00
Mark Kettenis
28d5211104 * config/i386/i386mk.mt, config/i386/i386mk.mh: Removed. 2003-02-01 12:08:54 +00:00
Mark Kettenis
4d3f6bce6f * config/i386/i386dgux.mh: Removed.
* configure.host (i[3456]86-*-dgux): Set gdb_host to i386v4.
2003-02-01 11:45:13 +00:00
Mark Kettenis
287c1a400f * configure.in: Move code that provides the --enable-tui option
before the "Checks for libraries" section.  Polish the code
somewhat and set need_curses to yes if we build the TUI.  Rewrite
code that looks for a library providing termcap functionality to
match more closely what's done in the Readline library, and move
it into to the "Checks for libraries" section.
* configure: Regenerated.
* Makefile.in (TERMCAP): Remove variable.
* config/i386/go32.mh (TERMCAP): Remove variable.
2003-01-02 16:54:56 +00:00
Mark Kettenis
2213a65dbc * x86-64-tdep.h (x86_64_init_abi): New prototype.
* x86-64-tdep.c (i386_fp_regnum_p): Remove function.
(x86_64_init_abi): Make non-static.  Set number of pseudo
registers to 0.
(x86_64_gdbarch_init): Remove function.
(_initialize_x86_64_tdep): Renove register_gdbarch_init call.
Remove code dealing with dissambly.
* x86-64-linux-tdep.c (x86_64_linux_init_abi): New function.
(_initialize_x86_64_linux_tdep): New function.
* config/i386/x86-64linux.mt (TDEPFILES): Add i386-tdep.o and
i386-tdep.o.
2002-12-21 21:09:58 +00:00
Andrew Cagney
1a14e23479 2002-12-16 Andrew Cagney <ac131313@redhat.com>
* config/arc/arc.mt, config/arc/tm-arc.h: Delete.
	* config/d30v/d30v.mt, config/d30v/tm-d30v.h: Delete.
	* config/fr30/fr30.mt, config/fr30/tm-fr30.h: Delete.
	* config/i386/i386aix.mh, config/i386/i386aix.mt: Delete.
	* config/i386/i386m3.mh, config/i386/i386m3.mt: Delete.
	* config/i386/i386mach.mh, config/i386/i386os9k.mt: Delete.
	* config/i386/nm-i386aix.h, config/i386/nm-i386mach.h: Delete.
	* config/i386/nm-m3.h, config/i386/tm-i386aix.h: Delete.
	* config/i386/tm-i386m3.h, config/i386/tm-i386mk.h: Delete.
	* config/i386/xm-i386aix.h, config/i386/xm-i386m3.h: Delete.
	* config/i386/xm-i386mach.h, config/i386/xm-i386mk.h: Delete.
	* config/i960/mon960.mt, config/i960/nindy960.mt: Delete.
	* config/i960/tm-i960.h, config/i960/tm-mon960.h: Delete.
	* config/i960/tm-nindy960.h, config/i960/tm-vx960.h: Delete.
	* config/i960/vxworks960.mt, config/m68k/apollo68b.mh: Delete.
	* config/m68k/apollo68b.mt, config/m68k/apollo68v.mh: Delete.
	* config/m68k/hp300bsd.mh, config/m68k/hp300bsd.mt: Delete.
	* config/m68k/hp300hpux.mh, config/m68k/hp300hpux.mt: Delete.
	* config/m88k/delta88.mh, config/m88k/delta88.mt: Delete.
	* config/m88k/delta88v4.mh, config/m88k/delta88v4.mt: Delete.
	* config/m88k/m88k.mh, config/m88k/m88k.mt: Delete.
	* config/m88k/nm-delta88v4.h, config/m88k/nm-m88k.h: Delete.
	* config/m88k/tm-delta88.h, config/m88k/tm-delta88v4.h: Delete.
	* config/m88k/tm-m88k.h, config/m88k/xm-delta88.h: Delete.
	* config/m88k/xm-dgux.h: Delete.
	* fr30-tdep.c, i386aix-nat.c, i386m3-nat.c: Delete.
	* i386mach-nat.c, i960-tdep.c, m88k-nat.c: Delete.
	* os9kread.c, remote-bug.c, remote-nindy.c: Delete.
	* remote-nrom.c, remote-os9k.c, remote-vx960.c: Delete.
	* d30v-tdep.c, arc-tdep.c, cxux-nat.c, dst.h, dstread.c: Delete.
	* ch-exp.c, ch-lang.c, ch-lang.h, ch-typeprint.c: Delete.
	* ch-valprint.c: Delete.
2002-12-16 20:39:23 +00:00
Christopher Faylor
5633f84268 * win32-nat.c (psapi_get_dll_name): Fix a compiler warning.
(struct so_stuff): Add end_addr field.
(register_loaded_dll): Calculate and store end address of loaded dll.
(solib_address): New function.
(child_solib_loaded_library_pathname): Pass carefully constructed section info
to safe_symbol_file_add rather than ignoring it.
(get_child_debug_event): Call re_enable_breakpoints_in_shlibs when a DLL is
loaded.
(do_initial_child_stuff): Call disable_breakpoints_in_shlibs.
(child_create_inferior): Fix a compiler warning.
* config/i386/tm-cygwin.h (PC_SOLIB): Define new macro.
(solib_address): Declare new function.
2002-11-22 07:34:55 +00:00
Andrew Cagney
73937e031a 2002-11-13 Andrew Cagney <cagney@redhat.com>
* regcache.h (deprecated_read_register_bytes): Rename
	read_register_bytes.
	(deprecated_write_register_bytes): Rename write_register_bytes.
	* alpha-tdep.c, arm-tdep.c, cris-tdep.c, d10v-tdep.c: Update.
	* dwarf2cfi.c, frv-tdep.c, hppa-tdep.c, ia64-tdep.c: Update.
	* m68k-tdep.c, mcore-tdep.c, mips-tdep.c, mn10300-tdep.c: Update.
	* ns32k-tdep.c, regcache.c, remote-sds.c, remote-vx.c: Update.
	* remote.c, rs6000-tdep.c, s390-tdep.c, sh-tdep.c: Update.
	* sparc-tdep.c, v850-tdep.c, vax-tdep.c, x86-64-tdep.c: Update.
	* xstormy16-tdep.c, z8k-tdep.c, config/nm-gnu.h: Update.
	* config/nm-m3.h, config/h8500/tm-h8500.h: Update.
	* config/i386/nm-ptx4.h, config/i386/nm-symmetry.h: Update.
	* config/m32r/tm-m32r.h, config/m68k/nm-sun3.h: Update.
	* config/m68k/tm-delta68.h, config/m68k/tm-linux.h: Update.
	* config/mn10200/tm-mn10200.h, config/pa/tm-hppa64.h: Update.
	* config/sparc/nm-nbsd.h, config/sparc/nm-sun4os4.h: Update.
	* config/sparc/nm-sun4sol2.h, config/sparc/tm-sparclet.h: Update.

2002-11-13  Andrew Cagney  <ac131313@redhat.com>

	* mi-main.c (mi_cmd_data_write_register_values): Use
	deprecated_write_register_bytes instead of write_register_bytes.
2002-11-14 00:25:05 +00:00
Mark Kettenis
ce556f8539 * i386-linux-nat.c (ORIG_EAX): Define to -1 if not already
defined.
(regmap): Extend to cover all registers.
(PT_READ_U, PT_WRITE_U, PTRACE_XFER_TYPE,
OLD_CANNOT_FETCH_REGISTERS, OLD_CANNOT_STORE_REGISTERS): Remove
definitions.
(fetch_register, sore_register): Simplify.
(old_fetch_inferior_registers, old_store_inferior_registers):
Remove functions.
(cannot_fetch_register, cannot_store_register): Change
implementation to use regmap array to decide which registers
cannot be fetched/stored.  This removes $orig_eax from the
registers that cannot be fetched/stored.
(fetch_inferior_registers): Call fetch_register directly instead
of calling old_fetch_inferior_registers.
(store_inferior_registers): Call store_register directly instead
of calling old_store_inferior_registers.
(i386_linux_dr_get): Replace PT_READ_U with PTRACE_PEEKUSER.
(i386_linux_dr_set): Replace PT_WRITE_U with PTRACE_POKEUSER.
* config/i386/nm-linux.h (U_REGS_OFFSET): Remove definition.
2002-11-09 21:31:12 +00:00
Mark Kettenis
8674b74f1c * config/i386/tm-i386v42mp.h: Remove file. Move its contents,
except the inclusion of "i386/tm-i386.h", to...
* config/i386/nm-i386v42mp.h: ...here.
* config/i386/i386v42mp.mt (TM_FILE): Set to tm-i386.h.
2002-11-08 21:00:47 +00:00
Joel Brobecker
7a7adcdf1d New interix-specific files:
* config/i386/nm-interix.h: New file.
       * config/i386/interix.mh: New file.
       * config/i386/interix.mt: New file.
       * i386-interix-nat.c: New file.
       * i386-interix-tdep.c: New file.
2002-11-01 22:08:44 +00:00
Mark Kettenis
005328e342 * configure.tgt (i[3456]86-*-openbsd*): Set gdb_target to obds.
* config/i386/obsd.mt: New file.
* i386bsd-nat.c (_initialize_i386bsd_nat): Introduce
i386obsd_sc_pc_offset and i386obsd_sc_sp_offset;
* i386obsd-nat.c (_initialize_i386obsd_nat): Set
i386obsd_sigtramp_start and i386obsd_sigtramp_end instead of
i386nbsd_sigtramp_start and i386nbsd_sigtramp_end.
* i386obsd-tdep.c: New file.
2002-10-20 11:54:40 +00:00
Daniel Jacobowitz
8343f86c90 * c-exp.y (THIS): Delete token and grammar rule.
(yylex): Don't return THIS.
        * cp-valprint.c (vtbl_ptr_name_old): Delete.
        (cp_is_vtbl_ptr_type): Don't check vtbl_ptr_name_old.
        * demangle.c (cplus_markers): Update comment.  Put '$'
        first.  Remove CPLUS_MARKER.
        (_initialize_demangler): Don't call set_cplus_marker_for_demangling.
        * jv-exp.y (THIS): Delete token and grammar rule.
        (yylex): Don't return THIS.
        * mips-tdep.c (mips_dump_tdep): Don't dump CPLUS_MARKER.
        * objc-exp.y (THIS): Delete token and grammar rule.
        (yylex): Don't return THIS.
        * p-exp.y (yylex): Remove reference to CPLUS_MARKER.
        * stabsread.c (vptr_name, vb_name): Replace CPLUS_MARKER with '$'.
        (read_member_functions): Likewise for opname.
        (read_tilde_fields): Use is_cplus_marker.

        * defs.h (CPLUS_MARKER): Don't define.
        * config/tm-sysv4.h (CPLUS_MARKER): Likewise.
        * config/i386/xm-i386sco.h (CPLUS_MARKER): Likewise.
        * config/mips/tm-irix3.h (CPLUS_MARKER): Likewise.
        * config/mips/tm-irix6.h (CPLUS_MARKER): Likewise.
        * config/rs6000/tm-rs6000.h (CPLUS_MARKER): Likewise.

        * config/i386/tm-i386v4.h: Delete file.
        * config/djgpp/fnchange.lst: Delete tm-i386v4.h.
        * config/i386/tm-i386sol2.h: Include "i386/tm-i386.h" instead.
        * config/i386/tm-i386v42mp.h: Include "i386/tm-i386.h" instead.
        * config/i386/tm-ptx.h: Include "i386/tm-i386.h" instead.
        * config/i386/i386gnu.mt (TM_FILE): Use tm-i386.h.
        * config/i386/i386sco5.mt (TM_FILE): Likewise.
        * config/i386/i386v4.mt (TM_FILE): Likewise.
        * config/i386/ncr3000.mt (TM_FILE): Likewise.
2002-10-11 14:02:39 +00:00
Mark Kettenis
af0b251250 * config/i386/nm-i386sco.h: Add protection against
multiple-inclusion.  Include "i386/nm-i386v.h".
(REGISTER_U_ADDR): Remove define.
(i386_register_u_addr): Remove prototype.
2002-10-06 18:37:13 +00:00
Mark Kettenis
4b218c1874 * i386bsd-tdep.c (i386bsd_init_abi): Set sigtramp_start and
sigtramp_end to i386bsd_sigtramp_start and i386bsd_sigtramp_end.
* i386nbsd-tdep.c (i386nbsd_init_abi): Set sigtramp_start and
sigtramp_end to NULL.
* config/i386/tm-fbsd.h (SIGTRAMP_START, SIGTRAMP_END): Remove
defines.
(i386bsd_sigtramp_start, i386_sigtramp_end): Remove prototypes.
2002-09-06 20:44:23 +00:00
Jason Thorpe
7d400e7763 * Makefile.in (i386nbsd-tdep.o): Add $(solib_svr4_h) to
dependency list.
* i386nbsd-tdep.c (i386nbsdelf_init_abi): Set
solib_svr4_fetch_link_map_offsets to
nbsd_ilp32_solib_svr4_fetch_link_map_offsets.
* config/i386/nbsd.mt (TDEPFILES): Add solib.o and solib-svr4.o.
* config/i386/nbsdaout.mh (NATDEPFILES): Remove solib.o.
* config/i386/nbsdelf.mh (NATDEPFILES): Remove solib.o,
solib-svr4.o, and solib-legacy.o.
* config/i386/tm-nbsd.h: Include solib.h.
2002-09-02 18:09:07 +00:00
Jason Thorpe
704a27c461 * configure.tgt (i[3456]86-*-netbsdelf*): Merge with...
(i[3456]86-*-netbsd*): ...this.  Set gdb_target to nbsd.
(i[3456]86-*-openbsd*): Make this a separate entry.  Add a
comment noting that this needs its own target configuration.
* config/i386/nbsd.mt: New file.
* config/i386/nbsdaout.mt: Remove.
* config/i386/nbsdelf.mt: Ditto.
* config/i386/tm-nbsdaout.h: Ditto.
2002-09-02 17:24:51 +00:00
Jason Thorpe
d66198e1a7 * i386nbsd-tdep.c (i386nbsd_sigtramp_offset): New function.
(i386nbsd_pc_in_sigtramp): Rewrite to use i386nbsd_sigtramp_offset.
(i386nbsd_init_abi): Don't initialize tdep->sigtramp_start or
tdep->sigtramp_end.
(i386nbsd_sigtramp_start, i386nbsd_sigtramp_end): Remove.
* config/i386/tm-nbsd.h (SIGTRAMP_START, SIGTRAMP_END)
(i386bsd_sigtramp_start, i386bsd_sigtramp_end): Remove.
2002-09-02 16:35:14 +00:00
Jason Thorpe
3cac699e88 * Makefile.in (i386nbsd-tdep.o): Add $(arch_utils_h),
$(i386_tdep_h), and nbsd-tdep.h to dependency list.
* i386-tdep.h (i386bsd_init_abi): New prototype.
* i386bsd-tdep.c (i386bsd_init_abi): Remove "static" from
function declaration.
(_initialize_i386bsd_tdep): Don't register OS ABI handlers
for NetBSD-a.out or NetBSD-ELF.
(i386nbsd_sigtramp_start, i386nbsd_sigtramp_end)
(i386nbsd_sc_pc_offset, i386nbsd_sc_sp_offset)
(i386nbsd_init_abi, i386nbsdelf_init_abi): Move to...
* i386nbsd-tdep.c: ...here.  Include arch-utils.h, i386-tdep.h,
and nbsd-tdep.h.
(i386nbsd_pc_in_sigtramp): New function.
(i386nbsd_init_abi): Set gdbarch_pc_in_sigtramp to
i386nbsd_pc_in_sigtramp.
(_initialize_i386nbsd_tdep): Register i386nbsd_init_abi
and i386nbsdelf_init_abi OS ABI handlers.
* config/i386/nbsdaout.mt (TDEPFILES): Add nbsd-tdep.o.
* config/i386/nbsdelf.mt (TDEPFILES): Likewise.
2002-09-01 23:24:19 +00:00
Mark Kettenis
dfe01d390c * i386-tdep.c: Include "objfiles.h".
(i386_svr4_init_abi): Set in_solib_call_trampoline and
skip_trampoline_code.
* config/i386/tm-i386v4.h: Don't include "config/tm-sysv4.h".
(CPLUS_MARKER): Define to '.'.
2002-08-23 19:26:15 +00:00
Mark Kettenis
0b7177103b * config/i386/nm-i386sco5.h (START_INFERIOR_TRAPS_EXPECTED): Moved
here from ...
* config/i386/tm-i386sco5.h: ... here.  File removed.
* config/i386/i386sco5.mt (TM_FILE): Set to tm-i386v4.h.
2002-08-18 22:23:32 +00:00
Mark Kettenis
26d28e1276 * config/i386/nm-i386v.h (START_INFERIOR_TRAPS_EXPECTED): New define. 2002-08-18 22:17:57 +00:00
Mark Kettenis
641eda3940 * config/i386/i386aout.mt (TDEPFILES): Add i387-tdep.o
(TM_FILE): Set to tm-i386.h.
* config/i386/i386v.mt (TM_FILE): Set to tm-i386.h.
* config/i386/tm-i386v.h: Remove file.
* config/i386/tm-ptx.h [!SEQUENT_PTX4]: Include "i386/tm-i386.h"
instead of "i386/tm-i386v.h".
(START_INFERIOR_TRAPS_EXPECTED): Remove define.
* config/i386/tm-symmetry: Include "i386/tm-i386.h" instead of
"i386/tm-i386v.h".
(START_INFERIOR_TRAPS_EXPECTED): Remove define.
* config/i386/tm-vxworks.h: Include "i386/tm-i386.h" instead of
"i386/tm-i386.h".
2002-08-18 22:14:24 +00:00
Mark Kettenis
d4e0bab44f * config/i386/nm-i386v.h: Add protection against
multiple-inclusion.
(i386_register_u_addr): Remove prototype.
(register_u_addr): New prototype.
(REGISTER_U_ADDR): Redefine accordingly.
* i386v-nat.c: Improve several comments.
(i386_register_u_addr): Change signature and rename to
register_u_addr.  Use FP_REGNUM_P.  Rewrite slightly to get rid of
ubase variable.
2002-08-18 21:53:55 +00:00
Mark Kettenis
222db64cbf * config/i386/nm-i386bsd.h (FLOAT_INFO): Remove redundant #undef.
* i386b-nat.c [FLOAT_INFO]: Remove dead code.
2002-08-18 17:28:50 +00:00
Mark Kettenis
d8ee244c99 * NEWS: Mention that the i[3456]-*mach3*, i[3456]-*-mach* and
i[3456]-*-osf1mk* configurations have been made obsolete.
* configure.host: Make i[3456]86-*-mach3*, i[3456]86-*mach* and
i[3456]86-*-osf1mk* hosts obsolete.
* confighure.tgt: Make i[3456]86-*-mach3*, i[3456]86-*-osf1mk*
targets obsolete.
* config/i386/i386mach.mh, config/i386/nm-i386mach.h,
config/i386/xm-i386mach.h, config/i386/i386m3.mh,
config/i386/i386m3.mt, config/i386/nm-m3.h,
config/i386/tm-i386m3.h, config/i386/xm-i386m3.h,
config/i386/i386mk.mh, config/i386/i386mk.mt,
config/i386/tm-i386mk.h, config/i386/xm-i386mk.h: Make files
obsolete.
* i386mach-nat.c, i386m3-nat.c: Make files obsolete.
* Makefile.in (ALLDEPFILES): Remove i386mach.c i386m3-nat.c
(i386mach-nat.o, i386m3-nat.o):Make targets obsolete.
2002-08-18 16:32:14 +00:00
Joel Brobecker
0851f23d27 * config/i386/tm-cygwin.h: Remove some "#if 0"'ed macros. 2002-08-16 20:32:58 +00:00
Mark Kettenis
3f733acc3a * config/i386/nm-i386v.h (FLOAT_INFO): Remove already commented
out define.
2002-08-15 23:21:34 +00:00
Mark Kettenis
1c7cc58312 * NEWS: Mention that the i[3456]-*-aix target has been made obsolete.
* configure.host: Make i[3456]86-*-aix host obsolete.
* configure.tgt: Make i[3456]86-*-aix target obsolete.
* config/i386/i386aix.mh, config/i386/i386aix.mt,
config/i386/nm-i386aix.h, condig/i386/tm-i386aix.h,
config/i386/xm-i386aix.h: Make files obsolete.
* i386aix-nat.c: Make file obsolete.
* Makefile.in (ALLDEPFILES): Remove i386aix-nat.c.
(i386aix-nat.o): Make target obsolete.
2002-08-15 22:51:40 +00:00
Mark Kettenis
e0ca2bb902 * config/i386/nm-gnu.h: Removed.
* config/i386/nm-i386gnu.h: New file.
(THREAD_STATE_FLAVOR, THREAD_STATE_SIZE,
THREAD_STATE_SET_TRACED, THREAD_STATE_CLEAR_STATE, ATTACH_DETACH):
Moved here from ...
* config/i386/tm-i386gnu.h: ... here.  Removed.
* config/i386/xm-i386gnu.h: Removed.
* config/i386/i386gnu.mh (XM_FILE): Set to xm-i386.h.
(NAT_FILE): Set to nm-i386gnu.h.
* config/i386/i386gnu.mt (TDEPFILES): Add i386gnu-tdep.o.
* i386-tdep.c: New file.
* Makefile.in (ALLDEPFILES): Add i386gnu-nat.c and i386gnu-tdep.c.
(i386gnu-tdep.o): Specify dependencies.
2002-08-15 22:24:01 +00:00
Mark Kettenis
6b99ee2e01 * config/i386/tm-i386sco5.h: Include "i386/tm-i386v4.h" instead of
"i386/tm-i386.h", "i386/tm-i386v.h" and "config/tm-sysv.h".
Adjust a few comments to reflect reality a bit closer.
(KERNEL_U_SIZE, TARGET_HAS_HARDWARE_WATCHPOINTS,
TARGET_CAN_USE_HARDWARE_WATCHPOINT, HAVE_CONTINUEABLE_WATCHPOINT,
HAVE_STEPPABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT,
target_insert_watchpoint, target_remove_watchpoint):
Move defines to ...
* config/i386/nm-i386sco5.h: ... here.
(kernel_u_size): Add prototype.  Improve a few comments and add
protection against multiple inclusion.
2002-08-15 21:16:19 +00:00
Mark Kettenis
d9a6f65c13 * config/i386/nm-i386sco.h (FLOAT_INFO): Remove already commented
out define.
2002-08-15 19:34:58 +00:00
Mark Kettenis
047eff6a37 * uw-thread.c (SP_ARG0): Define if not already defined.
* config/i386/tm-i386.h (SO_ARG0): Remove define.
2002-08-15 19:00:47 +00:00
Mark Kettenis
dcdb1290ca * config/i386/tm-i386v4.h (HAVE_I387_REGS): Remove define. 2002-08-15 18:49:52 +00:00
Mark Kettenis
5d2d0b2ae2 * config/i386/tm-i386.h: Don't include "regcache.h". 2002-08-15 18:35:11 +00:00
Mark Kettenis
61113f8bf1 * i387-tdep.h (i387_print_float_info): New prototype.
* i387-tdep.c (print_i387_value, print_i387_ext,
print_i387_status_word, print_i387_control_word): Add `struct
ui_file *' argument and use it for output.
(i387_print_float_info): Renamed from i387_float_info.  Add
`struct gdbarch *' and `struct ui_file *' arguments and use the
latter for output.
* i386-tdep.c: Include "i387-tdep.h".
(i386_gdbarch_init): Set print_float_info.
* config/i386/tm-i386.h (i387_float_info): Remove prototype.
(FLOAT_INFO): Remove define.
2002-08-15 17:36:57 +00:00
Andrew Cagney
98216c5d02 2002-08-12 Andrew Cagney <cagney@redhat.com>
* i386-tdep.h (i386_register_byte, i386_register_raw_size): Delete
declarations.
* i386-linux-tdep.c (i386_linux_register_byte): Delete function.
(i386_linux_register_raw_size): Delete function.
i386_linux_init_abi): Update.
* i386-tdep.c (i386_register_raw_size): Delete function.
(i386_register_byte): Delete function.
(i386_gdbarch_init): Update.
(i386_register_size): Delete array.
(i386_register_offset): Delete array.

* config/i386/tm-symmetry.h (REGISTER_BYTE): Delete macro.
(REGISTER_RAW_SIZE): Delete macro.
* config/i386/tm-ptx.h (REGISTER_RAW_SIZE): Delete macro.
(REGISTER_BYTE): Delete macro.
2002-08-12 19:05:33 +00:00
Andrew Cagney
a99a9e1bc4 Obsolete i[3456]86-*-os9k. 2002-07-16 15:19:19 +00:00
Mark Kettenis
baadce09a6 * i386bsd-tdep.c (i386nbsd_sigtramp_start, i386nbsd_sigtramp_end):
New variables.
(i386nbsd_init_abi): Use these to initialize tdep->sigtramp_start
and tdep->sigtramp_end.
* i386obsd-nat.c: New file.
* config/i386/obsd.mh (NATDEPFILES): Add i386obsd-nat.o.
2002-07-04 15:13:28 +00:00
Pierre Muller
9b4f1ba7ed 2002-07-04 Pierre Muller <muller@ics.u-strasbg.fr>
* i386-nat.c (child_post_startup_inferior): New function
	calling i386_cleanup_dregs if
	I386_USE_GENERIC_WATCHPOINTS is defined.
	* config/i386/nm-i386.h: define CHILD_POST_STARTUP_INFERIOR
	conditional to acknowledge that i386-nat.c has its
	own child_post_startup_inferior function.
2002-07-04 12:32:29 +00:00
Michal Ludvig
145564b756 2002-07-02 Michal Ludvig <mludvig@suse.cz>
* config/i386/tm-x86-64linux.h: New.
	* config/i386/x86-64linux.mt: Add GDB_MULTI_ARCH and TM_FILE
	definitions.
	* config/i386/nm-x86-64.h: Rename to ...
	* config/i386/nm-x86-64linux.h: ... this one.
	* config/i386/x86-64linux.mh: Reflect the above change.
2002-07-01 22:09:52 +00:00
Mark Kettenis
52e9098c24 * config/i386/tm-i386sol2.h (COERCE_FLOAT_TO_DOUBLE): Removed.
* i386-sol2-tdep.c (i386_sol2_init_abi): Adjust for the removal of
this macro.  Include "value.h".
2002-07-01 09:13:09 +00:00
Mark Kettenis
4a93c5bb96 * config/i386/tm-i386.h (struct frame_info, struct
frame_saved_regs, struct value, struct type): Remove forward
declarations.
2002-06-30 18:55:19 +00:00
Mark Kettenis
322d4fe017 * config/i386/tm-linux.h [HAVE_PTRACE_GETFPXREGS]
(FILL_FPXREGSET, HAVE_SSE_REGS): Remove define.
* config/i386/nm-linux.h [HAVE_PTRACE_GETFPXREGS]
(FILL_FPXREGSET): Define.
2002-06-30 18:43:06 +00:00
Mark Kettenis
fdd8263d0a * config/i386/tm-nbsd.h (HAVE_SSE_REGS): Remove define. 2002-06-30 17:22:57 +00:00
Mark Kettenis
482e577bab * configure.tgt (i[3456]86-*-openbsd*): Fold into
i[3456]86-*-netbsd* case.
* config/i386/tm-obsd.h: Removed.
* config/i386/obsd.mt: Removed.
* config/i386/obsd.mh (NATDEPFILES): Remove corelow.o and
core-aout.o.
(MH_CFLAGS): Add -DYYDEBUG=0.
2002-06-30 17:19:54 +00:00
Mark Kettenis
9c5045b552 * config/i386/tm-fbsd.h [!SVR4_SHARED_LIBS]
(IN_SOLIB_CALL_TRAMPOLINE): Remove define.
* config/i386/tm-nbsdaout.h (IN_SOLIB_CALL_TRAMPOLINE): Remove
define.
* i386bsd-tdep.c: Include "arch-utils.h".
(i386bsd_aout_in_solib_call_trampoline): New function.
(i386bsd_init_abi): Set in_solib_call_trampoline to
i386bsd_aout_in_solib_call_trampoline.
(i386nbsdelf_init_abi, i386fbsd_init_abi): Set
in_solib_call_trampoline to generic_in_solib_call_trampoline.
2002-06-30 14:43:24 +00:00
David O'Brien
b9644b5802 2002-06-28 David O'Brien <obrien@FreeBSD.org>
* config/i386/nm-fbsd.h: Include <sys/param.h>.
	* config/i386/tm-fbsd.h: Likewise.
2002-06-28 18:44:49 +00:00
Mark Kettenis
b6197528ed * config/i386/tm-i386.h (REGISTER_VIRTUAL_TYPE,
REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL,
REGISTER_CONVERT_TO_RAW): Remove defines.
(i386_register_virtual_type, i386_register_convertible,
i386_register_convert_to_virtual, i386_register_convert_to_raw):
Remove prototypes.
* i386-tdep.c (i386_gdbarch_init): Adjust for removal of the
macros mentioned above.
2002-06-16 15:32:09 +00:00
Mark Kettenis
82b47e62fc * config/i386/tm-i386lynx.h (SAVED_PC_AFTER_CALL): Remove define.
(i386lynx_saved_pc_after_call): Remove prototype.
* i386ly-tdep.c: Include "i386-tdep.h".
(i386lynx_saved_pc_after_call): Make static.  Use
read_memory_nobpt instead of read_memory.  Use
read_memory_unsigned_integer instead of read_memory_integer.
(i386lynx_init_abi): New function.
(i386lynx_coff_osabi_sniffer): New function.
(_initialize_i386bsd_tdep): New function.
2002-06-16 02:19:22 +00:00
Mark Kettenis
8758dec1c5 * config/i386/tm-i386.h (PARM_BOUNDARY, CALL_DUMMY,
CALL_DUMMY_LENGTH, CALL_DUMMY_START_OFFSET,
CALL_DUMMY_BREAKPOINT_OFFSET, FIX_CALL_DUMMY): Remove defines.
(i386_fix_call_dummy): Remove prototype.
* i386-tdep.c (i386_call_dummy_words): New variable.
(i386_gdbarch_init): Adjust for removal of the
macros mentioned above.
2002-06-15 22:10:58 +00:00
Mark Kettenis
fc08ec527f * config/i386/tm-i386.h (PUSH_ARGUMENTS, STORE_STRUCT_RETURN,
DEPRECATED_EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE,
DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS, PUSH_DUMMY_FRAME,
POP_FRAME): Remove defines.
(i386_push_arguments, i386_store_struct_return,
i386_extract_return_value, i386_store_return_value,
i386_extract_struct_value_address, i386_push_dummy_frame,
i386_pop_frame): Renove prototypes.
* i386-tdep.c (i386_gdbarch_init): Adjust for removal of the
macros mentioned above.
2002-06-15 21:15:43 +00:00
Mark Kettenis
93924b6b99 * config/i386/tm-i386.h (FUNCTION_START_OFFSET, INNER_THAN,
BREAKPOINT, DECR_PC_AFTER_BREAK): Removed.
* i386-tdep.c (i386_skip_prologue): Adjust function signature to
fit into multi-arch framework.
(i386_breakpoint_from_pc): New function.
(i386_gdbarch_init): Adjust for removal of the macros mentioned
above.
2002-06-15 20:41:51 +00:00
Mark Kettenis
42fdc8df2f * config/i386/tm-i386.h (FRAMELESS_FUNCTION_INVOCATION,
FRAME_ARGS_ADDRESS, FRAME_LOCALS_ADDRESS, FRAME_NUM_ARGS,
FRAME_ARGS_SKIP, FRAME_INIT_SAVED_REGS): Remove defines.
(i386_frameless_function_invocation, i386_frame_num_args,
i386_frame_init_saved_regs): Remove prototypes.
* i386-tdep.c (i386_gdbarch_init): Adjust for removal of the
macros mentioned above.
2002-06-15 19:59:08 +00:00
Mark Kettenis
22ba8cf20b * config/i386/tm-cygwin.h, config/i386/tm-fbsd.h,
config/i386/tm-go32.h, config/i386/tm-i386gnu.h,
config/i386/tm-i386sol2.h, config/i386/tm-i386v4.h,
config/i386/tm-linux.h, config/i386/tm-nbsd.h,
config/i386/tm-obsd.h (HAVE_I387_REGS): Remove define.
* config/i386/tm-i386.h: Unconditionally define FLOAT_INFO.
2002-06-15 18:09:31 +00:00
Mark Kettenis
091198bb17 * config/i386/tm-i386.h (REGISTER_SIZE): Remove define.
(NUM_GREGS, NUM_FREGS, NUM_SSE_REGS): Remove defines.
(FP_REGNUM, SP_REGNUM, PC_REGNUM, PS_REGNUM): Remove defines.
(FP0_REGNUM): Remove define.
(MAX_REGISTER_RAW_SIZE, MAX_REGISTER_VIRTUAL_SIZE,
MAX_REGISTER_VIRTUAL_SIZE): Remove define.
(i386_register_virtual_size): Remove protoype.
* i386-tdep.c (i386_register_virtual_size): Removed.
(i386_extract_return_value, i386_store_return_value): Use
FP0_REGNUM instead of NUM_FREGS to determine whether the
floating-point registers are available.
(i386_gdbarch_init): Tweak FIXME about FPU registers.
Adjust for removal of macros mentioned above.


* i386-tdep.c (i386_gdbarch_init): Tewak
2002-06-15 17:41:29 +00:00
Mark Kettenis
1cf88de5c5 * config/i386/tm-i386.h (MAX_NUM_REGS): Removed.
* i386-tdep.c (i386_register_offset, i386_register_size): Use
I386_SSE_NUM_REGS instead of MAX_NUM_REGS for the number of
elements in these arrays.
(_initialize_i386_tdep): Use I386_SSE_NUM_REGS instead of
MAX_NUM_REGS.
2002-06-15 12:59:09 +00:00
Andrew Cagney
26e9b323da + * gdbarch.sh (DEPRECATED_EXTRACT_RETURN_VALUE): Rename
+	EXTRACT_RETURN_VALUE.
+	(DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS): Rename
+	EXTRACT_STRUCT_VALUE_ADDRESS.
+	* gdbarch.h, gdbarch.c: Regenerate.
+
+	* values.c (value_being_returned): Handle
+	DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS.
+	(EXTRACT_RETURN_VALUE): Define as DEPRECATED_EXTRACT_RETURN_VALUE.
+
+	* arm-linux-tdep.c (arm_linux_init_abi): Update.
+	* arm-tdep.c (arm_gdbarch_init): Update.
+	* avr-tdep.c (avr_gdbarch_init): Update.
+	* cris-tdep.c (cris_gdbarch_init): Update.
+	* d10v-tdep.c (d10v_gdbarch_init): Update.
+	* ia64-tdep.c (ia64_gdbarch_init): Update.
+	* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
+	* rs6000-tdep.c (rs6000_gdbarch_init): Update.
+	* s390-tdep.c (s390_gdbarch_init): Update.
+	* sh-tdep.c (sh_gdbarch_init): Update.
+	* s390-tdep.c (s390_gdbarch_init): Update.
+	* sparc-tdep.c (sparc_gdbarch_init): Update.
+	* ns32k-tdep.c (ns32k_gdbarch_init): Update.
+	* v850-tdep.c (v850_gdbarch_init): Update.
+	* vax-tdep.c (vax_gdbarch_init): Update.
+	* x86-64-tdep.c (x86_64_gdbarch_init): Update.
+	* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
+
+	* config/arc/tm-arc.h: Update.
+	* config/d30v/tm-d30v.h: Update.
+	* config/fr30/tm-fr30.h: Update.
+	* config/h8300/tm-h8300.h: Update.
* config/h8500/tm-h8500.h: Update.
* config/i386/tm-i386.h: Update.
* config/i386/tm-ptx.h: Update.
* config/i386/tm-symmetry.h: Update.
* config/i960/tm-i960.h: Update.
* config/m32r/tm-m32r.h: Update.
* config/m68k/tm-delta68.h: Update.
* config/m68k/tm-linux.h: Update.
* config/m68k/tm-m68k.h: Update.
* config/m88k/tm-m88k.h: Update.
* config/mcore/tm-mcore.h: Update.
* config/mips/tm-mips.h: Update.
* config/mn10200/tm-mn10200.h: Update.
* config/pa/tm-hppa.h: Update.
* config/pa/tm-hppa64.h: Update.
* config/sparc/tm-sp64.h: Update.
* config/sparc/tm-sparc.h: Update.
* config/sparc/tm-sparclet.h: Update.
* config/z8k/tm-z8k.h: Update.
2002-06-14 22:55:51 +00:00
Mark Kettenis
edf393acc9 * config/i386/tm-i386.h (START_INFERIOR_TRAPS_EXPECTED): Removed.
Already covered by the default.
2002-06-14 21:28:07 +00:00
Mark Kettenis
896fb97df8 * config/i386/tm-i386.h (TARGET_LONG_DOUBLE_FORMAT,
TARGET_LONG_DOUBLE_BIT): Remove.  * i386-tdep.c
(i386_gdbarch_init): Initialize long_double_format and long_double
bit.
2002-06-14 21:17:28 +00:00
Mark Kettenis
8201327c40 * config/i386/i386sol2.mt (TDEPFILES): Add i386-sol2-tdep.o and
i386bsd-tdep.o.  Remove solib.o, solib-svr4.o and solib-legacy.o.
Move these to ...
* config/i386/i386sol2.mh: ... here.
* config/i386/tm-i386sol2.h (STAB_REG_TO_REGNUM): Remove define.
(sigtramp_saved_pc, I386V4_SIGTRAMP_SAVED_PC): Don't #undef.
(SIGCONTEXT_PC_OFFSET): Remove define.
(IN_SIGTRAMP): Remove define.
* i386-sol2-tdep.c: New file.

* config/i386/i386nw.mt (TM_FILE): Change to tm-i386.h.
* config/i386/tm-i386nw.h: Removed.

* config/i386/tm-fbsd.h (STAB_REG_TO_REGNUM,
USE_STRUCT_CONVENTION): Remove defines.
(JB_ELEMENT_SIZE, JB_PC, GET_LONGJMP_TARGET): Remove defines.
(get_longjmp_target): Remove prototype.
(IN_SIGTRAMP): Remove define.
(i386bsd_in_sigtramp): Remove prototype.
(i386bsd_sigtramp_start, i386bsd_sigtramp_end): Turn into a
function.  Update comment accordingly
(SIGTRAMP_START, SIGTRAMP): Adjust definition accordingly.
(FRAME_SAVED_PC): Remove define.
(i386bsd_frame_saved_pc): Remove prototype.
* config/i386/tm-nbsd.h (JB_ELEMENT_SIZE, JB_PC,
GET_LONGJMP_TARGET): Remove defines.
(get_longjmp_target): Remove prototype.
(IN_SIGTRAMP): Remove define.
(i386bsd_in_sigtramp): Remove prototype.
(i386bsd_sigtramp_start, i386bsd_sigtramp_end): Turn into a
function.  Update comment accordingly
(SIGTRAMP_START, SIGTRAMP): Adjust definition accordingly.
(FRAME_SAVED_PC): Remove define.
(i386bsd_frame_saved_pc): Remove prototype.
* config/i386/tm-nbsdaout.h (i386nbsd_aout_use_struct_convention):
Remove prototype.
(USE_STRUCT_CONVENTION): Remove prototype.
* i386bsd-nat.c (i386bsd_sigcontext_pc_offset): Remove
declaration.
(_initialize_i386bsd_nat): Revise logic to determine some
constants at compile time when compiling a native GDB.  Warn if
things don't match up with what we expect.
* i386bsd-tdep.c (i386bsd_sigtramp_start, i386bsd_sigtramp_end):
Remove variables.
(i386bsd_in_sigtramp): Rename tp i386bsd_pc_in_sigtramp.  Rewrite
to use date stored in `struct gdbarch_tdep'.
(i386bsd_sigcontext_offset): Remove varaible.
(i386bsd_sigtramp_saved_pc): Make public.  Rewrite to use data
stored in `struct gdbarch_tdep'.
(i386bsd_frame_saved_pc): Make static.
(i386bsd_sigtramp_start, i386bsd_sigtramp_end): New functions.
(i386bsd_sc_pc_offset, i386nbsd_sc_pc_offset,
i386fbsd_sigtramp_start, i386fbsd_sigtramp_end,
i386fbsd4_sc_pc_offset): New variables.
(i386bsd_init_abi, i386nbsd_init_abi, i386nbsdelf_init_abi,
i386fbsdaout_init_abi, i386fbsd_init_abi, i386fbsd4_init_abi): New
functions.
(i386bsd_aout_osabi_sniffer, _initialize_i386bsd_tdep): New
functions.
* i386fbsd-nat.c (_initialize_i386fbsd_nat): Fix type in comment.
Modify the value of i386fbsd_sigtramp_start and
i386fbsd_sigtramp_end instead of i386bsd_sigtramp_start and
i386fbsd_sigtramp_end.
* i386nbsd-tdep.c: (i386nbsd_aout_use_struct_convention): Remove
function.

* config/i386/tm-linux.h (I386_LINUX_ORIG_EAX_REGNUM): Move
define to i386-linux-tdep.h.
(NUM_REGS, MAX_NUM_REGS, REGISTER_BYTES, REGISTER_NAME,
REGISTER_BYTE, REGISTER_RAW_SIZE, STAB_REG_TO_REGNUM): Remove
defines.
(i386_linux_register_name, i386_linux_register_byte,
i386_linux_register_raw_size): Remove prototypes.
(i386_linux_svr4_fetch_link_map_offsets): Remove prototype.
(SVR4_FETCH_LINK_MAP_OFFSETS): Remove define.
(IN_SIGTRAMP, FRAME_CHAIN, FRAME_SAVED_PC, SAVED_PC_AFTER_CALL,
TARGET_WRITE_PC): Remove defines.
(i386_linux_in_sigtramp, i386_linux_frame_chain,
i386_linux_frame_saved_pc, i386_linux_saved_pc_after_call,
i386_linux_write_pc): Remove prototypes.
(JB_ELEMENT_SIZE, JB_PC, GET_LONGJMP_TARGET): Remove defines.
(get_longjmp_target): Remove prototype.
* i386-linux-tdep.h: New file.
* i386-linux-nat.c: Include "i386-linux-tdep.h".
* i386-linux-tdep.c: Include "i386-tdep.h" and
"i386-linux-tdep.h".
(i386_linux_register_name, i386_linux_register_byte,
i386_linux_register_raw_size, i386_linux_in_sigtramp,
i386_linux_write_pc, i386_linux_svr4_fetch_link_map_offsets):
Make static.
(i386_linux_init_abi): New function.
(_initialize_i386_linux_tdep): New function.

* config/i386/tm-i386.h (SAVED_PC_AFTER_CALL): Remove define.
(i386_saved_pc_after_call): Remove prototype.
(MAX_NUM_REGS): Increase to deal with Linux's orig_eax "register".
(REGISTER_NAME, STAB_REG_TO_REGNUM, SDB_REG_TO_REGNUM,
DWARF_REG_TO_REGNUM, DWARF2_REG_TO_REGNUM): Remove defines.
(i386_register_name, i386_stab_reg_to_regnum,
i386_dwarf_reg_to_regnum): Remove prototypes.
(SIZEOF_GREGS, SIZEOF_FPU_REGS, SIZEOF_FPU_CTL_REGS,
SIZEOF_SSE_REGS): Remove defines.
(REGISTER_BYTES): Remove define.
(REGISTER_BYTE, REGISTER_RAW_SIZE): Remove defines.
(i386_register_byte, i386_register_raw_size): Remove prototypes.
(FRAME_CHAIN, FRAME_SAVED_PC): Remove defines.
(i386_frame_chain, i386_frame_saved_pc): Remove prototypes.
* config/i386/tm-i386v4.h (FRAME_CHAIN_VALID): Remove define.
(JB_ELEMENT_SIZE, JB_PC, JB_EBX, JB_ESI, JB_EDI, JB_EBP, JB_ESP,
JB_EDX, GET_LONGJMP_TARGET): Remove defines.
(get_longjmp_target): Remove prototype.
(I386V4_SIGTRAMP_SAVED_PC, IN_SIGTRAMP): Remove defines.
(sigtramp_saved_pc): Remove define.
(i386v4_sigtramp_saved_pc): Remove prototype.
* config/i386/tm-go32.h (FRAME_CHAIN,
FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC): Remove defines.
(i386go32_frame_saved_pc): Remove prototype.
(JB_ELEMENT_SIZE, JB_PC, GET_LONGJMP_TARGET): Remove defines.
(get_longjmp_target): Remove prototype.
* i386-tdep.h: Include "osabi.h".
(enum i386_abi): Removed.
(enum struct_return): New enum.
(struct gdbarch_tdep): Remove abi member, add osabi, jb_pc_offset,
struct_return, sigtramp_saved_pc, sigtramp_start, sigtramp_end and
sc_pc_offset members.
(i386_gdbarch_register_os_abi): Remove prototype.
(I386_NUM_GREGS, I386_NUM_FREGS, I386_NUM_XREGS,
I386_SSE_NUM_REGS): New defines.
(I386_SIZEOF_GREGS, I386_SIZEOF_FREGS, I386_SIZEOF_XREGS,
I386_SSE_SIZEOF_REGS): New defines.
(i386_register_name, i386_register_byte, i386_register_raw_size):
New prototypes.
(i386_elf_init_abi, i386_svr4_init_abi): New prototypes.
(i386bsd_sigtramp_saved_pc): New prototype.
* i386-tdep.c: Don't include "elf-bfd.h".
(i386_stab_reg_to_regnum, i386_dwarf_reg_to_regnum,
i386_frame_chain, i386_saved_pc_after_call): Make static.
(i386_frame_saved_pc): Rewrite to call architecture dependent
function to deal with signal handlers.  Make static.
(i386go32_frame_saved_pc): Removed.
[GET_LONGJMP_TARGET] (JB_PC, JB_ELEMENT_SIZE, get_longjmp_target):
Removed.
(i386_get_longjmp_target): New function.
(default_struct_convention, pcc_struct_convention,
reg_struct_convention, valid_conventions, struct_convention): New
variables.
(i386_use_struct_convention): New function.
(i386v4_sigtramp_saved_pc): Renamed to
i386_svr4_sigtramp_saved_pc.  Made static.  Moved.
(i386_pc_in_sigtramp): New function.
(i386_abi_names): Removed.
(ABI_TAG_OS_GNU_LINUX, ABI_TAG_OS_GNU_HURD,
ABI_TAG_OS_GNU_SOLARIS, ABI_TAG_OS_FREEBSD, ABI_TAG_OS_NETBSD):
Removed.
(process_note_sections, i386_elf_abi_from_note, i386_elf_abi,
i386_gdbarch_register_os_abi): Removed.
(struct i386_abi_handler): Removed.
(i386_abi_handler_list): Removed.
(i386_svr4_pc_in_sigtramp, i386_go32_pc_in_sigtramp): New
functions.
(i386_elf_init_abi, i386_svr4_init_abi, i386_go32_init_abi,
i386_nw_init_abi): New functions.
(i386_gdbarch_init): Rewritten to use generic OS ABI framework.
Use set_gdbarch_xxx() calls instead of relying on macros for a
number of calls.
(i386_coff_osabi_sniffer, i386_nlm_osabi_sniffer): New functions.
(_initialize_i386_tdep): Add new 'struct-convcention' command.
Register the various architecture variants defined in this file.
2002-06-14 19:42:20 +00:00
Michal Ludvig
8dda97708f 2002-06-07 Michal Ludvig <mludvig@suse.cz>
* x86-64-linux-nat.c (x86_64_fxsave_offset): New.
	(supply_fpregset, fill_fpregset): Don't call i387_*_fxsave,
	better do the things actually here.
	* x86-64-tdep.c (x86_64_register_name2nr): New.
	(x86_64_register_name): Renamed to x86_64_register_nr2name.
	(x86_64_gdbarch_init): Respect the above change.
	* x86-64-tdep.h (x86_64_register_name2nr)
	(x86_64_register_nr2name): Add prototypes.
	* config/i386/x86-64linux.mt (TDEPFILES): Remove i387-tdep.o.
2002-06-07 16:11:10 +00:00
Andrew Cagney
4f2e4a4f1d * config/alpha/nm-linux.h: Add "config/" prefix to tm, nm and xm
includes.
* config/tm-linux.h: Ditto.
* config/alpha/tm-alphalinux.h: Ditto.
* config/arm/nm-linux.h, config/arm/tm-linux.h: Ditto.
* config/arm/xm-nbsd.h, config/i386/nm-gnu.h: Ditto.
* config/i386/nm-i386lynx.h, config/i386/nm-i386sol2.h: Ditto.
* config/i386/nm-i386v4.h, config/i386/nm-i386v42mp.h: Ditto.
* config/i386/nm-linux.h, config/i386/nm-m3.h: Ditto.
* config/i386/nm-ptx4.h, config/i386/nm-x86-64.h: Ditto.
* config/i386/tm-i386gnu.h, config/i386/tm-i386lynx.h: Ditto.
* config/i386/tm-i386m3.h, config/i386/tm-i386sco5.h: Ditto.
* config/i386/tm-i386v4.h, config/i386/tm-linux.h: Ditto.
* config/i386/tm-ptx4.h, config/i386/tm-vxworks.h: Ditto.
* config/i386/xm-i386v4.h, config/i386/xm-nbsd.h: Ditto.
* config/i386/xm-ptx.h, config/i386/xm-ptx4.h: Ditto.
* config/i960/tm-vx960.h, config/ia64/nm-aix.h: Ditto.
* config/ia64/nm-linux.h, config/ia64/tm-aix.h: Ditto.
* config/ia64/tm-linux.h, config/ia64/xm-aix.h: Ditto.
* config/m68k/nm-linux.h, config/m68k/nm-m68klynx.h: Ditto.
* config/m68k/nm-sysv4.h, config/m68k/tm-linux.h: Ditto.
* config/m68k/tm-m68klynx.h, config/m68k/tm-m68kv4.h: Ditto.
* config/m68k/tm-sun2os4.h, config/m68k/tm-sun3os4.h: Ditto.
* config/m68k/tm-vx68.h, config/m68k/xm-m68kv4.h: Ditto.
* config/m68k/xm-nbsd.h, config/m88k/nm-delta88v4.h: Ditto.
* config/m88k/tm-delta88v4.h, config/m88k/xm-delta88v4.h: Ditto.
* config/mips/nm-irix5.h, config/mips/nm-linux.h: Ditto.
* config/mips/tm-linux.h, config/mips/tm-mips64.h: Ditto.
* config/mips/tm-mipsm3.h, config/mips/tm-mipsv4.h: Ditto.
* config/mips/tm-vxmips.h, config/mips/xm-irix5.h: Ditto.
* config/mips/xm-mipsv4.h, config/ns32k/xm-nbsd.h: Ditto.
* config/pa/nm-hppao.h, config/powerpc/nm-linux.h: Ditto.
* config/powerpc/tm-linux.h, config/powerpc/tm-vxworks.h: Ditto.
* config/powerpc/xm-aix.h, config/rs6000/nm-rs6000ly.h: Ditto.
* config/rs6000/tm-rs6000ly.h, config/rs6000/xm-aix4.h: Ditto.
* config/sh/tm-linux.h, config/sparc/nm-linux.h: Ditto.
* config/sparc/nm-sparclynx.h, config/sparc/nm-sun4sol2.h: Ditto.
* config/sparc/tm-linux.h, config/sparc/tm-sp64linux.h: Ditto.
* config/sparc/tm-sp64sim.h, config/sparc/tm-sparclynx.h: Ditto.
* config/sparc/tm-sun4os4.h, config/sparc/tm-sun4sol2.h: Ditto.
* config/sparc/tm-vxsparc.h, config/sparc/xm-sun4sol2.h: Ditto.
2002-06-05 19:18:29 +00:00
Jason Thorpe
9eeef8efe5 * Makefile.in (armnbsd-tdep.o): Add solib-svr4.h and
nbsd-tdep.h to dependency list.
* configure.host (arm*-*-netbsdelf*, arm*-*-netbsd*,
i[3456]86-*-netbsdaout*, i[3456]86-*-netbsd*, m68*-*-netbsd*,
ns32k-*-netbsd*, sparc-*-netbsdaout*, sparc-*-netbsd*): Use
nbsdaout.mh and nbsdelf.mh consistently.
* configure.tgt (i[3456]86-*-netbsd*, m68*-*-netbsd*,
ns32k-*-netbsd*, sparc-*-netbsdelf*, sparc-*-netbsd*) Use
nbsdaout.mt and nbsdelf.mh consistently.
* armnbsd-tdep.c: Include nbsd-tdep.h and solib-svr4.h.
(arm_netbsd_elf_init_abi): Use set_solib_svr4_fetch_link_map_offsets
to set nbsd_ilp32_solib_svr4_fetch_link_map_offsets.
* config/nm-nbsd.h: Garbage-collect SVR4_SHARED_LIBS.  Move
a.out shared library stuff from here...
* config/nm-nbsdaout.h: ...to here.
* config/tm-nbsd.h: Remove.
* config/alpha/nm-nbsd.h (SVR4_SHARED_LIBS): Remove.
* config/arm/nbsd.mh: Remove.
* config/arm/nbsd.mt (TDEPFILES): Remove solib-sunos.o, add
nbsd-tdep.o.
* config/arm/nbsdaout.mh: New file.
* config/arm/nbsdelf.mh: New file.
* config/arm/nm-nbsdaout.h: New file.
* config/i386/nbsd.mh: Remove.
* config/i386/nbsd.mt: Remove.
* config/i386/nbsdaout.mh: New file.
* config/i386/nbsdaout.mt: New file.
* config/i386/nbsdelf.mh (NAT_FILE): Use nm-nbsd.h.
* config/i386/nbsdelf.mt (TM_FILE): Use tm-nbsd.h.
* config/i386/nm-nbsd.h (REGISTER_U_ADDR,
i386_register_u_addr): Remove.
* config/i386/nm-nbsdaout.h: New file.
* config/i386/nm-nbsdelf.h: Remove.
* config/i386/tm-nbsd.h: Don't include config/tm-nbsd.h.
(USE_STRUCT_CONVENTION): Remove.
* config/i386/tm-nbsdaout.h: New file.
* config/i386/tm-nbsdelf.h: Remove.
* config/m68k/nbsd.mh: Remove.
* config/m68k/nbsd.mt: Remove.
* config/m68k/nbsdaout.mh: New file.
* config/m68k/nbsdaout.mt: New file.
* config/m68k/nm-nbsd.h: Use config/nm-nbsd.h.
* config/m68k/nm-nbsdaout.h: New file.
* config/m68k/tm-nbsd.h: Don't include config/tm-nbsd.h.
(IN_SOLIB_CALL_TRAMPOLINE): Define.
* config/ns32k/nbsd.mh: Remove.
* config/ns32k/nbsd.mt: Remove.
* config/ns32k/nbsdaout.mh: New file.
* config/ns32k/nbsdaout.mt: New file.
* config/ns32k/nm-nbsd.h: Include config/nm-nbsd.h.
* config/ns32k/nm-nbsdaout.h: New file.
* config/ns32k/tm-nbsd.h: Don't include config/tm-nbsd.h.
(IN_SOLIB_CALL_TRAMPOLINE): Define.
* config/powerpc/nm-nbsd.h: Include config/nm-nbsd.h.
(SVR4_SHARED_LIBS): Remove.
* config/powerpc/tm-nbsd.h: Dont' include config/tm-nbsd.h.
* config/sparc/nbsd.mh: Remove.
* config/sparc/nbsd.mt: Remove.
* config/sparc/nbsdaout.mh: New file.
* config/sparc/nbsdaout.mt: New file.
* config/sparc/nbsdelf.mh (NAT_FILE): Use nm-nbsd.h.
* config/sparc/nbsdelf.mt: New file.
* config/sparc/nm-nbsdaout.h: New file.
* config/sparc/nm-nbsdelf.h: Remove.
* config/sparc/tm-nbsd.h: Don't include config/tm-nbsd.h.
* config/sparc/tm-nbsdaout.h: New file.
2002-05-22 03:59:55 +00:00
Mark Kettenis
f0f625e28b * config/i386/nm-cygwin.h (NO_PTRACE_H): Remove define.
* config/i386/nm-go32.h (NO_PTRACE_H): Remove define.
2002-05-18 19:29:37 +00:00
Jason Thorpe
b28da8653f * config/alpha/nbsd.mh (NATDEPFILES): Remove corelow.o.
* config/alpha/nbsd.mt (TDEPFILES): Add corelow.o.
* config/i386/nbsd.mh (NATDEPFILES): Remove corelow.o.
* config/i386/nbsd.mt (TDEPFILES): Add corelow.o.
* config/i386/nbsdelf.mh (NATDEPFILES): Remove corelow.o.
* config/i386/nbsdelf.mt (TDEPFILES): Add corelow.o.
2002-05-11 21:46:17 +00:00
Jason Thorpe
4b8ff1fad0 * config/i386/nbsd.mh (NATDEPFILES): Use line continuations.
* config/i386/nbsdelf.mh (NATDEPFILES): Likewise.
* config/m68k/nbsd.mh (NATDEPFILES): Likewise.
* config/ns32k/nbsd.mh (NATDEPFILES): Likewise.
* config/powerpc/nbsd.mh (NATDEPFILES): Likewise.
* config/sparc/nbsd.mh (NATDEPFILES): Likewise.
* config/sparc/nbsdelf.mh (NATDEPFILES): Likewise.
2002-05-11 21:38:14 +00:00
Jason Thorpe
dfe6eb1f71 * i386nbsd-nat.c: Delete file. Move fetch_core_registers and
fetch_elfcore_registers to...
* i386nbsd-tdep.c: ...here.
(i386nbsd_use_struct_convention): Rename to...
(i386nbsd_aout_use_struct_convention): ...this.
(i386nbsd_supply_reg): New function.
(i386nbsd_fill_reg): New function.
(fetch_core_registers): Use i386nbsd_supply_reg.
(fetch_elfcore_registers): Likewise.
(_initialize_i386nbsd_tdep): New function.
* config/i386/nbsd.mh (NATDEPFILES): Remove i386nbsd-nat.o.
* config/i386/nbsdelf.mh (NATDEPFILES): Likewise.
* config/i386/nbsdelf.mt (TDEPFILES): Add i386nbsd-tdep.o.
* config/i386/tm-nbsd.h (i386nbsd_use_struct_convention): Rename to...
(i386nbsd_aout_use_struct_convention): ...this.
2002-05-11 21:22:51 +00:00
Jason Thorpe
e750d25e90 * Makefile.in (ALLDEPFILES): Remove i387-nat.c.
(i387-nat.o): Delete dependency list.
(go32-nat.o): Change i387-nat.h to i387-tdep.h.
(x86-64-linux-nat.o): Likewise.
* i387-nat.c: Delete file, moving contents to...
* i387-tdep.c: ...here.
* i387-nat.h: Rename...
* i387-tdep.h: ...to this.
* go32-nat.c: Include i387-tdep.h instead of i387-nat.h.
* i386-linux-nat.c: Likewise.
* i386bsd-nat.c: Likewise.
* i386gnu-nat.c: Likewise.
* i386nbsd-nat.c: Likewise.
* i386v4-nat.c: Likewise.
* x86-64-linux-nat.c: Likewise.
* config/i386/fbsd.mh (NATDEPFILES): Remove i387-nat.o.
* config/i386/go32.mh (NATDEPFILES): Likewise.
* config/i386/i386gnu.mh (NATDEPFILES): Likewise.
* config/i386/i386sol2.mh (NATDEPFILES): Likewise.
* config/i386/i386v42mp.mh (NATDEPFILES): Likewise.
* config/i386/linux.mh (NATDEPFILES): Likewise.
* config/i386/nbsd.mh (NATDEPFILES): Likewise.
* config/i386/nbsdelf.mh (NATDEPFILES): Likewise.
* config/i386/obsd.mh (NATDEPFILES): Likewise.
* config/i386/x86-64linux.mh (NATDEPFILES): Likewise.
2002-05-11 17:22:27 +00:00
Andrew Cagney
cd9bfe1540 * MAINTAINERS: Mark a29k as deleted.
* NEWS: Mention that a29k was removed.  Add OBSOLETE section.
Move new configurations to the top.
* configure.tgt: Remove a29k.
* config/a29k/tm-vx29k.h: Delete.
* config/a29k/vx29k.mt: Delete.
* config/a29k/tm-a29k.h: Delete.
* config/a29k/a29k-udi.mt: Delete.
* config/a29k/a29k.mt: Delete.
* a29k-tdep.c: Delete.
* remote-udi.c: Delete.
* remote-mm.c: Delete.
* remote-eb.c: Delete.
* remote-adapt.c: Delete.
* Makefile.in: Remove obsolete code.
* gdbserver/Makefile.in: Ditto.
* config/s390/s390x.mt: Ditto.
* config/s390/s390.mt: Ditto.
* config/sparc/sparclynx.mh: Ditto.
* config/sparc/linux.mh: Ditto.
* config/pa/hppaosf.mh: Ditto.
* config/pa/hppabsd.mh: Ditto.
* config/ns32k/nbsd.mt: Ditto.
* config/mips/vr5000.mt: Ditto.
* config/m68k/sun3os4.mh: Ditto.
* config/m68k/nbsd.mt: Ditto.
* config/m68k/m68klynx.mh: Ditto.
* config/m32r/m32r.mt: Ditto.
* config/i386/x86-64linux.mt: Ditto.
* config/i386/nbsdelf.mt: Ditto.
* config/i386/nbsd.mt: Ditto.
* config/i386/i386lynx.mh: Ditto.
2002-05-04 15:52:42 +00:00
Daniel Jacobowitz
32872fa78e 2002-04-24 Daniel Jacobowitz <drow@mvista.com>
* config/i386/tm-linux.h: Define FILL_FPXREGSET.
        * gregset.h: If FILL_FPXREGSET is defined, provide
        gdb_fpxregset_t, supply_fpxregset, and fill_fpxregset.
        * linux-proc.c (linux_do_thread_registers): If FILL_FPXREGSET
        is defined, call fill_fpxregset.
2002-04-24 22:09:58 +00:00
Michael Snyder
57e76facc3 2002-04-24 Roland McGrath <roland@frob.com>
* config/i386/i386gnu.mh (NATDEPFILES): Add core-regset.o here.
	* i386gnu-nat.c [HAVE_SYS_PROCFS_H]
	(supply_gregset, supply_fpregset): New functions.

	* gnu-nat.c (gnu_find_memory_regions): New function.
	(init_gnu_ops): Set `to_find_memory_regions' hook to that.
	(gnu_xfer_memory): Add a cast.
2002-04-24 21:44:47 +00:00
Michael Snyder
670a52dbc7 2002-02-13 Michael Snyder <msnyder@redhat.com>
* config/i386/i386v42mp.mh: Add gcore.o to NATDEPFILES.
2002-04-11 18:13:21 +00:00
Michal Ludvig
8cfda98c96 * x86-64-linux-nat.c (child_resume, child_xfer_memory): Delete.
(PTRACE_XFER_TYPE): Moved to config/i386/nm-x86-64.h.
	(kernel_u_size): Added.
	* config/i386/nm-x86-64.h (CHILD_XFER_MEMORY, CHILD_RESUME): Delete.
	(PTRACE_XFER_TYPE): Moved here from config/i386/nm-x86-64.h.
2002-04-10 12:12:36 +00:00
Mark Kettenis
a90cd31de1 * fbsd-proc.c: New file.
* config/i386/nm-fbsd.h (CHILD_PID_TO_EXEC_FILE): Define.
* config/i386/fbsd.mh (NATDEPFILES): Add gcore.o and fbsd-proc.o.
2002-03-31 17:47:17 +00:00
Andrew Cagney
923620278b s/Linux/.../
Fix PR gdb/378.
2002-02-24 22:56:08 +00:00
Andreas Jaeger
aaa38bb521 * config/i386/x86-64linux.mh (NATDEPFILES): Remove x86-64-nat.o. 2002-02-21 12:48:36 +00:00
Christopher Faylor
1ea98d1203 * config/i386/xm-cygwin.h: Revert inadvertent reinclusion of GDBINIT_FILENAME. 2002-02-14 16:32:57 +00:00
Peter Schauer
d7e39b9e06 * config/i386/i386sol2.mh (NATDEPFILES): Add i387-nat.o, needed by
i386v4-nat.o now. Add gcore.o, Solaris x86 supports gcore.
2002-02-14 08:14:20 +00:00
Daniel Jacobowitz
4cc841d043 2002-02-14 Daniel Jacobowitz <drow@mvista.com>
* config/arm/linux.mt: Update GDBSERVER_DEPFILES.
        * config/i386/linux.mt: Likewise.
        * config/ia64/linux.mt: Likewise.
        * config/m68k/linux.mh: Likewise.
        * config/powerpc/linux.mh: Likewise.
        * config/mips/linux.mt: Likewise.

        * config/sh/linux.mt: Add GDBSERVER_DEPFILES.

        * config/i386/i386lynx.mh: Mark gdbserver variables
        as (currently) obsolete for this target.
        * config/i386/nbsd.mt: Likewise.
        * config/i386/nbsdelf.mt: Likewise.
        * config/m32r/m32r.mt: Likewise.
        * config/m68k/m68klynx.mh: Likewise.
        * config/m68k/nbsd.mt: Likewise.
        * config/m68k/sun3os4.mh: Likewise.
        * config/mips/vr5000.mt: Likewise.
        * config/ns32k/nbsd.mt: Likewise.
        * config/pa/hppabsd.mh: Likewise.
        * config/pa/hppaosf.mh: Likewise.
        * config/powerpc/nbsd.mt: Likewise.
        * config/rs6000/rs6000lynx.mh: Likewise.
        * config/s390/s390.mt: Likewise.
        * config/s390/s390x.mt: Likewise.
        * config/sparc/sparclynx.mh: Likewise.
        * config/sparc/sun4os4.mh: Likewise.
        * config/i386/x86-64linux.mt: Likewise.
        * config/sparc/linux.mh: Likewise.
2002-02-14 05:48:40 +00:00
Pierre Muller
fa4ba8da6c 2002-02-04 Pierre Muller <muller@ics.u-strasbg.fr>
Add support for hardware watchpoints on win32 native.
	* win32-nat.c (CONTEXT_DEBUG_DR macro): Add use of
	CONTEXT_DEBUG_REGISTERS.
	(dr variable): New variable. Static array containing a local copy
	of debug registers.
	(debug_registers_changed): New variable.  Reflects when debug registers
	are changed and need to be written to inferior.
	(debug_registers_used): New variable. Reflects when any debug register
	was set, used when new threads are created.
	(cygwin_set_dr, cygwin_set_dr7, cygwin_get_dr6): New functions used by
	i386-nat code.
	(thread_rec): Set dr array if id is the thread of current_event .
	(child_continue, child_resume): Change the debug registers for all
	threads if debug_registers_changed.
	(child_add_thread): Change the debug registers if debug_registers_used.
	* config/i386/cygwin.mh: Add use of i386-nat.o file.
	Link nm.h to new nm-cygwin.h file.
	+ config/i386/nm-cygwin.h: New file. Contains the macros used for use
	of hardware registers.
2002-02-04 11:00:10 +00:00
Mark Kettenis
69824b4e99 * config/i386/tm-i386v4.h: Define HAVE_I387_REGS.
* config/i386/i386v42mp.mh: Add i387-nat.o .
* i386v4-nat.c: Include i387-nat.h.
(supply_fpregset): Use i387_supply_fsave.
(fill_fpregset): Use i387_fill_fsave.
2002-01-30 22:32:38 +00:00
Andrew Cagney
8fcc723b1c Eliminate TARGET_BYTE_ORDER. 2002-01-29 04:42:45 +00:00
Andrew Cagney
c2f05ac92e Eliminate IEEE_FLOAT. 2002-01-20 18:05:54 +00:00
Andreas Jaeger
b7c4cbf8b4 2002-01-20 Jiri Smid <smid@suse.cz>
* config/i386/x86-64linux.mh (NATDEPFILES): x86-64-nat.o removed.
	* x86-64-linux-nat.c (x86_64_register_u_addr): New function.
	* config/i386/nm-x86-64.h (ATTACH_LWP): Removed.
	* Makefile.in (x86-64-tdep.o, x86-64-linux-tdep.o,
	x86-64-linux-nat.o): Fix dependencies.
2002-01-20 09:29:41 +00:00
Andrew Cagney
bbe5c628c2 Zap empty host lynx header files. 2002-01-20 03:29:01 +00:00
Andrew Cagney
52d9e61301 Zap empty or unused xm-*.h files. 2002-01-20 01:12:51 +00:00
Andrew Cagney
7708fa0111 Remove XDEPFILES from GDB. 2002-01-18 04:51:10 +00:00
Michael Snyder
be4d133316 2002-01-03 Michael Snyder <msnyder@redhat.com>
Implement a "generate-core-file" command in gdb, save target state.
	* gcore.c: New file.  Implement new command 'generate-core-file'.
	Save a corefile image of the current state of the inferior.
	* linux-proc.c: Add linux-specific code for saving corefiles.
	* target.h (struct target_ops): Add new target vectors for saving
	corefiles; to_find_memory_regions and to_make_corefile_notes.
	(target_find_memory_regions): New macro.
	(target_make_corefile_notes): New macro.
	* target.c (update_current_target): Inherit new target methods.
	(dummy_find_memory_regions): New place-holder method.
	(dummy_make_corefile_notes): New place-holder method.
	(init_dummy_target): Initialize new dummy target vectors.
	* exec.c (exec_set_find_memory_regions): New function.
	Allow the exec_ops vector for memory regions to be taken over.
	(exec_make_note_section): New function, target vector method.
	* defs.h (exec_set_find_memory_regions): Export prototype.
	* procfs.c (proc_find_memory_regions): New function, corefile method.
	(procfs_make_note_section): New function, corefile method.
	(init_procfs_ops): Set new target vector pointers.
	(find_memory_regions_callback): New function.
	(procfs_do_thread_registers): New function.
	(procfs_corefile_thread_callback): New function.
	* sol-thread.c (sol_find_memory_regions): New function.
	(sol_make_note_section): New function.
	(init_sol_thread_ops): Initialize new target vectors.
	* inftarg.c (inftarg_set_find_memory_regions): New function.
	Allow to_find_memory_regions vector to be taken over.
	(inftarg_set_make_corefile_notes): New function.
	Allow to_make_corefile_notes vector to be taken over.
	* thread-db.c (thread_db_new_objfile): Don't activate thread-db
	interface layer if not target_has_execution (may be a corefile).
	* config/i386/linux.mh: Add gcore.o to NATDEPFILES.
	* config/sparc/sun4sol2.mh: Ditto.
	* config/alpha/alpha-linux.mh: Ditto.
	* config/arm/linux.mh: Ditto.
	* config/i386/x86-64linux.mh: Ditto.
	* config/ia64/linux.mh: Ditto.
	* config/m68k/linux.mh: Ditto.
	* config/mips/linux.mh: Ditto.
	* config/powerpc/linux.mh: Ditto.
	* config/sparc/linux.mh: Ditto.
2002-01-09 00:37:02 +00:00
Michael Snyder
4b09dc8c14 2002-01-07 Michael Snyder <msnyder@redhat.com>
* linux-proc.c: New file.  Implement child_pid_to_exec_file,
	so that attaching to a pid will automatically read the process's
	symbol file and shlibs.
	* Makefile.in: Add rule for linux-proc.o.
	* config/nm-linux.h: Define CHILD_PID_TO_EXEC_FILE.
	* config/alpha/alpha-linux.mh: Add linux-proc.o to NATDEPFILES.
	* config/arm/linux.mh: Ditto.
	* config/i386/linux.mh: Ditto.
	* config/i386/x86-64linux.mh: Ditto.
	* config/ia64/linux.mh: Ditto.
	* config/m68k/linux.mh: Ditto.
	* config/mips/linux.mh: Ditto.
	* config/powerpc/linux.mh: Ditto.
	* config/sparc/linux.mh: Ditto.
2002-01-08 22:09:50 +00:00
Jason Thorpe
7e89e3575d * acconfig.h (HAVE_PT_GETXMMREGS): New.
* config.in: Regenerate.
* configure.in: Update copyright years.
Add test for PT_GETXMMREGS supplied by <sys/ptrace.h>.
* configure: Regenerate.
* i386bsd-nat.c: Update copyright years.
(fill_gregset): Use regcache_collect.
(fetch_inferior_registers): Only fetch integer registers
if requested to do so.  Add support for XMM registers
using PT_GETXMMREGS.
(store_inferior_registers): Only store integer registers
if requested to do so.  Add support for XMM registers
using PT_SETXMMREGS.
* i386nbsd-nat.c (fetch_inferior_registers): Remove.
(store_inferior_registers): Remove.
(fetch_core_registers): Use supply_gregset and i387_supply_fsave.
(fetch_elfcore_registers): New function.
(i386nbsd_elfcore_fns): New.
(_initialize_i386nbsd_nat): Register i386nbsd_elfcore_fns.
* config/i386/nbsd.mh (NATDEPFILES): Add i387-nat.o and
i386bsd-nat.o.
* config/i386/nbsdelf.mh (NATDEPFILES): Likewise.
* config/i386/nbsd.mt (TDEPFILES): Add i386bsd-nat.o.
* config/i386/nbsdelf.mt (TDEPFILES): Likewise.
* config/i386/tm-nbsd.h: Update copyright years.
(HAVE_SSE_REGS): Define.
(IN_SIGTRAMP): Define as i386bsd_in_sigtramp.
(SIGTRAMP_START): Redefine as i386bsd_sigtramp_start.
(SIGTRAMP_END): Redefine as i386bsd_sigtramp_end.
(SIGCONTEXT_PC_OFFSET): Remove.
(FRAME_SAVED_PC): Define as i386bsd_frame_saved_pc.
2002-01-05 18:36:32 +00:00
Mark Kettenis
96297dabb3 * config/i386/tm-i386.h (FP7_REGNUM, FIRST_FPU_CTRL_REGNUM,
FCTRL_REGNUM, FPC_REGNUM, FSTAT_REGNUM, FTAG_REGNUM, FCS_REGNUM,
FCOFF_REGNUM, FDS_REGNUM, FDOFF_REGNUM, FOP_REGNUM,
LAST_FPU_CTRL_REGNUM, XMM0_REGNUM, XMM7_REGNUM, MXCSR_REGNUM,
IS_FP_REGNUM, IS_SSE_REGNUM): Removed.
(FP0_REGNUM): Define conditionally depending on HAVE_I387_REGS.
(SIZEOF_FPU_CTRL_REGS): Hardcode value.
* i386-tdep.h (struct gdbarch_tdep): Change such that it contains
a single member `num_xmm_regs'.
(FPC_REGNUM): New macro.
(FIRST_FPU_REGNUM, LAST_FPU_REGNUM, FISRT_XMM_REGNUM,
LAST_XMM_REGNUM, MXCSR_REGNUM, FIRST_FPU_CTRL_REGNUM,
LAST_FPU_CTRL_REGNUM): Removed.
(FCTRL_REGNUM, FSTAT_REGNUM, FTAG_REGNUM, FOP_REGNUM, XMM0_REGNUM,
MXCSR_REGNUM): Define unconditionally.  Change macros to match the
comment describing the register layout.
(FISEG_REGNUM, FIOFF_REGNUM, FOSEG_REGNUM, FOOFF_REGNUM): New macros.
(FP_REGNUM_P, FPC_REGNUM_P, SSE_REGNUM_P): New macros.
(IS_FP_REGNUM, IS_FPU_CTRL_REGNUM, IS_SSE_REGNUM): Make obsolete,
unconditionally define in terms of FP_REGNUM_P, FPC_REGNUM_P and
SSE_REGNUM_P).
(FCS_REGNUM, FCOFF_REGNUM, FDS_REGNUM, FDOFF_REGNUM): Make
obsolete, unconditionally define in terms of FISEG_REGNUM,
FIOFF_REGNUM, FOSEG_REGNUM, FOOFF_REGNUM.
* i386-tdep.c (i386_gdbarch_init): Initialize `num_xmm_regs'
member of `struct gdbarch_tdep'.
* x86-64-tdep.c (i386_gdbarch_init): Change initialization of
`struct gdbarch_tdep'.
* i387-nat.c (FCS_REGNUM, FCOFF_REGNUM, FDS_REGNUM, FDOFF_REGNUM):
Replace with FISEG_REGNUM, FIOFF_REGNUM, FOSEG_REGNUM and
FOOFF_REGNUM.  Use FPC_REGNUM instead of FIRST_FPU_CTRL_REGNUM.
Use XMM0_REGNUM instead of LAST_FPU_CTRL_REGNUM.
2001-12-27 15:22:27 +00:00
Andrew Cagney
778eb05eac LITTLE_ENDIAN -> BFD_ENDIAN_LITTLE 2001-12-15 16:53:24 +00:00
Andrew Cagney
22797942c4 * i386-tdep.c (i386go32_frame_saved_pc): New function.
* config/i386/tm-go32.h (i386go32_frame_saved_pc): Declare.
(FRAME_SAVED_PC): Redefine to i386go32_frame_saved_pc.
2001-12-02 18:29:08 +00:00
Andrew Cagney
2607059cba Delete HOST_BYTE_ORDER. 2001-12-02 02:57:18 +00:00
Andrew Cagney
7e24f0b11e Zap Sun's i386i. 2001-12-01 22:19:30 +00:00
Christopher Faylor
97da3b2016 * config/i386/tm-cygwin.h: Define HAVE_SSE_REGS if
HAVE_CONTEXT_EXTENDED_REGISTERS is defined.
* win32-nat.c: Define CONTEXT_DEBUGGER_DR that will also include extended
registers if HAVE_SSE_REGS is defined.
(mappings array): Add offset of extended registers.
(thread_rec): Use new CONTEXT_DEBUGGER_DR macro.
2001-11-27 05:15:58 +00:00
Christopher Faylor
2a3d564525 * win32-nat.c (_initialize_check_for_gdb_ini): New function.
* config/i386/xm-cygwin.h: Remove obsolete handling of __CYGWIN32__.
(GDBINIT_FILENAME): Remove.
2001-11-24 18:21:27 +00:00
Mark Kettenis
eb7cedd985 Add x86 OpenBSD native configuration.
* config/i386/obsd.mt, config/i386/tm-obsd.h, config/i386/obsd.mh,
config/i386/nm-obsd.h: New files.
* configure.host (i[3456]86-*-openbsd*): New host.
* configure.tgt (i[3456]86-*-openbsd*): New target.
* NEWS: Update.
2001-11-23 23:01:54 +00:00
Andrew Cagney
bd1ef5d285 * i386-tdep.c (i386_gdbarch_init): Initialize num_regs.
* config/i386/tm-i386.h (NUM_REGS): Delete.
2001-11-18 22:14:13 +00:00
Andrew Cagney
ed909a0d77 Zap config/i386/tm-embed.h. 2001-11-18 21:28:20 +00:00
Mark Kettenis
226271d3c0 * i386-tdep.h (FPU_REG_RAW_SIZE): Define unconditionally.
* i387-nat.c, i387-tdep.c: Unconditionally include "i386-tdep.h".
* config/i386/tm-i386.h (FPU_REG_RAW_SIZE): Removed.
(SIZEOF_FPU_REGS): Don't use FPU_REG_RAW_SIZE here.
2001-11-12 22:27:35 +00:00
Andrew Cagney
a62cc96ec5 Enable multi-arch for i386. 2001-11-08 18:32:08 +00:00
Mark Kettenis
8cf03c4c87 * config/i386/tm-linux.h (I386_LINUX_ORIG_EAX_REGNUM): Define in
terms of NUM_GREGS, NUM_FREGS and NUM_SSE_REGS instead of
hardcoding the register number.
2001-11-08 00:03:52 +00:00
Mark Kettenis
6441c4a026 Add support for "orig_eax" pseudo register on Linux/x86.
* i386-linux-tdep.c: Include "inferior.h".
(i386_linux_register_name, i386_linux_register_byte,
i386_linux_register_raw_size): New functions.
(i386_linux_write_pc): New function.
* config/i386/tm-linux.h (I386_LINUX_ORIG_EAX_REGNUM): New define.
(NUM_REGS, MAX_NUM_REGS, REGISTER_BYTES, REGISTER_NAME,
REGISTER_BYTE, REGISTER_RAW_SIZE): Define to deal with additional
register.
(i386_linux_register_name, i386_linux_register_byte,
i386_linux_register_raw_size): New prototypes.
(TARGET_WRITE_PC): New define.
(i386_linux_write_pc): New prototype.
2001-11-04 14:06:16 +00:00
Mark Kettenis
1a11ba71e2 * i386-tdep.c (i386_register_offset): Renamed from
i386_register_byte.  Made static.
(i386_register_size): Renamed from i386_register_raw_size.  Made
static.
(i386_register_virtual_size): Removed.
(i386_register_byte, i386_register_raw_size,
i386_register_virtual_size): New functions.
(_initialize_i386_tdep): Initialize i386_register_offset instead
of i386_register_byte.  Remove code to initialize
i386_register_virtual_size.
* config/i386/tm-i386.h (REGISTER_BYTE): Redefine to use
i386_register_byte function.
(REGISTER_RAW_SIZE): Redefine to use i386_register_raw_size
function.
(REGISTER_VIRTUAL_SIZE): Redefine to use
i386_register_virtual_size function.
(i386_register_byte, i386_register_raw_size,
i386_register_virtual_size): New functions.
2001-11-04 13:51:48 +00:00
Fred Fish
990f9fe3aa Approved by kev@cygnus.com
ChangeLog entry:

	2001-11-01  Fred Fish  <fnf@redhat.com>

	* coff-solib.c (coff_solib_add): Add new readsyms arg.
	* irix5-nat.c (solib_add): Ditto.
	* osfsolib.c (solib_add): Ditto.
	* pa64solib.c (pa64_solib_add): Ditto.
	* pa64solib.c (add_to_solist): Ditto.
	* pa64solib.c (read_dld_descriptor): Ditto.
	* solib.c (solib_add): Ditto.
	* somsolib.c (som_solib_add): Ditto.
	* win32-nat.c (child_solib_add): Ditto.
	* xcoffsolib.c (solib_add): Ditto.

	* coff-solib.h (coff_solib_add): Add new readsyms arg to prototype.
	* pa64solib.c (add_to_solist): Ditto.
	* pa64solib.c (read_dld_descriptor): Ditto.
	* pa64solib.h (pa64_solib_add): Ditto.
	* solib.h (solib_add): Ditto.
	* somsolib.h (som_solib_add): Ditto.
	* config/i386/tm-cygwin.h (child_solib_add): Ditto.

	* coff-solib.c (coff_solib_add):  If readsyms is zero don't read
	symbols but do any other needed work for shared libs.
	* irix5-nat.c: Ditto.
	* osfsolib.c (solib_add): Ditto.
	* solib.c (solib_add): Ditto.
	* win32-nat.c (child_solib_add): Ditto.
	* xcoffsolib.c (solib_add): Ditto.

	* irix5-nat.c (sharedlibrary_command): Pass 1 as readsyms to
	solib_add to force reading of shared library symbols.
	* osfsolib.c (sharedlibrary_command;): Ditto.
	* pa64solib.c (pa64_solib_sharedlibrary_command): Ditto.
	* solib.c (sharedlibrary_command): Ditto.
	* somsolib.c (som_solib_sharedlibrary_command): Ditto.
	* xcoffsolib.c (sharedlibrary_command): Ditto.

	* coff-solib.c (coff_solib_create_inferior_hook): Call solib_add
	unconditionally with auto_solib_add.
	* irix5-nat.c (solib_create_inferior_hook): Ditto.
	* osfsolib.c (solib_create_inferior_hook): Ditto.
	* solib.c (solib_create_inferior_hook): Ditto.
	* solib-osf.c (osf_solib_create_inferior_hook): Ditto.
	* solib-svr4.c (enable_break): Ditto.
	* solib-sunos.c (sunos_solib_create_inferior_hook): Ditto.

	* corelow.c (solib_add_stub): Add auto_solib_add to args passed
	via SOLIB_ADD.
	* sol-thread.c (sol_thread_attach): Ditto.
	* config/rs6000/nm-rs6000.h (SOLIB_ADD): Ditto.

	* infcmd.c (attach_command): Remove auto_solib_add decl.
	Call SOLIB_ADD directly with auto_solib_add.
	* infrun.c (handle_inferior_event): Ditto.

	* coff-solib.h (SOLIB_ADD): Add readsyms arg.
	* pa64solib.h (SOLIB_ADD): Ditto.
	* solib.h (SOLIB_ADD): Ditto.
	* somsolib.h (SOLIB_ADD): Ditto.
	* config/i386/tm-cygwin.h (SOLIB_ADD): Ditto.

	* fork-child.c (clone_and_follow_inferior): Remove unused
	auto_solib_add decl.

	* pa64solib.c (pa64_solib_add): Call add_to_solist with readsyms.
	(read_dld_descriptor): Ditto.
	(pa64_solib_add): Call read_dld_descriptor with	readsyms.
	(pa64_solib_in_dynamic_linker): Ditto.

	* corelow.c (symfile.h): Need this for auto_solib_add declaration.
	* sol-thread.c (symfile.h): Ditto.

Approved by eliz@is.elta.co.il
doc/ChangeLog entry:

	2001-11-01  Fred Fish  <fnf@redhat.com>

	* gdbint.texinfo (SOLIB_ADD): Document additional new
	"readsyms" arg.
2001-11-01 16:17:08 +00:00
Mark Kettenis
fc633446cd * config/i386/tm-i386.h (REGISTER_NAMES): Remove.
(REGISTER_NAME): New define.
(i386_register_name): New prototype.
* i386-tdep.c (i386_register_names): New variable.
(i386_register_name): New function.
* config/i386/tm-i386os9k.h, config/i386/tm-ptx.h,
config/i386/tm-symmetry.h: Undefine REGISTER_NAME instead of
REGISTER_NAMES.
2001-10-31 22:24:06 +00:00
Mark Kettenis
dec66fe5f0 * config/i386/tm-i386v.h: Don't include "regcache.h".
(EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE, FRAME_CHAIN,
FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC, FRAME_NUM_ARGS):
Remove macros.  The versions from "tm-i386.h" should work fine
(and in most cases even better).
2001-10-29 23:54:56 +00:00
Mark Kettenis
a14bd2ea89 * config/nm-linux.h (struct objfile): Remove forward declaration.
(linuxthreads_new_objfile): Remove prototype.
(linuxthreads_pid_to_str): Remove prototype.
(PREPARE_TO_PROCEED): Redefine in terms of
lin_lwp_prepare_to_proceed.
(struct target_waitstatus): Forward declaration.
(child_wait): New prototype.
(CHILD_WAIT): Define.
(lin_lwp_attach_lwp, ATTACH_LWP, lin_thread_get_thread_signals,
GET_THREAD_SIGNAL): Moved here from arch-specific files.
* config/alpha/nm-linux.h, config/arm/nm-linux.h,
config/ia64/nm-linux.h, config/mips/nm-linux.h,
config/powerpc/nm-linux.h: Don't include <signal.h>.
(lin_lwp_attach_lwp, ATTACH_LWP, lin_thread_get_thread_signals,
GET_THREAD_SIGNAL): Remove.
* config/i386/nm-linux.h: Likewise.
(struct target_waitstatus, child_wait, CHILD_WAIT): Remove.
* config/m68k/linux.mh, config/sparc/linux.mh (NATDEPFILES):
Remove linux-thread.o.  Add proc-service.o, thread-db.o and
lin-lwp.o.
(LOADLIBES): New variable.
2001-10-14 20:42:07 +00:00
Mark Kettenis
cacab7c477 Fix attaching to cloned processes. This fixes PR gdb/61.
* lin-lwp.c (struct lwp_info): Add new member `cloned'.
(is_cloned) Removed.
(lin_lwp_attach_lwp): Don't call stop_wait_callback.  Instead call
waitpid explicitly.  Mark the LWP as cloned if waitpid fails and
retry with __WCLONE flag.
(lin_lwp_attach): Likewise.  Warn if attaching to a cloned process.
(detach_callback): Replace use of is_cloned with explicit check on
LWP id and process id.
(stop_wait_callback): Replace use of is_cloned with check if LWP
is marked as cloned.
[CHILD_WAIT] (child_wait): New function.
(lin_lwp_wait): Replace use of is_cloned with check if LWP is
marked as cloned.  Mark newly detected LWPs as cloned if detected
by waitpid with __WCLONE flag.
(kill_wait_callback): Replace use of is_cloned with check if LWP
is marked as cloned.
* config/i386/nm-linux.h (struct target_waitstatus): Add forward
declaration.
(child_wait): Add prototype.
(CHILD_WAIT): Define.
2001-10-14 11:30:37 +00:00
Christopher Faylor
02e423b9b2 * config/i386/tm-cygwin.h: include tm-i386.h instead of tm-i386v.h. This fixes
errors in "long long" handling for 'finish' and 'return' commands.
* win32-nat.c (safe_symbol_file_add_stub): Avoid adding a shared library if it
has already been loaded.
(safe_symbol_file_add_cleanup): Don't mess with stderr or we won't see any
error messages.
(safe_symbol_file_add): Ditto.
(solib_symbols_add): Make static.  Accept 'from_tty' parameter.  Pass it to
safe_symbol_file_add.
(core_dll_symbols_add): Accomodate extra solib_symbols_add parameter.
(child_solib_add): Ditto.
* win32-nat.c (handle_exception): Don't print "first chance" exceptions.
(get_child_debug_event): Continue from exceptions if !handle_exception.
2001-10-12 04:32:16 +00:00
Kevin Buettner
ab31aa69b9 Split SVR4/SunOS solib support. 2001-10-02 23:11:24 +00:00
Jiri Smid
53e95fcfec * config/i386/x86-64linux.mh: New file.
* config/i386/x86-64linux.mt: New file.
* config/i386/nm-x86_64.h: New file.
* x86-64-linux-tdep.c: New file.
* x86-64-linux-nat.c: New file.
* x86-64-tdep.c: New file.
* x86-64-tdep.h: New file.
* config/djgpp/fnchange.lst: Add entries for x86_64-linux-tdep.c
and x86_64-linux-nat.c
* Makefile.in: Add x86_64-linux-tdep.o, x86_64-tdep.o,
x86_64-linux-tdep.o, x86_64-nat.o, update dependencies.
2001-09-21 12:19:15 +00:00
Mark Kettenis
cd903d5356 * config/i386/xm-i386.h (HOST_BYTE_ORDER): Removed. 2001-08-30 21:53:47 +00:00
Mark Kettenis
46711df821 * event-top.c (async_stop_sig) [HAVE_SIGPROCMASK]: Some
gratuitious whitespace changes.
[!HAVE_SIGPROCMASK]: Call sigsetmask if HAVE_SIGSETMASK is defined.
* top.c: Remove redundant logic to define HAVE_SIGSETMASK.
(sigsetmask) Don't define macro.
(stop_sig) [HAVE_SIGPROCMASK]: Add bit of code snatched from
async_stop_sig from event-top.c.
[!HAVE_SIGPROCMASK]: Call sigsetmask if HAVE_SIGSETMASK is
defined.
* configure.in (AC_CHECK_FUNCS): Put functions in alphabetical
order.  Add sigsetmask.
(AC_FUNC_VFORK, AC_FUNC_ALLOCA): Reorder such that they're in
alphabetical order.
* config/xm-aix4.h, config/alpha/xm-alphalinux.h,
config/i386/xm-cygwin.h, config/rs6000/xm-rs6000.h
(HAVE_SIGSETMASK): Remove.
* aclocal.m4, config.in, configure
2001-08-27 22:39:56 +00:00
Mark Kettenis
ceacb162a1 * config/xm-lynx.h, config/xm-nbsd.h, config/xm-sysv4.h,
config/i386/xm-i386aix.h, config/m68k/xm-dpx2.h: Remove redundant
inclusion of <limits.h>.
2001-08-24 12:19:59 +00:00
Andrew Cagney
5ea92dfe6a Convert some floatformat_{to,from}_double to floatformat_{to,from}_doublest. 2001-08-12 03:19:22 +00:00
Eli Zaretskii
40cd916ff9 * config/i386/xm-go32.h: Include xm-i386.h.
(HOST_BYTE_ORDER, HOST_LONG_DOUBLE_FORMAT): Remove definitions.
2001-08-02 15:18:15 +00:00
Andrew Cagney
d16aafd8c8 * defs.h (HOST_FLOAT_FORMAT, HOST_DOUBLE_FORMAT)
(HOST_FLOAT_FORMAT, HOST_DOUBLE_FORMAT)
(HOST_LONG_DOUBLE_FORMAT, DOUBLEST)
(floatformat_to_doublest, floatformat_from_doublest)
(floatformat_is_negative, floatformat_is_nan)
(floatformat_mantissa, store_floating)
(extract_floating): Move declaration from here.
* doublest.h: To here.  New file.
* utils.c (get_field, floatformat_to_doublest, put_field)
(ldfrexp, floatformat_from_doublest, floatformat_is_negative)
(floatformat_is_nan, floatformat_mantissa)
(FLOATFORMAT_CHAR_BIT): Move from here.
* doublest.c: To here.  New file.
* findvar.c (store_floating, extract_floating): Move from here.
* doublest.c: To here.
* Makefile.in (SFILES): Add doublest.c.
(COMMON_OBS): Add doublest.o.
(doublest.o): Specify dependencies.
(doublest_h): Define.

* config/m88k/tm-m88k.h: Include "doublest.h".
* config/i960/tm-i960.h: Ditto.
* config/i386/tm-symmetry.h: Ditto.
* rs6000-tdep.c, valarith.c: Ditto.
* valprint.c, stabsread.c, sh-tdep.c: Ditto.
* ia64-tdep.c, i387-tdep.c, i386-tdep.c: Ditto.
* values.c, arm-tdep.c, arm-linux-tdep.c: Ditto.
* alpha-tdep.c, ax.h, expression.h: Ditto.
* sh-tdep.c, parse.c, top.c, value.h: Ditto.

* Makefile.in (arm-tdep.o): Add $(doublest_h).
(i386-tdep.o, i387-tdep.o, ia64-tdep.o): Ditto.
(rs6000-tdep.o, stabsread.o, valarith.o): Ditto.
(values.o, valprint.o, arm-linux-tdep.o): Ditto.
(alpha-tdep.o, ax_h, parse.o, top.o, value_h): Ditto.
(parser_defs_h): Ditto.
(expression_h): Add $(doublest_h) and $(symtab_h).
2001-08-01 18:39:27 +00:00
Mark Kettenis
1ca66634bd * config/i386/xm-i386.h: New file.
* config/i386/xm-fbsd.h: Removed.
* config/i386/xm-linux.h: Removed.
* config/i386/fbsd.mh: Reorganize a bit.
(XM_FILE): Set to xm-i386.h instead of xm-fbsd.h.
* config/i386/linux.mh (XM_FILE): Set to xm-i386.h insread of
xm-linux.h.
2001-07-31 19:22:57 +00:00
Mark Kettenis
4b418e06b0 * config/i386/tm-i386sol2.h (STAB_REG_TO_REGNUM): Redefine to call
i386_dwarf_reg_to_regnum.
2001-07-30 21:45:26 +00:00
Mark Kettenis
846a440c9c * config/i386/tm-i386.h (STAB_REG_TO_REGNUM, SDB_REG_TO_REGNUM,
DWARF_REG_TO_REGNUM, DWARF2_REG_TO_REGNUM): New defines.
(i386_stab_reg_to_regnum, i386_dwarf_reg_to_regnum): New
prototypes.
* config/i386/tm-fbsd.h, config/i386/tm-i386gnu.h,
config/i386/tm-linux.h (STAB_REG_TO_REGNUM): Redefine to call
i386_dwarf_reg_to_regnum.
* i386-tdep.c (i386_stab_reg_to_regnum, i386_dwarf_reg_to_regnum):
New functions.
2001-07-30 10:17:46 +00:00
Eli Zaretskii
6c56c06965 Support for stepping through longjmp in DJGPP programs:
* config/i386/tm-go32.h (JB_ELEMENT_SIZE, JB_PC): New macros.
	(GET_LONGJMP_TARGET): Define to call get_longjmp_target.
	(get_longjmp_target): Add prototype.
2001-07-29 08:03:36 +00:00
Mark Kettenis
a2585ce735 * config/i386/tm-i386.h (STAB_REG_TO_REGNUM, SDB_REG_TO_REGNUM,
DWARF_REG_TO_REGNUM, DWARF2_REG_TO_REGNUM): New defines.
(i386_stab_reg_to_regnum, i386_dwarf_reg_to_regnum): New
prototypes.
* config/i386/tm-fbsd.h, config/i386/tm-i386gnu.h,
config/i386/tm-linux.h (STAB_REG_TO_REGNUM): Redefine to call
i386_dwarf_reg_to_regnum.
* i386-tdep.c (i386_stab_reg_to_regnum, i386_dwarf_reg_to_regnum):
New functions.
2001-07-28 19:30:41 +00:00
Mark Kettenis
85540d8c4a * config/i386/tm-i386.h (STAB_REG_TO_REGNUM, SDB_REG_TO_REGNUM,
DWARF_REG_TO_REGNUM, DWARF2_REG_TO_REGNUM): New defines.
(i386_stab_reg_to_regnum, i386_dwarf_reg_to_regnum): New
prototypes.
* config/i386/tm-fbsd.h, config/i386/tm-i386gnu.h,
config/i386/tm-linux.h (STAB_REG_TO_REGNUM): Redefine to call
i386_dwarf_reg_to_regnum.
* i386-tdep.c (i386_stab_reg_to_regnum, i386_dwarf_reg_to_regnum):
New functions.
2001-07-28 17:03:38 +00:00
Mark Kettenis
0200359f12 * configure.in (AC_CHECK_FUNCS): Add setpggrp.
(AC_FUNC_SETPGRP): Add.
* aclocal.m4, configure, config.in: Regenerated.
* inflow.c (gdb_setpgid): Get rid of NEED_POSIX_SETPGID and
SETPGRP_ARGS.  Always use setpgid if it is available, fall back on
setpgrp if it isn't.  Use SETPGRP_VOID (defined by autoconf) to
distinguish between the two setpgrp flavours.
* config/xm-sysv4.h, config/arm/xm-linux.h,
config/i386/xm-i386aix.h, config/i386/xm-sco.h,
config/i386/xm-linux.h, config/i386/xm-ptx.h,
config/m68k/xm-linux.h, config/powerpc/xm-linux.h,
config/sparc/xm-linux.h, config/sparc/xm-sun4sol2.h,
config/ia64/xm-linux.h (NEED_POSIX_SETPGID): Remove.
* config/rs6000/xm-rs6000.h (SETPGRP_ARGS): Remove.
2001-07-23 19:21:57 +00:00
Mark Kettenis
383d750bf3 * i386gnu-nat.c: Include "i387-nat.h".
(struct env387): Removed.
(reg_offset): Fix comment.
(fetch_fpregs): Use FCTRL_REGNUM and FOP_REGNUM instead of
FIRST_FPU_CONTROL_REGNUM and LAST_FPU_CONTROL_REGNUM.  Rewrite to
use i387_supply_fsave.
(gnu_fetch_registers): Remove spurious whitespace.
(convert_to_env387): Remove.
(store_fpregs): Add argument regno.  Use i387_fill_fsave instead
of convert_to_env387.
(gnu_store_registers): Remove spurious whitespace.  Pass REGNO to
store_fpregs.
* config/i386/i386gnu.mt (TDEPFILES): Add i387-tdep.o.
* config/i386/i386gnu.mh (XDEPFILES): Remove i387-tdep.o.
(NATDEPFILES): Add i387-nat.o.
2001-07-22 20:35:14 +00:00
Mark Kettenis
256304449f * i386bsd-nat.c: Do not include <sys/sysctl.h>.
(_initialize_i386bsd_nat) [KERN_PS_STRINGS]: Move FreeBSD-specific
code to ...
* i386fbsd-nat.c: ... here.  New file.
* config/i386/fbsd.mh (NATDEPFILES): Add i386-fbsd.o.
* config/i386/nm-fbsd.h (CHILD_RESUME): Define.
* Makefile.in (ALLDEPFILES): Add i386fbsd-nat.c.
(i386fbsd-nat.o): Add dependencies.
2001-07-21 20:16:44 +00:00
Mark Kettenis
1fe7ac855c * config/i386/xm-linux.h (KERNEL_U_ADDR): Move from here...
* config/i386/nm-linux.h: ...to here.  Change comments about user
area/struct a bit.
2001-07-14 11:55:29 +00:00
Mark Kettenis
d0f3ce3c53 * config/i386/xm-linux.h (HAVE_TERMIOS): Really remove. 2001-07-14 11:12:52 +00:00
Mark Kettenis
b724791951 * i386bsd-nat.c: Include <signal.h>, <stddef.h> and
<sys/sysctl.h>.
(store_inferior_registers): Wrap long line.
(i386bsd_dr_get_status): Fix typo in comment.
(_initialize_i386bsd_nat): New function.  * i386bsd-tdep.c: New
file.  * config/i386/tm-fbsd.h (IN_SIGTRAMP): New define.
(i386bsd_in_sigtramp): New prototype.
(SIGTRAMP_START, SIGTRAMP_END): Redefine in terms...
(i386bsd_sigtramp_start, i386bsd_sigtramp_end): ...these new
(external) variables.
(SIGCONTEXT_PC_OFFSET): Removed.
(FRAME_SAVED_PC): New define.
(i386bsd_frame_saved_pc): New function.  * config/i386/fbsd.mt
(TDEPFILES): Add i386bsd-tdep.o.
2001-07-13 18:27:21 +00:00
Daniel Jacobowitz
6ef7fa21cf fix i386-linux cannot_fetch/store_register 2001-07-13 05:19:30 +00:00
Mark Kettenis
e087d0d6ee * config/i386/xm-go32.h (HOST_I386): Removed.
* config/i386/xm-linux.h (HOST_I386): Removed.
2001-07-05 14:40:51 +00:00
Eli Zaretskii
4ac40b292f * config/i386/xm-go32.h (SLASH_P, ROOTED_P, SLASH_CHAR)
(SLASH_STRING): Remove unised definitions.
	* config/i386/xm-cygwin.h: Likewise.
2001-06-13 09:08:05 +00:00
Kevin Buettner
ca6724c16a Redefine ptid_t to be a struct rather than an int. 2001-05-15 00:03:38 +00:00
Mark Kettenis
0d17c81d95 * i386-tdep.c (i386_frame_saved_pc): New function.
* config/i386/tm-i386.h (FRAME_SAVED_PC): Redefine in terms of
i386_frame_saved_pc.
(i386_frame_saved_pc): New prototype.
2001-05-09 16:16:33 +00:00
Mark Kettenis
d7a0d72c95 * i386-tdep.c (i386_register_virtual_type): New function.
(i386_register_convertible): New function.
* config/i386/tm-i386.h (REGISTER_VIRTUAL_TYPE): Redefine in terms
of i386_register_virtual_type.
(REGISTER_CONVERTIBLE): Redefine in terms of
i386_register_convertible.
(i386_register_virtual_type, i386_register_convertible): New
prototypes.
2001-05-09 09:58:45 +00:00
Mark Kettenis
c6ec85d6ae * config/i386/tm-i386v.h (struct frame_info, struct
frame_saved_regs):  Remove declarations.
(i386_frame_num_args): Remove prototype.
2001-05-08 12:00:49 +00:00
Kevin Buettner
39f770628a Phase 1 of the ptid_t changes. 2001-05-04 04:15:33 +00:00
Mark Kettenis
539ffe0b42 * i386-tdep.c (i386_frameless_function_invocation): New function.
* config/i386/tm-i386.h (FRAMELESS_FUNCTION_INVOCATION): Redefine
in terms of i386_frameless_function_invocation.  Adjust comment.
(i386_frameless_function_invocation): New prototype.
2001-04-19 11:39:48 +00:00
Mark Kettenis
ed84f6c149 * i386-tdep.c (i386_saved_pc_after_call): New function.
* config/i386/tm-i386.h (SAVED_PC_AFTER_CALL): Redefine in terms
of i386_saved_pc_after_call.
(i386_saved_pc_after_call): New prototype.
2001-04-17 23:20:55 +00:00
Mark Kettenis
c833a37e77 * i386-tdep.c (i386_frame_chain): New function.
* config/i386/tm-i386.h (FRAME_CHAIN): Redefine in terms of
i386_frame_chain.
(i386_frame_chain): New prototype.
2001-04-16 13:03:15 +00:00
Kevin Buettner
7f6b83a5db * config/i386/fbsd.mh (NATDEPFILES): Add i386-nat.o. 2001-04-12 18:44:40 +00:00
Andrew Cagney
24f89b6880 Obsolete sun386i. 2001-04-11 22:39:07 +00:00
Mark Kettenis
f7af964784 * i386-tdep.c (i386_extract_struct_value_address): New function.
* config/i386/tm-i386.h (EXTRACT_STRUCT_VALUE_ADDRESS): Redefine
in terms of i386_extract_struct_value_address.
(i386_extract_struct_value_address): New prototype.
2001-04-01 12:39:52 +00:00
Mark Kettenis
7bf0983e94 * i386-linux-nat.c (i386_linux_dr_get): Change type of return
value to `unsigned long'.  Change type of `value' to `unsigned
long'.
(i386_linux_dr_set): Change type of second argument to `unsigned
long'.
(i386_linux_dr_set_control): Change type of first argument to
`unsigned long'.
(i386_linux_dr_get_status): Change type of return value to
unsigned long.
* config/i386/nm-linux.h (i386_linux_dr_set_control,
i386_linux_dr_get_status): Adjust prototypes accordingly.
2001-04-01 10:48:48 +00:00
Mark Kettenis
0afdd43759 * i386bsd-nat.c: Include "gdb_assert.h".
[HAVE_PT_GETDBREGS] (DBREG_DRX): Define if not
already defined.
[HAVE_PT_GETDBREGS] (i386bsd_dr_set, i386bsd_dr_set_control,
i386bsd_dr_set_addr, i386bsd_dr_reset_addr,
i386bsd_dr_get_status): New functions.
* config/i386/nm-fbsd.h [HAVE_PT_GETDBREGS]
(I386_USE_GENERIC_WATCHPOINTS): Define.
Include "i386/nm-i386.h".
(I386_DR_LOW_SET_CONTROL, I386_DR_LOW_SET_ADDR,
I386_DR_LOW_RESET_ADDR, I386_DR_LOW_GET_STATUS): New macros.
(i386bsd_dr_set_control, i386bsd_dr_set_addr,
i386bsd_dr_reset_addr, i386bsd_dr_get_status): New prototypes.
* acconfig.h (HAVE_PT_GETDBREGS): New configure macro.
* configure.in: Cleanup a few comments.  Check for PT_GETDBREGS
ptrace request.
* config.in, configure: Regenerate.
2001-03-31 18:09:03 +00:00
Mark Kettenis
b05f243280 * i386-linux-tdep.c (FRAMELESS_SIGNAL): Moved here from
config/i386/nm-linux.h (including comment).
(i386_linux_frame_chain): New function implementing guts of the
former FRAME_CHAIN macro, but using read_memory_unsigned_integer
instead of read_memory_integer.
(i386_linux_frame_saved_pc): Removed doc pointing to
i386/tm-linux.h for an explanation of FRAMELESS_SIGNAL since that
now lives in this file.
* config/i386/tm-linux.h (FRAMELESS_SIGNAL): Moved to
i386-linux-tdep.c (including comment).
(FRAME_CHAIN): Redefined in terms of i386_linux_frame_chain.
(i386_linux_frame_chain): New prototype.
2001-03-28 11:36:23 +00:00
Mark Kettenis
50e27f84bf * i386-linux-tdep.c (i386_linux_sigtramp_saved_pc,
i386_linux_sigtramp_saved_sp): Make static.
(i386_linux_frame_saved_pc): New function based on the old
FRAME_SAVED_PC macro, but use read_memory_unsigned_integer instead
of read_memory_integer.
* config/i386/tm-linux.h (sigtramp_saved_pc): Remove definition.
(i386_linux_sigtramp_saved_pc): Remove prototype.
(FRAME_SAVED_PC): Redefine in terms of i386_linux_frame_saved_pc.
(i386_linux_frame_saved_pc): New prototype.
2001-03-26 19:51:47 +00:00
Mark Kettenis
5b31405b6e * config/i386/tm-symmetry.h (PUSH_ARGUMENTS): #undef. 2001-03-26 12:25:31 +00:00
Mark Kettenis
22f8ba5774 * i386-tdep.c (i386_push_arguments, i386_store_struct_return): New
functions.
* config/i386/tm-i386.h (PUSH_ARGUMENTS): New macro.
(STORE_STRUCT_RETURN): Redefine in terms of
i386_store_struct_return.
(i386_push_arguments, i386_store_struct_return): New prototypes.
* config/i386/tm-i386v.h (STORE_STRUCT_RETURN): Remove.  It's
definition was identical to the definition in "i386/tm-i386.h" so
the new definition should suffice too.
2001-03-26 12:11:14 +00:00
Mark Kettenis
207e433e1d * config/i386/nm-i386.h: Fix formatting and change reference to
i386-tdep.c to i386-nat.c.
2001-03-23 16:17:45 +00:00
Eli Zaretskii
e24d4c64ff * config/i386/nm-go32.h <top level>: Don't include nm-i386v.h,
include nm-i386.h instead.
	(TARGET_HAS_HARDWARE_WATCHPOINTS, HAVE_CONTINUABLE_WATCHPOINT)
	(TARGET_CAN_USE_HARDWARE_WATCHPOINT, STOPPED_BY_WATCHPOINT)
	(TARGET_REGION_OK_FOR_HW_WATCHPOINT, DECR_PC_AFTER_HW_BREAK)
	(target_stopped_data_address, target_insert_watchpoint)
	(target_remove_watchpoint, target_insert_hw_breakpoint)
	(target_remove_hw_breakpoint): Don't define.
	(I386_USE_GENERIC_WATCHPOINTS, I386_DR_LOW_SET_CONTROL)
	(I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR)
	(I386_DR_LOW_GET_STATUS): Define to call appropriate go32_*
	functions from go32-nat.c.

	* config/i386/go32.mh (NATDEPFILES): Add i386-nat.o.

	* go32-nat.c <top level>: Remove prototypes for watchpoint-
	related functions.  Remove definitions of watchpoint-related
	macros.
	(go32_mourn_inferior): Call i386_cleanup_dregs instead of the
	private cleanup_dregs function.
	(cleanup_dregs, go32_insert_watchpoint)
	(go32_insert_aligned_watchpoint, go32_handle_nonaligned_watchpoint)
	(go32_remove_watchpoint, go32_remove_aligned_watchpoint)
	(go32_region_ok_for_watchpoint, go32_stopped_by_watchpoint)
	(go32_remove_hw_breakpoint, go32_insert_hw_breakpoint): Remove.
	(go32_set_dr, go32_set_dr7, go32_get_dr6): New functions.
2001-03-22 09:35:19 +00:00
Mark Kettenis
84346e11ea Make Linux use the new unified support for hardware breakpoints
and watchpoints on x86 targets.
* i386-linux-nat.c: Doc fixes.  Include "gdb_assert.h".
[HAVE_SYS_DEBUGREG_H]: Include <sys/debugreg.h>.
(DR_FIRSTADDR, DR_LASTADDR, DR_STATUS, DR_CONTROL): Define to
appropriate value if not already defined.
(register_u_addr): New function.
(kernel_u_size): New function.
(i386_linux_dr_get, i386_linux_dr_set): New functions.
(i386_linux_dr_set_control, i386_linux_dr_set_addr,
i386_linux_reset_addr, i386_linux_dr_get_status): New functions.
* config/i386/nm-linux.h: Don't include "nm-i386v.h".
(I386_USE_GENERIC_WATCHPOINTS): Define and include "nm-i386.h".
(TARGET_HAS_HARDWARE_WATCHPOINTS,
TARGET_CAN_USE_HARDWARE_WATCHPOINTS, HAVE_CONTINUABLE_WATCHPOINT,
STOPPED_BY_WATCHPOINT, target_insert_watchpoint,
target_remove_watchpoint): Remove macros.
(i386_stopped_by_watchpoint, i386_insert_watchpoint,
i386_remove_watchpoint): Remove prototypes.
(register_u_addr): New prototype.
(REGISTER_U_ADDR): Define in terms of register_u_addr.
(i386_linux_dr_set_control, i386_linux_dr_set_addr,
i386_linux_reset_addr, i386_linux_dr_get_status): New prototypes.
(I386_DR_LOW_SET_CONTROL, I386_DR_LOW_SET_ADDR,
I386_DR_LOW_RESET_ADDR, I386_DR_LOW_GET_STATUS): New macros.
* config/i386/linux.mh (NATDEPFILES): Replace i386v-nat.o with
i386-nat.o.
2001-03-21 21:22:49 +00:00
Eli Zaretskii
52b9821179 Unified support for hardware breakpoints and watchpoints on
x86 targets:

	* config/i386/nm-i386.h: New file.

	* config/i386/nm-i386.h: (i386_cleanup_dregs)
	(i386_insert_watchpoint, i386_remove_watchpoint)
	(i386_region_ok_for_watchpoint, i386_stopped_by_hwbp)
	(i386_stopped_data_address, i386_insert_hw_breakpoint)
	(i386_remove_hw_breakpoint): Declare prototypes.
	[I386_USE_GENERIC_WATCHPOINTS] (TARGET_CAN_USE_HARDWARE_WATCHPOINT):
	Define if not already defined.
	(TARGET_REGION_OK_FOR_HW_WATCHPOINT, HAVE_CONTINUABLE_WATCHPOINT)
	(STOPPED_BY_WATCHPOINT, target_stopped_data_address)
	(target_insert_watchpoint, target_remove_watchpoint)
	(target_insert_hw_breakpoint, target_remove_hw_breakpoint): Define
	to call the appropriate i386_* functions.

	* i386-nat.c: New file.

	* i386-nat.c (I386_DR_CONTROL_MASK, I386_DR_LOCAL_ENABLE)
	(I386_DR_GLOBAL_ENABLE, I386_DR_DISABLE, I386_DR_SET_RW_LEN)
	(I386_DR_GET_RW_LEN, I386_DR_WATCH_HIT): New macros.
	(dr_mirror, dr_status_mirror, dr_control_mirror, dr_ref_count)
	(maint_show_dr): New variables.
	(i386_cleanup_dregs, i386_show_dr, i386_length_and_rw_bits)
	(i386_insert_aligned_watchpoint, i386_remove_aligned_watchpoint)
	(i386_handle_nonaligned_watchpoint, i386_insert_watchpoint)
	(i386_remove_watchpoint, i386_region_ok_for_watchpoint)
	(i386_stopped_data_address, i386_stopped_by_hwbp)
	(i386_insert_hw_breakpoint, i386_remove_hw_breakpoint): New
	functions.
	(_initialize_i386_nat): New function.
	[I386_USE_GENERIC_WATCHPOINTS]: Add new	maint command
	`show-debug-regs', sets maint_show_dr to non-zero value and
	activates debugging print-outs in functions which insert, remove,
	and test watchpoints and hardware breakpoints.

	* Makefile.in (i386-nat.o): New target.
	(ALLDEPFILES): Add i386-nat.o.
2001-03-21 11:36:58 +00:00
Kevin Buettner
087bb2e240 Fix ``make'' problems when building cross debugger. 2001-03-20 02:37:55 +00:00
Kevin Buettner
8aa16b78d8 Fix NetBSD 1.4 build problem. 2001-03-19 05:15:32 +00:00
Mark Kettenis
e3c6d36d49 * config/i386/tm-linux.h (TARGET_ANALYZE_FLOATING): Remove. It's
no longer used.  Also remove associated FIXME.
2001-03-17 22:24:00 +00:00
Andrew Cagney
f88e2c5226 Include regcache.h 2001-03-14 23:23:16 +00:00
Kevin Buettner
21479deda0 Cleanup solib-svr4.c by moving legacy code out to its own file. 2001-03-10 06:17:24 +00:00
Kevin Buettner
b6ba6518e9 Update/correct copyright notices. 2001-03-06 08:22:02 +00:00
J.T. Conklin
3a644c8da1 * defs.h (__CYGWIN__): Moved conditional which defines __CYGWIN__
if __CYGWIN32__ is set from here.
* config/i386/xm-cygwin.h: To here.
* config/powerpc/xm-cygwin.h: To here.
2001-03-02 02:54:10 +00:00
Eli Zaretskii
89dea5aa55 * go32-nat.c: Include i387-nat.h.
(fetch_register): New function, uses some of the guts of
	go32_fetch_registers and i387_supply_register.
	(go32_fetch_registers): Most of the code moved into
	fetch_register.  Use i387_supply_fsave.
	(store_register): Use i387_fill_fsave instead of custom code.
	(go32_store_registers): Use i387_fill_fsave.

	* Makefile.in (go32-nat.o): Depend on i387-nat.h.

	* config/i386/go32.mh (NATDEPFILES): Add i387-nat.o.
2001-02-18 07:22:17 +00:00
Jeff Holcomb
5b616ba11e 2001-01-24 Jeff Holcomb <jeffh@redhat.com>
* remote-udi.c (udi_open): Change strdup to xstrdup.
        * thread.c (thread_apply_all_command): Change strdup to xstrdup.
        Update copyright message.
        * varobj.c (delete_variable_1): Likewise.

        * gdb_string.h: Remove declaration of strdup.  Update copyright
        message.
        * config/xm-mpw.h: Likewise.
        * config/i386/xm-i386mach.h: Likewise.
        * config/m68k/xm-apollo68b.h: Likewise.
        * config/m68k/xm-hp300bsd.h: Likewise.
        * config/rs6000/xm-rs6000.h: Likewise.
        * config/vax/xm-vaxult.h: Remove declaration of strdup.
        * config/vax/xm-vaxult2.h: Likewise.
2001-01-26 19:47:23 +00:00
J.T. Conklin
f6427adebb * ns32k-tdep.c: #include "frame.h"
* config/ns32k/tm-umax.h (FRAME_FIND_SAVED_REGS): Restore.  It
appears to have been inadvertantly removed sometime in May 1999.

* Revert 2000-11-09 changes where shared library objects were
moved from NATDEPFILES to TDEPFILES on NetBSD targets.  While
we'd like to be able to debug dynamically linked executables,
this makes it impossible to build a cross debugger on a many
hosts.

* config/i386/nbsd.mt: Remove solib.o, solib-svr4.o from TDEPFILES.
* config/i386/nbsdelf.mt: Likewise.
* config/m68k/nbsd.mt: Likewise.
* config/ns32k/nbsd.mt: Likewise.
* config/powerpc/nbsd.mt: Likewise.
* config/sparc/nbsd.mt: Likewise.
* config/sparc/nbsdelf.mt: Likewise.
* config/i386/nbsd.mh: Add solib.o, solib-svr4.o to NATDEPFILES.
* config/i386/nbsdelf.mh: Likewise.
* config/m68k/nbsd.mh: Likewise.
* config/ns32k/nbsd.mh: Likewise.
* config/powerpc/nbsd.mh: Likewise.
* config/sparc/nbsd.mh: Likewise.
2001-01-22 20:23:25 +00:00
Nicholas Duffek
cc533b9d85 * config/i386/tm-i386.h (REGISTER_CONVERT_TO_VIRTUAL,
REGISTER_CONVERT_TO_RAW): Delete trailing semicolon.
2001-01-04 15:46:22 +00:00
Mark Kettenis
ef9dff19c4 * i386-tdep.c: Add missing ')' in comment.
(i386_extract_return_value): Return directly after issuing the
warning and filling *VALBUF with zeroes if we cannot get at the
floating-point registers.
(i386_store_return_value): New function.
* config/i386/tm-i386.h (STORE_RETURN_VALUE): Simply call
i386_store_return_value.
Add prototype for i386_store_return_value.
2000-12-21 20:52:59 +00:00
J.T. Conklin
74e0dee8a1 * config/i386/nbsd.mh: Remove solib.o, solib-svr4.o from NATDEPFILES.
* config/i386/nbsdelf.mh: Likewise.
* config/m68k/nbsd.mh: Likewise.
* config/ns32k/nbsd.mh: Likewise.
* config/powerpc/nbsd.mh: Likewise.
* config/sparc/nbsd.mh: Likewise.
* config/sparc/nbsdelf.mh: Likewise.
* config/i386/nbsd.mt: Add solib.o, solib-svr4.o to TDEPFILES.
* config/i386/nbsdelf.mt: Likewise.
* config/m68k/nbsd.mt: Likewise.
* config/ns32k/nbsd.mt: Likewise.
* config/powerpc/nbsd.mt: Likewise.
* config/sparc/nbsd.mt: Likewise.
2000-11-09 22:57:03 +00:00
Michael Snyder
1a8629c735 2000-10-30 Michael Snyder <msnyder@cleaver.cygnus.com>
* config/sh/tm-linux.h: New file.  Include generic tm-linux.h,
	plus tm-sh.h, then define SVR4_FETCH_LINK_MAP_OFFSETS to use
	the sh target function instead of the default link map offsets.
	* config/sh/sh.mt: Add solib.o and solib-svr4.o to TDEPFILES.
	Use sh/tm-linux.h instead of sh/tm-sh.h.
	* sh-tdep.c (sh_linux_svr4_fetch_link_map_offsets):
	New function.  Construct target-specific link map offsets.
	* i386-linux-tdep.c (i386_linux_svr4_fetch_link_map_offsets:
	New function.  Construct target-specific link map offsets.
	* config/i386/tm-linux.h: Use above function instead of default.

2000-10-30  Michael Snyder  <msnyder@cleaver.cygnus.com>

	* config/i386/tm-linux.h: Remove definition of SVR4_SHARED_LIBS,
	and inclusion of solib.h.  Move up into ../tm-linux.h.
	config/tm-linux.h: Define SVR4_SHARED_LIBS, include solib.h.
2000-10-31 19:35:04 +00:00
Michael Snyder
85b29e5e93 2000-10-30 Michael Snyder <msnyder@cleaver.cygnus.com>
* config/m68k/linux.mh: Remove solib.c, solib-svr4.c from NATDEPFILES.
        * config/powerpc/linux.mh: ditto.
        * config/ia64/linux.mh: ditto.
        * config/i386/linux.mh: ditto.
        * config/alpha/alpha-linux.mh: ditto.
        * config/arm/linux.mh: ditto.
        * config/m68k/linux.mt: Add solib.c, solib-svr4.c to TDEPFILES.
        * config/powerpc/linux.mt: ditto.
        * config/ia64/linux.mt: ditto.
        * config/i386/linux.mt: ditto.
        * config/alpha/alpha-linux.mt: ditto.
        * config/arm/linux.mt: ditto.
2000-10-30 22:33:32 +00:00
Kevin Buettner
13437d4b4b Reorganize solib.c. 2000-10-24 20:05:36 +00:00
Peter Schauer
16d6ab6428 * config/i386/i386sol2.mh: Add XM_CLIBS definition to resolve
reference to gethostbyname.
2000-10-09 19:40:37 +00:00
Peter Schauer
d5d653533c * i386-linux-nat.c (OLD_CANNOT_FETCH_REGISTER,
OLD_CANNOT_FETCH_REGISTER):  New definitions for accessible registers
	when accessing the registers via the U area.
	(fetch_register, store_register):  Use them.
	(cannot_fetch_register, cannot_store_register):  New functions,
	all registers should be accessible if we have GETREGS support.
	* config/i386/nm-linux.h:  Use cannot_fetch/store_register for
	CANNOT_FETCH/STORE_REGISTER definitions.
2000-09-22 17:45:47 +00:00
J.T. Conklin
0fc93e6bc4 * config/i386/nbsd.mt (TDEPFILES): Add i386nbsd-tdep.o.
* i386nbsd-nat.c (i386nbsd_use_struct_convention): Moved from here.
* i386nbsd-tdep.c (i386nbsd_use_struct_convention): To here.
* i386nbsd-tdep.c: New file.
2000-09-07 20:08:40 +00:00
Mark Kettenis
8c3a79982e * config/i386/nm-linux.h: Include <signal.h>. 2000-09-04 09:58:06 +00:00
Mark Kettenis
fb0e1ba780 * config/i386/nm-linux.h (PREPARE_TO_PROCEED, ATTCH_LWP,
GET_THREAD_SIGNALS): New defines.
* config/i386/linux.mh (NATDEPFILES): Remove lin-thread.o and
linux-threads.o.  Add proc-service.o, thread-db.o and lin-lwp.o.
* proc-service.c: New file.
* thread-db.c: New file.
* lin-lwp.c: New file.
2000-09-03 18:41:28 +00:00
Christopher Faylor
8e860359d1 * win32-nat.c (dll_symbol_command): Tack a .dll on the end of a supplied
argument if it is missing an extension.

* corelow.c: Define O_BINARY if it isn't defined.
(core_open): Open core file in binary mode.
* config/i386/tm-cygwin.h (child_clear_solibs): Rename from child_clear_solib.
* config/i386/cygwin.mh: Add dependency from corelow.o.
* win32-nat.c (register_loaded_dll): New function.  Add dll to the list of
currently loaded dlls.
(handle_load_dll): Use register_loaded_dll.
(child_solib_add): Distinguish between active process and core targets.
(solib_symbols_add): Load symbols from loaded dll.
(core_dll_symbols_add): New function.  Load symbols from dll referenced in
core.
(core_section_load_dll_symbols): New function.
(dll_code_sections_add): New function.
(map_single_dll_code_section): New function.
(fetch_elf_core_registers): New function.
(_initialize_core_win32): New function.
2000-08-27 04:21:35 +00:00
Mark Kettenis
6ce2ac0be0 Adapt support for SSE registers in Linux/x86 for Linux 2.4.
* i386-linux-nat.c: Various doc fixes.  Include "i387-nat.h".
(GETFPXREGS_SUPPLIES): Renamed from GETXFPREGS_SUPPLIES.
(have_ptrace_getfpxregs): Renamed from have_ptrace_getxfpregs.
(convert_to_gregset): Removed.  Moved logic to ...
(fill_gregset): ... here.  Simplified function.
(fetch_regs): Use perror_with_name for error reporting.
(store_regs): Add `regno' parameter.  Use perror_with_name for
error reporting.  Call fill_gregset instead of convert_to_gregset.
(FPREG_ADDR): Remove.
(supply_fpregset): Implement by calling i387_supply_fsave.
(convert_to_fpregset): Remove.
(fill_fpregset): Implement by calling i387_fill_fsave.
(fetch_fpregs): Use perror_with_name fro error reporting.
(store_fpregs) Add `regno' parameter.  Use perror_with_name fro
error reporting.  Call fill_fpregset instead of
convert_to_fpregset.
(supply_xfpregset, convert_to_xfpregset): Removed.
(supply_fpxregset, fill_fpxregset): New functions.
(fetch_fpxregs): Renamed from fetch_xfpregs.  Use perror_with_name
for error reporting.  Call supply_fpxregset instead of
supply_xfpregset.
(store_xfpregs): Removed.
(store_fpxregs): New function.
(fetch_inferior_registers): Adjust for xfp -> fpx change.  Tweak
message in call to internal_error.
(store_inferior_registers): Adjust for xfp ->fpx change.  Pass
REGNO to store_regs, store_fpregs and store_fpxregs.
(fetch_core_registers): Adjust for xfp -> fpx change.
* acconfig.h (HAVE_PTRACE_GETFPXREGS): Renamed from
HAVE_PTRACE_GETXFPREGS.
* config.in: Regenerated.
* configure.in: Replace check for PTRACE_GETXFPREGS with check for
PTRACE_GETFPXREGS.  Remove comment about Cygnus SSE extensions.
* configure: Regenerated.
* config/i386/linux.mh (NATDEPFILES): Add i387-nat.o.
* config/i386/tm-linux.h: Base definition of HAVE_SSE_REGS on
HAVE_PTRACE_GETFPXREGS instead of HAVE_PTRACE_GETXFPREGS.
2000-08-10 17:04:33 +00:00