Fixes the documentation hyperlinks not showing the header.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D106374
-Potentially unknown OpenMP target region caller `[OMP100]`
-==========================================================
-
.. _omp100:
.. _omp_no_external_caller_in_target_region:
+Potentially unknown OpenMP target region caller `[OMP100]`
+==========================================================
+
A function remark that indicates the function, when compiled for a GPU, is
potentially called from outside the translation unit. Note that a remark is
only issued if we tried to perform an optimization which would require us to
+.. _omp101:
+
Parallel region is used in unknown / unexpected ways. Will not attempt to rewrite the state machine. [OMP101]
=============================================================================================================
-.. _omp101:
-
An analysis remark that indicates that a parallel region has unknown calls.
+.. _omp102:
+
Parallel region is not called from a unique kernel. Will not attempt to rewrite the state machine. [OMP102]
===========================================================================================================
-.. _omp102:
-
This analysis remark indicates that a given parallel region is called by
multiple kernels. This prevents the compiler from optimizing it to a single
kernel and rewrite the state machine.
+.. _omp110:
+
Moving globalized variable to the stack. [OMP110]
=================================================
-.. _omp110:
-
This optimization remark indicates that a globalized variable was moved back to
thread-local stack memory on the device. This occurs when the optimization pass
can determine that a globalized variable is not possibly be shared between
+.. _omp111:
+
Replaced globalized variable with X bytes of shared memory. [OMP111]
====================================================================
-.. _omp111:
-
This optimization occurs when a globalized variable's data is shared between
multiple threads, but requires a static amount of memory that can be determined
at compile time. This is the case when only a single thread creates the memory
+.. _omp112:
+
Found thread data sharing on the GPU. Expect degraded performance due to data globalization. [OMP112]
=====================================================================================================
-.. _omp112:
-
This missed remark indicates that a globalized value was found on the target
device that was not either replaced with stack memory by :ref:`OMP110 <omp110>`
or shared memory by :ref:`OMP111 <omp111>`. Globalization that has not been
+.. _omp113:
+
Could not move globalized variable to the stack. Variable is potentially captured in call. Mark parameter as `__attribute__((noescape))` to override. [OMP113]
==============================================================================================================================================================
-.. _omp113:
-
This missed remark indicates that a globalized value could not be moved to the
stack because it is potentially captured by a call to a function we cannot
analyze. In order for a globalized variable to be moved to the stack, copies to
+.. _omp120:
+
Transformed generic-mode kernel to SPMD-mode [OMP120]
=====================================================
-.. _omp120:
-
This optimization remark indicates that the execution strategy for the OpenMP
target offloading kernel was changed. Generic-mode kernels execute by using a
single thread to schedule parallel worker threads using a state machine. This
+.. _omp121:
+
Value has potential side effects preventing SPMD-mode execution. Add `__attribute__((assume(\"ompx_spmd_amenable\")))` to the called function to override. [OMP121]
===================================================================================================================================================================
-.. _omp121:
-
This analysis remarks indicates that a potential side-effect that cannot be
guarded prevents the target region from executing in SPMD-mode. SPMD-mode
requires that each thread is active inside the region. Any instruction that
+.. _omp130:
+
Removing unused state machine from generic-mode kernel. [OMP130]
================================================================
-.. _omp130:
-
This optimization remark indicates that an unused state machine was removed from
a target region. This occurs when there are no parallel regions inside of a
target construct. Normally, a state machine is required to schedule the threads
+.. _omp140:
+
Could not internalize function. Some optimizations may not be possible. [OMP140]
====================================================================================================================
-.. _omp140:
-
This analysis remark indicates that function internalization failed for the
given function. Internalization occurs when a call to a function that ordinarily
has external visibility is replaced with a call to a copy of that function with
+.. _omp150:
+
Parallel region merged with parallel region at <location>. [OMP150]
===================================================================
-.. _omp150:
-
This optimization remark indicates that a parallel region was merged with others
into a single parallel region. Parallel region merging fuses consecutive
parallel regions to reduce the team activation overhead of forking and increases
+.. _omp160:
+
Removing parallel region with no side-effects. [OMP160]
=======================================================
-.. _omp160:
-
This optimization remark indicates that a parallel region was deleted because it
was not found to have any side-effects. This can occur if the region does not
write any of its results to memory visible outside the region. This optimization
+.. _omp170:
+
OpenMP runtime call <call> deduplicated. [OMP170]
====================================================================
-.. _omp170:
-
This optimization remark indicates that a call to an OpenMP runtime call was
replaced with the result of an existing one. This occurs when the compiler knows
that the result of a runtime call is immutable. Removing duplicate calls is done