aboutsummaryrefslogtreecommitdiff
path: root/test/validation/synchronizers/synchronizers.h
blob: f16477cb95880d85df1bceedc8d9a1a569b75395 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/* Copyright (c) 2015, Linaro Limited
 * All rights reserved.
 *
 * SPDX-License-Identifier:     BSD-3-Clause
 */

#ifndef _ODP_TEST_SYNCHRONIZERS_H_
#define _ODP_TEST_SYNCHRONIZERS_H_

#include <odp_cunit_common.h>

/* test functions: */
void synchronizers_test_no_barrier_functional(void);
void synchronizers_test_barrier_functional(void);
void synchronizers_test_no_lock_functional(void);
void synchronizers_test_spinlock_api(void);
void synchronizers_test_spinlock_functional(void);
void synchronizers_test_ticketlock_api(void);
void synchronizers_test_ticketlock_functional(void);
void synchronizers_test_rwlock_api(void);
void synchronizers_test_rwlock_functional(void);
void synchronizers_test_atomic_inc_dec(void);
void synchronizers_test_atomic_add_sub(void);
void synchronizers_test_atomic_fetch_inc_dec(void);
void synchronizers_test_atomic_fetch_add_sub(void);

/* test arrays: */
extern odp_testinfo_t synchronizers_suite_barrier[];
extern odp_testinfo_t synchronizers_suite_no_locking[];
extern odp_testinfo_t synchronizers_suite_spinlock[];
extern odp_testinfo_t synchronizers_suite_ticketlock[];
extern odp_testinfo_t synchronizers_suite_rwlock[];
extern odp_testinfo_t synchronizers_suite_atomic[];

/* test array init/term functions: */
int synchronizers_suite_init(void);

/* test registry: */
extern odp_suiteinfo_t synchronizers_suites[];

/* executable init/term functions: */
int synchronizers_init(void);

/* main test program: */
int synchronizers_main(void);

#endif