brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.3 KiB · 405c3e6 Raw
46 lines · plain
1Generic-mode kernel is executed with a customized state machine that requires a fallback. [OMP132]2==================================================================================================3 4.. _omp132:5 6This analysis remark indicates that a state machine rewrite occurred, but7could not be done fully because of unknown calls to functions that may contain8parallel regions. The state machine handles scheduling work between parallel9worker threads on the device when operating in generic-mode. If there are10unknown parallel regions it prevents the optimization from fully rewriting the11state machine.12 13Examples14--------15 16This will occur for any generic-mode kernel that may contain unknown parallel17regions. This is typically coupled with the :ref:`OMP133 <omp133>` remark.18 19.. code-block:: c++20 21   extern void setup();22 23   void foo() {24   #pragma omp target25   {26     setup();27     #pragma omp parallel28     {29       work();30     }31   }32   }33 34.. code-block:: console35 36   $ clang++ -fopenmp -fopenmp-targets=nvptx64 -O2 -Rpass-analysis=openmp-opt omp132.cpp37   omp133.cpp:4:1: remark: Generic-mode kernel is executed with a customized state machine38   that requires a fallback. [OMP132]39   #pragma omp target40   ^41 42Diagnostic Scope43----------------44 45OpenMP target offloading analysis remark.46