[OMPT] Add Workaround for Intel Compiler Bug
authorJoachim Protze <protze@itc.rwth-aachen.de>
Wed, 17 Jan 2018 10:06:06 +0000 (10:06 +0000)
committerJoachim Protze <protze@itc.rwth-aachen.de>
Wed, 17 Jan 2018 10:06:06 +0000 (10:06 +0000)
commit0c9516b36c90a2ef92ca04d457ff158052f8fde1
tree7cbd9fbba0e012f3b556e86b835a15ffef408df1
parent1b2bd2680bd5ff9641c74488a6e77561ebe21e5f
[OMPT] Add Workaround for Intel Compiler Bug

Add Workaround for Intel Compiler Bug with Case#: 03138964

A critical region within a nested task causes a segfault in icc 14-18:

int main()
{
  #pragma omp parallel num_threads(2)
  #pragma omp master
    #pragma omp task
      #pragma omp task
        #pragma omp critical
          printf("test\n");
}
When the critical region is in a separate function, the segault does not occur.
So we add noinline to make sure that the function call stays there.

Differential Revision: https://reviews.llvm.org/D41182

llvm-svn: 322622
openmp/runtime/test/ompt/tasks/task_types.c
openmp/runtime/test/ompt/tasks/task_types_serialized.c