diff options
author | Fred Fish <fnf@specifix.com> | 1991-11-19 01:54:52 +0000 |
---|---|---|
committer | Fred Fish <fnf@specifix.com> | 1991-11-19 01:54:52 +0000 |
commit | b6666a5d6772e257ee5d08781f2bdcd460df33e8 (patch) | |
tree | dc4d9a6cffc76d14c11d439dc1e667a6e6243064 /gdb/tm-68k.h | |
parent | 5e2569e653fc05fde0084a5f9b1873d15352f033 (diff) | |
download | gdb-b6666a5d6772e257ee5d08781f2bdcd460df33e8.zip gdb-b6666a5d6772e257ee5d08781f2bdcd460df33e8.tar.gz gdb-b6666a5d6772e257ee5d08781f2bdcd460df33e8.tar.bz2 |
Add generic m68k function prologue skipping support and expand the
skipping to include movem and fmovem.
Diffstat (limited to 'gdb/tm-68k.h')
-rw-r--r-- | gdb/tm-68k.h | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/gdb/tm-68k.h b/gdb/tm-68k.h index f8efb12..8464263 100644 --- a/gdb/tm-68k.h +++ b/gdb/tm-68k.h @@ -35,21 +35,10 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) \ -{ register int op = read_memory_integer (pc, 2); \ - if (op == 0047126) \ - pc += 4; /* Skip link #word */ \ - else if (op == 0044016) \ - pc += 6; /* Skip link #long */ \ - /* Not sure why branches are here. */ \ - /* From m-isi.h, m-altos.h */ \ - else if (op == 0060000) \ - pc += 4; /* Skip bra #word */ \ - else if (op == 00600377) \ - pc += 6; /* skip bra #long */ \ - else if ((op & 0177400) == 0060000) \ - pc += 2; /* skip bra #char */ \ -} +#if !defined(SKIP_PROLOGUE) +#define SKIP_PROLOGUE(ip) {(ip) = m68k_skip_prologue(ip);} +extern CORE_ADDR m68k_skip_prologue (); +#endif /* Immediately after a function call, return the saved pc. Can't always go through the frames for this because on some machines @@ -68,7 +57,7 @@ read_memory_integer (read_register (SP_REGNUM), 4) vector. Systems which don't use 0xf should define BPT_VECTOR themselves before including this file. */ -#if !defined BPT_VECTOR +#if !defined (BPT_VECTOR) #define BPT_VECTOR 0xf #endif |