<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Regression: Assertion failure at kmp_dispatch"
   href="https://bugs.llvm.org/show_bug.cgi?id=48022">48022</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Regression: Assertion failure at kmp_dispatch
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>OpenMP
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Runtime Library
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>jan-grimo.sobez@phys.chem.ethz.ch
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>The following code non-deterministically trips a runtime assert on ubuntu 20.04
with the official llvm-apt clang 11 package:

int main() {
#pragma omp parallel for schedule(dynamic)
    for (int c = 0; c < 15; ++c)
#pragma omp parallel
      ;
}

The runtime assert is:
Assertion failure at kmp_dispatch.cpp(1332): victim.
OMP: Error #13: Assertion failure at kmp_dispatch.cpp(1332).
OMP: Hint Please submit a bug [...]

Relevant flags used for building (from CMake-generated Makefile) were:
CXX_FLAGS = -O3 -DNDEBUG   -march=native -fopenmp=libomp

Link command:
/usr/bin/clang++-11  -O3 -DNDEBUG   CMakeFiles/crash.dir/main.cpp.o  -o crash 
/usr/lib/llvm-11/lib/libomp.so /usr/lib/x86_64-linux-gnu/libpthread.so

Execution: no omp env variables set

The code is the result of several iterations of test case minimization and
by-hand refactoring. The interestingness script for the test case minimization
allows up to 100 executions of the program for tripping the assert, so you may
need to repeat execution rapidly for this to trip.

Minimum number of threads I was able to reproduce this with is four. I was
unable to reproduce this with clang 10.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>