Commit Graph

1462 Commits

Author SHA1 Message Date
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
David Anderson 7e73cedf75 Corrected spelling errors in comments.
gdbarch.{c,sh} removed a word from a comment.
2000-10-27 15:02:42 +00:00
Peter Schauer f517ea4ebb * arch-utils.c, arch-utils.h (default_convert_from_func_ptr_addr):
New function.
	* gdbarch.sh (CONVERT_FROM_FUNC_PTR_ADDR):  Add.
	* gdbarch.c, gdbarch.h:  Regenerate.
	* valops.c (find_function_addr):  Use CONVERT_FROM_FUNC_PTR_ADDR
	unconditionally.

	* config/rs6000/tm-rs6000.h (CONVERT_FROM_FUNC_PTR_ADDR):  Delete
	definition.
	* config/powerpc/tm-linux.h (CONVERT_FROM_FUNC_PTR_ADDR):  Remove
	undef.
	* rs6000-tdep.c (rs6000_convert_from_func_ptr_addr):  Fix comment.
	(rs6000_gdbarch_init):  Register rs6000_convert_from_func_ptr_addr
	if not ELFOSABI_LINUX.
2000-10-26 07:41:25 +00:00
Kevin Buettner 53d2c54b5b Revert change of 2000-10-24 in which solib-svr4.o was added to TDEPFILES. 2000-10-25 20:48:59 +00:00
Kevin Buettner 13437d4b4b Reorganize solib.c. 2000-10-24 20:05:36 +00:00
David Anderson e26cc3490a Corrected spelling errors in comments 2000-10-23 22:49:29 +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
Kevin Buettner fdb28ac401 Enable Mark Kettenis' linux thread support for Linux/PPC. 2000-09-18 01:08:24 +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
Scott Bambrough e1d6e81ff4 Remove stray debugging statement and move prototypes so arm-linux-tdep.c
compiles without warnings.

2000-09-06  Scott Bambrough <scottb@netwinder.org>

	* arm-linux-tdep.c (arm_linux_skip_solib_resolver):
	Removed debug print statement.  Removed arm_pc_is_thumb prototype.
	* config/arm/tm-arm.h (arm_pc_is_thumb, arm_pc_is_thumb_dummy):
	Move prototypes here from tm-embed.h.
	* config/arm/tm-embed.h (arm_pc_is_thumb, arm_pc_is_thumb_dummy):
	Remove prototypes.  Moved to tm-arm.h.
2000-09-06 18:43:49 +00:00
Kevin Buettner 2a451106e2 Add support for backtracing through signal handlers on Linux/ARM. Also,
make prologue scanning code somewhat less naive about optimized code
on GNU/Linux/ARM.
2000-09-06 00:39:11 +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
Pierre Muller df11521975 2000-08-24 Pierre Muller <muller@ics.u-strasbg.fr>
* Makefile.in: add rules to compile and link pascal specific files.
       * config/djgpp/fnchange.lst: add substitution for p-exp.tab.c.
2000-08-25 07:54:32 +00:00
Andrew Cagney f6df245f76 Add formatted register info.
Convert more of mn10300 to multi-arch.
Fix mips vs mn10300
2000-08-12 03:28:42 +00:00
Andrew Cagney 9122588356 Enable multi-arch for the mn10300. 2000-08-11 07:54:49 +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
Christopher Faylor 9d3789f7f1 * win32-nat.c: Perform various gcc warning cleanups.
(safe_symbol_file_add_cleanup): Reset stdout to saved stdout, not stderr.
(dll_symbol_command): Pass OBJF_USERLOADED to safe_symbol_file_add.
(get_child_debug_event): Always reset last_sig.  Always reset inferior pid
appropriately.
(do_initial_child_stuff): New function.  Called when attaching or starting a
new inferior process.
(child_attach): Use do_initial_child_stuff.
(child_create_inferior): Ditto.
* config/i386/cygwin.mh (NAT_FILE): Set to modern location.
* config/i386/tm-cygwin.h: Define ATTACH_NO_WAIT.
2000-08-06 23:25:32 +00:00
Andrew Cagney 0a49d05ee0 Multi-arch EXTRA_STACK_ALIGNMENT_NEEDED (nee NO_EXTRA_ALIGNMENT_NEEDED). 2000-08-04 03:17:57 +00:00
Andrew Cagney 5a2402b8e0 Thu Jul 27 17:38:35 2000 Andrew Cagney <cagney@b1.cygnus.com>
* configure.in (targetfile): Ignore TM_FILE, don't just issue
        warning.
        (tm_h, xm_h, nm_h, GDB_TM_FILE, GDB_XM_FILE, GDB_NM_FILE): Define.
        * acconfig.h (GDB_XM_FILE, GDB_TM_FILE, GDB_NM_FILE): Add.
        * config/nm-empty.h: Delete.
        * defs.h (xm.h, nm.h, tm.h): Only include when GDB_XM_FILE,
        GDB_NM_FILE or GDB_TM_FILE defined.
        * Makefile.in (defs_h): Replace tm.h, xm.h and nm.h with tm_h,
        xm_h and nm_h macro that are defined by configure.
        (tm_h, xm_h, tm_h): New.
        * configure, config.in: Regenerate
        * TODO: Update.
2000-08-02 11:11:47 +00:00
Andrew Cagney 7c7651b2d0 Multi-arch REGISTER_SIM_REGNO. Update d10v. 2000-08-02 11:05:50 +00:00
Kevin Buettner 9aa1e687a2 Make GNU/Linux/PPC work again. 2000-07-31 20:56:44 +00:00
Eli Zaretskii cf79017e4b * config/djgpp/fnchange.lst: Add file mappings as per last weekly
snapshot.
2000-07-31 06:11:19 +00:00
Andrew Cagney 78073dd899 From 2000-06-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>:
* configure.tgt: Recognize the 68hc11.
* m68hc11-tdep.c: New file for 68hc11 target.
* config/m68hc11/m68hc11.mt: New file for 68hc11 port.

* configure.tgt: When 68hc11, set gdb_multi_arch.
2000-07-27 07:18:32 +00:00
Michael Snyder 4d3dc5abff 2000-07-26 Jimmy Guo <guo@cup.hp.com>
* config/convex/tm-convex.h: Remove stray control characters.
        * config/m68k/tm-altos.h: Ditto.
        * config/tahoe/tm-tahoe.h: Ditto.
2000-07-27 00:54:12 +00:00
Elena Zannoni fe9f384f16 2000-07-26 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* sh-tdep.c (sh_sh4_register_name, sh_sh4_register_byte,
 	sh_sh4_register_raw_size, sh_sh4_register_virtual_type,
 	sh_fetch_pseudo_register, sh_store_pseudo_register,
 	sh_do_pseudo_register, sh_gdbarch_init): Fix names for pseudoregs,
 	they should be numbered as drx fvy where x and y are multiples of
 	2 and 4 respectively.

	* config/sh/tm-sh.h: Fix names of pseudo regs.
2000-07-26 23:04:44 +00:00
Elena Zannoni 53116e27b6 2000-07-24 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* config/sh/tm-sh.h (struct gdbarch_tdep): Add sh4 specific
 	pseudo registers.
	(DO_REGISTERS_INFO): Define.

	* sh-tdep.c (sh_sh4_register_name): New function.
	(sh_generic_show_regs, sh3_show_regs, sh3e_show_regs,
 	sh3_dsp_show_regs, sh4_show_regs, sh_dsp_show_regs): Update
 	signature.
	(sh_show_regs_command): New function. Actual function called by
 	the 'regs' command.
	(sh_register_byte): Rename to...
	(sh_default_register_byte): ...New function.
	(sh_sh4_register_byte): New function.
	(sh_register_raw_size): Rename to...
	(sh_default_register_raw_size): ...New function.
	(sh_sh4_register_raw_size): New function.
	(sh_sh4_register_virtual_type): New function.
	(sh_sh4_build_float_register_type): New function.
	(sh_fetch_pseudo_register, sh_store_pseudo_register): New
 	functions.
	(fv_reg_base_num, dr_reg_base_num): New functions.
	(do_fv_register_info, do_dr_register_info, sh_do_pseudo_register,
 	sh_do_fp_register, sh_do_register, sh_print_register,
 	sh_do_registers_info): New functions.
	(sh_gdbarch_init): Initialize sh4 pseudo registers to -1. Update
 	architecture specific parts.
	(_initialize_sh_tdep): Use sh_show_regs_command for 'regs' command.
2000-07-24 20:39:21 +00:00
Michael Snyder 6dff448f84 2000-07-21 Michael Snyder <msnyder@cleaver.cygnus.com>
* config/i386/tm-i386.h: treat PC and FP as unsigned.
      (SAVED_PC_AFTER_CALL): Use read_memory_unsigned_integer.
      (FRAME_SAVED_PC): Ditto.
      (FRAME_CHAIN): Ditto.
2000-07-21 20:52:27 +00:00
Elena Zannoni cc17453a58 2000-07-19 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
Multiarch the sh target.
	* sh-tdep.c:
	(sh_generic_reg_names, sh_reg_names,sh3_reg_names, sh3e_reg_names,
 	sh_dsp_reg_names, sh3_dsp_reg_names, sh_processor_type_table):
 	Remove.
	(XMALLOC): Define.
	(struct frame_extra_info): Define.
	(sh_register_raw_size, sh_register_virtual_size,
 	sh_register_virtual_type, sh_register_byte, sh_breakpoint_from_pc,
 	sh_frame_saved_pc, sh_skip_prologue,
 	sh_nofp_frame_init_saved_regs, sh_fp_frame_init_saved_regs,
 	sh_extract_struct_value_address, sh_use_struct_convention,
 	sh_store_struct_return, sh_push_arguments, sh_push_return_address,
 	sh_saved_pc_after_call, sh_generic_register_name,
 	sh_sh_register_name, sh_sh3_register_name, sh_sh3e_register_name,
 	sh_sh_dsp_register_name, sh_sh3_dsp_register_name,
 	sh_frame_args_address, sh_frame_locals_address,
 	sh_coerce_float_to_double, sh_default_store_return_value,
 	sh3e_sh4_store_return_value, sh_generic_show_regs,
 	sh3_show_regs,sh3e_show_regs, sh3_dsp_show_regs, sh4_show_regs,
 	sh_dsp_show_regs, sh_register_byte, sh_register_raw_size,
 	sh_register_virtual_size, sh_sh3e_register_virtual_type,
 	sh_default_register_virtual_type, sh_gdbarch_init): New functions.
	(sh_target_architecture_hook, sh_frame_find_saved_regs,
 	sh_show_regs): Delete functions.
	(sh_frame_chain, sh_find_callers_reg, sh_init_extra_frame_info,
 	sh_pop_frame, sh_extract_return_value): Update

	* config/sh/tm-sh.h (GDB_MULTI_ARCH): Define to 1.
	(struct gdbarch_tdep): Define.
	Remove all unnecessary defines.

	* remote-e7000.c ({PR,GBR,SR,MACL,VBR,MACH}_REGNUM): Define to -1,
 	for h8300 case.
	(want_sh,want_nopc_sh,want_nopc_sh3): Make nomenclature
 	consistent.
	(e7000_fetch_registers): Remove ifdef GDB_TARGET_IS_SH, use
 	runtime check instead.
	(e7000_wait): Ditto.

	* sh3-rom.c (sh3_supply_register): Use gdbarch_tdep to get the SSR
 	and SPC register numbers.
	(sh3_regnames, sh3e_regnames): Don't specify a size.

	* config/h8300/tm-h8300.h: Add comment.
