[Openmp-commits] [openmp] [OpenMP][OMPT] Make omp_control_tool enums available in omp-tools.h (PR #216076)
via Openmp-commits
openmp-commits at lists.llvm.org
Thu Aug 13 08:03:16 PDT 2026
https://github.com/jprotze created https://github.com/llvm/llvm-project/pull/216076
OpenMP 6.1 will introduce this change: the enums must be available by including either header file, but including both must also be valid.
>From 4f8b0c3c18943ef53aae4e968817e68620a0d137 Mon Sep 17 00:00:00 2001
From: Joachim Jenke <jenke at itc.rwth-aachen.de>
Date: Thu, 13 Aug 2026 16:55:32 +0200
Subject: [PATCH] [OpenMP][OMPT] Make omp_control_tool enums available in
omp-tools.h
OpenMP 6.1 will introduce this change: the enums must be available by
including either header file, but including both must also be valid.
---
openmp/runtime/src/include/omp-tools.h.var | 18 ++++++++++++++++++
openmp/runtime/src/include/omp.h.var | 4 ++++
2 files changed, 22 insertions(+)
diff --git a/openmp/runtime/src/include/omp-tools.h.var b/openmp/runtime/src/include/omp-tools.h.var
index 46643dff5feab..88031930a279a 100644
--- a/openmp/runtime/src/include/omp-tools.h.var
+++ b/openmp/runtime/src/include/omp-tools.h.var
@@ -302,6 +302,24 @@ typedef uint64_t ompt_device_time_t;
typedef uint64_t ompt_buffer_cursor_t;
+ /* OpenMP 6.1: Define in omp.h and omp-tools.h */
+#ifndef OMPCONTROLENUM
+#define OMPCONTROLENUM
+typedef enum omp_control_tool_result_t {
+ omp_control_tool_notool = -2,
+ omp_control_tool_nocallback = -1,
+ omp_control_tool_success = 0,
+ omp_control_tool_ignored = 1
+} omp_control_tool_result_t;
+
+typedef enum omp_control_tool_t {
+ omp_control_tool_start = 1,
+ omp_control_tool_pause = 2,
+ omp_control_tool_flush = 3,
+ omp_control_tool_end = 4
+} omp_control_tool_t;
+#endif OMPCONTROLENUM
+
typedef enum ompt_thread_t {
ompt_thread_initial = 1,
ompt_thread_worker = 2,
diff --git a/openmp/runtime/src/include/omp.h.var b/openmp/runtime/src/include/omp.h.var
index b05074198ca3f..f568a952350c8 100644
--- a/openmp/runtime/src/include/omp.h.var
+++ b/openmp/runtime/src/include/omp.h.var
@@ -312,6 +312,9 @@
extern void __KAI_KMPC_CONVENTION kmp_set_warnings_off(void);
/* OpenMP 5.0 Tool Control */
+ /* OpenMP 6.1: Define in omp.h and omp-tools.h */
+#ifndef OMPCONTROLENUM
+#define OMPCONTROLENUM
typedef enum omp_control_tool_result_t {
omp_control_tool_notool = -2,
omp_control_tool_nocallback = -1,
@@ -325,6 +328,7 @@
omp_control_tool_flush = 3,
omp_control_tool_end = 4
} omp_control_tool_t;
+#endif OMPCONTROLENUM
extern int __KAI_KMPC_CONVENTION omp_control_tool(int, int, void*);
More information about the Openmp-commits
mailing list