summaryrefslogtreecommitdiffstats
path: root/openmp/runtime/src
diff options
context:
space:
mode:
authorJonathan Peyton <jonathan.l.peyton@intel.com>2015-11-05 16:54:55 +0000
committerJonathan Peyton <jonathan.l.peyton@intel.com>2015-11-05 16:54:55 +0000
commit95246e7def0cf92b061338ca682c1f5e60f61a15 (patch)
tree39d0c641b81bf063b6b01d6cf3ecf1e330e5db6a /openmp/runtime/src
parent27149cf32dfbffb3738e96bdfda858712c758125 (diff)
downloadbcm5719-llvm-95246e7def0cf92b061338ca682c1f5e60f61a15.tar.gz
bcm5719-llvm-95246e7def0cf92b061338ca682c1f5e60f61a15.zip
Improve OMPT initialization code
Use of #ifdef OMPT_DEBUG was causing messages to be generated under normal operation when the OpenMP library was compiled with KMP_DEBUG enabled. Elsewhere, KMP_DEBUG evaluates assertions, but never produces messages during normal operation. To avoid this inconsistency, set OMPT_DEBUG using a cmake variable LIBOMP_OMPT_DEBUG. While I was editing the associated ompt-specific.h and ompt-general.c files, make the spacing and comments consistent. Patch by John Mellor-Crummey Differential Revision: http://reviews.llvm.org/D14355 llvm-svn: 252173
Diffstat (limited to 'openmp/runtime/src')
-rw-r--r--openmp/runtime/src/kmp_config.h.cmake2
-rw-r--r--openmp/runtime/src/ompt-general.c18
-rw-r--r--openmp/runtime/src/ompt-specific.h14
3 files changed, 24 insertions, 10 deletions
diff --git a/openmp/runtime/src/kmp_config.h.cmake b/openmp/runtime/src/kmp_config.h.cmake
index aa0a1aa9a50..f1d2b9b711a 100644
--- a/openmp/runtime/src/kmp_config.h.cmake
+++ b/openmp/runtime/src/kmp_config.h.cmake
@@ -35,6 +35,8 @@
#define KMP_STATS_ENABLED LIBOMP_STATS
#cmakedefine01 LIBOMP_USE_DEBUGGER
#define USE_DEBUGGER LIBOMP_USE_DEBUGGER
+#cmakedefine01 LIBOMP_OMPT_DEBUG
+#define OMPT_DEBUG LIBOMP_OMPT_DEBUG
#cmakedefine01 LIBOMP_OMPT_SUPPORT
#define OMPT_SUPPORT LIBOMP_OMPT_SUPPORT
#cmakedefine01 LIBOMP_OMPT_BLAME
diff --git a/openmp/runtime/src/ompt-general.c b/openmp/runtime/src/ompt-general.c
index 9b6ab076ca2..4ff11dbd948 100644
--- a/openmp/runtime/src/ompt-general.c
+++ b/openmp/runtime/src/ompt-general.c
@@ -134,31 +134,31 @@ ompt_initialize_t ompt_tool_windows()
#if OMPT_DEBUG
printf("ompt_tool_windows(): looking for ompt_tool\n");
#endif
- if( !EnumProcessModules( process, modules, NUM_MODULES * sizeof(HMODULE),
- &needed ) ) {
+ if (!EnumProcessModules( process, modules, NUM_MODULES * sizeof(HMODULE),
+ &needed)) {
// Regardless of the error reason use the stub initialization function
free(modules);
return NULL;
}
// Check if NUM_MODULES is enough to list all modules
new_size = needed / sizeof(HMODULE);
- if( new_size > NUM_MODULES ) {
+ if (new_size > NUM_MODULES) {
#if OMPT_DEBUG
printf("ompt_tool_windows(): resize buffer to %d bytes\n", needed);
#endif
modules = (HMODULE*)realloc( modules, needed );
// If resizing failed use the stub function.
- if( !EnumProcessModules( process, modules, needed, &needed ) ) {
+ if (!EnumProcessModules(process, modules, needed, &needed)) {
free(modules);
return NULL;
}
}
- for( i = 0; i < new_size; ++i ) {
+ for (i = 0; i < new_size; ++i) {
(FARPROC &)ompt_tool_p = GetProcAddress(modules[i], "ompt_tool");
- if( ompt_tool_p ) {
+ if (ompt_tool_p) {
#if OMPT_DEBUG
TCHAR modName[MAX_PATH];
- if( GetModuleFileName(modules[i], modName, MAX_PATH))
+ if (GetModuleFileName(modules[i], modName, MAX_PATH))
printf("ompt_tool_windows(): ompt_tool found in module %s\n",
modName);
#endif
@@ -168,7 +168,7 @@ ompt_initialize_t ompt_tool_windows()
#if OMPT_DEBUG
else {
TCHAR modName[MAX_PATH];
- if( GetModuleFileName(modules[i], modName, MAX_PATH) )
+ if (GetModuleFileName(modules[i], modName, MAX_PATH))
printf("ompt_tool_windows(): ompt_tool not found in module %s\n",
modName);
}
@@ -228,7 +228,7 @@ void ompt_pre_init()
break;
}
#if OMPT_DEBUG
- printf("ompt_pre_init():ompt_enabled = %d\n", ompt_enabled);
+ printf("ompt_pre_init(): ompt_enabled = %d\n", ompt_enabled);
#endif
}
diff --git a/openmp/runtime/src/ompt-specific.h b/openmp/runtime/src/ompt-specific.h
index bcbfdd3cf2d..e8f84a9a585 100644
--- a/openmp/runtime/src/ompt-specific.h
+++ b/openmp/runtime/src/ompt-specific.h
@@ -3,8 +3,18 @@
#include "kmp.h"
+/*****************************************************************************
+ * types
+ ****************************************************************************/
+
typedef kmp_info_t ompt_thread_t;
+
+
+/*****************************************************************************
+ * forward declarations
+ ****************************************************************************/
+
void __ompt_team_assign_id(kmp_team_t *team, ompt_parallel_id_t ompt_pid);
void __ompt_thread_assign_wait_id(void *variable);
@@ -34,15 +44,17 @@ ompt_task_id_t __ompt_get_task_id_internal(int depth);
ompt_frame_t *__ompt_get_task_frame_internal(int depth);
+
/*****************************************************************************
* macros
****************************************************************************/
-#define OMPT_DEBUG KMP_DEBUG
+
#define OMPT_HAVE_WEAK_ATTRIBUTE KMP_HAVE_WEAK_ATTRIBUTE
#define OMPT_HAVE_PSAPI KMP_HAVE_PSAPI
#define OMPT_STR_MATCH(haystack, needle) __kmp_str_match(haystack, 0, needle)
+
//******************************************************************************
// inline functions
//******************************************************************************
OpenPOWER on IntegriCloud