blob: 9d1efdafb1fd38a8a7321fb0bf9811e52c55ae2b [file] [log] [blame]
Jim Cownie5e8470a2013-09-27 10:38:44 +00001/*
2 * kmp_stub.h
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_STUB_H
17#define KMP_STUB_H
18
19#ifdef __cplusplus
Jonathan Peyton30419822017-05-12 18:01:32 +000020extern "C" {
Jim Cownie5e8470a2013-09-27 10:38:44 +000021#endif // __cplusplus
22
Jonathan Peyton30419822017-05-12 18:01:32 +000023void __kmps_set_blocktime(int arg);
24int __kmps_get_blocktime(void);
25void __kmps_set_dynamic(int arg);
26int __kmps_get_dynamic(void);
27void __kmps_set_library(int arg);
28int __kmps_get_library(void);
29void __kmps_set_nested(int arg);
30int __kmps_get_nested(void);
31void __kmps_set_stacksize(int arg);
32int __kmps_get_stacksize();
Jim Cownie5e8470a2013-09-27 10:38:44 +000033
Jim Cownie5e8470a2013-09-27 10:38:44 +000034#ifndef KMP_SCHED_TYPE_DEFINED
35#define KMP_SCHED_TYPE_DEFINED
36typedef enum kmp_sched {
Jonathan Peyton30419822017-05-12 18:01:32 +000037 kmp_sched_static = 1, // mapped to kmp_sch_static_chunked (33)
38 kmp_sched_dynamic = 2, // mapped to kmp_sch_dynamic_chunked (35)
39 kmp_sched_guided = 3, // mapped to kmp_sch_guided_chunked (36)
40 kmp_sched_auto = 4, // mapped to kmp_sch_auto (38)
41 kmp_sched_default = kmp_sched_static // default scheduling
Jim Cownie5e8470a2013-09-27 10:38:44 +000042} kmp_sched_t;
43#endif
Jonathan Peyton30419822017-05-12 18:01:32 +000044void __kmps_set_schedule(kmp_sched_t kind, int modifier);
45void __kmps_get_schedule(kmp_sched_t *kind, int *modifier);
Jim Cownie5e8470a2013-09-27 10:38:44 +000046
47#if OMP_40_ENABLED
Jonathan Peyton30419822017-05-12 18:01:32 +000048void __kmps_set_proc_bind(kmp_proc_bind_t arg);
49kmp_proc_bind_t __kmps_get_proc_bind(void);
Jim Cownie5e8470a2013-09-27 10:38:44 +000050#endif /* OMP_40_ENABLED */
51
52double __kmps_get_wtime();
53double __kmps_get_wtick();
54
55#ifdef __cplusplus
Jonathan Peyton30419822017-05-12 18:01:32 +000056} // extern "C"
Jim Cownie5e8470a2013-09-27 10:38:44 +000057#endif // __cplusplus
58
59#endif // KMP_STUB_H
60
61// end of file //