mirror of
https://forge.sourceware.org/marek/gcc.git
synced 2026-02-22 03:47:02 -05:00
openmp: Retire nest-var ICV for OpenMP 5.1
This removes the nest-var ICV, expressing nesting in terms of the max-active-levels-var ICV instead. The max-active-levels-var ICV is now per data environment rather than per device. 2020-11-18 Kwok Cheung Yeung <kcy@codesourcery.com> libgomp/ * env.c (gomp_global_icv): Remove nest_var field. Add max_active_levels_var field. (gomp_max_active_levels_var): Remove. (parse_boolean): Return true on success. (handle_omp_display_env): Express OMP_NESTED in terms of max_active_levels_var. Change format specifier for max_active_levels_var. (initialize_env): Set max_active_levels_var from OMP_MAX_ACTIVE_LEVELS, OMP_NESTED, OMP_NUM_THREADS and OMP_PROC_BIND. * icv.c (omp_set_nested): Express in terms of max_active_levels_var. (omp_get_nested): Likewise. (omp_set_max_active_levels): Use max_active_levels_var field instead of gomp_max_active_levels_var. (omp_get_max_active_levels): Likewise. * libgomp.h (struct gomp_task_icv): Remove nest_var field. Add max_active_levels_var field. (gomp_supported_active_levels): Set to UCHAR_MAX. (gomp_max_active_levels_var): Delete. * libgomp.texi (omp_get_nested): Update documentation. (omp_set_nested): Likewise. (OMP_MAX_ACTIVE_LEVELS): Likewise. (OMP_NESTED): Likewise. (OMP_NUM_THREADS): Likewise. (OMP_PROC_BIND): Likewise. * parallel.c (gomp_resolve_num_threads): Replace reference to nest_var with max_active_levels_var. Use max_active_levels_var field instead of gomp_max_active_levels_var.
This commit is contained in:
@@ -428,7 +428,7 @@ struct gomp_task_icv
|
||||
int default_device_var;
|
||||
unsigned int thread_limit_var;
|
||||
bool dyn_var;
|
||||
bool nest_var;
|
||||
unsigned char max_active_levels_var;
|
||||
char bind_var;
|
||||
/* Internal ICV. */
|
||||
struct target_mem_desc *target_data;
|
||||
@@ -441,13 +441,12 @@ enum gomp_target_offload_t
|
||||
GOMP_TARGET_OFFLOAD_DISABLED
|
||||
};
|
||||
|
||||
#define gomp_supported_active_levels INT_MAX
|
||||
#define gomp_supported_active_levels UCHAR_MAX
|
||||
|
||||
extern struct gomp_task_icv gomp_global_icv;
|
||||
#ifndef HAVE_SYNC_BUILTINS
|
||||
extern gomp_mutex_t gomp_managed_threads_lock;
|
||||
#endif
|
||||
extern unsigned long gomp_max_active_levels_var;
|
||||
extern bool gomp_cancel_var;
|
||||
extern enum gomp_target_offload_t gomp_target_offload_var;
|
||||
extern int gomp_max_task_priority_var;
|
||||
|
||||
Reference in New Issue
Block a user