diff options
Diffstat (limited to 'gdb/tm-altos.h')
-rw-r--r-- | gdb/tm-altos.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gdb/tm-altos.h b/gdb/tm-altos.h index 7fb094a..f3cc306 100644 --- a/gdb/tm-altos.h +++ b/gdb/tm-altos.h @@ -41,4 +41,23 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define DECR_PC_AFTER_BREAK 0 +/* The only reason this is here is the tm-altos.h reference below. It + was moved back here from tm-68k.h. FIXME? */ + +#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 tm-isi.h, tm-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 */ \ +} + #include "tm-68k.h" |