Commit graph

58 commits

Author SHA1 Message Date
Frank Ch. Eigler
eec1d04840 Added MIPS16 PC masking for disassembly. See PR 12149. 1997-10-09 20:26:08 +00:00
Mark Alexander
9388a6f2be * config/mips/tm-mips.h (MAKE_MSYMBOL_SPECIAL): Force MIPS16
addresses to be odd.
	(MIPS_FPU_SINGLE_REGSIZE, MIPS_FPU_DOUBLE_REGSIZE): Define.
	* mips-tdep.c (mips_extract_return_value): Doubles aren't
	returned in FP0 if FP registers are single-precision only.
start-sanitize-r5900
	* config/mips/tm-r5900.h (MIPS_LAST_FP_ARG_REGNUM): Redefine
	to disable use of FP registers for function arguments.
end-sanitize-r5900
1997-10-03 16:58:31 +00:00
Andrew Cagney
adf4739efe Add access to hi part of r5900 128 bit registers. 1997-09-30 03:45:51 +00:00
Mark Alexander
af774411e5 * config/mips-tm-mips.h (mips_extra_func_info): New frame_adjust
member for storing offset of MIPS16 frame pointer from SP.
	* mips-tdep.c: Use RA_REGNUM instead of hardcoded 31 throughout.
	(PROC_FRAME_ADJUST): Define.
	(mips16_heuristic_proc_desc): Store frame pointer adjustment value.
	(get_frame_pointer): Use frame pointer adjustment value when
	calculating frame address.
	* remote-sim.c (gdbsim_fetch_register): Don't fetch registers
	that have a null or empty name.
start-sanitize-tx19
	* config/mips/tm-tx19.h (MIPS_DEFAULT_FPU_TYPE): Define.
	(REGISTER_NAMES): Redefine to eliminate FP registers.
	* config/mips/tm-tx19l.h: Ditto.
end-sanitize-tx19
1997-09-26 19:42:55 +00:00
Mark Alexander
899c402166 * dbxread.c (MSYMBOL_SIZE): New macro.
(end_psymtab): Use MSYMBOL_SIZE to extract size from minimal symbol.
	* elfread.c (elf_symtab_read): If ELF symbol is "special",
	such as a MIPS16 function, mark minimal symbol as special too.
	* mips-tdep.c (pc_is_mips16): New function to check whether
	a function is MIPS16 by looking at the minimal symbol.  Use
	pc_is_mips16 throughout instead of IS_MIPS16_ADDR macro.
	* config/mips/tm-mips.h (SYMBOL_IS_SPECIAL, MAKE_MSYMBOL_SPECIAL,
	MSYMBOL_IS_SPECIAL, MSYMBOL_SIZE): New functions for setting/testing
	"special" MIPS16 bit in ELF and minimal symbols.
	* mdebugread.c (parse_partial_symbols): Don't construct a partial
	symbol table for a file that already has one.
start-sanitize-tx19
	* configure.tgt: Support TX19.
	* config/mips/tm-tx19.h, config/mips/tm-tx19l.h, config/mips/tx19.mt,
	config/mips/tx19l.mt: New files for TX19.
end-sanitize-tx19
1997-09-15 21:06:16 +00:00
Michael Snyder
0af60e0326 Fri Jun 27 19:19:12 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* config/mips/tm-mips.h (USE_STRUCT_CONVENTION): MIPS_EABI returns
        structs in a register wherever possible.
1997-06-28 02:23:30 +00:00
Mark Alexander
f781fe93a6 * infrun.c (wait_for_inferior): Mark registers as invalid when
stepping over an instruction that triggered a watchpoint.
	* remote-mips.c: Numerous changes to support hardware breakpoints
	and watchpoints on LSI MiniRISC and TinyRISC boards.
	* mips-tdep.c: Move MIPS16-related macros to config/mips/tm-mips.h.
	(mips_breakpoint_from_pc): Account for different breakpoint
	instructions used by PMON and IDT monitor.
	* config/mips/tm-embed.h: Enable hardware breakpoints on embedded
	MIPS targets.
	* config/mips/tm-mips.h: Define breakpoint instructions for
	PMON and IDT monitor.  Move MIPS16-related macros here from
	mips-tdep.c.
