GCC Newspaper
JUNE 15, 2026
Date
/
Architectures
Components
Topics
News & Policy
Other
libgomp

libgomp: Add stub omp_control_tool for OMPT

Adds a stub implementation for `omp_control_tool` to libgomp, enabling OpenMP Tooling support.

This commit introduces a stub implementation for the omp_control_tool routine in libgomp, returning omp_control_tool_notool. This function is part of the OpenMP Tooling (OMPT) interface, designed to allow external tools to interact with and control OpenMP programs. The commit also includes necessary enum and parameter definitions in omp.h and omp_lib.{h,mod}, as well as new test cases to verify the functionality.

In Details

This commit adds a stub implementation for omp_control_tool to libgomp. This function is part of the OpenMP Tooling Interface (OMPT) and allows tools to control OpenMP execution. The implementation in env.c always returns omp_control_tool_notool. The commit also updates omp.h.in, omp_lib.h.in, and omp_lib.f90.in to include the necessary definitions and adds new test cases in both C and Fortran. The function name gets added to omp_runtime_api_procname in omp-general.cc.

For Context

OpenMP (Open Multi-Processing) is an API for writing parallel programs. The GNU OpenMP library (libgomp) implements the OpenMP runtime. OpenMP Tooling Interface (OMPT) is a mechanism for external tools to interact with OpenMP programs, allowing for debugging, profiling, and other forms of runtime analysis. This commit adds a placeholder function that will eventually allow external tools to control the behavior of OpenMP programs, though the initial version does not yet offer any actual control.

Filed Under: libgompOpenMPOMPTtooling