2000-07-19 14:11:42 +00:00
J.T. Conklin 67aa9423b0 2000-07-17 matthew green <mrg@redhat.com>
* config/sparc/nm-nbsd.h (GDB_GREGSET_T, GDB_FPREGSET_T): Define.
2000-07-17 18:11:56 +00:00
Nicholas Duffek fe794dc69d * ppcbug-rom.c (ppcbug_regnames[]): Make array size implicit.
* rs6000-tdep.c (DEFAULT_LR_SAVE): Move to config/*/tm-*.h.
	(rs6000_gdbarch_init): Use generic_pc_in_call_dummy instead of
	rs6000_pc_in_call_dummy.
	* config/rs6000/tm-rs6000.h (DEFAULT_LR_SAVE): Move here from
	rs6000-tdep.c.
	* config/powerpc/tm-ppc-eabi.h: Remove various definitions
	handled by multi-arched rs6000-tdep.c.
2000-07-14 22:17:33 +00:00
Nick Clifton 585230bdeb Fix definition of SKIP_PROLOGUE macro. 2000-07-14 20:55:41 +00:00
Elena Zannoni 8db62801bd 2000-07-10 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* config/sh/tm-sh.h (STORE_RETURN_VALUE): Redefine as
 	sh_store_return_value().
	* sh-tdep.c (sh_store_return_value): New function. Store the
 	value returned by a function into the appropriate register.

2000-07-10  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>

        * sh-tdep.c (sh_skip_prologue): Before looking at the actual
 	instructions, try to see if the symbol table can be of help, by
 	calling after_prologue(). If this doesn't work, call
 	skip_prologue_hard_way().
	(skip_prologue_hard_way): Renamed from sh_skip_prologue. Add some
 	more instruction pattern matching for pushing of arguments, and
 	manipulation of r14.
	(after_prologue): New function. Use symbol table info to determine
 	the end of the prologue, if possible.
2000-07-10 14:43:37 +00:00
Andrew Cagney f7b9e9fc07 More mult-arch conversions: IEEE_FLOAT, SKIP_PROLOGUE,
SAVED_PC_AFTER_CALL, DECR_PC_AFTER_BREAK, BREAKPOINT_FROM_PC,
INNER_THAN.
2000-07-07 09:19:03 +00:00
Mark Kettenis f19ebbbc84 * config/i386/tm-linux.h: Add longjmp support.
(JB_ELEMENT_SIZE, JB_PC): New defines.
(GET_LONGJMP_TARGET): Define.
(get_longjmp_target): Add prototype.
2000-07-07 00:30:35 +00:00
Andrew Cagney 90f59acafb Keep NATDEPFILES on a single line. 2000-07-05 11:11:58 +00:00
Nicholas Duffek 7a78ae4e6b * rs6000-tdep.c: Changes throughout for multi-arch 64-bit
support.  Incorporate most of tm-rs6000.h.
	(find_toc_address_hook): Rename to rs6000_find_toc_address_hook.
	(rs6000_set_host_arch_hook): Declare.
	(read_memory_addr): Define.
	(pop_frame): Rename to rs6000_pop_frame.
	(rs6000_pop_frame, rs6000_fix_call_dummy, rs6000_push_arguments,
	rs6000_frame_saved_pc, rs6000_frame_chain): Remove non-generic
	dummy frame handling.
	(branch_dest, rs6000_pop_frame, rs6000_skip_trampoline_code,
	rs6000_frame_saved_pc, frame_get_saved_regs,
	frame_initial_stack_address, rs6000_frame_chain,
	rs6000_convert_from_func_ptr_addr): Call read_memory_addr instead
	of read_memory_integer.
	(branch_dest, rs6000_pop_frame, rs6000_push_arguments,
	rs6000_skip_trampoline_code, rs6000_frame_saved_pc,
	frame_get_saved_regs, frame_initial_stack_address,
	rs6000_frame_chain): Replace 4 with TDEP->wordsize.
	(skip_prologue): Recognize some 64-bit stack adjustments.
	(push_dummy_frame, pop_dummy_frame, set_processor,
	show_processor): Delete.
	(frame_get_saved_regs): Manipulate saved register addresses using
	CORE_ADDR instead of int.
	(rs6000_create_inferior): New function.
	(register_names_*[]): Change to struct reg registers_*[].
	(variants[]): Assimilate into multi-arch approach.
	(register_names_*[], variants[]): Refer to pre-PowerPC
	architectures as POWER instead of RS6000.
	* rs6000-nat.c: Ubiquitous changes for 64-bit support.
	(vmap_secs, xcoff_relocate_symtab): Cast addresses
	to unsigned long to avoid sign-extension errors.
	(set_host_arch): New function.
	(xcoff_relocate_symtab): Try disabling usleep(36000) workaround.
	(rs6000_core_fns): Use new bfd_target_xcoff_flavour.
	(_initialize_core_rs6000): Initialize rs6000_set_host_arch_hook.
	* symfile.c (find_sym_fns): Remove special xcoff kludge.
	* xcoffread.c (secnum_to_bfd_section): Initialize args.objfile.
	(process_linenos): Query line struct size from coff
	backend instead of using compile-time constant.
	(enter_line_range): Likewise.
	(read_xcoff_symtab): Pass "XCOFF64" instead of "XCOFF" to
	record_debugformat() if appropriate.
	(process_xcoff_symbol): Access symbol addresses using
	SYMBOL_VALUE_ADDRESS instead of SYMBOL_VALUE.
	(read_symbol_lineno): Retrieve XCOFF64 symbol names from strtbl.
	(scan_xcoff_symtab): Likewise.  Query syment struct size from
	coff backend instead of using compile-time constant.
	(xcoff_sym_fns): Set flavour to bfd_target_xcoff_flavour.
	* Makefile.in (INTERNAL_LDFLAGS): Add $(MH_LDFLAGS) to list of flags
	that this Makefile variable get set to.  (From Kevin Buettner.)
	* config/powerpc/aix.mh (MH_LDFLAGS): Add linker flags so that
	the TOC doesn't overflow.  (From Kevin Buettner.)
	* config/powerpc/tm-ppc-aix.h: Move config decisions to
	multi-arched rs6000-tdep.c.
	* config/rs6000/tm-rs6000.h: Likewise.
	(GDB_MULTI_ARCH): Define.
	(skip_trampoline_code): Rename to rs6000_skip_trampoline_code.
	(is_magic_function_pointer): Replace with
	rs6000_convert_from_func_ptr_addr.
	(TARGET_CREATE_INFERIOR_HOOK): Define.
	(find_toc_address_hook): Rename to rs6000_find_toc_address_hook.
	(rs6000_set_host_arch_hook): Declare.
	* config/rs6000/nm-rs6000.h (CHILD_XFER_MEMORY): Define.
2000-06-16 21:02:22 +00:00
Andrew Cagney 80b756a06c ser-tcp.o moved to configure.in. 2000-06-12 06:34:32 +00:00
Andrew Cagney aff38e615a Set SER_HARDWIRE using autoconf instead of via XDEPFILES. Include
ser-tcp.o by default.
2000-06-12 06:09:06 +00:00
Andrew Cagney 5213ab0692 Multi-arch GDB_TARGET_IS_MIPS64. 2000-06-12 04:35:39 +00:00
Mark Kettenis a7769679c2 * config/i386/tm-i386.h: Add forward declaration of `struct value'.
(FIX_CALL_DUMMY): Redefined to call i386_fix_call_dummy.
(i386_fix_call_dummy): Add prototype.
* i386-tdep.c (i386_fix_call_dummy): New function based on the
code from the old FIX_CALL_DUMMY macro.
2000-06-12 01:44:35 +00:00
Fernando Nasser 4acafb8638 2000-06-08 Fernando Nasser <fnasser@cygnus.com>
* config/i386/tm-embed.h: New file.  Specific for embedded targets
        like i386-elf, i386-coff and i386-aout.
        * config/i386/embed.mt (): Specify tm-embed.h instead of the System V
        header file.
2000-06-09 23:32:48 +00:00
Kevin Buettner 364693ab23 Define U_REGS_OFFSET. 2000-06-09 18:21:59 +00:00
Andrew Cagney bf64bfd6ba MIPS is always multi-arch enabled. 2000-06-08 06:35:40 +00:00
Andrew Cagney b0069a1775 Delete MIPS_DEFAULT_FPU from config/mips/*.h 2000-06-08 04:51:10 +00:00
Andrew Cagney 1ba607adba Use config.bfd to determine the default architecture and byte order.
Flush all BYTE_ORDER_DEFAULT macros from mips. Can rely on BFD's value.
2000-06-08 04:00:56 +00:00
Andrew Cagney 69c49926bb Mips is always TARGET_BYTE_ORDER_SELECTABLE_P 1. 2000-06-06 07:00:45 +00:00
Andrew Cagney ef31c1ea0e Delete TARGET_MONITOR_PROMPT. 2000-06-06 06:19:57 +00:00
Andrew Cagney ac2e2ef7e2 Add host_pointer_to_address() and address_to_host_pointer(). Add
signed_pointer_to_address() etc.  Rename generic_pointer_to_address()
to unsigned_pointer_to_address() etc.
2000-06-04 13:46:37 +00:00
Kevin Buettner 507f3c78fb Eliminate PARAMS from function pointer declarations. 2000-06-04 00:41:10 +00:00
Christopher Faylor 450005e7c2 * win32-nat.c (safe_symbol_file_add_cleanup): Ensure that gdb_stderr is flushed
before deleting and restoring it.
(safe_symbol_file_add): Ensure that gdb_stderr is flushed before reassigning
it.
(handle_load_dll): Split into two functions so that WFI can handle shared
library events.
(child_solib_loaded_library_pathname): New function.
(child_clear_solibs): New function.  Clears shared library list.
(child_solib_add): New function.  Adds shared library symbols.
(dll_symbol_command): New function.  Handles "dll-symbol" command.
(info_dll_command): New function.  Handles info "sharedlibrary" command.
(handle_exceptions): Eliminate 'ignore_trap' argument.
(get_child_debug_event): Eliminate two arguments.  Return "pid" when
appropriate.  Break out on most events to allow WFI to handle stuff.
(child_wait): Accomodate get_child_debug_event changes.
(child_attach): Clear thread list and list of loaded dlls.
(child_create_inferior): Clear list of loaded dlls.  Use wait_for_inferior in a
loop to look for first "trap".
(child_resume): Avoid accessing a possibly-freed thread pointer.
(_initialize_inftarg): Add "dll-symbols", "sharedlibrary", and "info
dll", and "info sharedlibrary" commands.
* config/i386/tm-cygwin.h: Add some shared library (aka DLL) hooks.
2000-06-04 00:28:17 +00:00
J.T. Conklin b0cb5b8de2 * configure.tgt: Add pattern for i[3456]86-*-netbsdelf*.
* config/i386/nbsdelf.mt: New file.
* config/i386/tm-nbsdelf.h: New file.

* config/i386/tm-nbsd.h: change include of tm-nbsd.h to
the more explicit config/tm-nbsd.h.
2000-06-02 23:15:28 +00:00
Mark Kettenis 1b3739704e * config/alpha/nm-fbsd.h (CANNOT_STEP_BREAKPOINT): Define. 2000-06-01 22:29:37 +00:00
J.T. Conklin ca04024df1 * configure.host: Add patterns for i[3456]86-*-netbsdaout*
and i[3456]86-*-netbsdelf*.
* config/i386/nm-nbsdelf.h: New file.
* config/i386/nbsdelf.mh: New file.

* config/i386/nm-nbsd.h: change include of nm-nbsd.h to
the more explicit config/nm-nbsd.h.
* config/i386/tm-nbsd.h: change include of tm-i386bsd.h to
tm-i386.h.
(SIGTRAMP_START, SIGTRAMP_END, SIGCONTEXT_PC_OFFSET): Define.
-------------------------------------------------------------------
2000-06-01 04:13:36 +00:00
Mark Kettenis 448628fe90 Add support for FreeBSD/Alpha.
* alphabsd-nat.c, config/alpha/fbsd.mh, config/alpha/fbsd.mt,
config/alpha/nm-fbsd.h, config/alpha/tm-fbsd.h,
config/alpha/xm-fbsd.h: New files.
2000-05-31 20:26:46 +00:00
Andrew Cagney 0a415da9b7 Move/rename GDB_GREGSET_T definitions for solaris 2. 2000-05-30 00:03:57 +00:00
Kevin Buettner 8f0b51af07 Fix GDB_GREGSET_T, GDB_FPREGSET_T typos. 2000-05-28 16:26:17 +00:00
Kevin Buettner a14ed312fd PARAMS removal. 2000-05-28 01:12:42 +00:00
Michael Snyder c60c0f5f88 2000-05-26 Michael Snyder <msnyder@seadog.cygnus.com>
* gregset.h: New file.  Typedefs for gdb_gregset_t and
        gdb_fpregset_t, prototypes for supply_gregset and friends.
        * procfs.c: Include gregset.h.  Delete local prototypes for
        supply_gregset etc., and local typedef gdb_gregset_t etc.
        * sol-thread.c: Include gregset.h, delete local prototypes,
        add appropriate casts to gdb_gregset_t.
        * uw-thread.c, lin-thread.c, core-sol2.c, core-regset.c,
        sparc-tdep.c, ptx4-nat.c, ppc-linux-nat.c, mipsv4-nat.c,
        m88k-nat.c, m68klinux-nat.c, m68k-tdep.c, irix5-nat.c,
        irix4-nat.c, ia64-linux-nat.c, i386v4-nat.c, cxux-nat.c,
        arm-linux-nat.c, alpha-nat.c: Include gregset.h.
        * config/nm-linux.h: Define GDB_GREGSET_T, GDB_FPREGET_T.
        * config/sparc/tm-sun4sol2.h: Ditto.
2000-05-26 23:22:41 +00:00
Scott Bambrough a52e6aac8a Replace SKIP_SOLIB_RESOLVER stub with something that works.
2000-05-25  Scott Bambrough <scottb@netwinder.org>

	* arm-linux-tdep.c (find_minsym_and_objfile): New.
	(skip_hurd_resolver): New.
	(arm_linux_skip_solib_resolver): New.
	(arm_skip_solib_resolver): Removed.

	* config/arm/tm-linux.h (SKIP_SOLIB_RESOLVER): Changed to use
	arm_linux_skip_solib_resolver.
2000-05-25 18:24:33 +00:00
Andrew Cagney 85ff3c5244 File rename tweeks. 2000-05-25 03:57:48 +00:00
Mark Kettenis e6031aeb52 Add support for FreeBSD/i386 ELF.
* i386bsd-nat.c: New file.
* config/i386/tm-fbsd.h (HAVE_I387_REGS): Define.
Include "i386/tm-i386.h" instead of "i386/tm-i386b.h".
(NUM_REGS): Remove redefinition.
(USE_STRUCT_CONVENTION): Define.
(i386_float_info): Remove prototype.
(FLOAT_INFO): Remove define.
(JB_ELEMENT_SIZE): Define to 4.
(JB_PC): Define to 0.
(GET_LONGJMP_TARGET): Define.
(SIGTRAMP_START, SIGTRAMP_END): Define.
(SIGCONTEXT_PC_OFFSET): Define.
(IN_SOLIB_CALL_TRAMPOLINE): Only define if !SVR4_SHARED_LIBS
* config/i386/nm-fbsd.h (PTRACE_ARG3_TYPE): Define to caddr_t.
(FETCH_INFERIOR_REGISTERS): Define.
(ATTACH_DETACH): Define.
(kernel_u_size): Remove PARAMS.
(register_u_addr): Use CORE_ADDR in prototype where appropriate.
Remove PARAMS.
(SVR4_SHARED_LIBS) [FREEBSD_ELF || __ELF__ && !FREEBSD_AOUT]:
Define.
[SVR4_SHARED_LIBS]: Include "elf/common.h".
Only define aliases for struct members from <link.h> if
!SVR4_SHARED_LIBS.
* config/i386/xm-fbsd.h: New file.
* config/i386/fbsd.mt (TDEPFILES): Remove solib.o.
* config/i386/fbsd.mh (NATDEPFILES): Remove i386b-nat.o.  Add
core-regset.o i387-nat.o i386bsd-nat.o.
2000-05-24 22:32:58 +00:00
Michael Snyder 96dd789021 2000-05-17 Michael Snyder <msnyder@seadog.cygnus.com>
* config/sparc/tm-sun4sol2.h: Turn on multi-arch.
      sparc-tdep.c (gdb_print_insn_sparc): Remove temporary multi-arch hack.
2000-05-24 17:13:47 +00:00
J.T. Conklin 9cebe72f24 * config/i386/nbsd.mt (TDEPFILES): Move solib.o from here...
* config/i386/nbsd.mh (NATDEPFILES): ...to here.
* config/m68k/nbsd.mt (TDEPFILES): Move solib.o from here...
* config/m68k/nbsd.mh (NATDEPFILES): ...to here.
* config/ns32k/nbsd.mt (TDEPFILES): Move solib.o from here...
* config/ns32k/nbsd.mh (NATDEPFILES): ...to here.

* config/powerpc/nbsd.mt (GDBSERVER_DEPFILES): Add low-nbsd.o.
* configure.tgt (powerpc-*-netbsd*): add gdbserver to configdirs.
* gdbserver/low-nbsd.c (initialize_arch): Define for PPC.
(fetch_inferior_registers): Likewise.
(store_inferior_registers): Likewise.

* gdbserver/low-nbsd.c (fetch_inferior_registers): Handle X86
floating point registers.
(store_inferior_registers): Likewise.
-------------------------------------------------------------------
2000-05-24 04:16:28 +00:00
Alexandre Oliva 863e0fe46a * config/sparc/nm-linux.h: Include config/nm-linux.h.
* config/powerpc/nm-linux.h: Likewise.
2000-05-23 20:34:09 +00:00
J.T. Conklin e42180d7b4 * configure.host, configure.tgt (powerpc-*-netbsd*): New entry.
* config/powerpc/nbsd.mh, config/powerpc/nbsd.mt,
config/powerpc/tm-nbsd.h, config/powerpc/nm-nbsd.h,
config/powerpc/xm-nbsd.h: New files.
2000-05-18 23:43:58 +00:00
Michael Snyder aca52a9bcc 2000-05-12 Michael Snyder <msnyder@.cygnus.com>
* config/i386/tm-i386sol2.h (COERCE_FLOAT_TO_DOUBLE): Define.
2000-05-17 17:09:27 +00:00
Eli Zaretskii 74b2d06784 * gdb/config/djgpp/README: Fine-tune installation instructions
based on user reports.
2000-05-17 11:49:53 +00:00
Andrew Cagney e2bdc01eaa Change v850 break-point instruction to loop. Get around lack of 16
bit breakpoint.
2000-05-17 06:51:28 +00:00
Joern Rennecke 63978407cb sh-dsp support, simulator speedup by using host byte order:
sim:
	* Makefile.in (interp.o): Depends on ppi.c .
	(ppi.c): New rule.
	* gencode.c (printonmatch, think, genopc): Deleted.
	(MAX_NR_STUFF): Now 42.
	(tab): Add SH-DSP CPU instructions.
	Amalgamate ldc / stc / lds / sts instructions with similar
	bit patterns.  Fix opcodes of stc Rm_BANK,@-<REG_N>.
	Fix semantics of lds.l @<REG_N>+,MACH (no sign extend).
	(movsxy_tab): New array.
	For movs, change MMMM field to GGGG, and mmmm field to MMMM.
	Added entries for movx, movy and parallel processing insns.
	(ppi_tab): New array.
	(qfunc): Stabilize sort.
	(expand_opcode): Handle [01][01]NN, [01][01]xx and [01][01]yy.
	Handle 'M', 'G' 's' 'X', 'a', 'Y' and 'A'.
	(dumptable): Now takes three arguments.  Changed all callers.
	Emit just one contigous jump table.
	(filltable): Now takes an argument.  Changed all callers.
	Make index static.
	(ppi_moves, expand_ppi_code, ppi_filltable, ppi_gensim): New functions.
	(gensim_caselist): New function, broken out of gensim.
	Handle opcode fields 'x', 'y', 's', 'M', 'G', 'X', 'a', and 'Y'.
	Handle ref '9'.
	(gensim): Handle 'N' in code field and '8' in refs field.
	Call gensim_caselist - twice.
	(ppi_index): New static variable.
	(main): Unsupport default action.
	Add dsp support for -x / -s option.  Add -p option.
	* interp.c (sh_jump_table, sh_dsp_table, ppi_table): Declare.
	(saved_state_type): Rearrange to allow amalgamated ldc / stc /
	lds / sts to work efficiently.
	(target_dsp): New static variable.
	(GBR, VBR, SSR, SPC, MACH, MACL): Reflect saved_state_type change.
	(FPUL, Rn_BANK, SET_Rn_BANK, M, Q, S, T, SR_BL, SR_RB): Likewise.
	(SR_MD, SR_RC, SET_SR_BIT, GET_SR, SET_RC, GET_FPSCR): Likewise.
	(RS, RE, MOD, MOD_ME, DSP_R): Likewise.
	(set_fpscr1): Likewise.  Use target_dsp to check for dsp.
	(MOD_MSi, SIG_BUS_FETCH): Deleted.
	(CREG, SREG, PR, SR_MASK_DMY, SR_MASK_DMX, SR_DMY): New macros.
	(SR_DMX, DSR, MOD_DELTA, GET_DSP_GRD): Likewise.
	(SET_MOD): Reflect saved_state_type change.  Set MOD_DELTA instead
	of MOD_MS, and encode SR_DMY / SR_DMX into high word of MOD_ME.
	(set_sr): Reflect saved_state_type change.  Fix SR_RB handling.
	Use SET_MOD.
	(MA, L, TL, TB): Now controlled by ACE_FAST.
	(SEXT32): Just cast to int.
	(SIGN32): Fixed to only shift by 31.
	(CHECK_INSN_PTR): SIGBUS at insn fetch now represented by insn_end 0.
	(ppi_insn): Declare.
	(ppi.c): Include.
	(init_dsp): Set target_dsp.  When it changes, switch end of
	sh_jump_table with sh_dsp_table.
	(sim_resume) Don't declare sh_jump_table0.  Use sh_jump_table instead.
	Don't Declare PR if it's #defined.
	Fix single-stepping (Was broken in Mar  6 16:59:10 patch).
	(sim_store_register, sim_read_register): Translate accesses to
	reflect saved_state_type change.

	* interp.c (set_sr): Set sr.
	(SET_RC, MOD, MOD_MS, MOD_ME, SET_MOD, MOD_MS, MOD_ME): New macros.
	(set_fpscr1): Don't bank-switch fpu registers when simulating sh-dsp.
	(DSP_R): Fix definition.
	(sim_resume): Remove outdated SET_SR use.

	* interp.c (saved_state): New members for struct member asregs:
	rs, re, insn_end, xram_start, yram_start.
	(struct loop_bounds): New struct.
	(SKIP_INSN): New macro.
	(get_loop_bounds): New function.
	(endianw): Renamed to global_endianw.
	(maskw): negated bits.
	(PC): Now insn_ptr.
	(SR_MASK_RC, SR_RC_INCREMENT, SR_RC, RAISE_EXCEPTION): New macros.
	(RS, RE, DSP_R, DSP_GRD, A1, A0, X0, X1, Y0, Y1, M0, A1G): Likewise.
	(M1, A0G, RIAT, PT2H, PH2T, SET_NIP, CHECK_INSN_PTR): Likewise.
	(SIG_BUS_FETCH): Likewise
	(raise_exception, riat_fast): New functions.
	(raise_buserror, sim_stop): Use raise_exception.
	(PROCESS_SPECIAL_ADDRESS): Use xram_start / yram_start.
	(BUSERROR, WRITE_BUSERROR, READ_BUSERROR):
	Reverse sense of mask argument.
	(FP_OP, set_dr): Use RAISE_EXCEPTION.
	(wlat_fast, wwat_fast, wbat_fast, rlat_fast, rwat_fast, rbat_fast):
	Declare.  Remove redundant masking.
	(wwat_fast, rwat_fast): Add argument endianw.  Changed callers.
	(MA): Updated for change pc -> PC.
	(Delay_Slot): Use RIAT.
	(empty): Deleted.
	(trap): Remove argument little_endian.  Add argument endianw.
	Changed all callers.  Use raise_exception.
	(macw): Add argument endainw.  Changed all callers.
	(init_dsp): New function, extended after broken out of init_pointers.
	(sim_resume): Replace pc with insn_ptr.  Replace little_endian with
	endianw.  Replace nia with nip.  Reverse sense of maskb / maskw /
	maskl.  Implement logic for zero-overhead loops.  Don't try to
	interpret garbage when getting a SIGBUS at insn fetch.
	(sim_open): Call init_dsp.
	* gencode.c (tab): Use SET_NIP instead of nia = .  Use PH2T / PT2H /
	RAISE_EXCEPTION where appropriate.
	Add extra cycles for brai, braf , bsr, bsrf, jmp, jsr.

	* interp.c (sim_store_register, sim_fetch_register):
	Do proper endianness switch.

	* interp.c (saved_state_type): New members for struct member asregs:
	xymem_select, xmem, ymem, xmem_offset, ymem_offset.
	(special_address): Delete.
	(BUSERROR): Now a two-argument predicate.
	(PROCESS_SPECIAL_ADDRESS, WRITE_BUSERROR, READ_BUSERROR): New macros.
	(wlat_little, wwat_little, wbat_any, wlat_big, wwat_big): Delete.
	(process_wlat_addr, process_wwat_addr): New functions.
	(process_wbat_addr, process_rlat_addr, process_rwat_addr): Likewise.
	(process_rbat_addr): Likewise.
	(wlat_fast, wwat_fast, wbat_fast): Use WRITE_BUSERROR.
	(rlat_little, rwat_little, rbat_any, rlat_big, rwat_big): Delete.
	(rlat_fast, rwat_fast, rbat_fast): Use READ_BUSERROR.
	(RWAT, RLAT, RBAT, WWAT, WLAT, WBAT): Delete SLOW versions.
	(do_rdat, trap): Delete SLOW code.
	(SEXT32, SIGN32): New macros.
	(swap, swap16): Now integer in - integer out.  Changed all callers.
	(strswaplen, strnswap): Delete SLOW versions.
	(init_pointers): Initialize dsp memory selection (preliminary).
	(sim_store_register, sim_fetch_register): Use swap instead of
	big / little endian read / write functions.

	* interp.c (maskl): Deleted.
	(endianw, endianb): New variables.
	(special_address): Now inline.
	(bp_holder): Put raising of buserror there, rename to:
	(raise_buserror).
	(BUSERROR): Now yields a value.  Changed all users.
	(wbat_big): Delete.
	(wlat_fast, wwat_fast, wbat_fast): New functions.
	(rlat_fast, rwat_fast, rbat_fast): Likewise.
	(RWAT, RLAT, RBAT, WWAT, WLAT, WBAT): Use new functions.
	(do_rdat, do_wdat): Likewise.  Take maskl argument instead of
	little_endian one.  Changed caller macros.
	(swap, swap16): Use w[rw]lat_big / w[rw]lat_little directly.
	(strswaplen, strnswap): New functions.
	(trap): Use them to fix up endian mismatches;
	disable SYS_execve and SYS_execv; fix double address translation for
	SYS_pipe and SYS_stat.
	(sym_write, sym_read): Add endianness translation.
	(sym_store_register, sym_fetch_register): Add maskl local variable.
	(sim_open): Set endianw and endianb.

gdb:

	* sh-tdep.c (sh_dsp_reg_names, sh3_dsp_reg_names): New arrays.
	(sh_processor_type_table): Add entries for bfd_mach_sh_dsp and
	 bfd_mach_sh3_dsp.
	(sh_show_regs): Floating point registers are called fr0-fr15.
	For sh4, display fpul, fpscr and fr0-fr15 / dr0-dr14 as appropriate.
	Handle sh-dsp and sh3-dsp.
	config/sh/tm-sh.h (REGISTER_VIRTUAL_TYPE): sh-dsp / sh3-dsp
	don't have floating point registers.
	(DSR_REGNUM, A0G_REGNUM, A0_REGNUM, A1G_REGNUM, A1_REGNUM): Define.
	(M0_REGNUM, M1_REGNUM, X0_REGNUM, X1_REGNUM, Y0_REGNUM): Likewise.
	(Y1_REGNUM, MOD_REGNUM, RS_REGNUM, RE_REGNUM, R0B_REGNUM): Likewise.
2000-05-15 21:12:42 +00:00
Andrew Cagney 0dadbba0df Add preliminary support for IRIX's n32 abi to the MIPS's multi-arch code. 2000-05-11 03:40:08 +00:00
Michael Snyder 5af923b0f0 2000-05-10 Michael Snyder <msnyder@seadog.cygnus.com>
Make Sparc a Multi-Arch target.  Discard PARAMS macro (require ANSI).
	* sparc-tdep.c: include arch-utils.h.
	(SPARC_HAS_FPU, FP_REGISTER_BYTES, FP_MAX_REG NUM, SPARC_INTREG_SIZE,
	DUMMY_REG_SAVE_OFFSET): provide multi-arch-compatible definitions.
	(GDB_TARGET_IS_SPARC64): make into a runtime test.
	(struct frame_extra_info): Define, use instead of the macro.
	(Many places): Use alloca instead of statically allocated buffers
	that depend on a multi-arch variable such as MAX_REGISTER_RAW_SIZE.
	(sparc_extract_struct_value_address): Accept a pointer arg instead
	of an array sized by REGISTER_BYTES.
	(examine_prologue): Accept a pointer to an array of CORE_ADDR,
	instead of the defunct struct frame_saved_regs.  Recognize new
	Sparc64 store instructions as part of the prologue.  Ignore the
	destination of a frame store when parsing the prologue (so long
	as it's on the stack).
	(sparc_push_dummy_frame): Fix incorrect buffer offset for PSTATE.
	(sparc_frame_find_saved_regs): Accept a ptr to an array of CORE_ADDR
	instead of the defunct struct frame_saved_regs.
	(supply_gregset): Discard unnecessary 'zerobuf': just send NULL to
	supply_register.  Provide 4-byte offset to compensate for diff
	between size of the prgreg_t elements on a 64-bit host and size
	of the registers for a 32-bit target.  Fill all inaccessible regs
	with zero so they won't keep being requested again and again.
	(fill_gregset): Handle 32/64 size difference between registers
	and prgreg_t.  Handle as many new 64-bit regs as possible.
	(supply_fpregset, fill_fpregset): Attempt to handle 64-bit world.
	(sparc_push_arguments): Rename to sparc32_push_arguments.
	Copy arguments into registers as well as onto stack, so that the
	CALL_DUMMY (code pushed onto the target stack) is not required.
	(sparc_extract_return_value): Rename to sparc32_extract_return_value.
	(sparc_store_return_value): Use memset instead of bzero.
	Use write_register_gen instead of write_register_bytes.
	(sparclet_store_return_value): New function.
	(_initialize_sparc_tdep): Call register_gdbarch_init to activate
	the gdbarch multi-architecture system.
	(sp64_push_arguments): Rename to sparc64_push_arguments.
	Extend to store arguments in general registers as well as on stack.
	(sparc64_extract_return_value): Rename to sp64_extract_return_value.
	Use as a private function, to be called by the new external function
	sparc64_extract_return_value.
	(sparclet_extract_return_value): New function.
	(sparc32_stack_align, sparc64_stack_align, sparc32_register_name,
	sparc64_register_name, sparc_print_extra_frame_info,
	sparclite_register_name, sparclet_register_name,
	sparc_push_return_address, sparc64_use_struct_convention,
	sparc32_store_struct_return, sparc64_store_struct_return,
	sparc32_register_virtual_type, sparc64_register_virtual_type,
	sparc32_register_size, sparc64_register_size,
	sparc32_register_byte, sparc64_register_byte,
	sparc_gdbarch_skip_prologue, sparc_convert_to_virtual,
	sparc_convert_to_raw, sparc_frame_init_saved_regs,
	sparc_frame_address, sparc_gdbarch_fix_call_dummy,
	sparc_coerce_float_to_double, sparc_call_dummy_address,
	sparc_y_regnum, sparc_reg_struct_has_addr, sparc_intreg_size,
	sparc_return_value_on_stack): New functions supporting multi-arch.
	(sparc_gdbarch_init): New function; initialize multi-arch.
	(struct gdbarch_tdep): Define, use for private multi-arch data.
	* config/sparc/tm-sparc.h: Move definitions around, enclose with
	#ifdef GDB_MULTI_ARCH tests, provide some multi-arch alternate
	definitions.  Add enums for register names, to help debugging gdb.
	This header file must work for non-multi-arch and for multi-arch.
	* config/sparc/tm-sp64.h: Add GDB_MULTI_ARCH configuration.  Also add
	AT_ENTRY_POINT definitions for CALL_DUMMY, for non-multi-arch case.
	Define GDB_MULTI_ARCH.
	* config/sparc/tm-sparclet.h: Add GDB_MULTI_ARCH configuration.
	Do not define GDB_MULTI_ARCH (bfd does not correctly identify target).
	* config/sparc/tm-sparclite.h: Ditto.
	* config/sparc/tm-sun4sol2.h: Define GDB_MULTI_ARCH.
	* sparclet-rom.c (sparclet_regnames): Initialize explicitly, to
	avoid using deprecated REGISTER_NAMES macro.
	* Makefile.in: Let sparc-tdep.c depend on arch-utils.h.
2000-05-10 20:07:25 +00:00
Eli Zaretskii ed0a91a5fa * djunpack.bat: Change the Sed script to replace @V@ in fnchange.lst
with the version name.

	* config/djgpp/djconfig.sh: Use more warning switches.

	* config/djgpp/fnchange.lst: Replace the leading gdb-0222 with the
        @V@ placebo.
2000-05-08 15:06:27 +00:00
Andrew Cagney d929b26ff1 Move some of the MIPS n32 ABI configuration options into the mips
multi-arch vector.
2000-05-08 02:53:04 +00:00
Andrew Cagney 70d1b0e820 Remove more defunct macros. 2000-05-04 14:16:51 +00:00
Andrew Cagney 6878c38321 Cleanups. Zap unused macros. 2000-05-04 11:10:22 +00:00
Stan Shebs 5330533d30 Remove obsolete Gould configuration:
* configure.host, configure.tgt: Remove Gould configs.
	* Makefile.in: Remove Gould-related actions.
	* gould-xdep.c, gould-tdep.c, config/gould/*: Remove files.
	* NEWS: Mention removal.
2000-05-01 16:12:10 +00:00
Mark Kettenis a6abb2c0e9 2000-04-30 Mark Kettenis <kettenis@gnu.org>
Fix single-stepping out of signal trampolines.
	* config/i386/nm-linux.h (CHILD_RESUME): Define.
	* i386-linux-nat.c (child_resume): New function.
2000-04-30 09:34:13 +00:00
Andrew Cagney 2b5fe715f5 Cast function to correct type. 2000-04-28 03:10:44 +00:00
Kevin Buettner 146bcf0cb0 Add mapping ia64-linux-nat.c -> ia64linux-nat.c. 2000-04-26 21:27:35 +00:00
Kevin Buettner 244bc1085b Handle signal handler frames and call dummy frames. 2000-04-25 06:36:52 +00:00
Eli Zaretskii 6cafa39f7c * djunpack.bat: New file.
* config/djgpp/README: Explain how to unpack using djunpack.bat.
2000-04-23 07:23:05 +00:00
Andrew Cagney 23964bcd46 * d10v-tdep.c (d10v_gdbarch_init): Initialize stack_align.
(d10v_stack_align): Make static.
* config/d10v/tm-d10v.h (STACK_ALIGN): Delete.
2000-04-21 04:21:21 +00:00
Christopher Faylor 61c37cee5d * wince-stub.c (FREE): New macro.
(mempool): Just free any buffer prior to reuse.  Don't bother with realloc.
(flag_single_step): New function.
(skip_message): Detect "helpful" Windows CE messages and skip sending them to
the host.
(wait_for_debug_event): Use skip_message to avoid sending debug messages to the
host.
(dispatch): Prelimary implementation of single step detection.
* wince.c: Rework SH single stepping code to be more consistent with other
wince targets.
(handle_output_debug_string): Allow first chance exceptions to come through
since they seem to be all that we get on some versions of Windows CE.
(check_for_step): New function, conditionally compiled based on target.
(regptr): Delete obsolete function.
(handle_exception): Detect illegal instructions.
(get_child_debug_event): Return success only if event code matches target.
(child_create_inferior): Reflect change to get_child_debug_event arguments.
2000-04-21 03:04:35 +00:00
Scott Bambrough 41c49b06c4 Changes to support core files and linux threads.
2000-04-20  Scott Bambrough <scottb@netwinder.org>

	* arm-linux-nat.c (PIDGET, TIDGET): New.
	(get_thread_id, GET_THREAD_ID): New.
	(fetch_nwfpe_register, store_nwfpe_register): New.
	(fetch_register, store_register): New.
	(fetch_fpregister, store_fpregister): New.
	(fill_gregset, supply_gregset): New.
	(fill_fpregset, supply_fpregset): New.
	(fetch_fpregs): Modified to use thread id's.
	(store_fpregs): Modified to use thread id's and
	fetch_nwfpe_register.
	(fetch_regs): Modified to use thread id's.
	(store_regs): Modified to use thread id's.
	(fetch_inferior_registers): Modified to handle single register
	fetches.
	(store_inferior_registers): Modified to handle single register
	stores.
	(arm_linux_register_u_addr): Removed.

	* configure.tgt: Added gdbserver to configdirs for arm*-*-linux*.

	* config/arm/linux.mh
	(NATDEPFILES): Removed core-aout.o.  Added core-regset.o.
	(LOADLIBES): Define.

	* config/arm/nm-linux.h: Include config/nm-linux.h.
	(ATTACH_DETACH): Removed.  Defined in config/nm-linux.h.
	(REGISTER_U_ADDR): Removed.
	(SVR4_SHARED_LIBS): Removed.  Defined in config/nm-linux.h.
	(#include "solib.h"): Removed.  Included via config/nm-linux.h.
2000-04-20 21:13:19 +00:00
Eli Zaretskii 6c9d75b842 * config/djgpp/config.sed: Fix the lines which edit clean: and
uninstall-info: targets.
2000-04-16 08:16:03 +00:00
Jim Blandy 7355ddbace Bring IEEE_FLOAT under gdbarch's control.
* gdbarch.sh (IEEE_FLOAT): New entry.
* gdbarch.c, gdbarch.h: Regenerated.
* valprint.c (IEEE_FLOAT): Provide a default #definition for this.
(print_floating): Use IEEE_FLOAT as if it were an expression; use
the code specific to IEEE-format numbers whenever the value of
IEEE_FLOAT is non-zero.
* config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
config/arc/tm-arc.h, config/arm/tm-arm.h, config/fr30/tm-fr30.h,
config/h8300/tm-h8300.h, config/i386/tm-i386.h,
config/i960/tm-i960.h, config/m88k/tm-m88k.h,
config/mips/tm-mips.h, config/pa/tm-hppa.h,
config/sparc/tm-sparc.h, config/delta/tm-delta.h,
config/frv/tm-frv.h (IEEE_FLOAT): For all ports that #define
IEEE_FLOAT, make sure they give it the value (1).
2000-04-14 19:14:19 +00:00
Peter Schauer 14164c30b6 * config/i386/nm-i386sol2.h (CANNOT_STEP_HW_WATCHPOINTS): Define.
* config/i386/tm-i386sol2.h (HAVE_I387_REGS):  Define.
	* i386v4-nat.c (supply_fpregset, fill_fpregset):  Add code
	to handle floating point registers if NUM_FREGS is not zero.
2000-04-13 18:11:41 +00:00
Kevin Buettner acf7b9e14f IA-64 watchpoint support. 2000-04-13 02:18:13 +00:00
Scott Bambrough 134e61c4a7 2000-04-07 Scott Bambrough <scottb@netwinder.org>
* ChangeLog: Correct date on last entry.
	* arm-linux-tdep.c (arm_linux_push_arguments): New function.
	* config/arm/tm-linux: Redefined PUSH_ARGUMENTS for Linux.
	* config/arm/tm-embed: Fix build warning from redefinition of
	LOWEST_PC.
	* config/arm/tm-arm.h: Remove TARGET_BYTE_ORDER_SELECTABLE.
	* config/arm/tm-wince.h: Remove TARGET_BYTE_ORDER_SELECTABLE and
	TARGET_BYTE_ORDER.  Add TARGET_BYTE_ORDER_SELECTABLE_P to
	override default in tm-arm.h.  Use default target byte order
	from tm-arm.h.
2000-04-07 22:26:11 +00:00
Scott Bambrough 03e0fb3a47 2000-04-05 Scott Bambrough <scottb@netwinder.org>
* Makefile.in: Add dependency information for arm-linux-tdep.c.
	* config/djgpp/fnchange.lst: Add arm-linux-tdep.c, arm-linux-nat.c.
2000-04-07 22:04:01 +00:00
Nicholas Duffek 2f09097b73 * sol-thread.c (GET_LWP, GET_THREAD, BUILD_LWP, BUILD_THREAD):
Change to rely on PIDGET etc.
	* config/i386/nm-i386sol2.h (TARGET_HAS_WATCHPOINTS,
	TARGET_CAN_USE_HARDWARE_WATCHPOINT, HAVE_CONTINUABLE_WATCHPOINT,
	STOPPED_BY_WATCHPOINT, target_[insert/remove]_watchpoint):
	define.  Allow target to use procfs hardware watchpoints.
	* config/sparc/nm-sun4sol2.h: ditto.
	* config/i386/tm-i386sol2.h (PIDGET, TIDGET, MERGEPID): modify
	definitions to use 16 bits for the pid, 15 bits for the tid, and
	1 bit for the flag.
	* config/sparc/tm-sun4sol2.h: ditto.
	(SOFTWARE_SINGLE_STEP, SOFTWARE_SINGLE_STEP_P): undefine.
	* testsuite/gdb.threads/pthreads.exp (all_threads_running): Allow
	for more than 15 thread increments.
2000-04-07 01:14:10 +00:00
Scott Bambrough faf5f7ad8a Unable to build x86 hosted debugger for ARM Linux, due to missing target
dependencies.  Created ARM Linux specific arm-linux-tdep.c file and moved
missing code into it from arm-linux-nat.c.

2000-04-05  Scott Bambrough <scottb@netwinder.org>

	* arm-linux-tdep.c: New file.
	* arm-linux-nat.c (fetch_fpregs): Remove unused code.
	  (arm_get_longjmp_target): Moved it and all defines
	  it uses to arm-linux-tdep.c.
	  (arm_linux_extract_return_value): Moved to
	  arm-linux-tdep.c.
	* config/arm/linux.mt: Add arm-linux-tdep.c to TDEPFILES.
2000-04-05 15:38:05 +00:00
J.T. Conklin c1ed99b861 2000-04-03 J.T. Conklin <jtc@redback.com>
* config/i386/xm-nbsd.h (HOST_LONG_DOUBLE_FORMAT): Define.
2000-04-03 21:33:21 +00:00
Kevin Buettner d61e6540a1 IA-64 changes for linux threads 2000-04-03 19:10:50 +00:00
Eli Zaretskii 7f668b8658 * config/i386/xm-go32.h (HOST_LONG_DOUBLE_FORMAT): Define.
* config/i386/tm-go32.h (TARGET_LONG_DOUBLE_BIT): Remove
	definition (and use the common one in tm-i386.h).
	(REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Likewise.
	(I386_DJGPP_TARGET): Don't define, it's no longer required.
	(LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): Remove definition,
	i386-tdep.c defines it for all x86 targets.
	(LD_I387, HEX_LONG_DOUBLE_INPUT): Remove.

	* config/djgpp/fnchange.lst: Add i386-linux-tdep.c.

	* config/djgpp/djcheck.sh: Edit the copyright year out of the test
	results.  Fix editing of `main' arguments for non-GNU Sed.
2000-04-03 15:24:17 +00:00
Mark Kettenis b1ced0139c 2000-04-02 Mark Kettenis <kettenis@gnu.org>
* config/i386/xm-linux.h (HOST_LONG_DOUBLE_FORMAT): Define as
	&floatformat_i387_ext.
	* config/i386/xm-i386gnu.h (HOST_LONG_DOUBLE_FORMAT): Likewise.
2000-04-02 14:41:45 +00:00
Mark Kettenis 6e2e8c243b 2000-03-27 Mark Kettenis <kettenis@gnu.org>
* config/i386/tm-i386.h: Fix typo.  It is TARGET_LONG_DOUBLE_BIT
	instead of TARGET_LONG_DOUBLE_BITS.
	* config/i386/tm-i386mk.h: Likewise.
2000-03-26 22:10:59 +00:00
Mark Kettenis ac27f131b2 2000-03-26 Mark Kettenis <kettenis@gnu.org>
Provide `long double' support for most i386 targets.
	* config/i386/tm-i386.h (TARGET_LONG_DOUBLE_FORMAT): Define as
	&floatformat_i387_ext.
	(TARGET_LONG_DOUBLE_BITS): Define as 96.
	(REGISTER_VIRTUAL_TYPE): Change type for FPU registers to
	`builtin_type_long_double'.
	(REGISTER_CONVERT_TO_VIRTUAL): Call
	i386_register_convert_to_virtual.
	(REGISTER_CONVERT_TO_RAW): Call i386_register_convert_to_raw.
	(i387_to_double, double_to_i387): Remove prototypes.
	(i386_extract_return_value): Change prototype to match definition
	in i386-tdep.c.
	* config/i386/tm-i386mk.h (TARGET_LONG_DOUBLE_FORMAT): #undef.
	(TARGET_LONG_DOUBLE_BITS): #undef.
	* config/i386/tm-linux.h (TARGET_LONG_DOUBLE_BIT): Remove.
	[HAVE_LONG_DOUBLE && HOST_I386] (LD_I387): Remove.
	(i387_extract_floating, i387_store_floating): Remove prototypes.
	(TARGET_EXTRACT_FLOATING, TARGET_STORE_FLOATING): Remove.
	(REGISTER_CONVERT_TO_VIRTUAL, REGOISTER_CONVERT_TO_RAW): Remove.
	(REGISTER_VIRTUAL_TYPE): Remove.
	* i386-tdep.c (i386_register_convert_to_virtual): New function.
	(i386_register_convert_to_raw): New function.
	* i387-tdep.c [LD_I387] (i387_extract_floating): Remove.
	(i387_store_floating): Remove.
2000-03-26 21:21:50 +00:00
Christopher Faylor ddda03b202 * config/mips/tm-wince.h: Fix typo which caused include of tm-mips.h to be
inoperative.
2000-03-25 03:37:35 +00:00
Christopher Faylor 8227c82d1d * win32-nat.c: Back out special frame walking code. It was broken.
(handle_exception): Correctly identify an illegal instruction.
* config/tm-cygwin.h: Eliminate special frame handling.  Just use normal i386
handling.
2000-03-25 02:26:21 +00:00
J.T. Conklin 76a2220988 2000-03-24 J.T. Conklin <jtc@redback.com>
* i386/tm-nbsd.h (USE_STRUCT_CONVENTION): Define.
        * i386nbsd-nat.c (i386nbsd_use_struct_convention): New function.
        (fetch_core_registers): Read fp registers.
        (i386nbsd_core_fns, _initialize_i386nbsd_nat): Added.
2000-03-24 23:06:57 +00:00
Philippe De Muyter a1de33a8ee Fix copyright dates in last change. 2000-03-24 17:55:13 +00:00
Philippe De Muyter 89c3b6d36d * m68k-tdep.c (P_LINKL_FP, P_LINKW_FP): Macros renamed from P_LINK_L
and P_LINK_W.
	(P_PEA_FP, P_MOVL_SP_FP): New macros.
	(P_MOVL, P_LEAL, P_MOVML): Macros renamed from P_MOV_L, P_LEA_L and
	P_MOVM_L.
	(altos_skip_prologue, isi_skip_prologue): Use P_* macros, not octal
 	constants.
	(delta68_in_sigtramp): New function.
	(delta68_frame_args_address, delta68_frame_saved_pc): Ditto.
	(m68k_skip_prologue): Use P_* macros, not hex constants.
	(m68k_find_saved_regs): Do not expect a fixed sequence of register save
	instructions, but accept them in any order; use P_* macros, not octal
	or hex constants; recognize also `fmovemx to (fp + displacement)' and
 	`moveml to (fp + displacement)'.
	* m68/tm-delta68.h (IN_SIGTRAMP): New macro.
	(FRAME_SAVED_PC, FRAME_ARGS_ADDRESS): Ditto.
2000-03-24 11:12:11 +00:00
Mark Kettenis 1a309862a7 2000-03-22 Mark Kettenis <kettenis@gnu.org>
* config/i386/tm-i386aix.h (I386_AIX_TARGET): Remove.
	* config/i386/tm-linux.h (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM):
	Remove
	* i386-tdep.c (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): New defines.
	(i386_extract_return_value): Rewritten.  Correctly support all
	floating-point types and large integer types on targets that use
	the standard i386 GDB register layout and return floating-point
	values in the FPU.
2000-03-22 09:45:01 +00:00
J.T. Conklin 5f04ac3de9 2000-03-21 J.T. Conklin <jtc@redback.com>
* i386/nbsd.mh (NATDEPFILES): Change i386b-nat.o to i386nbsd-nat.o.
        * i386nbsd-nat.c: New file.

        * i386/tm-nbsd.h (NUM_REGS): Removed.
        (HAVE_I387_REGS): Defined.
        * i386/nm-nbsd.h (FLOAT_INFO): Removed.

        * tm-nbsd.h (IN_SOLIB_CALL_TRAMPOLINE): Define if not
        SVR4_SHARED_LIBS.
2000-03-22 01:36:31 +00:00
Kevin Buettner 16461d7d89 New files for IA-64 port. 2000-03-21 00:11:10 +00:00
Jim Blandy e7ee86a99a * i386-linux-nat.c: No need to #include "frame.h" any more.
(LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2, linux_sigtramp_code,
LINUX_SIGTRAMP_LEN, i386_linux_sigtramp_start,
LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1,
linux_rt_sigtramp_code, LINUX_RT_SIGTRAMP_LEN,
i386_linux_rt_sigtramp_start, i386_linux_in_sigtramp,
i386_linux_sigcontext_addr, LINUX_SIGCONTEXT_PC_OFFSET,
i386_linux_sigtramp_saved_pc, LINUX_SIGCONTEXT_SP_OFFSET,
i386_linux_sigtramp_saved_sp):	Deleted.  Folks rightly pointed
out that these are target-dependent, and useful in non-native
configurations.  Moved to...
* i386-linux-tdep.c: ... Here, a new file.
* Makefile.in (ALLDEPFILES): Add i386-linux-tdep.c.
(i386-linux-tdep.o): New rule.
(i386-linux-nat.o): We no longer depend on frame.h.
* config/i386/linux.mt (TDEPFILES): Add i386-linux-tdep.o.
2000-03-20 20:38:29 +00:00
Elena Zannoni 58a2c44a26 2000-03-04 Eli Zaretskii <eliz@is.elta.co.il>
* event-loop.c (top-level) [NO_FD_SET]: Deprecate this branch.
	Print an error at compile time if we are to use select, but FD_SET
	is not available.
	(SELECT_MASK, NBBY, FD_SETSIZE, NFDBITS, MASK_SIZE): Define only
	if HAVE_POLL is not defined and NO_FD_SET *is* defined.
	(create_file_handler) [!HAVE_POLL]: Use FD_SET and FD_CLR.
	(delete_file_handler) [!HAVE_POLL]: Use FD_CLR and FD_ISSET.
	(gdb_wait_for_event) [!HAVE_POLL]: Copy fd_set sets directly
	instead of using memcpy and memset.  Use FD_ISSET.

	* config/i386/xm-go32.h (fd_mask): Remove typedef.
2000-03-20 19:59:38 +00:00
Eli Zaretskii ded59a1e28 Support for building GDB with DJGPP, and running the test suite on
it:
	* config/djgpp/djconfig.sh: New file.
	* config/djgpp/config.sed: New file.
	* config/djgpp/README: New file.
	* config/djgpp/fnchange.lst: New file.
	* config/djgpp/djcheck.sh: New file.
2000-03-19 11:53:24 +00:00
Jim Blandy 11708b95a3 * i386-tdep.c (LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2, linux_sigtramp_code,
LINUX_SIGTRAMP_LEN, i386_linux_sigtramp_start,
LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1,
linux_rt_sigtramp_code, LINUX_RT_SIGTRAMP_LEN,
i386_linux_rt_sigtramp_start, i386_linux_in_sigtramp,
i386_linux_sigcontext_addr, LINUX_SIGCONTEXT_PC_OFFSET,
i386_linux_sigtramp_saved_pc, LINUX_SIGCONTEXT_SP_OFFSET,
i386_linux_sigtramp_saved_sp): Deleted.  These all implement
Linux-specific signal trampoline detection, and should be moved to...
* i386-linux-nat.c: ... here.
* config/i386/tm-linux.h (I386_LINUX_SIGTRAMP): No need to define
this any more, since we're not enabling OS-specific code in a
OS-independent file.
2000-03-16 22:46:30 +00:00
Mark Kettenis 4cc2418890 2000-03-08 Mark Kettenis <kettenis@gnu.org>
* i386-tdep.c (i386_linux_saved_pc_after_call): New function.
	* config/i386/tm-linux.h (SAVED_PC_AFTER_CALL): Define to call
	i386_linux_saved_pc_after_call.
2000-03-08 22:34:19 +00:00
Mark Kettenis f60300e72c 2000-03-05 Mark Kettenis <kettenis@gnu.org>
Allow GDB to run on Linux 2.0 again.
	* config.in: Add HAVE_PTRACE_GETREGS.
	* configure.in: Check if <sys/ptrace.h> defines PTRACE_GETREGS.
	* configure: Regenerated.
	* config/i386/nm-linux.h (CANNOT_FETCH_REGISTER,
	CANNOT_STORE_REGISTER): New defines.
	* i386-linux-nat.c (have_ptrace_getregs): New variable.
	(PTRACE_XFER_TYPE, CANNOT_FETCH_REGISTER, fetch_register,
	old_fetch_inferior_registers, CANNOT_STORE_REGISTER,
	store_register, old_store_inferior_registers): Copied over from
	`inptrace.c' as a temporary measure.
	(fetch_regs, store_regs, fetch_fpregs, store_fpregs):
	Conditionalize on HAVE_PTRACE_GETREGS.  Define stubs if
	HAVE_PTRACE_GETREGS isn't defined.
	(fetch_regs): Reset `have_ptrace_getregs' if ptrace call fails
	with EIO.
	(fetch_inferior_registers, store_inferior_registers): Fall back on
	the method use in `infptrace.c' (by calling
	old_fetch_inferior_registers and old_store_inferior_registers) if
	`have_ptrace_getregs' isn't set.
2000-03-05 22:57:06 +00:00
Mark Kettenis 45a816d93e 2000-03-04 Mark Kettenis <kettenis@gnu.org>
Fix support for Linux/i386 signal trampolines.  The old approach
	didn't work for Linux 2.2 and beyond, and didn't work with recent
	versions of the GNU C library.
	* i386-tdep.c (LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
	LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1): New defines.
	(linux_rt_sigtramp_code): New variable.
	(LINUX_RT_SIGTRAMP_LEN): New define.
	(i386_linux_rt_sigtramp_start): New function.  Detect start of
	signal trampolines for RT signals.
	(i386_linux_sigtramp): Removed.
	(i386_linux_in_sigtramp): New function.
	(i386_linux_sigcontext_addr): New function.  Recognize the names
	of the signal tranmpolines used by recent versions of the GNU C
	library, and add support for RT signals.
        (LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET):  New
	defines.  Moved here from config/i386/tm-linux.h.
	(i386_linux_sigtramp_saved_pc, i386_linux_sigtramp_saved_sp):
	Reimplement in terms of i386_linux_sigcontext_addr.
	* config/i386/tm-linux.h (LINUX_SIGCONTEXT_SIZE): Removed.
        (LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET):
        Moved to i386-tdep.c.
	(IN_SIGTRAMP): Redefine to call i386_linux_in_sigtramp.
2000-03-04 23:37:33 +00:00
Elena Zannoni 7b64ac2f7a 2000-03-02 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* config/alpha/alpha-linux.mh: Remove core-regset.o fron the
        NATDEPFILES list.
2000-03-03 02:18:26 +00:00
Mark Kettenis 667620fa27 Attempt to fix AIX/i386 target. 2000-03-02 15:44:27 +00:00
Andrew Cagney b241ba8eab From Peter Schauer: Define Solaris/x86 MERGEPID. 2000-02-29 13:38:55 +00:00
Andrew Cagney 1211c4e429 From J.T.: Convert i386 to updated frame_saved_regs. 2000-02-29 13:28:24 +00:00
Andrew Cagney 024094993c From Eli. Bring go32 target up-to-date with recent GDB i386 changes. 2000-02-29 08:16:40 +00:00
Scott Bambrough ef57c06942 Update copyright date in file. 2000-02-28 20:51:08 +00:00
Scott Bambrough b8fb9dd9cb 2000-02-28 Scott Bambrough <scottb@netwinder.org>
* config/arm/linux.mh (NATDEPFILES): Removed core-regset.o.
	Not used.  Required to get GDB to build on glibc 2.1.3.
	* config/arm/tm-linux.h (LOWEST_PC): Undefine LOWEST_PC
	before redefining.  Gets rid of compiler warning.
2000-02-28 20:28:10 +00:00
Mark Kettenis 75c6e08a8a 2000-02-26 Mark Kettenis <kettenis@gnu.org>
Make cross-compilation for the Hurd more friendly.
	From Jeff Bailey <jbailey@gnu.org>:
	* configure.in: Use AC_CHECK_TOOL to find MiG.
	* Makefile.in (MIG): New variable.
	* config/i386/i386gnu.mh (MIG): Remove.
	* configure: Regenerated.
2000-02-26 13:46:56 +00:00
Kevin Buettner 482ca3f5dc Shared library, function calling fixes for GNU/Linux PPC port. 2000-02-24 23:06:48 +00:00
Christopher Faylor 091be84d73 * configure.tgt: Add arm, mips, sh wince targets.
* config/arm/tm-wince.h: New file.
* config/arm/wince.mt New file.
* config/sh/tm-wince.h: New file.
* config/sh/wince.mt New file.
* config/mips/tm-wince.h: New file.
* config/mips/wince.mt New file.
* wince.c: New file.
* wince-stub.c: New file.
* wince-stub.h: New file.
* sh-tdep.c: Use correct register names for Windows CE.
2000-02-24 03:31:45 +00:00
Jim Blandy b9a8e3bfd4 Bring COERCE_FLOAT_TO_DOUBLE under gdbarch's control.
* valops.c (COERCE_FLOAT_TO_DOUBLE): Rework definition to be
more function-like.
(default_coerce_float_to_double, standard_coerce_float_to_double):
New functions.
(value_arg_coerce): Adjust for new definition.
* value.h (default_coerce_float_to_double,
standard_coerce_float_to_double): New declarations for the above.
* gdbarch.sh (coerce_float_to_double): New entry, replacing macro.
* gdbarch.c, gdbarch.h: Regenerated.
* tm-alpha.h, tm-fr30.h, tm-m32r.h, tm-mips.h, tm-hppa.h,
tm-rs6000.h, tm-sh.h, tm-sparc.h (COERCE_FLOAT_TO_DOUBLE): Change
definitions.
* mips-tdep.c (mips_coerce_float_to_double): Supply our own custom
function here.
(mips_gdbarch_init): Install that as our coerce_float_to_double
function.
2000-02-22 19:18:53 +00:00
Kevin Buettner 50c9bd316d Cleanups and signal handler backtrace fix for GNU/Linux PPC port. 2000-02-22 18:47:41 +00:00
Kevin Buettner 8883511eb0 Changes for GNU/Linux PPC native gdb port. 2000-02-22 01:27:35 +00:00
Kevin Buettner c877c8e605 Changes for GNU/Linux PPC native port of gdb. 2000-02-22 01:20:32 +00:00
Kevin Buettner f6077098c9 AIX 4.3 changes. 2000-02-15 21:17:04 +00:00
Jim Kingdon d6e9fb0513 2000-02-10 J.T. Conklin <jtc@redback.com>
* config/i386/nbsd.mt (GDBSERVER_DEPFILES): Add low-nbsd.o
	* configure.tgt (i[3456]86-*-netbsd*): add gdbserver to
 	configdirs.
	* gdbserver/low-nbsd.c: New file.

	* gdbserver/Makefile.in: convert to autoconf.
	* gdbserver/configure.in: likewise.
	* gdbserver/configure: generate.
2000-02-13 01:06:58 +00:00
Andrew Cagney 489137c036 Stop GDB mis-aligning the stack when doing inferior function calls. 2000-02-09 04:46:47 +00:00
Jason Molenda 1171f8d754 2000-02-07 Jason Molenda (jsm@bugshack.cygnus.com)
* gdb/config/i386/windows.mh,
	 gdb/doc/GDBvn.texi, gdb/doc/remote.texi,
	 gdb/testsuite/gdb.base/README, gdb/testsuite/gdb.base/crossload.exp,
	 gdb/testsuite/gdb.base/i486-elf.u, gdb/testsuite/gdb.base/i860-elf.u,
	 gdb/testsuite/gdb.base/m68k-aout.u,
	 gdb/testsuite/gdb.base/m68k-aout2.u,
	 gdb/testsuite/gdb.base/m68k-elf.u, gdb/testsuite/gdb.base/mips-ecoff.u,
	 gdb/testsuite/gdb.base/sparc-aout.u,
	 gdb/testsuite/gdb.base/sparc-elf.u,
	 gdb/tui/Makefile,
	 readline/ChangeLog: These files have been removed over the course
	 of the last year, but weren't cvs removed from the old GDB repository
	 on sourceware.
2000-02-08 03:37:34 +00:00
Jason Molenda dfcd3bfb6f import gdb-2000-02-04 snapshot 2000-02-05 07:30:26 +00:00
Jason Molenda d9fcf2fb1c import gdb-2000-02-01 snapshot 2000-02-02 00:21:19 +00:00
Jason Molenda da59e08184 import gdb-2000-01-31 snapshot 2000-02-01 03:19:29 +00:00
Jason Molenda 0fda6bd286 import gdb-2000-01-24 snapshot 2000-01-25 02:40:50 +00:00
Jason Molenda c5394b80ae import gdb-2000-01-17 snapshot 2000-01-18 00:55:13 +00:00
Jason Molenda 0d06e24ba7 import gdb-2000-01-10 snapshot 2000-01-11 03:07:37 +00:00
Jason Molenda c3f6f71df3 import gdb-2000-01-05 snapshot 2000-01-06 03:07:20 +00:00
Jason Molenda ed9a39ebf9 import gdb-1999-12-21 snapshot 1999-12-22 21:45:38 +00:00
Jason Molenda c4093a6ab3 import gdb-1999-12-13 snapshot 1999-12-14 01:06:04 +00:00
Jason Molenda de57eccd12 import gdb-1999-12-07 snapshot 1999-12-08 02:51:13 +00:00
Jason Molenda c2d11a7da0 import gdb-1999-12-06 snapshot 1999-12-07 03:56:43 +00:00
Jason Molenda 4ce44c668d import gdb-1999-11-16 snapshot 1999-11-17 02:31:06 +00:00
Jason Molenda 11cf874164 import gdb-1999-11-08 snapshot 1999-11-09 01:23:30 +00:00
Jason Molenda 5c44784c11 import gdb-1999-11-01 snapshot 1999-11-02 04:44:47 +00:00
Jason Molenda e514a9d642 import gdb-1999-10-25 snapshot 1999-10-26 03:43:48 +00:00
Jason Molenda 917317f4c6 import gdb-1999-10-18 snapshot 1999-10-19 02:47:02 +00:00
Jason Molenda 2df3850c7b import gdb-1999-10-11 snapshot 1999-10-12 04:37:53 +00:00
Jason Molenda c2c6d25f0d import gdb-1999-09-21 1999-09-22 03:28:34 +00:00
Jason Molenda cff3e48be7 import gdb-1999-09-13 snapshot 1999-09-13 21:40:00 +00:00
Stan Shebs d4f3574e77 import gdb-1999-09-08 snapshot 1999-09-09 00:02:17 +00:00
Jason Molenda 104c1213b4 import gdb-1999-08-30 snapshot 1999-08-31 01:14:27 +00:00
Jason Molenda 0d2856175c Files removed as of the 1999-08-23 snapshot. 1999-08-23 23:15:40 +00:00
Jason Molenda 53a5351d90 import gdb-1999-08-23 snapshot 1999-08-23 22:40:00 +00:00
Jason Molenda 7be570e7ce import gdb-1999-08-16 snapshot 1999-08-16 19:57:19 +00:00
Jason Molenda 96baa820df import gdb-1999-08-09 snapshot 1999-08-09 21:36:23 +00:00
Jason Molenda a0b3c4fd32 import gdb-1999-08-02 snapshot 1999-08-02 23:48:37 +00:00
Jason Molenda adf40b2e16 import gdb-1999-07-19 snapshot 1999-07-19 23:30:11 +00:00
Jason Molenda 43e526b9b4 import gdb-1999-07-12 snapshot 1999-07-12 11:15:22 +00:00
Jason Molenda c5aa993b1f import gdb-1999-07-07 post reformat 1999-07-07 20:19:36 +00:00
Jason Molenda 9846de1bb5 import gdb-1999-07-07 pre reformat 1999-07-07 17:31:57 +00:00
Jason Molenda 43ff13b418 import gdb-1999-07-05 snapshot 1999-07-05 17:58:44 +00:00
Jason Molenda 085dd6e638 import gdb-1999-06-28 snapshot 1999-06-28 16:06:02 +00:00
Jason Molenda 0f71a2f66f import gdb-1999-06-14 snapshot 1999-06-14 18:08:47 +00:00
Jason Molenda 6027a0b892 import gdb-1999-06-07 snapshot 1999-06-08 02:18:01 +00:00
Jason Molenda cce74817d9 import gdb-1999-06-07 snapshot 1999-06-07 19:19:32 +00:00
Jason Molenda ac9a91a77c import gdb-1999-06-01 snapshot 1999-06-01 15:44:41 +00:00
Jason Molenda 392a587b05 import gdb-1999-05-25 snapshot 1999-05-25 18:09:09 +00:00
Jason Molenda 9e086581c7 import gdb-1999-0519 1999-05-19 19:58:41 +00:00
Stan Shebs b83266a0e1 import gdb-19990504 snapshot 1999-05-05 14:45:51 +00:00
Stan Shebs e49d4fa61a import gdb-19990422 snapshot 1999-04-27 01:26:45 +00:00
Stan Shebs 7a292a7adf import gdb-19990422 snapshot 1999-04-26 18:34:20 +00:00
Stan Shebs c906108c21 Initial creation of sourceware repository 1999-04-16 01:35:26 +00:00
Stan Shebs 9733ab3f56 Initial creation of sourceware repository 1999-04-16 01:34:49 +00:00
Stan Shebs 071ea11e85 Initial creation of sourceware repository 1999-04-16 01:34:07 +00:00
Mark Alexander 1730ec6b18 * config/sh/tm-sh.h (BELIEVE_PCC_PROMOTION): Define, so that
coffread.c will correctly handle char or short function parameters.
1999-02-15 02:23:56 +00:00
Mark Alexander 602886332b * v850-tdep.c (v850_generic_reg_names, v850e_reg_names,
v850_register_names, v850_processor_type_table): Declare tables
	and structures for handling differences in register names for
	v850 and v850e.
	(struct reg_list): Define new structure for creating tables
	of register bit masks in v850e instrutions.
	(handle_prepare, handle_pushm): New helpers for v850_scan_prologue.
	(v850_scan_prologue): Recognize v850e instructions: callt, prepare,
	and pushm.
	(v850_target_architecture_hook): New function to set register
	names based on current machine.
	(_initialize_v850_tdep): Set up target_architecture_hook.
	* config/v850/tm-v850.h (v850_register_names): Declare.
	(REGISTER_NAME): Define to refer to v850_register_names.
	(SR0_REGNUM, CTBP_REGNUM): Define.
	(PS_REGNUM): Redefine in terms of SR0_REGNUM.
1999-01-27 00:15:00 +00:00
Jeff Law b041460dbe am33 sanitize changes 1999-01-26 14:52:15 +00:00
Mark Alexander 7363ff9083 Changes for PR 8996:
* h8300-tdep.c (original_register_names, h8300h_register_names,
	h8300_register_names): Define new variables.
	(set_register_names): New function to set register names based on
	current CPU type.
	(h8300_command, h8300h_command, h8300s_command): Call
	set_register_names.
	* config/h8300/tm-h8300.h (h8300_register_names): Declare.
	(REGISTER_NAME): Define to refer to h8300_register_names.
1999-01-20 23:54:03 +00:00
Zdenek Radouch 517b49896a Changed ABI to match a GCC change. Structs passed by value are always
passed using a pointer.
1999-01-15 22:17:00 +00:00
Zdenek Radouch 1c3101060c Beta version of the FR30 port. 1999-01-07 22:54:18 +00:00
David Taylor 61ada545ec hp merge changes; 5 new files. 1999-01-04 16:23:14 +00:00
Jason Molenda adcb1e06ef 1998-12-30 Jason Molenda (jsm@bugshack.cygnus.com)
* utils.c: <readline/readline.h> instead of "readline/readline.h".

        * configure.in (TERM_LIB): Search for the appropriate term library
        on the host system.
        * configure: Regenerated.
        * Makefile.in (TERMCAP): Set based on autoconf check.
        * config/*/*.mh: Don't override TERMCAP setting.
