Commit graph

358 commits

Author SHA1 Message Date
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