]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - runtime/src/kmp_error.h
Vendor import of LLVM openmp trunk r351319 (just before the release_80
[FreeBSD/FreeBSD.git] / runtime / src / kmp_error.h
1 /*
2  * kmp_error.h -- PTS functions for error checking at runtime.
3  */
4
5 //===----------------------------------------------------------------------===//
6 //
7 //                     The LLVM Compiler Infrastructure
8 //
9 // This file is dual licensed under the MIT and the University of Illinois Open
10 // Source Licenses. See LICENSE.txt for details.
11 //
12 //===----------------------------------------------------------------------===//
13
14 #ifndef KMP_ERROR_H
15 #define KMP_ERROR_H
16
17 #include "kmp_i18n.h"
18
19 /* ------------------------------------------------------------------------ */
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23
24 void __kmp_error_construct(kmp_i18n_id_t id, enum cons_type ct,
25                            ident_t const *ident);
26 void __kmp_error_construct2(kmp_i18n_id_t id, enum cons_type ct,
27                             ident_t const *ident, struct cons_data const *cons);
28
29 struct cons_header *__kmp_allocate_cons_stack(int gtid);
30 void __kmp_free_cons_stack(void *ptr);
31
32 void __kmp_push_parallel(int gtid, ident_t const *ident);
33 void __kmp_push_workshare(int gtid, enum cons_type ct, ident_t const *ident);
34 #if KMP_USE_DYNAMIC_LOCK
35 void __kmp_push_sync(int gtid, enum cons_type ct, ident_t const *ident,
36                      kmp_user_lock_p name, kmp_uint32);
37 #else
38 void __kmp_push_sync(int gtid, enum cons_type ct, ident_t const *ident,
39                      kmp_user_lock_p name);
40 #endif
41
42 void __kmp_check_workshare(int gtid, enum cons_type ct, ident_t const *ident);
43 #if KMP_USE_DYNAMIC_LOCK
44 void __kmp_check_sync(int gtid, enum cons_type ct, ident_t const *ident,
45                       kmp_user_lock_p name, kmp_uint32);
46 #else
47 void __kmp_check_sync(int gtid, enum cons_type ct, ident_t const *ident,
48                       kmp_user_lock_p name);
49 #endif
50
51 void __kmp_pop_parallel(int gtid, ident_t const *ident);
52 enum cons_type __kmp_pop_workshare(int gtid, enum cons_type ct,
53                                    ident_t const *ident);
54 void __kmp_pop_sync(int gtid, enum cons_type ct, ident_t const *ident);
55 void __kmp_check_barrier(int gtid, enum cons_type ct, ident_t const *ident);
56
57 #ifdef __cplusplus
58 } // extern "C"
59 #endif
60
61 #endif // KMP_ERROR_H