Commit Graph

188 Commits

Author SHA1 Message Date
Andrew Cagney b696009406 CARP:
Cleanup FRAME_CHAIN_VALID. Replace all macro's with functions.
1998-11-30 10:56:16 +00:00
Andrew Cagney 3a0c96a996 CARP:
Rewrite INNER_THAN so that it takes parameters.
1998-11-28 22:53:04 +00:00
Andrew Cagney 0233186932 CARP:
STEP_SKIPS_DELAY - add STEP_SKIPS_DELAY_P and rewrite use removing
  #ifdef's.
NO_SINGLE_STEP - replace with SOFTWARE_SINGLE_STEP_P +
  SOFTWARE_SINGLE_STEP.  Replace global variable one_stepped with static
  singlestep_breakpoints_inserted_p.  Cleanup infrun.c (scary!).
1998-11-27 23:35:08 +00:00
Andrew Cagney 679ce73102 CARP: Delete ABOUT_TO_RETURN across all targets. 1998-11-26 11:13:01 +00:00
Andrew Cagney afcad54a90 CARP: *BREAKPOINT*
Convert mn10300, MIPS and powerpc/rs6000 targets to use
BREAKPOINT_FROM_PC
Delete global variable memory_breakpoint_size.  Use BREAKPOINT_FROM_PC
instead.
1998-11-24 13:49:00 +00:00
Andrew Cagney 98760eab33 CARP: Convert macro definitions of USE_STRUCT_CONVENTION into target
specific functions.
1998-11-23 12:35:23 +00:00
Zdenek Radouch e01b420025 Modifications/fixes to support the ARM/ELF port. 1998-09-01 16:24:23 +00:00
Mark Alexander 3d3abf70e9 * mips-tdep.c (mask_address_p): New variable.
(mips_addr_bits_remove): Test mask_address_p to decide whether
	to mask off the upper 32 bits of addresses.
	(_initialize_mips_tdep): Add command to set mask_address_p.
	(mips_call_dummy_address): New function.
	* config/mips/tm-mips.h (CALL_DUMMY_ADDRESS): Redefine to
	call mips_call_dummy_address.
