blob: 9dfe111dea1c6f5868b0935bb2c834840f0e0eeb [file] [log] [blame]
Jim Cownie5e8470a2013-09-27 10:38:44 +00001/*
2 * kmp_error.h -- PTS functions for error checking at runtime.
Jim Cownie5e8470a2013-09-27 10:38:44 +00003 */
4
5
6//===----------------------------------------------------------------------===//
7//
8// The LLVM Compiler Infrastructure
9//
10// This file is dual licensed under the MIT and the University of Illinois Open
11// Source Licenses. See LICENSE.txt for details.
12//
13//===----------------------------------------------------------------------===//
14
15
16#ifndef KMP_ERROR_H
17#define KMP_ERROR_H
18
19#include "kmp_i18n.h"
20
21/* ------------------------------------------------------------------------ */
22#ifdef __cplusplus
23 extern "C" {
24#endif
25
26void __kmp_error_construct( kmp_i18n_id_t id, enum cons_type ct, ident_t const * ident );
27void __kmp_error_construct2( kmp_i18n_id_t id, enum cons_type ct, ident_t const * ident, struct cons_data const * cons );
28
29struct cons_header * __kmp_allocate_cons_stack( int gtid );
30void __kmp_free_cons_stack( void * ptr );
31
32void __kmp_push_parallel( int gtid, ident_t const * ident );
33void __kmp_push_workshare( int gtid, enum cons_type ct, ident_t const * ident );
Andrey Churbanov5c56fb52015-02-20 18:05:17 +000034#if KMP_USE_DYNAMIC_LOCK
35void __kmp_push_sync( int gtid, enum cons_type ct, ident_t const * ident, kmp_user_lock_p name, kmp_uint32 );
36#else
Jim Cownie5e8470a2013-09-27 10:38:44 +000037void __kmp_push_sync( int gtid, enum cons_type ct, ident_t const * ident, kmp_user_lock_p name );
Andrey Churbanov5c56fb52015-02-20 18:05:17 +000038#endif
Jim Cownie5e8470a2013-09-27 10:38:44 +000039
40void __kmp_check_workshare( int gtid, enum cons_type ct, ident_t const * ident );
Andrey Churbanov5c56fb52015-02-20 18:05:17 +000041#if KMP_USE_DYNAMIC_LOCK
42void __kmp_check_sync( int gtid, enum cons_type ct, ident_t const * ident, kmp_user_lock_p name, kmp_uint32 );
43#else
Jim Cownie5e8470a2013-09-27 10:38:44 +000044void __kmp_check_sync( int gtid, enum cons_type ct, ident_t const * ident, kmp_user_lock_p name );
Andrey Churbanov5c56fb52015-02-20 18:05:17 +000045#endif
Jim Cownie5e8470a2013-09-27 10:38:44 +000046
47void __kmp_pop_parallel( int gtid, ident_t const * ident );
48enum cons_type __kmp_pop_workshare( int gtid, enum cons_type ct, ident_t const * ident );
49void __kmp_pop_sync( int gtid, enum cons_type ct, ident_t const * ident );
50void __kmp_check_barrier( int gtid, enum cons_type ct, ident_t const * ident );
51
52#ifdef __cplusplus
53 } // extern "C"
54#endif
55
56#endif // KMP_ERROR_H
57