1998-12-31 01:30:52 +00:00
Andrew Cagney cb2f9c9c67 Missed this file:
* config/mips/tm-mips.h (enum mips_fpu_type, mips_fpu): Move to
mips-tdep.c.
1998-12-18 06:03:39 +00:00
Zdenek Radouch 492eae092d Checkpoint (sharing through devo). 1998-12-17 23:56:59 +00:00
Andrew Cagney 06cf5a79dd Rename vr4100 (vr4xxx) config files to vr4100.
Rename vr4xxx (vr4300) config files to vr4xxx.
Enable GDB_MULTI_ARCH in tm-vr4xxx.h
1998-12-16 15:36:29 +00:00
Andrew Cagney 759181e384 config/mips/tm-*.h: (TARGET_BYTE_ORDER_DEFAULT,
TARGET_BYTE_ORDER_SELECTABLE_P): Replace TARGET_BYTE_ORDER and
TARGET_BYTE_ORDER_SELECTABLE.
1998-12-15 13:35:50 +00:00
Stan Shebs 6d2743e5ec 1998-12-14 J.T. Conklin <jtc@redbacknetworks.com>
* config/i386/nbsd.mh, config/m68k/nbsd.mh, config/ns32k/nbsd.mh
	(XDEPFILES): Add ser-tcp.o.