1997-06-17 02:11:42 +00:00
Mark Alexander
4eb4b87e13 * mips-tdep.c (mips_in_call_stub, mips_in_return_stub,
mips_skip_stub, mips_ignore_helper): New functions for dealing
	with MIPS16 call/return thunks.
	(mips_init_frame_pc_first): New function to implement
	INIT_FRAME_PC_FIRST macro; includes code from old macro plus
	new code to skip over MIPS16 thunks.
	(mips_frame_chain): Skip over MIPS16 thunks.
	* config/mips/tm-mips.h (mips_in_call_stub, mips_in_return_stub,
	mips_skip_stub, mips_ignore_helper): Declare.
	(IN_SOLIB_CALL_TRAMPOLINE, IN_SOLIB_RETURN_TRAMPOLINE,
	SKIP_TRAMPOLINE_CODE, IGNORE_HELPER_CALL): New macros that invoke
	the above functions.
	(INIT_FRAME_PC_FIRST): Change to invoke mips_init_frame_pc.
	(mips_init_frame_pc): Declare.
	* infrun.c (wait_for_inferior): Use new IGNORE_HELPER_CALL macro
	to decide if certain library function calls should be ignored.
1997-04-03 19:43:39 +00:00
Mark Alexander
87ee36023c Fixes from Peter Schauer:
* config/mips/tm-mips.h (REGISTER_CONVERT_TO_TYPE,
	REGISTER_CONVERT_FROM_TYPE): Swap words if target, not host,
	is big-endian and if registers are 32 bits.
	* mips-tdep.c (mips_print_register, mips_extract_return_value,
	mips_store_return_value): Fix floating-point word-order problems on
	little-endian targets introduced by changes of Mar 21.
1997-03-24 00:29:12 +00:00
Mark Alexander
f9f8c14b1a First set of changes for mips16:
* config/mips/tm-mips.h (MIPS16_BIG_BREAKPOINT,
	MIPS16_LITTLE_BREAKPOINT, BREAKPOINT_FROM_PC): Define.
	(ABOUT_TO_RETURN): Call new function mips_about_to_return.
	(mips_breakpoint_from_pc, mips_about_to_return): Declare.
	* mem-break.c (memory_breakpoint_from_pc): New function.
	(memory_insert_breakpoint, memory_remove_breakpoint): Use
	memory_breakpoint_from_pc to determine breakpoint contents and size.
	* target.h (memory_breakpoint_from_pc): Declare.
	* monitor.c (monitor_insert_breakpoint): Use memory_breakpoint_from_pc
	to determine size of breakpoint instruction.
	* mips-tdep.c (mips32_decode_reg_save, mips16_decode_reg_save):
	New helper functions for mips_find_saved_regs.
	(mips_find_saved_regs): Recognize mips16 prologues.
	(mips_addr_bits_remove): Strip off upper 32 bits of address
	when target CPU is 32 bits but CORE_ADDR is 64 bits.
	(mips_step_skips_delay): No branch delay slot on mips16.
	(gdb_print_insn_mips): Disassemble mips16 code.
	(mips_breakpoint_from_pc, mips_about_to_return): New functions.
1997-01-28 00:50:13 +00:00
Mark Alexander
133b13c022 * config/mips/tm-mips.h: Undefine BREAKPOINT, replace
with separate LITTLE_BREAKPOINT and BIG_BREAKPOINT definitions;
	this fixes problem with setting breakpoints in little-endian
	programs in the simulator.
1996-12-31 15:02:30 +00:00
Peter Schauer
988eafc044 * config/mips/tm-mips.h (PC_IN_CALL_DUMMY): Removed, the default
definition in inferior.h is sufficient.
1996-12-21 21:01:19 +00:00
Mark Alexander
d31b72a314 * config/mips/tm-mips.h (FIX_CALL_DUMMY): Define to set up $25
correctly for PIC on Irix 5.
1996-12-15 04:59:33 +00:00
Mark Alexander
509ffa78cf * config/mips/tm-mips.h: Get rid of call-dummy code.
Minor changes to make pre-ANSI compilers happy.
1996-12-10 00:15:46 +00:00
Mark Alexander
7844472931 * config/mips/tm-mips.h (ADDR_BITS_REMOVE, TARGET_READ_SP): Define.
(mips_addr_bits_remove): Declare.
1996-11-27 03:40:28 +00:00
Mark Alexander
ee45546371 * mips-tdep.c: Replace hard-coded constants with MIPS_INSTLEN.
(common_breakpoint): Use paddr instead of %x to print 64-bit values.
	(heuristic_proc_desc): Add tests for 64-bit instructions.
	(init_extra_frame_info, mips_push_arguments): Recognize additional
	registers for EABI.
	* remote-mips.c: Extend DDB target to allow TFTP downloads.
	* config/mips/tm-mips.h (MIPS_LAST_ARG_REGNUM, MIPS_NUM_ARG_REGS):
	Define.
