Multi-arch exec, more register reading avoidance
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.multi / multi-arch-exec.c
index 1a443dee7bf4f6c57967f7ef40853247d2744f26..f43a5a8b6a747281d1d1738a7221eea8a618f365 100644 (file)
 #include <unistd.h>
 #include <limits.h>
 #include <string.h>
+#include <pthread.h>
+
+#define NUM_THREADS 1
+
+static pthread_barrier_t barrier;
+
+static void *
+thread_start (void *arg)
+{
+  pthread_barrier_wait (&barrier);
+
+  while (1)
+    sleep (1);
+  return NULL;
+}
+
+static void
+all_started (void)
+{
+}
 
 int
 main (int argc, char ** argv)
 {
   char prog[PATH_MAX];
+  pthread_t thread;
   int len;
 
   strcpy (prog, argv[0]);
@@ -33,6 +54,12 @@ main (int argc, char ** argv)
   memcpy (prog + len - 15, "multi-arch-exec-hello", 21);
   prog[len + 6] = 0;
 
+  pthread_barrier_init (&barrier, NULL, NUM_THREADS + 1);
+  pthread_create (&thread, NULL, thread_start, NULL);
+
+  pthread_barrier_wait (&barrier);
+  all_started ();
+
   execl (prog,
          prog,
          (char *) NULL);
This page took 0.02509 seconds and 4 git commands to generate.