* symtab.c (find_pc_symtab): some object file formats, notably mips,
[deliverable/binutils-gdb.git] / gdb / tm-h8300.h
index 12e5b053e1ca61bc50878eec2838a99ce1af6ba1..a583ecc5a5237cf9148a9eacf5e876818eb0b26e 100644 (file)
@@ -1,5 +1,5 @@
 /* Parameters for execution on a H8/300 series machine.
-   Copyright (C) 1992 Free Software Foundation, Inc.
+   Copyright 1992, 1993 Free Software Foundation, Inc.
 
 This file is part of GDB.
 
@@ -77,17 +77,8 @@ UNSIGNED_SHORT(read_memory_integer (read_register (SP_REGNUM), 2))
 
 #define INNER_THAN <
 
-/* Sequence of bytes for breakpoint instruction.
-   This is a TRAP instruction.  The last 4 bits (0xf below) is the
-   vector.  Systems which don't use 0xf should define BPT_VECTOR
-   themselves before including this file.  */
 
-
-#define BPT_VECTOR 0xf
-
-
-
-#define BREAKPOINT {0x4e, (0x40 | BPT_VECTOR)}
+#define BREAKPOINT {0x53, 0x00}
 
 
 /* If your kernel resets the pc after the trap happens you may need to
@@ -111,8 +102,9 @@ UNSIGNED_SHORT(read_memory_integer (read_register (SP_REGNUM), 2))
 
 #define REGISTER_TYPE  unsigned short
 
-#  define NUM_REGS 10 
-#  define REGISTER_BYTES (10*2)
+/*#  define NUM_REGS 20 /* 20 for fake HW support */
+#  define NUM_REGS 11
+#  define REGISTER_BYTES (NUM_REGS*2)
 
 
 /* Index within `registers' of the first byte of the space for
@@ -162,9 +154,15 @@ UNSIGNED_SHORT(read_memory_integer (read_register (SP_REGNUM), 2))
 /* Initializer for an array of names of registers.
    Entries beyond the first NUM_REGS are ignored.  */
 
+#if NUM_REGS==20
 #define REGISTER_NAMES  \
- {"r0", "r1", "r2", "r3", "r4", "r5", "r6", "sp","ccr","pc"} 
-
+ {"r0", "r1", "r2", "r3", "r4", "r5", "r6", "sp",\
+  "ccr","pc","cycles","hcheck","tier","tcsr","frc",\
+   "ocra","ocrb","tcr","tocr","icra"} 
+#else
+#define REGISTER_NAMES \
+  {"r0", "r1", "r2", "r3", "r4", "r5", "r6", "sp", "ccr","pc","cycles"}
+#endif
 
 /* Register numbers of various important registers.
    Note that some of these values are "real" register numbers,
@@ -220,18 +218,11 @@ UNSIGNED_SHORT(read_memory_integer (read_register (SP_REGNUM), 2))
 /* In the case of the H8/300, the frame's nominal address
    is the address of a 2-byte word containing the calling frame's address.  */
 
-
-
-
 /* Use the alternate method of avoiding running up off the end of
    the frame chain or following frames back into the startup code.
-   See the comments in blockframe.c */
-   
-#define FRAME_CHAIN_VALID(chain, thisframe)    \
-  (chain != 0                                  \
-   && !(inside_main_scope ((thisframe)->pc))   \
-   && !(inside_entry_scope ((thisframe)->pc)))
+   See the comments in objfile.h */
 
+#define FRAME_CHAIN_VALID_ALTERNATE   
 
 /* Define other aspects of the stack frame.  */
 
@@ -294,19 +285,21 @@ UNSIGNED_SHORT(read_memory_integer (read_register (SP_REGNUM), 2))
 
 
 #define REGISTER_CONVERT_TO_VIRTUAL(REGNUM,FROM,TO) \
-{ bcopy ((FROM), (TO), 2); }
+{ memcpy((TO), (FROM),  2); }
 #define REGISTER_CONVERT_TO_RAW(REGNUM,FROM,TO)        \
-{ bcopy ((FROM), (TO), 4); }
+{ memcpy((TO), (FROM),  2); }
 
 #define        BEFORE_MAIN_LOOP_HOOK   \
   hms_before_main_loop();
 
-
-#define NAMES_HAVE_UNDERSCORE
-
 typedef unsigned short INSN_WORD;
 
 #define ADDR_BITS_REMOVE(addr) ((addr) & 0xffff)
 #define ADDR_BITS_SET(addr) (((addr)))
 
 #define read_memory_short(x)  (read_memory_integer(x,2) & 0xffff)
+#define DONT_USE_REMOTE
+
+
+#define        PRINT_REGISTER_HOOK(regno) print_register_hook(regno)
+
This page took 0.024808 seconds and 4 git commands to generate.