1998-12-14 23:42:19 +00:00
Andrew Cagney aaa3c096db CARP:
Re-do TARGET_PRINT_INSN_INFO, TARGET_PRINT_INSN, TARGET_ARCHITECTURE,
TARGET_ARCHITECTURE_AUTO, TARGET_BYTE_ORDER_SELECTABLE_P,
TARGET_BYTE_ORDER so that they can all be overriden.

Document.

Convert mn10300 and PPC targets.
1998-12-13 23:28:46 +00:00
Andrew Cagney 86a51f415d CARP: Mechanism to replace EXTRA_FRAME_INFO.
Add two pointers (saved_regs, extra_info) to struct frame_info.
Introduce new macro FRAME_INIT_SAVED_REGS which replaces
FRAME_FIND_SAVED_REGS.

Document.

Use in mn10300 and rs6000 targets. Fix side effects on ALPHA, MIPS,
Z8K and SPARC targets.
1998-12-12 02:50:39 +00:00
Andrew Cagney 9ddf9aa9be CARP:
Rename REGISTER_NAMES{} -> REGISTER_NAME().
1998-12-10 06:10:03 +00:00
Jim Wilson e351e0fca0 Link with i960 simulator.
* config/i960/mon960.mt (SIM_OBJS, SIM): Define.
1998-12-09 06:54:51 +00:00
Jason Molenda ac95dc5eeb 1998-12-08 Philippe De Muyter <phdm@macqel.be>
* config/xm-aix4.h (SIGWINCH_HANDLER): Function `aix_resize_window'
        must accept a signal number as parameter.
        * config/rs6000/xm-rs6000.h (SIGWINCH_HANDLER): Ditto.
        * utils.c (initialize_utils): Give a parameter to `SIGWINCH_HANDLER'.

        * inferior.h (register_valid): Variable's type is `SIGNED char', not
        `char'.
        * findvar.c (register_valid): Ditto.

        * defs.h (make_cleanup_func): Protect parameter list by `PARAMS'.
        * gdbthread.h (unbind_target_thread_vector): Likewise.
