1*0b57cec5SDimitry Andric /* 2*0b57cec5SDimitry Andric * kmp_settings.h -- Initialize environment variables 3*0b57cec5SDimitry Andric */ 4*0b57cec5SDimitry Andric 5*0b57cec5SDimitry Andric //===----------------------------------------------------------------------===// 6*0b57cec5SDimitry Andric // 7*0b57cec5SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 8*0b57cec5SDimitry Andric // See https://llvm.org/LICENSE.txt for license information. 9*0b57cec5SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 10*0b57cec5SDimitry Andric // 11*0b57cec5SDimitry Andric //===----------------------------------------------------------------------===// 12*0b57cec5SDimitry Andric 13*0b57cec5SDimitry Andric #ifndef KMP_SETTINGS_H 14*0b57cec5SDimitry Andric #define KMP_SETTINGS_H 15*0b57cec5SDimitry Andric 16*0b57cec5SDimitry Andric void __kmp_reset_global_vars(void); 17*0b57cec5SDimitry Andric void __kmp_env_initialize(char const *); 18*0b57cec5SDimitry Andric void __kmp_env_print(); 19*0b57cec5SDimitry Andric void __kmp_env_print_2(); 20*0b57cec5SDimitry Andric 21*0b57cec5SDimitry Andric int __kmp_initial_threads_capacity(int req_nproc); 22*0b57cec5SDimitry Andric void __kmp_init_dflt_team_nth(); 23*0b57cec5SDimitry Andric int __kmp_convert_to_milliseconds(char const *); 24*0b57cec5SDimitry Andric int __kmp_default_tp_capacity(int, int, int); 25*0b57cec5SDimitry Andric 26*0b57cec5SDimitry Andric #if KMP_MIC 27*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_NAME \ 28*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s", KMP_I18N_STR(Device), name) 29*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_NAME_EX(x) \ 30*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='", KMP_I18N_STR(Device), x) 31*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_BOOL_EX(n, v, t, f) \ 32*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='%s'\n", KMP_I18N_STR(Device), n, \ 33*0b57cec5SDimitry Andric (v) ? t : f) 34*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_BOOL \ 35*0b57cec5SDimitry Andric KMP_STR_BUF_PRINT_BOOL_EX(name, value, "TRUE", "FALSE") 36*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_INT \ 37*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='%d'\n", KMP_I18N_STR(Device), name, \ 38*0b57cec5SDimitry Andric value) 39*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_UINT64 \ 40*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='%" KMP_UINT64_SPEC "'\n", \ 41*0b57cec5SDimitry Andric KMP_I18N_STR(Device), name, value); 42*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_STR \ 43*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='%s'\n", KMP_I18N_STR(Device), name, \ 44*0b57cec5SDimitry Andric value) 45*0b57cec5SDimitry Andric #else 46*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_NAME \ 47*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s", KMP_I18N_STR(Host), name) 48*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_NAME_EX(x) \ 49*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='", KMP_I18N_STR(Host), x) 50*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_BOOL_EX(n, v, t, f) \ 51*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='%s'\n", KMP_I18N_STR(Host), n, \ 52*0b57cec5SDimitry Andric (v) ? t : f) 53*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_BOOL \ 54*0b57cec5SDimitry Andric KMP_STR_BUF_PRINT_BOOL_EX(name, value, "TRUE", "FALSE") 55*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_INT \ 56*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='%d'\n", KMP_I18N_STR(Host), name, value) 57*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_UINT64 \ 58*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='%" KMP_UINT64_SPEC "'\n", \ 59*0b57cec5SDimitry Andric KMP_I18N_STR(Host), name, value); 60*0b57cec5SDimitry Andric #define KMP_STR_BUF_PRINT_STR \ 61*0b57cec5SDimitry Andric __kmp_str_buf_print(buffer, " %s %s='%s'\n", KMP_I18N_STR(Host), name, value) 62*0b57cec5SDimitry Andric #endif 63*0b57cec5SDimitry Andric 64*0b57cec5SDimitry Andric #endif // KMP_SETTINGS_H 65*0b57cec5SDimitry Andric 66*0b57cec5SDimitry Andric // end of file // 67