1996-11-22 04:50:46 +00:00
Jim Wilson
692a601fb7 Fix Irix6 host build problem.
* config/mips/tm-mips.h (FIX_CALL_DUMMY): Change unsigned LONGEST
        to ULONGEST.
1996-11-19 00:04:37 +00:00
Jim Wilson
119dfbb7c1 Patches to add Irix6 host support. 1996-11-12 23:33:32 +00:00
Dawn Perchik
28444bf3a1 * mips-tdep.c, remote-mips.c, values.c, mdebugread.c,
config/mips/tm-mips.h: Add/fix bugs for 64-bit mips support.
	* defs.h: Cleanup; add prototypess
	* corefile.c: Change FIXME #ifdef
	* win32-nat.c: Include windefs instead of windows.h.
	* utils.c: Add routines for printing addresses and registers
	based on type size.
1996-11-11 21:02:55 +00:00
Stu Grossman
5d394f7072 * Makefile.in: Add rule for hpux-thread.o (needs special header
files).
	* (SUBDIRS):  Remove mswin.
	* Change procedure for creating init.c.  Speeds things up quite a
	bit.
	* config.in configure configure.in:  Check for select, poll.
	* Check for OSF header files before including hpux-thread.o.
	* Don't configure doc or testsuite when building under MSVC.
	* findvar.c value.h (read_register_pid write_register_pid):  Make
	global.  Needed for hppa-tdep.c.
	* (supply_register):  Don't set pid to inferior_pid when supplying
	registers.
	* hppa-tdep.c (saved_pc_after_call):  frame_saved_pc ->
	FRAME_SAVED_PC.
	* (frame_saved_pc):  Change name to hppa_frame_saved_pc.
	* (hppa_pop_frame):  Don't use a pid of 0 with target_write_pc.
	Use write_pc instead, which uses the correct pid.
	* (target_read_pc target_write_pc):  Use read/write_register_pid
	instead of read/write_register to preserve the pid passed in.
	* inftarg.c (child_can_run):  Add flag child_suppress_run to allow
	hpux-threads.c to override this as a runnable target.
	* config/pa/nm-hppah.h:  Define target_new_objfile and
	target_pid_to_str.
	* config/pa/tm-hppa.h (FRAME_SAVED_PC):  Use hppa_frame_saved_pc
	instead of frame_saved_pc.
	* config/m68k/tm-m68k.h:  Define TARGET_M68K for Wingdb.
	* config/m68k/tm-monitor.h:  Use FRAME_CHAIN_VALID_ALTERNATE, since
	we can't easily determine the start file bounds with ELF.
	* config/mips/tm-mips.h:  Define TARGET_MIPS for Wingdb.
	* hpux-thread.c:  New file for HPUX/OSF thread support.
	* osf-share/{README AT386/cma_thread_io.h HP800/cma_thread_io.h
	RIOS/cma_thread_io.h cma_attr.h cma_deb_core.h cma_debug_client.h
	cma_errors.h cma_handle.h cma_init.h cma_list.h cma_mutex.h
	cma_sched.h cma_semaphore_defs.h cma_sequence.h cma_stack.h
	cma_stack_int.h cma_tcb_defs.h cma_util.h}:  New files for OSF
	thread support.
1996-10-08 17:06:17 +00:00
Fred Fish
94b4f75666 * rs6000-tdep.c: Fix typo in comment.
* valops.c (call_function_by_hand): Set using_gcc to 2
	for code compiled without -g, per comment in code.
	* config/a29k/tm-a29k.h (STACK_ALIGN): Add comment.
	* config/sparc/tm-sparc.h (STACK_ALIGN): Add comment.
	* config/sparc/tm-sp64.h (STACK_ALIGN): Add comment.
	* config/pyr/tm-pyr.h (STACK_ALIGN): Add comment.
	* config/m88k/tm-m88k.h (STACK_ALIGN): Add comment.
	* config/pa/tm-hppa.h (PUSH_ARGUMENTS): Enclose args in ()'s.
	(STACK_ALIGN): Add comment, move to be with other associated
 	macros, and document.
	* config/mips/tm-mips.h (PUSH_ARGUMENTS): Enclose args in ()'s.
	(STACK_ALIGN): Remove completely, handled by PUSH_ARGUMENTS.
	* config/alpha/tm-alpha.h (PUSH_ARGUMENTS): Enclose args in ()'s.
	* config/rs6000/tm-rs6000.h (STACK_ALIGN): Remove completely,
	handled by PUSH_ARGUMENTS.
	(PUSH_ARGUMENTS): Enclose args in ()'s.