1998-07-30 21:07:14 +00:00
Michael Snyder a00dfa360a Tue Jun 23 11:14:04 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* config/mips/tm-irix5.h: Modify to work better on irix 6, by
	making FP registers 8 bytes instead of 4.
	REGISTER_BYTES: redefine.  REGISTER_BYTE(): redefine.
	REGISTER_VIRTUAL_TYPE: redefine.  MIPS_LAST_ARG_REGNUM: redefine.
	* irix5-nat.c (fetch_core_registers): read 8 bytes per FP register.
	* mips-tdep.c (FP_REGISTER_DOUBLE): new macro to distinguish
	targets with 8-byte FP registers (don't use TARGET_MIPS64).
	(STACK_ARGSIZE): new macro, how much space is taken up on the
	stack for each function argument (don't use TARGET_MIPS64).
	(mips_push_arguments): modify logic to work better on Irix 6
	(n32 ABI).
1998-06-23 18:22:43 +00:00
Gavin Romig-Koch 116b98b89a * mips/tm-tx39.h (MIPS_DEFAULT_FPU_TYPE) : Defined as MIPS_FPU_NONE.
* mips/tm-tx39l.h : Same.
1998-05-20 19:31:04 +00:00
Angela Marie Thomas b3c22f56b8 fix thinko that broke sanitized vr4100 build 1998-05-13 01:20:22 +00:00
Jason Molenda 84b5277c27 Add a "keep-vr4320" section so that tm-vr4320.h and vr4320.mt are
removed by default.
1998-04-21 19:23:31 +00:00
Frank Ch. Eigler 88ff9e0600 * MIPS CPU-specific dissasembly extensions. Now TM_PRINT_INSN_MACH from tm.h
sets a default mach for disassembly, just like sparc port.  c.f. PR 15371.


Tue Apr 21 11:20:54 1998  Frank Ch. Eigler  <fche@cygnus.com>

	* mips-tdep.c (gdb_print_insn_mips): Disassemble MIPS instructions
 	with subtarget-specific `mach', rather than fixed default.
	* config/mips/tm-mips.h (TM_PRINT_INSN_MACH): New macro, default
	disassembly `mach'.
start-sanitize-r5900
	* config/mips/tm-r5900.h (TM_PRINT_INSN_MACH): Override.
end-sanitize-r5900
start-sanitize-sky
	* config/mips/tm-txvu.h (TM_PRINT_INSN_MACH): Override.
end-sanitize-sky
1998-04-21 15:38:13 +00:00
John Metzler a47fe057fd Tue Apr 14 15:43:49 1998 John Metzler <jmetzler@cygnus.com>
* configure.tgt: Switch over to use tm-4320.h. Since I switched to
 	MIPS EABI the fixes are no longer backward compatible with 4300.
	* tm-vr4320.h: Added
	* vr4320.mt:   Added
1998-04-14 23:09:06 +00:00
Andrew Cagney d0136bf32a Make the SR, FSR and FIR registers 32 bits regardless of the target. 1998-04-01 14:26:37 +00:00
Jason Molenda c7ab546c0e Fri Mar 13 15:43:53 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* config/mips/xm-mips.h (CC_HAS_LONG_LONG):  Undefine for Ultrix
        when compiling with native cc, the compiler has broken long long
        support.
1998-03-13 23:45:51 +00:00
Angela Marie Thomas 2b9cac47f5 massive sanitization fixes 1998-03-13 13:09:32 +00:00
Ron Unrau 4f0f84e7fb elfread.c (elf_symtab_read): merge SYMBOL_IS_SPECIAL into MAKE_MSYMBOL_SPECIAL
config/mips/tm-mips.h: ditto
symtab.h: update comments re minimal_symbol->info
mips-tdep.c: globalize gdb_print_insn_mips
txvu-tdep.c: disassemble support
config/mips/tm-txvu.h: add vu_pc, use MAKE_MSYMBOL_SPECIAL, track updates
	from tm-r5900.h
1998-03-04 08:45:55 +00:00
John Metzler 439601f2a7 Supports mips64vr4111-*-elf
See tm-vrxxx.h
1998-03-04 00:08:00 +00:00
John Metzler 36b823d5e2 Defines a mips configuration which entails
Configuration triple mips64vr4111-*-elf
   64 bit architecture
   16 bit sub core
   32 bit ints and floats
   No floating point unit
   MIPS EABI interface
   Dwarf2 debugging format
1998-03-04 00:05:05 +00:00
Jeff Law 4cb366740e * config/mips/tm-mips64.h (TARGET_LONG_BIT): Allow final target to
override.
        (TARGET_LONG_LONG_BIT): Likewise.
        (TARGET_PTR_BIT): Likewise.
start-sanitize-r5900
        * config/mips/tm-r5900.h (TARGET_PTR_BIT): Define to 32 bits.
end-sanitize-r5900
1998-02-06 23:18:29 +00:00
Stan Shebs 3e269acb3e * coffread.c (coff_symtab_read) [SEM]: Remove code, macro can
never be defined.
	* dbxread.c (process_one_symbol) [BLOCK_ADDRESS_ABSOLUTE]:
	Remove, no longer needed.
	* hppa-tdep.c (N_SET_MAGIC): Remove, no longer used.
	* config/pa/xm-hppab.h (SEEK_SET, SEEK_CUR, SEEK_END): Ditto.
	* config/mips/tm-mipsm3.h (NUMERIC_REG_NAMES): Ditto.
	* config/mips/mipsm3.mt (TDEPFILES): Remove mipsread.o.
Cruft discovered while working on GDB internals manual
1998-01-30 03:54:54 +00:00
Ron Unrau 64708c01f5 Add sanitize-sky for txvu stuff. 1998-01-22 23:25:18 +00:00
Mark Alexander ec151a0075 Fix sanitization errors. 1998-01-22 18:23:43 +00:00
Stan Shebs 4133151f13 * configure.tgt (i386-*-mach*, m88*-*-mach3*): Remove config
recognition, no source files for these (note that the i386 Mach
	is pre-Mach 3).
	(mips*-*-mach3*, ns32k-*-mach3*): Fix file names.
	* config/mips/mipsel64.mt: Remove, never referenced.
1998-01-21 03:01:47 +00:00
Stan Shebs 8d9371a56f * config/mips/{r3900.mt,r3900l.mt,tm-r3900.h,tm-r3900l.h}:
Remove, no longer used.
1998-01-15 03:44:01 +00:00
Fred Fish 0728afad48 * configure.in (--with-mmalloc): Add new configure arg to use the
mmalloc package.  Default is to not use it.
	(START_INFERIOR_TRAPS_EXPECTED): Define to the integer 2, not
	the string "2".
	* acconfig.h (USE_MMALLOC, FORCE_MMCHECK): Add #undef.
	* configure: Regenerated.
	* config.in: Regenerated.
	* Makefile.in (MMALLOC_DIR, MMALLOC_SRC): Remove.
	(MMALLOC): Set using configure.
	(MMALLOC_CFLAGS): Set using configure.
	* config/i386/tm-linux.h (sys_quotactl): Define to 1 rather
	than just defining it.
	* mpw-make.sed: Undefine USE_MMALLOC rather than defining NO_MMALLOC.
	* utils.c (NO_MMALLOC): Use USE_MMALLOC instead.
	* objfiles.c: ditto.
	* defs.h: ditto.
	* config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Remove.
	* config/m68k/sun3os4.mh (MMALLOC_CFLAGS): Remove.
	* config/i386/cygwin32.mh (MMALLOC_CFLAGS): Remove.
	* config/alpha/alpha-osf3.mh (MMALLOC_CFLAGS): Remove.
	* config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Remove.
	* gdbserver/Makefile.in (MMALLOC_*): Remove.
	* config/rs6000/rs6000.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/rs6000/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/powerpc/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/powerpc/aix.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/ns32k/ns32km3.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/mips/mipsm3.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/mips/decstation.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/m88k/cxux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/i386/xm-windows.h (NO_MMALLOC, NO_MMCHECK): Remove.
	* config/i386/i386mk.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/i386/i386m3.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/i386/i386gnu.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/alpha/alpha-osf1.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
	* config/alpha/alpha-linux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
1998-01-14 04:28:29 +00:00
Mark Alexander 7e9576e098 * dve3900-rom.c: New file to support Densan DVE-R3900/20 board.
* monitor.c (monitor_debug): Move to utils.c, rename to puts_debug.
	(monitor_write_memory, monitor_read_memory, monitor_insert_breakpoint,
	monitor_remove_breakpoint): Remove useless address bits if current
	monitor has MO_ADDR_BITS_REMOVE flag.
	* monitor.h (MO_ADDR_BITS_REMOVE): Define.
	* utils.c (puts_debug): Formerly monitor_debug from monitor.c;
	move here and make public.  Add better support for carriage returns.
	* defs.h (puts_debug): Declare.
	* dsrec.c (load_srec): Use puts_debug to print remotedebug information.
	Output header record correctly.
	(make_srec): Output a header record instead of a termination record
	if sect is non-NULL (value is ignored), but abfd is NULL.
	* config/mips/tm-tx39.h (DEFAULT_MIPS_TYPE): Remove definition.
	(REGISTER_NAMES): Define to add R3900-specific registers.
	* config/mips/tm-tx39l.h: Ditto.
	* config/mips/tx39.mt (TDEPFILES): Add dve3900-rom.o and support files.
	* config/mips/tx39l.mt: Ditto.
1997-12-29 21:50:10 +00:00
Andrew Cagney e7ab2a476e (Mostly from Gavin Koch)
In dwarf2read.c, if the ABI is 32 bit and 64 bit addresses are encountered
discard the most significant 32 bits.
Use CORE_ADDR for address variables instead of long.
Add more explicit tx49 configur target.
Check/use sigaction/SA_RESTART in remote-sim.c
1997-12-15 12:38:05 +00:00
Frank Ch. Eigler eec1d04840 Added MIPS16 PC masking for disassembly. See PR 12149. 1997-10-09 20:26:08 +00:00
Stan Shebs e5d6b49ad9 Remove sanitized-out Magic Cap support, will never be released 1997-10-06 22:55:34 +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
Jeff Law 91ee277977 * configure.tgt: Set gdb_target to r5900.
* config/mips/tm-r5900.h, config/mips/r5900.mt: New files

        * mips-tdep.c (_initialize_mips_tdep): Allow target files to
        override default FPU type.
Brought over from r5900 branch.
1997-09-26 18:53:22 +00:00
Mark Alexander 2a3b391bbe Fix tx19 sanitization. 1997-09-17 20:59:27 +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 6886574678 Pulling changes over from tx39 branch 1997-07-22 21:00:21 +00:00
Michael Snyder 9ffd1eabd3 Cleaning up mips tx39 sanitization. 1997-07-22 20:58:56 +00:00
Michael Snyder 7631a23e41 Tue Jul 22 12:11:48 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* config/mips/tm-mips64.h: longs, long longs, and pointers
        are all 64 bits on EABI mips targets.
1997-07-22 19:14:46 +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
Michael Snyder 90154aff57 * fix earlier checkin error 1997-06-13 22:41:14 +00:00
Michael Snyder 00e40d11f4 Fri Jun 13 13:44:47 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* config/mips/tm-tx39[l].h, tx39[l].mt: change r3900 target to tx39.
	[also clean up sanitization]
1997-06-13 20:53:34 +00:00
Michael Snyder 3d400c0939 * configure.tgt: add mipsr3900-elf target
* config/mips/r3900*.mt config/mips/tm-r3900*.h: ditto
1997-06-03 23:28:54 +00:00
Stu Grossman 178b282ba9 * config/alpha/alpha-osf3.mh config/i386/{i386gnu linux}.mh
config/mips/{embed embed64 embedl embedl64 vr4300 vr4300el vr5000
	vr5000el}.mt config/powerpc/{aix aix4}.mh config/rs6000/{aix
	aix4}.mh config/sh/sh.mt config/sparc/sp64sim.mt:
start-sanitize-v850
	config/v850/v850.mt:
end-sanitize-v850
	Remove -lm.  That's now handled by configure.
1997-04-22 17:13:41 +00:00
Geoffrey Noer 234a732de0 Thu Apr 10 13:20:53 1997 Geoffrey Noer <noer@cygnus.com>
* procfs.c: Substantial (but incomplete) changes to support
        sysv4.2mp procfs as implemented in UnixWare 2.1.  The procinfo
        struct now has substructs like struct flt_ctl instead of
        just a fltset_t and has a ctl_fd, status_fd, as_fd, and
        map_fd instead of a single fd.  Non-sysv4.2mp procfs models
        still have the structs and multiple fds, but don't use the
        entire struct and the four fds all point to the same thing.
        We use PROCFS_USE_READ_WRITE to decide whether to talk to
        procfs with reads/writes or use ioctl instead.  We use
        HAVE_MULTIPLE_PROC_FDS to determine whether procfs really has
        multiple fds or not.  PROC_NAME_FMT is split out into
        CTL_PROC_NAME_FMT, AS_PROC_NAME_FMT, MAP_PROC_NAME_FMT,
        STATUS_PROC_NAME_FMT.

        (procfs_notice_signals): now a necessary wrapper around
        (notice_signals): which are the new guts for noticing signals
        (open_proc_file): gets a new flag arg used in sysv4.2mp to
        determine whether or not to attempt to open the ctl_fd.
        (procfs_read_status): new local function, reads procfs status
        (procfs_write_pcwstop): new local function, writes a PCWSTOP
        (procfs_write_pckill): new local function, writes a PCKILL
        (unconditionally_kill_inferior): remove signo since we now
        just call procfs_write_pckill().
        (procfs_xfer_memory): call lseek with SEEK_SET rather than 0
        (proc_iterate_over_mappings): the whole function is ifdefed
        on UNIXWARE to keep things readable.

        Expanded the syscall_table to include new potential sysv4.2mp
        members.  Note that all ifdefs of UNIXWARE should be eliminated
        if possible or renamed to describe what's being selected for a
        bit better.  Sysv4.2mp and IRIX both have SYS_sproc so the
        IRIX specific code now also checks it's not UNIXWARE.

        * config/i386/tm-i386v42mp.h: also define HAVE_PSTATUS_T,
        HAVE_NO_PRRUN_T, PROCFS_USE_READ_WRITE, and UNIXWARE
        * config/mips/nm-irix4.h: set CTL_PROC_NAME_FMT et al to
        "/debug/%d" as PROC_NAME_FMT used to be
1997-04-10 20:24: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 33ef0f9387 First cut at supporting simulators in gdbserver:
* configure, configure.in: Allow gdbserver to be configured
	for cross-target environments.
	* gdbserver/Makefile.in: Add simulator support.
	* gdbserver/configure.in: Eliminate assumption that host == target.
	Simplify using gdb/configure.tgt and gdb/configure.host.
	Fix other minor configuration errors.
	* gdbserver/low-sparc.c: Fix compile error.
	* gdbserver/remote-utils.c: Eliminate assumption that registers
	and addresses are four bytes.  Fix minor compile errors and warnings.
	* gdbserver/server.c: Rewrite numerous instances of identical code
	for starting inferior processes to call new function start_inferior.
	Eliminate assumption that registers and addresses are four bytes.
	* gdbserver/server.h: Add missing prototypes to eliminate compiler
	warnings.
	* gdbserver/low-sim.c: New file to mate gdbserver with simulators.
	* config/mips/vr5000.mt: Add Vr5000 simulator support to gdbserver.
	* config/i386/linux.mh: Eliminate gdbserver support as a first step
	in moving such support from host to target makefile fragments.
	* config/i386/linux.mt: Move gdbserver support here from linux.mh.
1997-03-11 15:49:20 +00:00