mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-21 01:12:32 +08:00
2003-02-04 Andrew Cagney <ac131313@redhat.com>
* NEWS: Mention that the mn10200-elf is obsolete. * configure.tgt: Obsolete mn10200-*-* target. * breakpoint.c (update_breakpoints_after_exec): Update comment to mention that the mn10200 is obsolete. * breakpoint.h: Ditto. * MAINTAINERS: Mark the mn10200-elf as obsolete. * config/mn10200/mn10200.mt: Obsolete file. * config/mn10200/tm-mn10200.h: Obsolete file. * mn10200-tdep.c: Obsolete file. Index: testsuite/ChangeLog 2003-02-04 Andrew Cagney <ac131313@redhat.com> * gdb.disasm/mn10200.exp: Obsolete file. * gdb.trace/Makefile.in (clean mostlyclean): Remove mn10200. * gdb.disasm/Makefile.in (clean mostlyclean): Remove mn10200. * gdb.base/watchpoint.exp: Mark the mn10200 xfails as obsolete.
This commit is contained in:
parent
fd2299bd8d
commit
67f1660612
@ -1,3 +1,15 @@
|
||||
2003-02-04 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* NEWS: Mention that the mn10200-elf is obsolete.
|
||||
* configure.tgt: Obsolete mn10200-*-* target.
|
||||
* breakpoint.c (update_breakpoints_after_exec): Update comment to
|
||||
mention that the mn10200 is obsolete.
|
||||
* breakpoint.h: Ditto.
|
||||
* MAINTAINERS: Mark the mn10200-elf as obsolete.
|
||||
* config/mn10200/mn10200.mt: Obsolete file.
|
||||
* config/mn10200/tm-mn10200.h: Obsolete file.
|
||||
* mn10200-tdep.c: Obsolete file.
|
||||
|
||||
2003-02-04 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* MAINTAINERS: Mark h8500 as obsolete.
|
||||
|
@ -112,9 +112,7 @@ maintainer works with the native maintainer when resolving API issues.
|
||||
mips --target=mips-elf ,-Werror
|
||||
Andrew Cagney cagney@redhat.com
|
||||
|
||||
mn10200 --target=mn10200-elf ,-Werror
|
||||
Maintenance only
|
||||
OBSOLETE candidate, not multi-arch
|
||||
mn10200 (--target=mn10200-elf OBSOLETE)
|
||||
|
||||
mn10300 --target=mn10300-elf ,-Werror
|
||||
Maintenance only
|
||||
|
1
gdb/NEWS
1
gdb/NEWS
@ -37,6 +37,7 @@ been commented out. Unless there is activity to revive these
|
||||
configurations, the next release of GDB will have their sources
|
||||
permanently REMOVED.
|
||||
|
||||
Matsushita MN10200 w/simulator mn10200-*-*
|
||||
H8/500 simulator h8500-hitachi-hms or h8500hms
|
||||
|
||||
* REMOVED configurations and files
|
||||
|
@ -1238,8 +1238,8 @@ update_breakpoints_after_exec (void)
|
||||
automagically. Certainly on HP-UX that's true.
|
||||
|
||||
Jim Blandy <jimb@redhat.com>: Actually, zero is a perfectly
|
||||
valid code address on some platforms (like the mn10200 and
|
||||
mn10300 simulators). We shouldn't assign any special
|
||||
valid code address on some platforms (like the OBSOLETE mn10200
|
||||
and mn10300 simulators). We shouldn't assign any special
|
||||
interpretation to a breakpoint with a zero address. And in
|
||||
fact, GDB doesn't --- I can't see what that comment above is
|
||||
talking about. As far as I can tell, setting the address of a
|
||||
|
@ -203,10 +203,10 @@ struct breakpoint
|
||||
/* Number assigned to distinguish breakpoints. */
|
||||
int number;
|
||||
|
||||
/* Address to break at.
|
||||
Note that zero is a perfectly valid code address on some
|
||||
platforms (for example, the mn10200 and mn10300 simulators).
|
||||
NULL is not a special value for this field. */
|
||||
/* Address to break at. Note that zero is a perfectly valid code
|
||||
address on some platforms (for example, the OBSOLETE mn10200
|
||||
and mn10300 simulators). NULL is not a special value for this
|
||||
field. */
|
||||
CORE_ADDR address;
|
||||
|
||||
/* Line number of this address. */
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Target: Matsushita mn10200
|
||||
TDEPFILES= mn10200-tdep.o
|
||||
TM_FILE= tm-mn10200.h
|
||||
|
||||
SIM_OBS = remote-sim.o
|
||||
SIM = ../sim/mn10200/libsim.a
|
||||
# OBSOLETE # Target: Matsushita mn10200
|
||||
# OBSOLETE TDEPFILES= mn10200-tdep.o
|
||||
# OBSOLETE TM_FILE= tm-mn10200.h
|
||||
# OBSOLETE
|
||||
# OBSOLETE SIM_OBS = remote-sim.o
|
||||
# OBSOLETE SIM = ../sim/mn10200/libsim.a
|
||||
|
@ -1,214 +1,214 @@
|
||||
/* Parameters for execution on a Matsushita mn10200 processor.
|
||||
|
||||
Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software
|
||||
Foundation, Inc.
|
||||
|
||||
Contributed by Geoffrey Noer <noer@cygnus.com>
|
||||
|
||||
This file is part of GDB.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* FIXME: cagney/2001-03-01: The below macros refer to functions
|
||||
declared in "regcache.h". The ``correct fix'' is to convert those
|
||||
macros into functions. */
|
||||
#include "regcache.h"
|
||||
#include "symtab.h" /* For namespace_enum. */
|
||||
#include "symfile.h" /* For entry_point_address(). */
|
||||
|
||||
/* ints are only 16bits on the mn10200. */
|
||||
#undef TARGET_INT_BIT
|
||||
#define TARGET_INT_BIT 16
|
||||
|
||||
/* The mn10200 doesn't support long long types. */
|
||||
#undef TARGET_LONG_LONG_BIT
|
||||
#define TARGET_LONG_LONG_BIT 32
|
||||
|
||||
/* The mn10200 doesn't support double or long double either. */
|
||||
#undef TARGET_DOUBLE_BIT
|
||||
#undef TARGET_LONG_DOUBLE_BIT
|
||||
#define TARGET_DOUBLE_BIT 32
|
||||
#define TARGET_LONG_DOUBLE_BIT 32
|
||||
|
||||
/* Not strictly correct, but the machine independent code is not
|
||||
ready to handle any of the basic sizes not being a power of two. */
|
||||
#undef TARGET_PTR_BIT
|
||||
#define TARGET_PTR_BIT 32
|
||||
|
||||
/* The mn10200 really has 24 bit registers but the simulator reads/writes
|
||||
them as 32bit values, so we claim they're 32bits each. This may have
|
||||
to be tweaked if the Matsushita emulator/board really deals with them
|
||||
as 24bits each. */
|
||||
#define REGISTER_SIZE 4
|
||||
|
||||
#define MAX_REGISTER_RAW_SIZE REGISTER_SIZE
|
||||
#define NUM_REGS 11
|
||||
|
||||
#define REGISTER_BYTES (NUM_REGS * REGISTER_SIZE)
|
||||
|
||||
#define REGISTER_NAMES \
|
||||
{ "d0", "d1", "d2", "d3", "a0", "a1", "a2", "sp", \
|
||||
"pc", "mdr", "psw"}
|
||||
|
||||
#define FP_REGNUM 6
|
||||
#define SP_REGNUM 7
|
||||
#define PC_REGNUM 8
|
||||
#define MDR_REGNUM 9
|
||||
#define PSW_REGNUM 10
|
||||
|
||||
/* Treat the registers as 32bit values. */
|
||||
#define REGISTER_VIRTUAL_TYPE(REG) builtin_type_long
|
||||
|
||||
#define REGISTER_BYTE(REG) ((REG) * REGISTER_SIZE)
|
||||
#define REGISTER_VIRTUAL_SIZE(REG) REGISTER_SIZE
|
||||
#define REGISTER_RAW_SIZE(REG) REGISTER_SIZE
|
||||
|
||||
#define MAX_REGISTER_VIRTUAL_SIZE REGISTER_SIZE
|
||||
|
||||
/* The breakpoint instruction must be the same size as te smallest
|
||||
instruction in the instruction set.
|
||||
|
||||
The Matsushita mn10x00 processors have single byte instructions
|
||||
so we need a single byte breakpoint. Matsushita hasn't defined
|
||||
one, so we defined it ourselves.
|
||||
|
||||
0xff is the only available single byte insn left on the mn10200. */
|
||||
#define BREAKPOINT {0xff}
|
||||
|
||||
#define FUNCTION_START_OFFSET 0
|
||||
|
||||
#define DECR_PC_AFTER_BREAK 0
|
||||
|
||||
/* Stacks grow the normal way. */
|
||||
#define INNER_THAN(lhs,rhs) ((lhs) < (rhs))
|
||||
|
||||
#define SAVED_PC_AFTER_CALL(frame) \
|
||||
(read_memory_integer (read_register (SP_REGNUM), REGISTER_SIZE) & 0xffffff)
|
||||
|
||||
struct frame_info;
|
||||
struct frame_saved_regs;
|
||||
struct type;
|
||||
struct value;
|
||||
|
||||
#define EXTRA_FRAME_INFO struct frame_saved_regs fsr; int status; int stack_size;
|
||||
|
||||
extern void mn10200_init_extra_frame_info (struct frame_info *);
|
||||
#define INIT_EXTRA_FRAME_INFO(fromleaf, fi) mn10200_init_extra_frame_info (fi)
|
||||
#define DEPRECATED_INIT_FRAME_PC(x,y) (init_frame_pc_noop (x, y))
|
||||
#define INIT_FRAME_PC_FIRST(x,y) (init_frame_pc_noop (x, y))
|
||||
|
||||
extern void mn10200_frame_find_saved_regs (struct frame_info *,
|
||||
struct frame_saved_regs *);
|
||||
#define FRAME_FIND_SAVED_REGS(fi, regaddr) regaddr = fi->fsr
|
||||
|
||||
extern CORE_ADDR mn10200_frame_chain (struct frame_info *);
|
||||
#define FRAME_CHAIN(fi) mn10200_frame_chain (fi)
|
||||
|
||||
extern CORE_ADDR mn10200_find_callers_reg (struct frame_info *, int);
|
||||
extern CORE_ADDR mn10200_frame_saved_pc (struct frame_info *);
|
||||
#define FRAME_SAVED_PC(FI) (mn10200_frame_saved_pc (FI))
|
||||
|
||||
/* Extract from an array REGBUF containing the (raw) register state
|
||||
a function return value of type TYPE, and copy that, in virtual format,
|
||||
into VALBUF. */
|
||||
|
||||
#define DEPRECATED_EXTRACT_RETURN_VALUE(TYPE, REGBUF, VALBUF) \
|
||||
{ \
|
||||
if (TYPE_LENGTH (TYPE) > 8) \
|
||||
internal_error (__FILE__, __LINE__, "failed internal consistency check"); \
|
||||
else if (TYPE_LENGTH (TYPE) > 2 && TYPE_CODE (TYPE) != TYPE_CODE_PTR) \
|
||||
{ \
|
||||
memcpy (VALBUF, REGBUF + REGISTER_BYTE (0), 2); \
|
||||
memcpy (VALBUF + 2, REGBUF + REGISTER_BYTE (1), 2); \
|
||||
} \
|
||||
else if (TYPE_CODE (TYPE) == TYPE_CODE_PTR)\
|
||||
{ \
|
||||
memcpy (VALBUF, REGBUF + REGISTER_BYTE (4), TYPE_LENGTH (TYPE)); \
|
||||
} \
|
||||
else \
|
||||
{ \
|
||||
memcpy (VALBUF, REGBUF + REGISTER_BYTE (0), TYPE_LENGTH (TYPE)); \
|
||||
} \
|
||||
}
|
||||
|
||||
#define DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS(REGBUF) \
|
||||
extract_address (REGBUF + REGISTER_BYTE (4), \
|
||||
REGISTER_RAW_SIZE (4))
|
||||
|
||||
#define DEPRECATED_STORE_RETURN_VALUE(TYPE, VALBUF) \
|
||||
{ \
|
||||
if (TYPE_LENGTH (TYPE) > 8) \
|
||||
internal_error (__FILE__, __LINE__, "failed internal consistency check"); \
|
||||
else if (TYPE_LENGTH (TYPE) > 2 && TYPE_CODE (TYPE) != TYPE_CODE_PTR) \
|
||||
{ \
|
||||
deprecated_write_register_bytes (REGISTER_BYTE (0), VALBUF, 2); \
|
||||
deprecated_write_register_bytes (REGISTER_BYTE (1), VALBUF + 2, 2); \
|
||||
} \
|
||||
else if (TYPE_CODE (TYPE) == TYPE_CODE_PTR)\
|
||||
{ \
|
||||
deprecated_write_register_bytes (REGISTER_BYTE (4), VALBUF, TYPE_LENGTH (TYPE)); \
|
||||
} \
|
||||
else \
|
||||
{ \
|
||||
deprecated_write_register_bytes (REGISTER_BYTE (0), VALBUF, TYPE_LENGTH (TYPE)); \
|
||||
} \
|
||||
}
|
||||
|
||||
|
||||
extern CORE_ADDR mn10200_store_struct_return (CORE_ADDR addr, CORE_ADDR sp);
|
||||
#define STORE_STRUCT_RETURN(STRUCT_ADDR, SP) \
|
||||
(SP) = mn10200_store_struct_return (STRUCT_ADDR, SP)
|
||||
|
||||
extern CORE_ADDR mn10200_skip_prologue (CORE_ADDR);
|
||||
#define SKIP_PROLOGUE(pc) (mn10200_skip_prologue (pc))
|
||||
|
||||
#define FRAME_ARGS_SKIP 0
|
||||
|
||||
#define FRAME_ARGS_ADDRESS(fi) (get_frame_base (fi))
|
||||
#define FRAME_LOCALS_ADDRESS(fi) (get_frame_base (fi))
|
||||
#define FRAME_NUM_ARGS(fi) (-1)
|
||||
|
||||
extern void mn10200_pop_frame (struct frame_info *);
|
||||
#define POP_FRAME mn10200_pop_frame (get_current_frame ())
|
||||
|
||||
#define DEPRECATED_USE_GENERIC_DUMMY_FRAMES 1
|
||||
#define CALL_DUMMY {0}
|
||||
#define CALL_DUMMY_START_OFFSET (0)
|
||||
#define CALL_DUMMY_BREAKPOINT_OFFSET (0)
|
||||
#define CALL_DUMMY_LOCATION AT_ENTRY_POINT
|
||||
#define FIX_CALL_DUMMY(DUMMY, START, FUNADDR, NARGS, ARGS, TYPE, GCCP)
|
||||
#define CALL_DUMMY_ADDRESS() entry_point_address ()
|
||||
|
||||
extern CORE_ADDR mn10200_push_return_address (CORE_ADDR, CORE_ADDR);
|
||||
#define PUSH_RETURN_ADDRESS(PC, SP) mn10200_push_return_address (PC, SP)
|
||||
|
||||
#define PUSH_DUMMY_FRAME generic_push_dummy_frame ()
|
||||
|
||||
extern CORE_ADDR mn10200_push_arguments (int, struct value **, CORE_ADDR,
|
||||
unsigned char, CORE_ADDR);
|
||||
#define PUSH_ARGUMENTS(NARGS, ARGS, SP, STRUCT_RETURN, STRUCT_ADDR) \
|
||||
(mn10200_push_arguments (NARGS, ARGS, SP, STRUCT_RETURN, STRUCT_ADDR))
|
||||
|
||||
#define DEPRECATED_PC_IN_CALL_DUMMY(PC, SP, FP) generic_pc_in_call_dummy (PC, SP, FP)
|
||||
|
||||
#define REG_STRUCT_HAS_ADDR(gcc_p,TYPE) \
|
||||
(TYPE_LENGTH (TYPE) > 8)
|
||||
|
||||
extern use_struct_convention_fn mn10200_use_struct_convention;
|
||||
#define USE_STRUCT_CONVENTION(GCC_P, TYPE) mn10200_use_struct_convention (GCC_P, TYPE)
|
||||
|
||||
/* Define this for Wingdb */
|
||||
#define TARGET_MN10200
|
||||
// OBSOLETE /* Parameters for execution on a Matsushita mn10200 processor.
|
||||
// OBSOLETE
|
||||
// OBSOLETE Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software
|
||||
// OBSOLETE Foundation, Inc.
|
||||
// OBSOLETE
|
||||
// OBSOLETE Contributed by Geoffrey Noer <noer@cygnus.com>
|
||||
// OBSOLETE
|
||||
// OBSOLETE This file is part of GDB.
|
||||
// OBSOLETE
|
||||
// OBSOLETE This program is free software; you can redistribute it and/or modify
|
||||
// OBSOLETE it under the terms of the GNU General Public License as published by
|
||||
// OBSOLETE the Free Software Foundation; either version 2 of the License, or
|
||||
// OBSOLETE (at your option) any later version.
|
||||
// OBSOLETE
|
||||
// OBSOLETE This program is distributed in the hope that it will be useful,
|
||||
// OBSOLETE but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// OBSOLETE MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// OBSOLETE GNU General Public License for more details.
|
||||
// OBSOLETE
|
||||
// OBSOLETE You should have received a copy of the GNU General Public License
|
||||
// OBSOLETE along with this program; if not, write to the Free Software
|
||||
// OBSOLETE Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
// OBSOLETE Boston, MA 02111-1307, USA. */
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* FIXME: cagney/2001-03-01: The below macros refer to functions
|
||||
// OBSOLETE declared in "regcache.h". The ``correct fix'' is to convert those
|
||||
// OBSOLETE macros into functions. */
|
||||
// OBSOLETE #include "regcache.h"
|
||||
// OBSOLETE #include "symtab.h" /* For namespace_enum. */
|
||||
// OBSOLETE #include "symfile.h" /* For entry_point_address(). */
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* ints are only 16bits on the mn10200. */
|
||||
// OBSOLETE #undef TARGET_INT_BIT
|
||||
// OBSOLETE #define TARGET_INT_BIT 16
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* The mn10200 doesn't support long long types. */
|
||||
// OBSOLETE #undef TARGET_LONG_LONG_BIT
|
||||
// OBSOLETE #define TARGET_LONG_LONG_BIT 32
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* The mn10200 doesn't support double or long double either. */
|
||||
// OBSOLETE #undef TARGET_DOUBLE_BIT
|
||||
// OBSOLETE #undef TARGET_LONG_DOUBLE_BIT
|
||||
// OBSOLETE #define TARGET_DOUBLE_BIT 32
|
||||
// OBSOLETE #define TARGET_LONG_DOUBLE_BIT 32
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* Not strictly correct, but the machine independent code is not
|
||||
// OBSOLETE ready to handle any of the basic sizes not being a power of two. */
|
||||
// OBSOLETE #undef TARGET_PTR_BIT
|
||||
// OBSOLETE #define TARGET_PTR_BIT 32
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* The mn10200 really has 24 bit registers but the simulator reads/writes
|
||||
// OBSOLETE them as 32bit values, so we claim they're 32bits each. This may have
|
||||
// OBSOLETE to be tweaked if the Matsushita emulator/board really deals with them
|
||||
// OBSOLETE as 24bits each. */
|
||||
// OBSOLETE #define REGISTER_SIZE 4
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define MAX_REGISTER_RAW_SIZE REGISTER_SIZE
|
||||
// OBSOLETE #define NUM_REGS 11
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define REGISTER_BYTES (NUM_REGS * REGISTER_SIZE)
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define REGISTER_NAMES \
|
||||
// OBSOLETE { "d0", "d1", "d2", "d3", "a0", "a1", "a2", "sp", \
|
||||
// OBSOLETE "pc", "mdr", "psw"}
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define FP_REGNUM 6
|
||||
// OBSOLETE #define SP_REGNUM 7
|
||||
// OBSOLETE #define PC_REGNUM 8
|
||||
// OBSOLETE #define MDR_REGNUM 9
|
||||
// OBSOLETE #define PSW_REGNUM 10
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* Treat the registers as 32bit values. */
|
||||
// OBSOLETE #define REGISTER_VIRTUAL_TYPE(REG) builtin_type_long
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define REGISTER_BYTE(REG) ((REG) * REGISTER_SIZE)
|
||||
// OBSOLETE #define REGISTER_VIRTUAL_SIZE(REG) REGISTER_SIZE
|
||||
// OBSOLETE #define REGISTER_RAW_SIZE(REG) REGISTER_SIZE
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define MAX_REGISTER_VIRTUAL_SIZE REGISTER_SIZE
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* The breakpoint instruction must be the same size as te smallest
|
||||
// OBSOLETE instruction in the instruction set.
|
||||
// OBSOLETE
|
||||
// OBSOLETE The Matsushita mn10x00 processors have single byte instructions
|
||||
// OBSOLETE so we need a single byte breakpoint. Matsushita hasn't defined
|
||||
// OBSOLETE one, so we defined it ourselves.
|
||||
// OBSOLETE
|
||||
// OBSOLETE 0xff is the only available single byte insn left on the mn10200. */
|
||||
// OBSOLETE #define BREAKPOINT {0xff}
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define FUNCTION_START_OFFSET 0
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define DECR_PC_AFTER_BREAK 0
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* Stacks grow the normal way. */
|
||||
// OBSOLETE #define INNER_THAN(lhs,rhs) ((lhs) < (rhs))
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define SAVED_PC_AFTER_CALL(frame) \
|
||||
// OBSOLETE (read_memory_integer (read_register (SP_REGNUM), REGISTER_SIZE) & 0xffffff)
|
||||
// OBSOLETE
|
||||
// OBSOLETE struct frame_info;
|
||||
// OBSOLETE struct frame_saved_regs;
|
||||
// OBSOLETE struct type;
|
||||
// OBSOLETE struct value;
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define EXTRA_FRAME_INFO struct frame_saved_regs fsr; int status; int stack_size;
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern void mn10200_init_extra_frame_info (struct frame_info *);
|
||||
// OBSOLETE #define INIT_EXTRA_FRAME_INFO(fromleaf, fi) mn10200_init_extra_frame_info (fi)
|
||||
// OBSOLETE #define DEPRECATED_INIT_FRAME_PC(x,y) (init_frame_pc_noop (x, y))
|
||||
// OBSOLETE #define INIT_FRAME_PC_FIRST(x,y) (init_frame_pc_noop (x, y))
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern void mn10200_frame_find_saved_regs (struct frame_info *,
|
||||
// OBSOLETE struct frame_saved_regs *);
|
||||
// OBSOLETE #define FRAME_FIND_SAVED_REGS(fi, regaddr) regaddr = fi->fsr
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern CORE_ADDR mn10200_frame_chain (struct frame_info *);
|
||||
// OBSOLETE #define FRAME_CHAIN(fi) mn10200_frame_chain (fi)
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern CORE_ADDR mn10200_find_callers_reg (struct frame_info *, int);
|
||||
// OBSOLETE extern CORE_ADDR mn10200_frame_saved_pc (struct frame_info *);
|
||||
// OBSOLETE #define FRAME_SAVED_PC(FI) (mn10200_frame_saved_pc (FI))
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* Extract from an array REGBUF containing the (raw) register state
|
||||
// OBSOLETE a function return value of type TYPE, and copy that, in virtual format,
|
||||
// OBSOLETE into VALBUF. */
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define DEPRECATED_EXTRACT_RETURN_VALUE(TYPE, REGBUF, VALBUF) \
|
||||
// OBSOLETE { \
|
||||
// OBSOLETE if (TYPE_LENGTH (TYPE) > 8) \
|
||||
// OBSOLETE internal_error (__FILE__, __LINE__, "failed internal consistency check"); \
|
||||
// OBSOLETE else if (TYPE_LENGTH (TYPE) > 2 && TYPE_CODE (TYPE) != TYPE_CODE_PTR) \
|
||||
// OBSOLETE { \
|
||||
// OBSOLETE memcpy (VALBUF, REGBUF + REGISTER_BYTE (0), 2); \
|
||||
// OBSOLETE memcpy (VALBUF + 2, REGBUF + REGISTER_BYTE (1), 2); \
|
||||
// OBSOLETE } \
|
||||
// OBSOLETE else if (TYPE_CODE (TYPE) == TYPE_CODE_PTR)\
|
||||
// OBSOLETE { \
|
||||
// OBSOLETE memcpy (VALBUF, REGBUF + REGISTER_BYTE (4), TYPE_LENGTH (TYPE)); \
|
||||
// OBSOLETE } \
|
||||
// OBSOLETE else \
|
||||
// OBSOLETE { \
|
||||
// OBSOLETE memcpy (VALBUF, REGBUF + REGISTER_BYTE (0), TYPE_LENGTH (TYPE)); \
|
||||
// OBSOLETE } \
|
||||
// OBSOLETE }
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS(REGBUF) \
|
||||
// OBSOLETE extract_address (REGBUF + REGISTER_BYTE (4), \
|
||||
// OBSOLETE REGISTER_RAW_SIZE (4))
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define DEPRECATED_STORE_RETURN_VALUE(TYPE, VALBUF) \
|
||||
// OBSOLETE { \
|
||||
// OBSOLETE if (TYPE_LENGTH (TYPE) > 8) \
|
||||
// OBSOLETE internal_error (__FILE__, __LINE__, "failed internal consistency check"); \
|
||||
// OBSOLETE else if (TYPE_LENGTH (TYPE) > 2 && TYPE_CODE (TYPE) != TYPE_CODE_PTR) \
|
||||
// OBSOLETE { \
|
||||
// OBSOLETE deprecated_write_register_bytes (REGISTER_BYTE (0), VALBUF, 2); \
|
||||
// OBSOLETE deprecated_write_register_bytes (REGISTER_BYTE (1), VALBUF + 2, 2); \
|
||||
// OBSOLETE } \
|
||||
// OBSOLETE else if (TYPE_CODE (TYPE) == TYPE_CODE_PTR)\
|
||||
// OBSOLETE { \
|
||||
// OBSOLETE deprecated_write_register_bytes (REGISTER_BYTE (4), VALBUF, TYPE_LENGTH (TYPE)); \
|
||||
// OBSOLETE } \
|
||||
// OBSOLETE else \
|
||||
// OBSOLETE { \
|
||||
// OBSOLETE deprecated_write_register_bytes (REGISTER_BYTE (0), VALBUF, TYPE_LENGTH (TYPE)); \
|
||||
// OBSOLETE } \
|
||||
// OBSOLETE }
|
||||
// OBSOLETE
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern CORE_ADDR mn10200_store_struct_return (CORE_ADDR addr, CORE_ADDR sp);
|
||||
// OBSOLETE #define STORE_STRUCT_RETURN(STRUCT_ADDR, SP) \
|
||||
// OBSOLETE (SP) = mn10200_store_struct_return (STRUCT_ADDR, SP)
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern CORE_ADDR mn10200_skip_prologue (CORE_ADDR);
|
||||
// OBSOLETE #define SKIP_PROLOGUE(pc) (mn10200_skip_prologue (pc))
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define FRAME_ARGS_SKIP 0
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define FRAME_ARGS_ADDRESS(fi) (get_frame_base (fi))
|
||||
// OBSOLETE #define FRAME_LOCALS_ADDRESS(fi) (get_frame_base (fi))
|
||||
// OBSOLETE #define FRAME_NUM_ARGS(fi) (-1)
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern void mn10200_pop_frame (struct frame_info *);
|
||||
// OBSOLETE #define POP_FRAME mn10200_pop_frame (get_current_frame ())
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define DEPRECATED_USE_GENERIC_DUMMY_FRAMES 1
|
||||
// OBSOLETE #define CALL_DUMMY {0}
|
||||
// OBSOLETE #define CALL_DUMMY_START_OFFSET (0)
|
||||
// OBSOLETE #define CALL_DUMMY_BREAKPOINT_OFFSET (0)
|
||||
// OBSOLETE #define CALL_DUMMY_LOCATION AT_ENTRY_POINT
|
||||
// OBSOLETE #define FIX_CALL_DUMMY(DUMMY, START, FUNADDR, NARGS, ARGS, TYPE, GCCP)
|
||||
// OBSOLETE #define CALL_DUMMY_ADDRESS() entry_point_address ()
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern CORE_ADDR mn10200_push_return_address (CORE_ADDR, CORE_ADDR);
|
||||
// OBSOLETE #define PUSH_RETURN_ADDRESS(PC, SP) mn10200_push_return_address (PC, SP)
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define PUSH_DUMMY_FRAME generic_push_dummy_frame ()
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern CORE_ADDR mn10200_push_arguments (int, struct value **, CORE_ADDR,
|
||||
// OBSOLETE unsigned char, CORE_ADDR);
|
||||
// OBSOLETE #define PUSH_ARGUMENTS(NARGS, ARGS, SP, STRUCT_RETURN, STRUCT_ADDR) \
|
||||
// OBSOLETE (mn10200_push_arguments (NARGS, ARGS, SP, STRUCT_RETURN, STRUCT_ADDR))
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define DEPRECATED_PC_IN_CALL_DUMMY(PC, SP, FP) generic_pc_in_call_dummy (PC, SP, FP)
|
||||
// OBSOLETE
|
||||
// OBSOLETE #define REG_STRUCT_HAS_ADDR(gcc_p,TYPE) \
|
||||
// OBSOLETE (TYPE_LENGTH (TYPE) > 8)
|
||||
// OBSOLETE
|
||||
// OBSOLETE extern use_struct_convention_fn mn10200_use_struct_convention;
|
||||
// OBSOLETE #define USE_STRUCT_CONVENTION(GCC_P, TYPE) mn10200_use_struct_convention (GCC_P, TYPE)
|
||||
// OBSOLETE
|
||||
// OBSOLETE /* Define this for Wingdb */
|
||||
// OBSOLETE #define TARGET_MN10200
|
||||
|
@ -185,7 +185,7 @@ mips*-*-riscos*) gdb_target=bigmips ;;
|
||||
mips*-*-vxworks*) gdb_target=vxmips ;;
|
||||
mips*-*-*) gdb_target=embed ;;
|
||||
|
||||
mn10200-*-*) gdb_target=mn10200 ;;
|
||||
# OBSOLETE mn10200-*-*) gdb_target=mn10200 ;;
|
||||
mn10300-*-*) gdb_target=mn10300 ;;
|
||||
|
||||
none-*-*) gdb_target=none ;;
|
||||
|
1798
gdb/mn10200-tdep.c
1798
gdb/mn10200-tdep.c
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,10 @@
|
||||
2003-02-04 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* gdb.disasm/mn10200.exp: Obsolete file.
|
||||
* gdb.trace/Makefile.in (clean mostlyclean): Remove mn10200.
|
||||
* gdb.disasm/Makefile.in (clean mostlyclean): Remove mn10200.
|
||||
* gdb.base/watchpoint.exp: Mark the mn10200 xfails as obsolete.
|
||||
|
||||
2003-02-04 David Carlton <carlton@math.stanford.edu>
|
||||
|
||||
* gdb.c++/overload.exp: Test intToChar(1).
|
||||
|
@ -394,7 +394,7 @@ proc test_stepping {} {
|
||||
clear_xfail "sparc-*-*"
|
||||
clear_xfail "hppa*-*-*bsd*"
|
||||
# It works with the generic inferior function calling code too.
|
||||
clear_xfail "mn10200*-*-*"
|
||||
# OBSOLETE clear_xfail "mn10200*-*-*"
|
||||
clear_xfail "mn10300*-*-*"
|
||||
# The following architectures define CALL_DUMMY_HAS_COMPLETED.
|
||||
clear_xfail "hppa*-*-*hpux*"
|
||||
|
@ -7,7 +7,7 @@ all info install-info dvi install uninstall installcheck check:
|
||||
@echo "Nothing to be done for $@..."
|
||||
|
||||
clean mostlyclean:
|
||||
-rm -f *.o *.diff *~ *.bad core h8300s hppa mn10200 mn10300 sh3
|
||||
-rm -f *.o *.diff *~ *.bad core h8300s hppa mn10300 sh3
|
||||
|
||||
distclean maintainer-clean realclean: clean
|
||||
-rm -f Makefile config.status config.log
|
||||
|
@ -1,478 +1,478 @@
|
||||
|
||||
# Copyright 1997 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
|
||||
# Please email any bugs, comments, and/or additions to this file to:
|
||||
# bug-gdb@prep.ai.mit.edu
|
||||
|
||||
# This file was written by Jeff Law. (law@cygnus.com)
|
||||
|
||||
if $tracelevel then {
|
||||
strace $tracelevel
|
||||
}
|
||||
|
||||
if ![istarget "mn10200*-*-*"] {
|
||||
verbose "Tests ignored for all but mn10200 based targets."
|
||||
return
|
||||
}
|
||||
|
||||
global exec_output
|
||||
set prms_id 0
|
||||
set bug_id 0
|
||||
|
||||
set testfile "mn10200"
|
||||
set srcfile ${srcdir}/${subdir}/${testfile}.s
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
if { [gdb_compile "${srcfile}" "${binfile}" executable ""] != "" } {
|
||||
gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
|
||||
}
|
||||
|
||||
proc add_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/12i add_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*add d1,d2.*
|
||||
.*add d2,a3.*
|
||||
.*add a2,d1.*
|
||||
.*add a3,a2.*
|
||||
.*add 16,d1.*
|
||||
.*add 256,d2.*
|
||||
.*add 131071,d3.*
|
||||
.*add 16,a1.*
|
||||
.*add 256,a2.*
|
||||
.*add 131071,a3.*
|
||||
.*addc d1,d2.*
|
||||
.*addnf 16,a2.*
|
||||
.*$gdb_prompt $" { pass "add tests" }
|
||||
-re "$gdb_prompt $" { fail "add tests" }
|
||||
timeout { fail "(timeout) add tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc bcc_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/15i bCC_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*beq 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bne 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bgt 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bge 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*ble 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*blt 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bhi 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bcc 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bls 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bcs 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bvc 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bvs 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bnc 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bns 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*bra 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
.*$gdb_prompt $" { pass "bCC tests" }
|
||||
-re "$gdb_prompt $" { fail "bCC tests" }
|
||||
timeout { fail "(timeout) bCC tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc bccx_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/14i bCCx_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*beqx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bnex 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bgtx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bgex 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*blex 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bltx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bhix 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bccx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*blsx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bcsx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bvcx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bvsx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bncx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*bnsx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
.*$gdb_prompt $" { pass "bCCx tests" }
|
||||
-re "$gdb_prompt $" { fail "bCCx tests" }
|
||||
timeout { fail "(timeout) bCCx tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc bit_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/4 bit_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*btst 64,d1.*
|
||||
.*btst 8192,d2.*
|
||||
.*bset d1,\\(a2\\).*
|
||||
.*bclr d1,\\(a2\\).*
|
||||
.*$gdb_prompt $" { pass "bit tests" }
|
||||
-re "$gdb_prompt $" { fail "bit tests" }
|
||||
timeout { fail "(timeout) bit tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc cmp_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/9i cmp_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*cmp d1,d2.*
|
||||
.*cmp d2,a3.*
|
||||
.*cmp a3,d3.*
|
||||
.*cmp a3,a2.*
|
||||
.*cmp 16,d3.*
|
||||
.*cmp 256,d2.*
|
||||
.*cmp 131071,d1.*
|
||||
.*cmp 256,a2.*
|
||||
.*cmp 131071,a1.*
|
||||
.*$gdb_prompt $" { pass "cmp tests" }
|
||||
-re "$gdb_prompt $" { fail "cmp tests" }
|
||||
timeout { fail "(timeout) cmp tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc extend_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/5i extend_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*ext d1.*
|
||||
.*extx d2.*
|
||||
.*extxu d3.*
|
||||
.*extxb d2.*
|
||||
.*extxbu d1.*
|
||||
.*$gdb_prompt $" { pass "extend tests" }
|
||||
-re "$gdb_prompt $" { fail "extend tests" }
|
||||
timeout { fail "(timeout) extend tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc logical_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/11i logical_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*and d1,d2.*
|
||||
.*and 127,d2.*
|
||||
.*and 32767,d3.*
|
||||
.*and 32767,psw.*
|
||||
.*or d1,d2.*
|
||||
.*or 127,d2.*
|
||||
.*or 32767,d3.*
|
||||
.*or 32767,psw.*
|
||||
.*xor d1,d2.*
|
||||
.*xor 32767,d3.*
|
||||
.*not d3.*
|
||||
.*$gdb_prompt $" { pass "logical tests" }
|
||||
-re "$gdb_prompt $" { fail "logical tests" }
|
||||
timeout { fail "(timeout) logical tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc mov_tests_1 { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/12i mov_tests_1\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*mov d1,a2.*
|
||||
.*mov a2,d1.*
|
||||
.*mov d1,d2.*
|
||||
.*mov a2,a1.*
|
||||
.*mov psw,d3.*
|
||||
.*mov d2,psw.*
|
||||
.*mov mdr,d1.*
|
||||
.*mov d2,mdr.*
|
||||
.*mov \\(a2\\),d1.*
|
||||
.*mov \\(8,a2\\),d1.*
|
||||
.*mov \\(256,a2\\),d1.*
|
||||
.*mov \\(131071,a2\\),d1.*
|
||||
.*$gdb_prompt $" { pass "mov1 tests" }
|
||||
-re "$gdb_prompt $" { fail "mov1 tests" }
|
||||
timeout { fail "(timeout) mov1 tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc mov_tests_2 { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/9 mov_tests_2\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*mov \\(d1,a1\\),d2.*
|
||||
.*mov \\(0x8000.*\\),d1.*
|
||||
.*mov \\(0x1ffff.*\\),d1.*
|
||||
.*mov \\(8,a2\\),a1.*
|
||||
.*mov \\(256,a2\\),a1.*
|
||||
.*mov \\(131071,a2\\),a1.*
|
||||
.*mov \\(d1,a1\\),a2.*
|
||||
.*mov \\(0x8000.*\\),a1.*
|
||||
.*mov \\(0x1ffff.*\\),a1.*
|
||||
.*$gdb_prompt $" { pass "mov2 tests" }
|
||||
-re "$gdb_prompt $" { fail "mov2 tests" }
|
||||
timeout { fail "(timeout) mov2 tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc mov_tests_3 { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/10 mov_tests_3\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*mov d1,\\(a2\\).*
|
||||
.*mov d1,\\(32,a2\\).*
|
||||
.*mov d1,\\(256,a2\\).*
|
||||
.*mov d1,\\(131071,a2\\).*
|
||||
.*mov d1,\\(d2,a2\\).*
|
||||
.*mov d1,\\(0x80.*\\).*
|
||||
.*mov d1,\\(0x1ffff.*\\).*
|
||||
.*mov a1,\\(32,a2\\).*
|
||||
.*mov a1,\\(256,a2\\).*
|
||||
.*mov a1,\\(131071,a2\\).*
|
||||
.*$gdb_prompt $" { pass "mov3 tests" }
|
||||
-re "$gdb_prompt $" { fail "mov3 tests" }
|
||||
timeout { fail "(timeout) mov3 tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc mov_tests_4 { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/8 mov_tests_4\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*mov a1,\\(d2,a2\\).*
|
||||
.*mov a1,\\(0x80.*\\).*
|
||||
.*mov a1,\\(0x1ffff.*\\).*
|
||||
.*mov 8,d1.*
|
||||
.*mov 256,d1.*
|
||||
.*mov 131071,d1.*
|
||||
.*mov 256,a1.*
|
||||
.*mov 131071,a1.*
|
||||
.*$gdb_prompt $" { pass "mov4 tests" }
|
||||
-re "$gdb_prompt $" { fail "mov4 tests" }
|
||||
timeout { fail "(timeout) mov4 tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc movb_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/12 movb_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*movb \\(8,a2\\),d1.*
|
||||
.*movb \\(256,a2\\),d1.*
|
||||
.*movb \\(131071,a2\\),d1.*
|
||||
.*movb \\(d2,a2\\),d3.*
|
||||
.*movb \\(0x1ffff.*\\),d2.*
|
||||
.*movb d1,\\(a2\\).*
|
||||
.*movb d1,\\(8,a2\\).*
|
||||
.*movb d1,\\(256,a2\\).*
|
||||
.*movb d1,\\(131071,a2\\).*
|
||||
.*movb d1,\\(d2,a2\\).*
|
||||
.*movb d1,\\(0x100.*\\).*
|
||||
.*movb d1,\\(0x1ffff.*\\).*
|
||||
.*$gdb_prompt $" { pass "movb tests" }
|
||||
-re "$gdb_prompt $" { fail "movb tests" }
|
||||
timeout { fail "(timeout) movb tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc movbu_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/7 movbu_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*movbu \\(a2\\),d1.*
|
||||
.*movbu \\(8,a2\\),d1.*
|
||||
.*movbu \\(256,a2\\),d1.*
|
||||
.*movbu \\(131071,a2\\),d1.*
|
||||
.*movbu \\(d1,a1\\),d2.*
|
||||
.*movbu \\(0x8000.*\\),d1.*
|
||||
.*movbu \\(0x1ffff.*\\),d1.*
|
||||
.*$gdb_prompt $" { pass "movbu tests" }
|
||||
-re "$gdb_prompt $" { fail "movbu tests" }
|
||||
timeout { fail "(timeout) movbu tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc movx_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/6 movx_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*movx \\(8,a2\\),d1.*
|
||||
.*movx \\(256,a2\\),d1.*
|
||||
.*movx \\(131071,a2\\),d1.*
|
||||
.*movx d1,\\(8,a2\\).*
|
||||
.*movx d1,\\(256,a2\\).*
|
||||
.*movx d1,\\(131071,a2\\).*
|
||||
.*$gdb_prompt $" { pass "movx tests" }
|
||||
-re "$gdb_prompt $" { fail "movx tests" }
|
||||
timeout { fail "(timeout) movx tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc muldiv_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/3 muldiv_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*mul d1,d2.*
|
||||
.*mulu d2,d3.*
|
||||
.*divu d3,d2.*
|
||||
.*$gdb_prompt $" { pass "muldiv tests" }
|
||||
-re "$gdb_prompt $" { fail "muldiv tests" }
|
||||
timeout { fail "(timeout) muldiv tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc misc_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/9 misc_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*jmp 0x\[0-9a-f]+ <main>.*
|
||||
.*jmp 0x\[0-9a-f]+ <start>.*
|
||||
.*jmp \\(a2\\).*
|
||||
.*jsr 0x\[0-9a-f]+ <main>.*
|
||||
.*jsr 0x\[0-9a-f]+ <start>.*
|
||||
.*jsr \\(a2\\).*
|
||||
.*rts.*
|
||||
.*rti.*
|
||||
.*nop.*
|
||||
.*$gdb_prompt $" { pass "misc tests" }
|
||||
-re "$gdb_prompt $" { fail "misc tests" }
|
||||
timeout { fail "(timeout) misc tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc shift_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/4i shift_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*asr d2.*
|
||||
.*lsr d3.*
|
||||
.*ror d1.*
|
||||
.*rol d2.*
|
||||
.*$gdb_prompt $" { pass "shift tests" }
|
||||
-re "$gdb_prompt $" { fail "shift tests" }
|
||||
timeout { fail "(timeout) shift tests" }
|
||||
}
|
||||
}
|
||||
|
||||
proc sub_tests { } {
|
||||
global gdb_prompt
|
||||
global hex
|
||||
global decimal
|
||||
|
||||
send_gdb "x/9i sub_tests\n"
|
||||
gdb_expect {
|
||||
-re "
|
||||
.*sub d1,d2.*
|
||||
.*sub d2,a3.*
|
||||
.*sub a3,d3.*
|
||||
.*sub a3,a2.*
|
||||
.*sub 32767,d2.*
|
||||
.*sub 131071,d2.*
|
||||
.*sub 32767,a2.*
|
||||
.*sub 131071,a2.*
|
||||
.*subc d1,d2.*
|
||||
.*$gdb_prompt $" { pass "sub tests" }
|
||||
-re "$gdb_prompt $" { fail "sub tests" }
|
||||
timeout { fail "(timeout) sub tests" }
|
||||
}
|
||||
}
|
||||
|
||||
# Start with a fresh gdb.
|
||||
|
||||
gdb_exit
|
||||
gdb_start
|
||||
gdb_reinitialize_dir $srcdir/$subdir
|
||||
gdb_load $binfile
|
||||
|
||||
add_tests
|
||||
bcc_tests
|
||||
bccx_tests
|
||||
bit_tests
|
||||
cmp_tests
|
||||
extend_tests
|
||||
logical_tests
|
||||
mov_tests_1
|
||||
mov_tests_2
|
||||
mov_tests_3
|
||||
mov_tests_4
|
||||
movb_tests
|
||||
movbu_tests
|
||||
movx_tests
|
||||
muldiv_tests
|
||||
misc_tests
|
||||
shift_tests
|
||||
sub_tests
|
||||
# OBSOLETE
|
||||
# OBSOLETE # Copyright 1997 Free Software Foundation, Inc.
|
||||
# OBSOLETE
|
||||
# OBSOLETE # This program is free software; you can redistribute it and/or modify
|
||||
# OBSOLETE # it under the terms of the GNU General Public License as published by
|
||||
# OBSOLETE # the Free Software Foundation; either version 2 of the License, or
|
||||
# OBSOLETE # (at your option) any later version.
|
||||
# OBSOLETE #
|
||||
# OBSOLETE # This program is distributed in the hope that it will be useful,
|
||||
# OBSOLETE # but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# OBSOLETE # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# OBSOLETE # GNU General Public License for more details.
|
||||
# OBSOLETE #
|
||||
# OBSOLETE # You should have received a copy of the GNU General Public License
|
||||
# OBSOLETE # along with this program; if not, write to the Free Software
|
||||
# OBSOLETE # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
# OBSOLETE
|
||||
# OBSOLETE # Please email any bugs, comments, and/or additions to this file to:
|
||||
# OBSOLETE # bug-gdb@prep.ai.mit.edu
|
||||
# OBSOLETE
|
||||
# OBSOLETE # This file was written by Jeff Law. (law@cygnus.com)
|
||||
# OBSOLETE
|
||||
# OBSOLETE if $tracelevel then {
|
||||
# OBSOLETE strace $tracelevel
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE if ![istarget "mn10200*-*-*"] {
|
||||
# OBSOLETE verbose "Tests ignored for all but mn10200 based targets."
|
||||
# OBSOLETE return
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE global exec_output
|
||||
# OBSOLETE set prms_id 0
|
||||
# OBSOLETE set bug_id 0
|
||||
# OBSOLETE
|
||||
# OBSOLETE set testfile "mn10200"
|
||||
# OBSOLETE set srcfile ${srcdir}/${subdir}/${testfile}.s
|
||||
# OBSOLETE set binfile ${objdir}/${subdir}/${testfile}
|
||||
# OBSOLETE if { [gdb_compile "${srcfile}" "${binfile}" executable ""] != "" } {
|
||||
# OBSOLETE gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc add_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/12i add_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*add d1,d2.*
|
||||
# OBSOLETE .*add d2,a3.*
|
||||
# OBSOLETE .*add a2,d1.*
|
||||
# OBSOLETE .*add a3,a2.*
|
||||
# OBSOLETE .*add 16,d1.*
|
||||
# OBSOLETE .*add 256,d2.*
|
||||
# OBSOLETE .*add 131071,d3.*
|
||||
# OBSOLETE .*add 16,a1.*
|
||||
# OBSOLETE .*add 256,a2.*
|
||||
# OBSOLETE .*add 131071,a3.*
|
||||
# OBSOLETE .*addc d1,d2.*
|
||||
# OBSOLETE .*addnf 16,a2.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "add tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "add tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) add tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc bcc_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/15i bCC_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*beq 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bne 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bgt 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bge 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*ble 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*blt 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bhi 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bcc 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bls 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bcs 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bvc 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bvs 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bnc 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bns 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*bra 0x\[0-9a-f]+ <bCC_tests>.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "bCC tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "bCC tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) bCC tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc bccx_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/14i bCCx_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*beqx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bnex 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bgtx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bgex 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*blex 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bltx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bhix 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bccx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*blsx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bcsx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bvcx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bvsx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bncx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*bnsx 0x\[0-9a-f]+ <bCCx_tests>.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "bCCx tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "bCCx tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) bCCx tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc bit_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/4 bit_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*btst 64,d1.*
|
||||
# OBSOLETE .*btst 8192,d2.*
|
||||
# OBSOLETE .*bset d1,\\(a2\\).*
|
||||
# OBSOLETE .*bclr d1,\\(a2\\).*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "bit tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "bit tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) bit tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc cmp_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/9i cmp_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*cmp d1,d2.*
|
||||
# OBSOLETE .*cmp d2,a3.*
|
||||
# OBSOLETE .*cmp a3,d3.*
|
||||
# OBSOLETE .*cmp a3,a2.*
|
||||
# OBSOLETE .*cmp 16,d3.*
|
||||
# OBSOLETE .*cmp 256,d2.*
|
||||
# OBSOLETE .*cmp 131071,d1.*
|
||||
# OBSOLETE .*cmp 256,a2.*
|
||||
# OBSOLETE .*cmp 131071,a1.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "cmp tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "cmp tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) cmp tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc extend_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/5i extend_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*ext d1.*
|
||||
# OBSOLETE .*extx d2.*
|
||||
# OBSOLETE .*extxu d3.*
|
||||
# OBSOLETE .*extxb d2.*
|
||||
# OBSOLETE .*extxbu d1.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "extend tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "extend tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) extend tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc logical_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/11i logical_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*and d1,d2.*
|
||||
# OBSOLETE .*and 127,d2.*
|
||||
# OBSOLETE .*and 32767,d3.*
|
||||
# OBSOLETE .*and 32767,psw.*
|
||||
# OBSOLETE .*or d1,d2.*
|
||||
# OBSOLETE .*or 127,d2.*
|
||||
# OBSOLETE .*or 32767,d3.*
|
||||
# OBSOLETE .*or 32767,psw.*
|
||||
# OBSOLETE .*xor d1,d2.*
|
||||
# OBSOLETE .*xor 32767,d3.*
|
||||
# OBSOLETE .*not d3.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "logical tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "logical tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) logical tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc mov_tests_1 { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/12i mov_tests_1\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*mov d1,a2.*
|
||||
# OBSOLETE .*mov a2,d1.*
|
||||
# OBSOLETE .*mov d1,d2.*
|
||||
# OBSOLETE .*mov a2,a1.*
|
||||
# OBSOLETE .*mov psw,d3.*
|
||||
# OBSOLETE .*mov d2,psw.*
|
||||
# OBSOLETE .*mov mdr,d1.*
|
||||
# OBSOLETE .*mov d2,mdr.*
|
||||
# OBSOLETE .*mov \\(a2\\),d1.*
|
||||
# OBSOLETE .*mov \\(8,a2\\),d1.*
|
||||
# OBSOLETE .*mov \\(256,a2\\),d1.*
|
||||
# OBSOLETE .*mov \\(131071,a2\\),d1.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "mov1 tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "mov1 tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) mov1 tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc mov_tests_2 { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/9 mov_tests_2\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*mov \\(d1,a1\\),d2.*
|
||||
# OBSOLETE .*mov \\(0x8000.*\\),d1.*
|
||||
# OBSOLETE .*mov \\(0x1ffff.*\\),d1.*
|
||||
# OBSOLETE .*mov \\(8,a2\\),a1.*
|
||||
# OBSOLETE .*mov \\(256,a2\\),a1.*
|
||||
# OBSOLETE .*mov \\(131071,a2\\),a1.*
|
||||
# OBSOLETE .*mov \\(d1,a1\\),a2.*
|
||||
# OBSOLETE .*mov \\(0x8000.*\\),a1.*
|
||||
# OBSOLETE .*mov \\(0x1ffff.*\\),a1.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "mov2 tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "mov2 tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) mov2 tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc mov_tests_3 { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/10 mov_tests_3\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*mov d1,\\(a2\\).*
|
||||
# OBSOLETE .*mov d1,\\(32,a2\\).*
|
||||
# OBSOLETE .*mov d1,\\(256,a2\\).*
|
||||
# OBSOLETE .*mov d1,\\(131071,a2\\).*
|
||||
# OBSOLETE .*mov d1,\\(d2,a2\\).*
|
||||
# OBSOLETE .*mov d1,\\(0x80.*\\).*
|
||||
# OBSOLETE .*mov d1,\\(0x1ffff.*\\).*
|
||||
# OBSOLETE .*mov a1,\\(32,a2\\).*
|
||||
# OBSOLETE .*mov a1,\\(256,a2\\).*
|
||||
# OBSOLETE .*mov a1,\\(131071,a2\\).*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "mov3 tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "mov3 tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) mov3 tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc mov_tests_4 { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/8 mov_tests_4\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*mov a1,\\(d2,a2\\).*
|
||||
# OBSOLETE .*mov a1,\\(0x80.*\\).*
|
||||
# OBSOLETE .*mov a1,\\(0x1ffff.*\\).*
|
||||
# OBSOLETE .*mov 8,d1.*
|
||||
# OBSOLETE .*mov 256,d1.*
|
||||
# OBSOLETE .*mov 131071,d1.*
|
||||
# OBSOLETE .*mov 256,a1.*
|
||||
# OBSOLETE .*mov 131071,a1.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "mov4 tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "mov4 tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) mov4 tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc movb_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/12 movb_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*movb \\(8,a2\\),d1.*
|
||||
# OBSOLETE .*movb \\(256,a2\\),d1.*
|
||||
# OBSOLETE .*movb \\(131071,a2\\),d1.*
|
||||
# OBSOLETE .*movb \\(d2,a2\\),d3.*
|
||||
# OBSOLETE .*movb \\(0x1ffff.*\\),d2.*
|
||||
# OBSOLETE .*movb d1,\\(a2\\).*
|
||||
# OBSOLETE .*movb d1,\\(8,a2\\).*
|
||||
# OBSOLETE .*movb d1,\\(256,a2\\).*
|
||||
# OBSOLETE .*movb d1,\\(131071,a2\\).*
|
||||
# OBSOLETE .*movb d1,\\(d2,a2\\).*
|
||||
# OBSOLETE .*movb d1,\\(0x100.*\\).*
|
||||
# OBSOLETE .*movb d1,\\(0x1ffff.*\\).*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "movb tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "movb tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) movb tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc movbu_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/7 movbu_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*movbu \\(a2\\),d1.*
|
||||
# OBSOLETE .*movbu \\(8,a2\\),d1.*
|
||||
# OBSOLETE .*movbu \\(256,a2\\),d1.*
|
||||
# OBSOLETE .*movbu \\(131071,a2\\),d1.*
|
||||
# OBSOLETE .*movbu \\(d1,a1\\),d2.*
|
||||
# OBSOLETE .*movbu \\(0x8000.*\\),d1.*
|
||||
# OBSOLETE .*movbu \\(0x1ffff.*\\),d1.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "movbu tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "movbu tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) movbu tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc movx_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/6 movx_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*movx \\(8,a2\\),d1.*
|
||||
# OBSOLETE .*movx \\(256,a2\\),d1.*
|
||||
# OBSOLETE .*movx \\(131071,a2\\),d1.*
|
||||
# OBSOLETE .*movx d1,\\(8,a2\\).*
|
||||
# OBSOLETE .*movx d1,\\(256,a2\\).*
|
||||
# OBSOLETE .*movx d1,\\(131071,a2\\).*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "movx tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "movx tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) movx tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc muldiv_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/3 muldiv_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*mul d1,d2.*
|
||||
# OBSOLETE .*mulu d2,d3.*
|
||||
# OBSOLETE .*divu d3,d2.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "muldiv tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "muldiv tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) muldiv tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc misc_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/9 misc_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*jmp 0x\[0-9a-f]+ <main>.*
|
||||
# OBSOLETE .*jmp 0x\[0-9a-f]+ <start>.*
|
||||
# OBSOLETE .*jmp \\(a2\\).*
|
||||
# OBSOLETE .*jsr 0x\[0-9a-f]+ <main>.*
|
||||
# OBSOLETE .*jsr 0x\[0-9a-f]+ <start>.*
|
||||
# OBSOLETE .*jsr \\(a2\\).*
|
||||
# OBSOLETE .*rts.*
|
||||
# OBSOLETE .*rti.*
|
||||
# OBSOLETE .*nop.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "misc tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "misc tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) misc tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc shift_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/4i shift_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*asr d2.*
|
||||
# OBSOLETE .*lsr d3.*
|
||||
# OBSOLETE .*ror d1.*
|
||||
# OBSOLETE .*rol d2.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "shift tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "shift tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) shift tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE proc sub_tests { } {
|
||||
# OBSOLETE global gdb_prompt
|
||||
# OBSOLETE global hex
|
||||
# OBSOLETE global decimal
|
||||
# OBSOLETE
|
||||
# OBSOLETE send_gdb "x/9i sub_tests\n"
|
||||
# OBSOLETE gdb_expect {
|
||||
# OBSOLETE -re "
|
||||
# OBSOLETE .*sub d1,d2.*
|
||||
# OBSOLETE .*sub d2,a3.*
|
||||
# OBSOLETE .*sub a3,d3.*
|
||||
# OBSOLETE .*sub a3,a2.*
|
||||
# OBSOLETE .*sub 32767,d2.*
|
||||
# OBSOLETE .*sub 131071,d2.*
|
||||
# OBSOLETE .*sub 32767,a2.*
|
||||
# OBSOLETE .*sub 131071,a2.*
|
||||
# OBSOLETE .*subc d1,d2.*
|
||||
# OBSOLETE .*$gdb_prompt $" { pass "sub tests" }
|
||||
# OBSOLETE -re "$gdb_prompt $" { fail "sub tests" }
|
||||
# OBSOLETE timeout { fail "(timeout) sub tests" }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE }
|
||||
# OBSOLETE
|
||||
# OBSOLETE # Start with a fresh gdb.
|
||||
# OBSOLETE
|
||||
# OBSOLETE gdb_exit
|
||||
# OBSOLETE gdb_start
|
||||
# OBSOLETE gdb_reinitialize_dir $srcdir/$subdir
|
||||
# OBSOLETE gdb_load $binfile
|
||||
# OBSOLETE
|
||||
# OBSOLETE add_tests
|
||||
# OBSOLETE bcc_tests
|
||||
# OBSOLETE bccx_tests
|
||||
# OBSOLETE bit_tests
|
||||
# OBSOLETE cmp_tests
|
||||
# OBSOLETE extend_tests
|
||||
# OBSOLETE logical_tests
|
||||
# OBSOLETE mov_tests_1
|
||||
# OBSOLETE mov_tests_2
|
||||
# OBSOLETE mov_tests_3
|
||||
# OBSOLETE mov_tests_4
|
||||
# OBSOLETE movb_tests
|
||||
# OBSOLETE movbu_tests
|
||||
# OBSOLETE movx_tests
|
||||
# OBSOLETE muldiv_tests
|
||||
# OBSOLETE misc_tests
|
||||
# OBSOLETE shift_tests
|
||||
# OBSOLETE sub_tests
|
||||
|
@ -8,7 +8,7 @@ all info install-info dvi install uninstall installcheck check:
|
||||
|
||||
clean mostlyclean:
|
||||
-rm -f actions circ collection limits
|
||||
-rm -f *.o *.diff *~ *.bad core sh3 hppa mn10200 mn10300
|
||||
-rm -f *.o *.diff *~ *.bad core sh3 hppa mn10300
|
||||
|
||||
distclean maintainer-clean realclean: clean
|
||||
-rm -f Makefile config.status config.log
|
||||
|
Loading…
Reference in New Issue
Block a user