1996-08-25 07:17:22 +00:00
Fred Fish
8efb80797c * config/mips/tm-mips.h (TM_MIPS_H): Enclose file contents in
this, define when contents are included.
	(mips_read_processor_type): Add prototype.
	* config/mips/xm-mips.h: Remove strdup decl, now in gdb_string.h
	* mdebugread.c (ecoff_relocate_efi): Add prototype.
	(fixup_sigtramp): Only needed when TM_MIPS_H is defined.
1996-08-01 17:30:37 +00:00
Fred Fish
f2bf454e0f * config/mips/tm-mips.h (struct frame_info): Forward decl.
(struct type): Ditto.
	(struct value): Ditto.

	* config/mips/tm-mips.h (sigtramp_address): Move extern decl
 	from mips-tdep.c to here.
	(sigtramp_end): Ditto.
	(fixup_sigtramp): Ditto.

	* config/mips/tm-mips.h (init_extra_frame_info): Add prototype.
	(mips_frame_chain): Ditto.
	(mips_step_skips_delay): Ditto.
	(mips_frame_saved_pc): Ditto.
	(mips_find_saved_regs): Ditto.
	(mips_frame_num_args): Ditto.
	(mips_pop_frame): Ditto.
	(mips_extract_return_value): Ditto.
	(mips_store_return_value): Ditto.
	(mips_push_dummy_frame): Ditto.
	(mips_push_arguments): Ditto.
	(mips_do_registers_info): Ditto.
	(ecoff_relocate_efi): Ditto.
	(ecoff_relocate_efi): Ditto.
	* irix4-nat.c (fetch_core_registers): Add prototype.
	* mips-tdep.c (read_next_frame_reg): Add prototype
	(heuristic_proc_start): Ditto.
	(heuristic_proc_desc): Ditto.
	(mips_print_register): Ditto.
	* config/mips/nm-irix5.h (procfs_set_watchpoint): Add prototype.
	(procfs_stopped_by_watchpoint): Ditto.
	* config/mips/nm-irix4.h (procfs_set_watchpoint): Add prototype.
	(procfs_stopped_by_watchpoint): Ditto.
	* config/alpha/tm-alpha.h (ecoff_relocate_efi): Add prototype.
	(struct symbol): Add forward decl for prototype.

	* breakpoint.c (internal_breakpoint_number): Only needed if
	GET_LONGJMP_TARGET or SOLIB_ADD is defined.

	* objfiles.c (ecoff_relocate_efi): Remove prototype.
1996-07-28 21:41:09 +00:00
Fred Fish
7e2ff10d97 * config/mips/tm-mips.h (COERCE_FLOAT_TO_DOUBLE): Only prefer
non-prototyped case over prototyped case for C.
	* config/pa/tm-hppa.h (COERCE_FLOAT_TO_DOUBLE):  Ditto.
1996-03-27 00:21:02 +00:00
Fred Fish
e7107962d1 * config/alpha/tm-alpha.h (COERCE_FLOAT_TO_DOUBLE): Define to 1.
* config/mips/tm-mips.h: Ditto.
	* config/pa/tm-hppa.h: Ditto.
	* config/rs6000/tm-rs6000.h: Ditto.
	* config/sparc/tm-sparc.h: Ditto.
