From 454ffae5c4d831454c7734ad04ea8dce0fe84f4d Mon Sep 17 00:00:00 2001 From: Steve Chamberlain Date: Fri, 2 Feb 1996 21:42:12 +0000 Subject: [PATCH] * win32-nat.c (mappings): Add ppc registers. (child_resume): Turn of step for ppc. --- gdb/ChangeLog | 5 +++ gdb/win32-nat.c | 95 +++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 97 insertions(+), 3 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 96b65602909..23fd86ea940 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +Fri Feb 2 13:40:50 1996 Steve Chamberlain + + * win32-nat.c (mappings): Add ppc registers. + (child_resume): Turn of step for ppc. + Thu Feb 1 10:29:31 1996 Steve Chamberlain * config/powerpc/(cygwin32.mh, cygwin32.mt, tm-cygwin32.h, diff --git a/gdb/win32-nat.c b/gdb/win32-nat.c index eee2474f673..bd624437e5a 100644 --- a/gdb/win32-nat.c +++ b/gdb/win32-nat.c @@ -1,5 +1,5 @@ /* Target-vector operations for controlling win32 child processes, for GDB. - Copyright 1995 + Copyright 1995, 1996 Free Software Foundation, Inc. Contributed by Cygnus Support. @@ -83,9 +83,92 @@ struct regmappings int mask; }; -static const struct regmappings - mappings[] = + +static const struct regmappings mappings[] = { +#ifdef __PPC__ + {(char *) &context.Gpr0, CONTEXT_INTEGER}, + {(char *) &context.Gpr1, CONTEXT_INTEGER}, + {(char *) &context.Gpr2, CONTEXT_INTEGER}, + {(char *) &context.Gpr3, CONTEXT_INTEGER}, + {(char *) &context.Gpr4, CONTEXT_INTEGER}, + {(char *) &context.Gpr5, CONTEXT_INTEGER}, + {(char *) &context.Gpr6, CONTEXT_INTEGER}, + {(char *) &context.Gpr7, CONTEXT_INTEGER}, + + {(char *) &context.Gpr8, CONTEXT_INTEGER}, + {(char *) &context.Gpr9, CONTEXT_INTEGER}, + {(char *) &context.Gpr10, CONTEXT_INTEGER}, + {(char *) &context.Gpr11, CONTEXT_INTEGER}, + {(char *) &context.Gpr12, CONTEXT_INTEGER}, + {(char *) &context.Gpr13, CONTEXT_INTEGER}, + {(char *) &context.Gpr14, CONTEXT_INTEGER}, + {(char *) &context.Gpr15, CONTEXT_INTEGER}, + + {(char *) &context.Gpr16, CONTEXT_INTEGER}, + {(char *) &context.Gpr17, CONTEXT_INTEGER}, + {(char *) &context.Gpr18, CONTEXT_INTEGER}, + {(char *) &context.Gpr19, CONTEXT_INTEGER}, + {(char *) &context.Gpr20, CONTEXT_INTEGER}, + {(char *) &context.Gpr21, CONTEXT_INTEGER}, + {(char *) &context.Gpr22, CONTEXT_INTEGER}, + {(char *) &context.Gpr23, CONTEXT_INTEGER}, + + {(char *) &context.Gpr24, CONTEXT_INTEGER}, + {(char *) &context.Gpr25, CONTEXT_INTEGER}, + {(char *) &context.Gpr26, CONTEXT_INTEGER}, + {(char *) &context.Gpr27, CONTEXT_INTEGER}, + {(char *) &context.Gpr28, CONTEXT_INTEGER}, + {(char *) &context.Gpr29, CONTEXT_INTEGER}, + {(char *) &context.Gpr30, CONTEXT_INTEGER}, + {(char *) &context.Gpr31, CONTEXT_INTEGER}, + + {(char *) &context.Fpr0, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr1, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr2, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr3, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr4, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr5, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr6, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr7, CONTEXT_FLOATING_POINT}, + + {(char *) &context.Fpr8, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr9, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr10, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr11, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr12, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr13, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr14, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr15, CONTEXT_FLOATING_POINT}, + + {(char *) &context.Fpr16, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr17, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr18, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr19, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr20, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr21, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr22, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr23, CONTEXT_FLOATING_POINT}, + + {(char *) &context.Fpr24, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr25, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr26, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr27, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr28, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr29, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr30, CONTEXT_FLOATING_POINT}, + {(char *) &context.Fpr31, CONTEXT_FLOATING_POINT}, + + + {(char *) &context.Iar, CONTEXT_CONTROL}, + {(char *) &context.Msr, CONTEXT_CONTROL}, + {(char *) &context.Cr, CONTEXT_INTEGER}, + {(char *) &context.Lr, CONTEXT_CONTROL}, + {(char *) &context.Ctr, CONTEXT_CONTROL}, + + {(char *) &context.Xer, CONTEXT_INTEGER}, + {0,0}, /* MQ, but there isn't one */ +#else {(char *) &context.Eax, CONTEXT_INTEGER}, {(char *) &context.Ecx, CONTEXT_INTEGER}, {(char *) &context.Edx, CONTEXT_INTEGER}, @@ -110,6 +193,7 @@ static const struct regmappings {&context.FloatSave.RegisterArea[5 * 10], CONTEXT_FLOATING_POINT}, {&context.FloatSave.RegisterArea[6 * 10], CONTEXT_FLOATING_POINT}, {&context.FloatSave.RegisterArea[7 * 10], CONTEXT_FLOATING_POINT}, +#endif }; @@ -580,9 +664,14 @@ child_resume (int pid, int step, enum target_signal signal) if (step) { +#ifdef __PPC__ + warning ("Single stepping not done.\n"); +#endif +#ifdef __I386__ /* Single step by setting t bit */ child_fetch_inferior_registers (PS_REGNUM); context.EFlags |= FLAG_TRACE_BIT; +#endif } if (context.ContextFlags) -- 2.30.2