Remove ignoring leading exec events code.
authorVladimir Prus <vladimir@codesourcery.com>
Sat, 15 Mar 2008 14:55:21 +0000 (14:55 +0000)
committerVladimir Prus <vladimir@codesourcery.com>
Sat, 15 Mar 2008 14:55:21 +0000 (14:55 +0000)
        * fork-child.c (startup_inferior): Do not set
        inferior_ignoring_leading_exec_events.
        * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
        (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
        * infrun.c (inferior_ignoring_leading_exec_events): Remove.
        (handle_inferior_event): Remove code for ignoring leading exec
        events.
        * target.c (update_current_target): Do not inherit, or default,
        to_reported_exec_events_per_exec_call.
        (debug_to_reported_exec_events_per_exec_call): Remove.
        (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
        * target.h (target_reported_exec_events_per_exec_call): Remove.
        (struct target): Remove the to_reported_exec_events_per_exec_call
        field.

gdb/ChangeLog
gdb/fork-child.c
gdb/inf-child.c
gdb/infrun.c
gdb/target.c
gdb/target.h

index 38fac7420e7bf66e3618a2b3a8f30c20de5cf4c0..d0469c44a9864ceb45960bb854da5558590656e0 100644 (file)
@@ -1,3 +1,21 @@
+2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
+
+       Remove ignoring leading exec events code.
+        * fork-child.c (startup_inferior): Do not set
+        inferior_ignoring_leading_exec_events.
+        * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
+        (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
+        * infrun.c (inferior_ignoring_leading_exec_events): Remove.
+        (handle_inferior_event): Remove code for ignoring leading exec
+        events.
+        * target.c (update_current_target): Do not inherit, or default,
+        to_reported_exec_events_per_exec_call.
+        (debug_to_reported_exec_events_per_exec_call): Remove.
+        (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
+        * target.h (target_reported_exec_events_per_exec_call): Remove.
+        (struct target): Remove the to_reported_exec_events_per_exec_call
+        field.
+
 2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>
 
        Implement -thread-info.
index c8e76838dbb55104b1c94c3a3bfd920342132c0d..7aff110ba923af9babd464cd4b24631e66652e45 100644 (file)
@@ -426,9 +426,6 @@ startup_inferior (int ntraps)
 
   init_wait_for_inferior ();
 
-  inferior_ignoring_leading_exec_events =
-    target_reported_exec_events_per_exec_call () - 1;
-
   while (1)
     {
       /* Make wait_for_inferior be quiet. */
index ae118717f0822ba68f1d20558ae1f718770c1ef3..8da25f4e1f65841b26f412b4e40c7f63f9b834ff 100644 (file)
@@ -144,14 +144,6 @@ inf_child_remove_exec_catchpoint (int pid)
   return 0;
 }
 
-static int
-inf_child_reported_exec_events_per_exec_call (void)
-{
-  /* This version of Unix doesn't support notification of exec
-     events.  */
-  return 1;
-}
-
 static int
 inf_child_can_run (void)
 {
@@ -195,8 +187,6 @@ inf_child_target (void)
   t->to_follow_fork = inf_child_follow_fork;
   t->to_insert_exec_catchpoint = inf_child_insert_exec_catchpoint;
   t->to_remove_exec_catchpoint = inf_child_remove_exec_catchpoint;
-  t->to_reported_exec_events_per_exec_call =
-    inf_child_reported_exec_events_per_exec_call;
   t->to_can_run = inf_child_can_run;
   t->to_pid_to_exec_file = inf_child_pid_to_exec_file;
   t->to_stratum = process_stratum;
index c8637361d4c6d56662672ca20f031e8614c4af88..6388d93131e0c402ceb6d1b652ffae4032ca79b4 100644 (file)
@@ -82,8 +82,6 @@ static int prepare_to_proceed (int);
 
 void _initialize_infrun (void);
 
-int inferior_ignoring_leading_exec_events = 0;
-
 /* When set, stop the 'step' command if we enter a function which has
    no line number information.  The normal behavior is that we step
    over such function.  */
@@ -1493,23 +1491,6 @@ handle_inferior_event (struct execution_control_state *ecs)
         fprintf_unfiltered (gdb_stdlog, "infrun: TARGET_WAITKIND_EXECD\n");
       stop_signal = TARGET_SIGNAL_TRAP;
 
-      /* NOTE drow/2002-12-05: This code should be pushed down into the
-         target_wait function.  Until then following vfork on HP/UX 10.20
-         is probably broken by this.  Of course, it's broken anyway.  */
-      /* Is this a target which reports multiple exec events per actual
-         call to exec()?  (HP-UX using ptrace does, for example.)  If so,
-         ignore all but the last one.  Just resume the exec'r, and wait
-         for the next exec event. */
-      if (inferior_ignoring_leading_exec_events)
-       {
-         inferior_ignoring_leading_exec_events--;
-         target_resume (ecs->ptid, 0, TARGET_SIGNAL_0);
-         prepare_to_wait (ecs);
-         return;
-       }
-      inferior_ignoring_leading_exec_events =
-       target_reported_exec_events_per_exec_call () - 1;
-
       pending_follow.execd_pathname =
        savestring (ecs->ws.value.execd_pathname,
                    strlen (ecs->ws.value.execd_pathname));
index 9d2f1fd355e0598b017eeec993956ba7b9ba4bb7..4168c05959b3806d12fcc50777719bb98e2caec0 100644 (file)
@@ -439,7 +439,6 @@ update_current_target (void)
       /* Do not inherit to_follow_fork.  */
       INHERIT (to_insert_exec_catchpoint, t);
       INHERIT (to_remove_exec_catchpoint, t);
-      INHERIT (to_reported_exec_events_per_exec_call, t);
       INHERIT (to_has_exited, t);
       INHERIT (to_mourn_inferior, t);
       INHERIT (to_can_run, t);
@@ -599,9 +598,6 @@ update_current_target (void)
   de_fault (to_remove_exec_catchpoint,
            (int (*) (int))
            tcomplain);
-  de_fault (to_reported_exec_events_per_exec_call,
-           (int (*) (void))
-           return_one);
   de_fault (to_has_exited,
            (int (*) (int, int, int *))
            return_zero);
@@ -2635,20 +2631,6 @@ debug_to_remove_exec_catchpoint (int pid)
   return retval;
 }
 
-static int
-debug_to_reported_exec_events_per_exec_call (void)
-{
-  int reported_exec_events;
-
-  reported_exec_events = debug_target.to_reported_exec_events_per_exec_call ();
-
-  fprintf_unfiltered (gdb_stdlog,
-                     "target_reported_exec_events_per_exec_call () = %d\n",
-                     reported_exec_events);
-
-  return reported_exec_events;
-}
-
 static int
 debug_to_has_exited (int pid, int wait_status, int *exit_status)
 {
@@ -2786,7 +2768,6 @@ setup_target_debug (void)
   current_target.to_remove_vfork_catchpoint = debug_to_remove_vfork_catchpoint;
   current_target.to_insert_exec_catchpoint = debug_to_insert_exec_catchpoint;
   current_target.to_remove_exec_catchpoint = debug_to_remove_exec_catchpoint;
-  current_target.to_reported_exec_events_per_exec_call = debug_to_reported_exec_events_per_exec_call;
   current_target.to_has_exited = debug_to_has_exited;
   current_target.to_mourn_inferior = debug_to_mourn_inferior;
   current_target.to_can_run = debug_to_can_run;
index 9a34244e3b651703f4547e5b39f76d5dd88c75a2..c3da3d57210a2dc78491b3020beb8550fc6f407b 100644 (file)
@@ -388,7 +388,6 @@ struct target_ops
     int (*to_follow_fork) (struct target_ops *, int);
     void (*to_insert_exec_catchpoint) (int);
     int (*to_remove_exec_catchpoint) (int);
-    int (*to_reported_exec_events_per_exec_call) (void);
     int (*to_has_exited) (int, int, int *);
     void (*to_mourn_inferior) (void);
     int (*to_can_run) (void);
@@ -841,13 +840,6 @@ int target_follow_fork (int follow_child);
 #define target_remove_exec_catchpoint(pid) \
      (*current_target.to_remove_exec_catchpoint) (pid)
 
-/* Returns the number of exec events that are reported when a process
-   invokes a flavor of the exec() system call on this target, if exec
-   events are being reported.  */
-
-#define target_reported_exec_events_per_exec_call() \
-     (*current_target.to_reported_exec_events_per_exec_call) ()
-
 /* Returns TRUE if PID has exited.  And, also sets EXIT_STATUS to the
    exit code of PID, if any.  */