.. _omp180:

Replacing OpenMP runtime call <call> with <value>.
====================================================================

This optimization remark indicates that analysis determined an OpenMP runtime 
calls can be replaced with a constant value. This can occur when an OpenMP 
runtime call that queried some internal state was found to always return a 
single value after analysis.

Example
-------

This optimization will trigger for most target regions to simplify the runtime 
once certain constants are known. This will trigger for internal runtime 
functions so it requires enabling verbose remarks with 
`-openmp-opt-verbose-remarks`.

.. code-block:: c++

  void foo() {
  #pragma omp target parallel
    { }
  }

.. code-block:: console

  $ clang test.c -fopenmp -fopenmp-targets=nvptx64 -O1 -Rpass=openmp-opt \
    -mllvm -openmp-opt-verbose-remarks
  remark: Replacing runtime call __kmpc_is_spmd_exec_mode with 1. [OMP180] [-Rpass=openmp-opt]
  remark: Replacing runtime call __kmpc_is_spmd_exec_mode with 1. [OMP180] [-Rpass=openmp-opt]
  remark: Replacing runtime call __kmpc_parallel_level with 1. [OMP180] [-Rpass=openmp-opt]
  remark: Replacing runtime call __kmpc_parallel_level with 1. [OMP180] [-Rpass=openmp-opt]

Diagnostic Scope
----------------

OpenMP optimization remark.