1996-02-21 03:38:45 +00:00
Stu Grossman
188c635fbb * Makefile.in (INTERNAL_CFLAGS): Add ENABLE_CFLAGS.
* fork-child.c (fork_inferior):  Add call to
	TARGET_CREATE_INFERIOR_HOOK to allow target specific code to get
	control just before the new process executes it's first instruction.
	* remote-mips.c (mips_initialize):  Cleanup a bit.  Don't try to
	receive a packet at first.  This speeds up initialization a lot.
	Use TARGET_MONITOR_PROMPT instead of "<IDT>".
	(common_breakpoint):  Use rresponse instead of rerrflg to inspect
	error code.
	* symfile.c (syms_from_objfile reread_symbols):  Call
	TARGET_SYMFILE_POSTREAD to allow target specific code to get
	control after reading new symbols.
	* target.h:  New macros TARGET_SYMFILE_POSTREAD, and
	TARGET_CREATE_INFERIOR_HOOK.  See above for descriptions.
	* config/mips/{irix5.mh nm-irix5.h}:  Delete nm-irix5.h.  Make
	NAT_FILE point directly at ../nm-sysv4.h.
	* config/mips/{mipsm3.mh nm-m3.h}:  Delete nm-m3.h.  Make
	NAT_FILE point directly at ../nm-m3.h.
	* config/mips/{mipsv4.mh nm-sysv4.h}:  Delete nm-sysv4.h.  Make
	NAT_FILE point directly at ../nm-sysv4.h.
	* config/mips/nm-mips.h:  Improve comment at top of file.
	* config/mips/tm-mips.h (TARGET_MONITOR_PROMPT):  Change
	definition into a proper string.
start-sanitize-gm
	* configure configure.in:  Add support for --enable-gm.
	(mips*-*-magic*):  Change target from magic to idt.
	* eval.c expprint.c expression.h parse.c remote-mips.c utils.c:
	Change GENERAL_MAGIC_HACKS to GENERAL_MAGIC.
	* magic.c magic.h:  Update files from GM.
	* config/mips/magic.mt:  Delete.  No longer necessary now that we
	use --enable mechanism.
	* config/mips/tm-idt.h:  Add GM stuff needed for remote GM box.
	* config/mips/tm-irix5.h:  Add GM stuff needed for native Irix box.
	* config/mips/tm-magic.h:  Move up to config/tm-magic.h.  Move all
	platform specific stuff into tm-irix.h and tm-idt.h.  Add defs for
	TARGET_SYMFILE_POSTREAD and TARGET_CREATE_INFERIOR_HOOK.
end-sanitize-gm
1995-11-04 19:02:42 +00:00
Stan Shebs
d5115c2bc6 Remove unnecessary CYGNUS LOCAL 1995-10-27 04:59:01 +00:00
Peter Schauer
cc917275be * config/mips/tm-mips.h (UNUSED_REGNUM): Define.
* mipsv4-nat.c (supply_gregset):  Fill UNUSED_REGNUM register
	with zero.
1995-09-16 20:37:36 +00:00
Jackie Smith Cashion
180fd370b1 Ideally the "remote-mips.c" prompt spotting code should be updated to
spot different prompts at run-time, so as to avoid having target
specific versions of gdb. This is a pending TODO.

Fri Sep  1 08:25:50 1995  James G. Smith  <jsmith@beauty.cygnus.com>

        * configure (mips64*vr4300*-*-elf): Support added.
        * remote-mips.c (mips_readchar): Change to allow build-time prompt
        string.
        * config/mips/tm-mips.h: Added TARGET_MONITOR_PROMPT.
        * config/mips/{vr4300.mt, vr4300el.mt, tm-vr4300.h,
        tm-vr4300el.h}: Added.
1995-09-01 15:33:14 +00:00
Fred Fish
6c9638b444 Update FSF address. 1995-08-02 03:41:12 +00:00
Ian Lance Taylor
4c7edd73d9 update copyright 1995-01-17 19:11:06 +00:00
Ian Lance Taylor
daa4c5f8a1 * config/mips/tm-mips.h (enum mips_fpu_type): New enum.
(mips_fpu): Change type to enum mips_fpu_type.
	(FIX_CALL_DUMMY): Handle mips_fpu == MIPS_FPU_SINGLE.
	* mips-tdep.c (mips_fpu): Change type to enum mips_fpu_type.
	Don't initialize.
	(mips_fpu_string): New static variable.
	(mips_push_dummy_frame): Handle mips_fpu == MIPS_FPU_SINGLE.
	(mips_pop_frame): Likewise.
	(mips_extract_return_value): Likewise.
	(mips_store_return_value): Likewise.
	(mips_set_fpu_command): New static function.
	(mips_show_fpu_command): New static function.
	(_initialize_mips_tdep): Change handling of set/show mipsfpu.
