blob: 4b3e3ec0c41b6b0f2ce433ec6bc39ae98621639c [file] [log] [blame]
/*
* kmp_stub.h
* $Revision: 42061 $
* $Date: 2013-02-28 16:36:24 -0600 (Thu, 28 Feb 2013) $
*/
//===----------------------------------------------------------------------===//
//
// The LLVM Compiler Infrastructure
//
// This file is dual licensed under the MIT and the University of Illinois Open
// Source Licenses. See LICENSE.txt for details.
//
//===----------------------------------------------------------------------===//
#ifndef KMP_STUB_H
#define KMP_STUB_H
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
void __kmps_set_blocktime( int arg );
int __kmps_get_blocktime( void );
void __kmps_set_dynamic( int arg );
int __kmps_get_dynamic( void );
void __kmps_set_library( int arg );
int __kmps_get_library( void );
void __kmps_set_nested( int arg );
int __kmps_get_nested( void );
void __kmps_set_stacksize( int arg );
int __kmps_get_stacksize();
#if OMP_30_ENABLED
#ifndef KMP_SCHED_TYPE_DEFINED
#define KMP_SCHED_TYPE_DEFINED
typedef enum kmp_sched {
kmp_sched_static = 1, // mapped to kmp_sch_static_chunked (33)
kmp_sched_dynamic = 2, // mapped to kmp_sch_dynamic_chunked (35)
kmp_sched_guided = 3, // mapped to kmp_sch_guided_chunked (36)
kmp_sched_auto = 4, // mapped to kmp_sch_auto (38)
kmp_sched_default = kmp_sched_static // default scheduling
} kmp_sched_t;
#endif
void __kmps_set_schedule( kmp_sched_t kind, int modifier );
void __kmps_get_schedule( kmp_sched_t *kind, int *modifier );
#endif // OMP_30_ENABLED
#if OMP_40_ENABLED
void __kmps_set_proc_bind( enum kmp_proc_bind_t arg );
enum kmp_proc_bind_t __kmps_get_proc_bind( void );
#endif /* OMP_40_ENABLED */
double __kmps_get_wtime();
double __kmps_get_wtick();
#ifdef __cplusplus
} // extern "C"
#endif // __cplusplus
#endif // KMP_STUB_H
// end of file //