Preliminary cleanup for splitting host/native/target.
authorJohn Gilmore <gnu@cygnus>
Fri, 18 Sep 1992 07:40:15 +0000 (07:40 +0000)
committerJohn Gilmore <gnu@cygnus>
Fri, 18 Sep 1992 07:40:15 +0000 (07:40 +0000)
* infptrace.c (child_resume):  Don't deal with NO_SINGLE_STEP
here; it is dealt with at a gdb-target-independent level.
* rs6000-tdep.c (single_step):  Don't call ptrace, we are a
high toned routine.  Fix return type to void.

gdb/ChangeLog
gdb/infptrace.c
gdb/rs6000-tdep.c

index 63e7cc33f663b8907487bfb93ccfe724c3134e47..e3e5212ed02b22d262be7715fa5f60dec70a48ba 100644 (file)
@@ -26,6 +26,15 @@ Wed Sep 16 17:00:07 1992  John Gilmore  (gnu@cygnus.com)
        alldeps.mak files.
        (assorted):  Update to catch straggler files when building gdb.tar.Z.
 
+Tue Sep 15 01:18:50 1992  John Gilmore  (gnu@cygnus.com)
+
+       Preliminary cleanup for splitting host/native/target.
+
+       * infptrace.c (child_resume):  Don't deal with NO_SINGLE_STEP
+       here; it is dealt with at a gdb-target-independent level.
+       * rs6000-tdep.c (single_step):  Don't call ptrace, we are a
+       high toned routine.  Fix return type to void.
+
 Mon Sep 14 19:20:43 1992  Stu Grossman  (grossman at cygnus.com)
 
        * energize.c (pty_to_kernel):  Must check for EAGAIN as
index 3856b3694386d8adbc1fe75406ade36ec646d169..87178cd3dfea7079341125d06558d3de25b2d9a1 100644 (file)
@@ -120,14 +120,15 @@ child_resume (step, signal)
 
   /* An address of (PTRACE_ARG3_TYPE)1 tells ptrace to continue from where
      it was.  (If GDB wanted it to start some other way, we have already
-     written a new PC value to the child.)  */
+     written a new PC value to the child.)
+
+     If this system does not support PT_STEP, a higher level function will
+     have called single_step() to transmute the step request into a
+     continue request (by setting breakpoints on all possible successor
+     instructions), so we don't have to worry about that here.  */
 
   if (step)
-#ifdef NO_SINGLE_STEP
-    single_step (signal);
-#else    
     ptrace (PT_STEP, inferior_pid, (PTRACE_ARG3_TYPE) 1, signal);
-#endif
   else
 #ifdef AIX_BUGGY_PTRACE_CONTINUE
     AIX_BUGGY_PTRACE_CONTINUE;
index 45d6af4b003cea7d712f1c4ea38f5d00b398dc82..edae708f2260fc2a692ad47a93dee069cffd5e75 100644 (file)
@@ -121,9 +121,9 @@ branch_dest (opcode, instr, pc, safety)
 
 /* AIX does not support PT_STEP. Simulate it. */
 
-int
+void
 single_step (signal)
-int signal;
+     int signal;
 {
 #define        INSNLEN(OPCODE)  4
 
@@ -161,9 +161,7 @@ int signal;
     }  
 
     one_stepped = 1;
-    ptrace (PT_CONTINUE, inferior_pid, (PTRACE_ARG3_TYPE) 1, signal, 0);
-  }
-  else {
+  } else {
 
     /* remove step breakpoints. */
     for (ii=0; ii < 2; ++ii)
@@ -173,8 +171,7 @@ int signal;
 
     one_stepped = 0;
   }
-  errno = 0;
-  return 1;
+  errno = 0;                   /* FIXME, don't ignore errors! */
 }