1995-01-17 19:08:31 +00:00
Stan Shebs
9f9f94aa09 Support for different MIPS IDT processor models.
* mips-tdep.c (mips_processor_type, tmp_mips_processor_type,
	mips_generic_reg_names, mips_r3041_reg_names,
	mips_r3051_reg_names, mips_r3081_reg_names,
	mips_processor_type_table): New	globals.
	(mips_do_registers_info): Don't display register if name is empty.
	(mips_set_processor_type_command): New command.
	(mips_show_processor_type_command): New command.
	(mips_set_processor_type): New function.
	(mips_read_processor_type): New function.
	* config/mips/tm-idt.h (DEFAULT_MIPS_TYPE): New macro.
	* config/mips/tm-mips.h (DEFAULT_MIPS_TYPE): New macro.
	(NUM_REGS): Increase to account for all CP0 registers.
	(REGISTER_NAMES): Add empty names for CP0 registers.
	(FIRST_EMBED_REGNUM, LAST_EMBED_REGNUM): Adjust.
	(PRID_REGNUM): New macro.
1994-11-18 02:18:09 +00:00
Stan Shebs
669caa9c19 Replace useless FRAME, FRAME_ADDR types with struct frame_info *
and CORE_ADDR, respectively.
	* frame.h (FRAME, FRAME_INFO_ID, FRAME_ADDR): Remove.
	* blockframe.c (get_frame_info): Remove.
	* a29k-tdep.c, alpha-tdep.c, blockframe.c, breakpoint.c,
	breakpoint.h, energize.c, findvar.c, gdbtk.c, gould-pinsn.c,
	h8300-tdep.c, h8500-tdep.c, hppa-tdep.c, i386-tdep.c, i960-tdep.c,
	infcmd.c, inferior.h, infrun.c, m68k-tdep.c, m88k-tdep.c,
	mips-tdep.c, nindy-tdep.c, printcmd.c, pyr-tdep.c, rs6000-tdep.c,
	sh-tdep.c, sparc-tdep.c, stack.c, valops.c, z8k-tdep.c,
	config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
	config/gould/tm-pn.h, config/h8300/tm-h8300.h,
	config/h8500/tm-h8500.h, config/mips/tm-mips.h,
	config/ns32k/tm-merlin.h, config/ns32k/tm-umax.h,
	config/pyr/tm-pyr.h, config/sparc/tm-sparc.h): Replace FRAME with
	struct frame_info * everywhere, replace FRAME_ADDR with CORE_ADDR,
	rename variables consistently (using `frame' or `fi'), remove
	calls to get_frame_info and FRAME_INFO_ID, remove comments about
	FRAME and FRAME_ADDR cruftiness.
1994-11-04 01:19:29 +00:00
Ian Lance Taylor
97d3151a59 * config/mips/tm-mips.h (GDB_TARGET_IS_MIPS64): If not already
defined, define as 0.
	(FIX_CALL_DUMMY): Rewrite to remove presumption that host and
	target are similar.
	* config/mips/tm-idt.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
	* config/mips/tm-idtl.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
	* config/mips/tm-idt64.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
	(BREAKPOINT): Remove definition.
	* config/mips/tm-idtl64.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
	(BREAKPOINT): Remove definition.
	* config/mips/tm-mips64.h (GDB_TARGET_IS_MIPS64): Define with a
	value of 1, rather than without a value.
	* config/mips/tm-bigmips64.h (GDB_TARGET_IS_MIPS64): Likewise.
1994-10-06 16:43:40 +00:00
Stan Shebs
ac57e5adda * infcmd.c (do_registers_info) [INVALID_FLOAT]: Only use if
defined.
	* values.c (unpack_double) [INVALID_FLOAT]: Ditto.
	* mips-tdep.c (mips_print_register): Don't test float validity.
	* config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
	config/arm/tm-arm.h, config/convex/tm-convex.h,
	config/h8300/tm-h8300.h, config/h8500/tm-h8500.h,
	config/i386/tm-i386v.h, config/i386/tm-sun386.h,
	config/i960/tm-i960.h, config/m68k/tm-m68k.h,
	config/m88k/tm-m88k.h, config/mips/tm-mips.h,
	config/ns32k/tm-merlin.h, config/ns32k/tm-nbsd.h,
	config/ns32k/tm-ns32km3.h, config/ns32k/tm-umax.h,
	config/pa/tm-hppa.h, config/pyr/tm-pyr.h,
	config/rs6000/tm-rs6000.h, config/sh/tm-sh.h,
	config/sparc/tm-sparc.h, config/z8k/tm-z8k.h (INVALID_FLOAT):
	Remove definition.
1994-09-25 21:13:24 +00:00
Jim Kingdon
4df6dcd10d * config/mips/tm-mips.h (SETUP_ARBITRARY_FRAME): Revise comment
regarding using the PC--using the PC is necessary and all the
	FIXME comments in the world won't make it go away.
1994-03-25 01:38:24 +00:00
Jim Kingdon
b5aff26825 * mips-tdep.c (mips_step_skips_delay), config/mips/tm-mips.h
(STEP_SKIPS_DELAY): Added.
	* infrun.c (proceed) [STEP_SKIPS_DELAY]: Check for a breakpoint in
	the delay slot.
1994-03-01 00:15:07 +00:00
Peter Schauer
084475102b * config/mips/tm-mips.h (FIX_CALL_DUMMY): For big endian targets,
error() on TYPE_CODE_FLT arguments whose size is greater than 8,
	swap all other TYPE_CODE_FLT arguments as mips_push_arguments
	ensures that floats are promoted to doubles before they are pushed
	on the stack.
1994-02-19 11:26:47 +00:00
Kung Hsu
031b390acb Modified Files:
tm-mips64.h tm-mips.h

	Change REGISTER_VIRTUAL_TYPE to handle 64 bit register.
1994-02-19 00:50:48 +00:00
Kung Hsu
4fbce2fdd2 Added Files:
bigmips64.mt idt64.mt idtl64.mt littlemips64.mt tm-bigmips64.h
	tm-idt64.h tm-idtl64.h tm-mips64.h

	Add the above files to support mips 64 bits target.
1994-02-18 01:21:36 +00:00
Jim Kingdon
14d7956255 * mips-tdep.c: Remove code which sets saved_regs from
init_extra_frame_info and put it in new function mips_find_saved_regs.
	(READ_FRAME_REG): Remove macro and replace uses with the expansion.
	* mips-tdep.c, config/mips/tm-mips.h: When examining ->saved_regs,
	check if it is NULL and call mips_find_saved_regs if so.
1994-01-31 21:22:44 +00:00
Peter Schauer
f0d2557ca4 * config/i386/tm-i386v.h, config/m68k/tm-m68k.h, config/mips/tm-mips.h,
config/vax/tm-vax.h (CALL_DUMMY_BREAKPOINT_OFFSET):  Define.
1994-01-07 21:02:39 +00:00
Jim Kingdon
f4f0d17487 * valops.c (call_function_by_hand, push_word), defs.h (push_word),
convex-xdep.c, m88k-nat.c, i386m3-nat.c, mips-tdep.c, mipsm3-nat.c,
	ns32km3-nat.c, remote-bug.c, m88k-tdep.c, remote-hms.c, remote-mips.c,
	config/gould/tm-np1.h, hppa-tdep.c (hppa_fix_call_dummy), remote-vx.c:
	Use REGISTER_SIZE, unsigned LONGEST, and
	{store,extract}_unsigned_integer, instead of sizeof
	(REGISTER_TYPE) and REGISTER_TYPE.
	* All tm.h files: Change REGISTER_TYPE to REGISTER_SIZE.
	* hppa-tdep.c (pa_print_fp_reg): Remove unused variable val.

	* Makefile.in (ALLDEPFILES): Remove i386ly-nat.c and m68kly-nat.c.
	Add lynx-nat.c.
1993-12-26 18:10:22 +00:00
Ian Lance Taylor
e03c0cc670 Added Irix 5 support.
* configure.in (mips-sgi-irix5*): New host and target.  Use irix5
	for both.
	* config/mips/irix5.mh, config/mips/irix5.mt,
	config/mips/xm-irix5.h, config/mips/nm-irix5.h,
	config/mips/tm-irix5.h, irix5-nat.c: New files for Irix 5 support.
	* mdebugread.c: New file, split out of mipsread.c.  Added
	elfmdebug_build_psymtabs routine.  Added some checks on external
	symbols.  Changed code to keep ecoff_debug_info and
	ecoff_debug_swap structs in the psymtab and in global pointers
	rather than retrieving them from the bfd.  Also changed to keep
	the pending list with the psymtab rather than the objfile (each
	psymtab for a single objfile points to the same pending list).
	* mipsread.c: Bulk of file moved into mdebugread.c, leaving just
	the sym_fns.
	* Makefile.in (SFILES): Added mdebugread.c.
	(OBS): Added mdebugread.o.
	(mdebugread.o): New target.
	* symfile.h: Declare mdebug_build_psymtabs and
	elfmdebug_build_psymtabs.
	* elfread.c (struct elfinfo): Added mdebugsect field.
	(elf_locate_sections): Remember location of .mdebug section.
	(elf_symfile_read): Call elfmdebug_build_psymtabs on .mdebug
	section.
	* infrun.c (AT_FUNCTION_START): Set to 0 if not already defined.
	(wait_for_inferior): Use AT_FUNCTION_START if it is defined to see
	if PC is at the start of a function.
	* mips-tdep.c (read_next_frame_reg): Use SIGFRAME_REG_SIZE, and
	give it a default definition.
	(mips_skip_prologue): Skip instructions which initialize $gp
	register.
	(in_sigtramp): New procedure, moved in from mipsread.c.
	* config/mips/tm-mips.h: Declare in_sigtramp.
1993-12-06 17:31:05 +00:00
Peter Schauer
ad09cb2bd3 * findvar.c (value_of_register, value_from_register),
hppa-tdep.c (pa_print_fp_reg), infcmd.c (do_registers_info),
	valops.c (value_assign):   Use REGISTER_CONVERT_TO_* only if
	REGISTER_CONVERTIBLE is defined, otherwise just copy the content.
	Pass desired type to REGISTER_CONVERT_TO_*.

	* config/m68k/tm-m68k.h, config/i960/tm-i960.h (REGISTER_CONVERT_*):
	Pass length of desired type to store/extract_floating.
	* config/i386/tm-arm.h, config/i386/tm-i386aix.h,
	config/i386/tm-sun386.h, config/i386/tm-symmetry.h,
	config/m88k/tm-m88k.h config/rs6000/tm-rs6000.h (REGISTER_CONVERT_*):
	Use extract_floating and store_floating with length of desired type.
	* config/m68k/tm-news.h (STORE,EXTRACT_RETURN_VALUE):  Add type
	parameter to REGISTER_CONVERT_*.

	* config/a29k/tm-a29k.h, config/convex/tm-convex.h,
	config/gould/tm-np1.h, config/gould/tm-pn.h, config/h8300/tm-h8300.h,
	config/h8500/tm-h8500.h, config/i386/tm-i386v.h,
	config/mips/tm-mips.h, config/ns32k/tm-merlin.h,
	config/ns32k/tm-umax.h, config/pa/tm-hppa.h, config/pyr/tm-pyr.h,
	config/sh/tm-sh.h, config/sparc/tm-sparc.h, config/tahoe/tm-tahoe.h,
	config/vax/tm-vax.h, config/z8k/tm-z8k.h (REGISTER_CONVERTIBLE,
	REGISTER_CONVERT_TO_RAW, REGISTER_CONVERT_TO_VIRTUAL):  Remove
	versions for which REGISTER_CONVERTIBLE is always false.
	* z8k-tdep.c (register_convert_to_virtual, register_convert_to_raw):
	Remove, no longer used.

	* alpha-tdep.c (alpha_register_convert_to_raw,
	alpha_register_convert_to_virtual):  New routines to handle
	the different raw formats in alpha floating point registers.
	* config/alpha/tm-alpha.h (REGISTER_CONVERTIBLE,
	REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW):  Use them.
1993-11-02 21:51:10 +00:00
Peter Schauer
0c28fe8dd4 * config/mips/tm-mips.h (STORE_STRUCT_RETURN): Define as noop as 1993-09-23 07:24:22 +00:00
Peter Schauer
8b15c4801a * config/mips/tm-mips.h (ECOFF_REG_TO_REGNUM): Define. 1993-09-16 07:39:41 +00:00
K. Richard Pixley
ade40d3153 bcopy -> memcpy 1993-09-01 20:37:15 +00:00
Jim Kingdon
e8239c2ffc * config/mips/tm-mips.h (EXTRACT_STRUCT_VALUE_ADDRESS):
Get struct return address from v0, not a0.
1993-08-27 00:33:20 +00:00