aboutsummaryrefslogtreecommitdiff
path: root/libgomp
diff options
context:
space:
mode:
authorAlexander Monakov <amonakov@ispras.ru>2016-11-30 21:23:00 +0300
committerAlexander Monakov <amonakov@gcc.gnu.org>2016-11-30 21:23:00 +0300
commit630e3c3ad65617d880a5da072c0ef9a6b02a1f7a (patch)
treefa91f71d8e2c922e109e5de784be4875b6373033 /libgomp
parent9e38af5c5521d07a914a03175bf7b7f5d88d3c89 (diff)
downloadgcc-630e3c3ad65617d880a5da072c0ef9a6b02a1f7a.zip
gcc-630e3c3ad65617d880a5da072c0ef9a6b02a1f7a.tar.gz
gcc-630e3c3ad65617d880a5da072c0ef9a6b02a1f7a.tar.bz2
libgomp: move data definitions from icv.c back to env.c
* config/nvptx/env.c: Delete. * icv.c: Move definitions of ICV variables back ... * env.c: ...here. Do not compile environment-related functionality if LIBGOMP_OFFLOADED_ONLY is set. From-SVN: r243041
Diffstat (limited to 'libgomp')
-rw-r--r--libgomp/ChangeLog7
-rw-r--r--libgomp/config/nvptx/env.c0
-rw-r--r--libgomp/env.c43
-rw-r--r--libgomp/icv.c34
4 files changed, 48 insertions, 36 deletions
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 1fafab8..9e2a300 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,5 +1,12 @@
2016-11-30 Alexander Monakov <amonakov@ispras.ru>
+ * config/nvptx/env.c: Delete.
+ * icv.c: Move definitions of ICV variables back ...
+ * env.c: ...here. Do not compile environment-related functionality if
+ LIBGOMP_OFFLOADED_ONLY is set.
+
+2016-11-30 Alexander Monakov <amonakov@ispras.ru>
+
* configure.ac [nvptx*-*-*] (libgomp_offloaded_only): Set and use it...
(LIBGOMP_OFFLOADED_ONLY): ...here; new define.
* configure: Regenerate.
diff --git a/libgomp/config/nvptx/env.c b/libgomp/config/nvptx/env.c
deleted file mode 100644
index e69de29..0000000
--- a/libgomp/config/nvptx/env.c
+++ /dev/null
diff --git a/libgomp/env.c b/libgomp/env.c
index 7ba7663..63899a2 100644
--- a/libgomp/env.c
+++ b/libgomp/env.c
@@ -23,13 +23,15 @@
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
-/* This file arranges for OpenMP internal control variables to be initialized
- from environment variables at startup. */
+/* This file defines the OpenMP internal control variables and arranges
+ for them to be initialized from environment variables at startup. */
#include "libgomp.h"
+#include "gomp-constants.h"
+#include <limits.h>
+#ifndef LIBGOMP_OFFLOADED_ONLY
#include "libgomp_f.h"
#include "oacc-int.h"
-#include "gomp-constants.h"
#include <ctype.h>
#include <stdlib.h>
#include <stdio.h>
@@ -48,12 +50,44 @@
# endif
# endif
#endif
-#include <limits.h>
#include <errno.h>
#ifndef HAVE_STRTOULL
# define strtoull(ptr, eptr, base) strtoul (ptr, eptr, base)
#endif
+#endif /* LIBGOMP_OFFLOADED_ONLY */
+
+struct gomp_task_icv gomp_global_icv = {
+ .nthreads_var = 1,
+ .thread_limit_var = UINT_MAX,
+ .run_sched_var = GFS_DYNAMIC,
+ .run_sched_chunk_size = 1,
+ .default_device_var = 0,
+ .dyn_var = false,
+ .nest_var = false,
+ .bind_var = omp_proc_bind_false,
+ .target_data = NULL
+};
+
+unsigned long gomp_max_active_levels_var = INT_MAX;
+bool gomp_cancel_var = false;
+int gomp_max_task_priority_var = 0;
+#ifndef HAVE_SYNC_BUILTINS
+gomp_mutex_t gomp_managed_threads_lock;
+#endif
+unsigned long gomp_available_cpus = 1, gomp_managed_threads = 1;
+unsigned long long gomp_spin_count_var, gomp_throttled_spin_count_var;
+unsigned long *gomp_nthreads_var_list, gomp_nthreads_var_list_len;
+char *gomp_bind_var_list;
+unsigned long gomp_bind_var_list_len;
+void **gomp_places_list;
+unsigned long gomp_places_list_len;
+int gomp_debug_var;
+unsigned int gomp_num_teams_var;
+char *goacc_device_type;
+int goacc_device_num;
+
+#ifndef LIBGOMP_OFFLOADED_ONLY
/* Parse the OMP_SCHEDULE environment variable. */
@@ -1273,3 +1307,4 @@ initialize_env (void)
goacc_runtime_initialize ();
}
+#endif /* LIBGOMP_OFFLOADED_ONLY */
diff --git a/libgomp/icv.c b/libgomp/icv.c
index e58b961..cf00e24 100644
--- a/libgomp/icv.c
+++ b/libgomp/icv.c
@@ -23,43 +23,13 @@
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
-/* This file defines the OpenMP internal control variables and associated
- OpenMP API entry points. */
+/* This file defines the OpenMP API entry points that operate on internal
+ control variables. */
#include "libgomp.h"
#include "gomp-constants.h"
#include <limits.h>
-struct gomp_task_icv gomp_global_icv = {
- .nthreads_var = 1,
- .thread_limit_var = UINT_MAX,
- .run_sched_var = GFS_DYNAMIC,
- .run_sched_chunk_size = 1,
- .default_device_var = 0,
- .dyn_var = false,
- .nest_var = false,
- .bind_var = omp_proc_bind_false,
- .target_data = NULL
-};
-
-unsigned long gomp_max_active_levels_var = INT_MAX;
-bool gomp_cancel_var = false;
-int gomp_max_task_priority_var = 0;
-#ifndef HAVE_SYNC_BUILTINS
-gomp_mutex_t gomp_managed_threads_lock;
-#endif
-unsigned long gomp_available_cpus = 1, gomp_managed_threads = 1;
-unsigned long long gomp_spin_count_var, gomp_throttled_spin_count_var;
-unsigned long *gomp_nthreads_var_list, gomp_nthreads_var_list_len;
-char *gomp_bind_var_list;
-unsigned long gomp_bind_var_list_len;
-void **gomp_places_list;
-unsigned long gomp_places_list_len;
-int gomp_debug_var;
-unsigned int gomp_num_teams_var;
-char *goacc_device_type;
-int goacc_device_num;
-
void
omp_set_num_threads (int n)
{