1998-12-09 00:38:46 +00:00
Jeff Law c4efea12c8 Fixes. 1998-12-08 22:52:54 +00:00
Jeff Law 5e5be68bfe *** empty log message *** 1998-12-08 22:51:49 +00:00
Edith Epstein 1994dc7cfc Tue Dec 8 15:09:44 1998 Edith Epstein <eepstein@sophia.cygnus.com>
* config/m68k/tm-m68k.h (NUM_FREGS): m68k-linux patch.
          Added NUM_FREGS macro.

        * config/m68k/xm-linux.h: m68k-linux patch. New file.

        * config/m68k/tm-linux.h: m68k-linux patch. New file.

        * config/m68k/nm-linux.h: m68k-linux patch. New file.

        * config/m68k/linux.mt: m68k-linux patch. New file.

        * config/m68k/linux.mh: m68k-linux patch. New file.

        * gdbserver/low-linux.c: m68k-linux patch. Added an ifdef
          that checks the value of __GLIBC to decide whether or
          not to include sys/reg.h.

        * m68klinux-nat.c: m68k-linux patch. New file. Note
          both m68k-tdep.c and m68klinux-nat.c contain definitions
          for supply_gregset and supply_fpregset. The definitions
          in m68k-tdep.c are valid is USE_PROC_FS is defined. Otherwise,
          the definitions in m68klinux-nat.c will be used. This is a
          bit of a hack. The supply_* routines do not belong in
          *_tdep.c files. But, there are several lynx ports that currently
          depend on these definitions.

        * configure.tgt: m68k-linux patch. Added m68*-*-linux*
          gdb_target.

        * configure.host: m68k-linux patch. Added m68*-*-linux*
          gdb_host.

        * Makefile.in: m68k-linux patch. Added compile line for
          m68klinux-nat.o
1998-12-08 20:41:19 +00:00
Jason Molenda 223a358838 1998-12-07 Jason Molenda (jsm@bugshack.cygnus.com)
* config/i386/xm-cygwin.h: Remove REQUEST_QUIT definition.
        * config/powerpc/xm-cygwin.h: Ditto.

PR 17664.

With this define in place, you can't type "q" to get out of GDB's pager
under Cygwin.
1998-12-07 23:07:17 +00:00