Update copyright to LGPL on all files
[dyninst.git] / testsuite / src / dyninst / test12.h
1 /*
2  * Copyright (c) 1996-2009 Barton P. Miller
3  * 
4  * We provide the Paradyn Parallel Performance Tools (below
5  * described as "Paradyn") on an AS IS basis, and do not warrant its
6  * validity or performance.  We reserve the right to update, modify,
7  * or discontinue this software at any time.  We shall have no
8  * obligation to supply such updates or modifications or any other
9  * form of support to you.
10  * 
11  * By your use of Paradyn, you understand and agree that we (or any
12  * other person or entity with proprietary rights in Paradyn) are
13  * under no obligation to provide either maintenance services,
14  * update services, notices of latent defects, or correction of
15  * defects for Paradyn.
16  * 
17  * This library is free software; you can redistribute it and/or
18  * modify it under the terms of the GNU Lesser General Public
19  * License as published by the Free Software Foundation; either
20  * version 2.1 of the License, or (at your option) any later version.
21  * 
22  * This library is distributed in the hope that it will be useful,
23  * but WITHOUT ANY WARRANTY; without even the implied warranty of
24  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
25  * Lesser General Public License for more details.
26  * 
27  * You should have received a copy of the GNU Lesser General Public
28  * License along with this library; if not, write to the Free Software
29  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
30  */
31
32 #ifndef __TEST12_H__
33 #define __TEST12_H__
34
35 #include "test_lib_test9.h"
36
37 #define FAIL_MES(x,y) logerror("**Failed %s (%s)\n", x,y);
38 #define PASS_MES(x,y) logerror("Passed %s (%s)\n", x,y);
39 #define SKIP(x,y) logerror("Skipped %s (%s)\n", x,y);
40
41 #define TEST1_THREADS 10
42 #define TEST3_THREADS 10
43 #define TEST4_THREADS 10
44 #define TEST5_THREADS 10 
45 #define TEST6_THREADS 10
46 #define TEST7_THREADS 10
47 #define TEST8_THREADS 10
48
49
50 #define TEST7_NUMCALLS 10 /* number of callpoint messages we expect in subetst7 */
51 #define MAX_TEST 8 
52 #define TIMEOUT 15000 /* ms */
53 #define SLEEP_INTERVAL 10 /*100 ms*/
54 #if defined (os_windows_test)
55 #error
56 #else
57 #define MUTEX_INIT_FUNC "pthread_mutex_init"
58 #define MUTEX_LOCK_FUNC "pthread_mutex_lock"
59 #define MUTEX_UNLOCK_FUNC "pthread_mutex_unlock"
60 #define MUTEX_DESTROY_FUNC "pthread_mutex_destroy"
61 #endif
62 typedef enum {
63    null_event = 3,
64    mutex_init = 4,
65    mutex_lock = 5,
66    mutex_unlock = 6, 
67    mutex_destroy = 7,
68    func_entry = 8,
69    func_callsite = 9,
70    func_exit = 10,
71    test3_event1,
72    test3_event2,
73    test3_event3
74 } user_event_t;
75
76 #if defined(m32_test)
77 typedef struct {
78   unsigned int id;
79   user_event_t what; 
80   unsigned long long int tid;
81 } user_msg_t;
82 #else
83 typedef struct {
84   unsigned int id;
85   user_event_t what; 
86   unsigned long tid;
87 } user_msg_t;
88 #endif
89
90 #endif