OLD | NEW |
1 /* Check that TRT happens at an abort (3) call, more than one thread. | 1 /* Check that TRT happens at an abort (3) call, more than one thread. |
2 #notarget: cris*-*-elf | 2 #notarget: cris*-*-elf |
3 #cc: additional_flags=-pthread | 3 #cc: additional_flags=-pthread |
4 #xerror: | 4 #xerror: |
5 #output: Exiting pid 42 due to signal 6\n | 5 #output: Exiting pid 42 due to signal 6\n |
6 #output: program stopped with signal 6.\n | 6 #output: program stopped with signal 6 (*).\n |
7 */ | 7 */ |
8 | 8 |
9 #include <stdlib.h> | 9 #include <stdlib.h> |
10 #include <stddef.h> | 10 #include <stddef.h> |
11 #include <stdio.h> | 11 #include <stdio.h> |
12 #include <unistd.h> | 12 #include <unistd.h> |
13 #include <pthread.h> | 13 #include <pthread.h> |
14 | 14 |
15 static void * | 15 static void * |
16 process (void *arg) | 16 process (void *arg) |
17 { | 17 { |
18 while (1) | 18 while (1) |
19 sched_yield (); | 19 sched_yield (); |
20 return NULL; | 20 return NULL; |
21 } | 21 } |
22 | 22 |
23 int main (void) | 23 int main (void) |
24 { | 24 { |
25 pthread_t th_a; | 25 pthread_t th_a; |
26 if (pthread_create (&th_a, NULL, process, (void *) "a") == 0) | 26 if (pthread_create (&th_a, NULL, process, (void *) "a") == 0) |
27 abort (); | 27 abort (); |
28 printf ("xyzzy\n"); | 28 printf ("xyzzy\n"); |
29 exit (0); | 29 exit (0); |
30 } | 30 } |
OLD | NEW |