8 start_routine (void *args
)
11 void **addrs
= (void **) args
;
12 for (i
= 0; i
< 10000; ++i
)
13 addrs
[i
% 1024] = dlsym (NULL
, "does_not_exist");
22 pthread_t tid1
, tid2
, tid3
;
28 if (pthread_create (&tid1
, NULL
, start_routine
, addrs1
) != 0)
30 puts ("1st create failed");
33 if (pthread_create (&tid2
, NULL
, start_routine
, addrs2
) != 0)
35 puts ("2nd create failed");
38 if (pthread_create (&tid3
, NULL
, start_routine
, addrs3
) != 0)
40 puts ("3rd create failed");
44 if (pthread_join (tid1
, NULL
) != 0)
46 puts ("1st join failed");
49 if (pthread_join (tid2
, NULL
) != 0)
51 puts ("2nd join failed");
54 if (pthread_join (tid3
, NULL
) != 0)
56 puts ("2nd join failed");
64 #define TEST_FUNCTION do_test ()
65 #include "../test-skeleton.c"