Index: cmake/OpenMPTesting.cmake =================================================================== --- cmake/OpenMPTesting.cmake +++ cmake/OpenMPTesting.cmake @@ -127,6 +127,8 @@ function(set_test_compiler_features) if ("${OPENMP_TEST_COMPILER_ID}" STREQUAL "GNU") set(comp "gcc") + elseif ("${OPENMP_TEST_COMPILER_ID}" STREQUAL "Intel") + set(comp "icc") else() # Just use the lowercase of the compiler ID as fallback. string(TOLOWER "${OPENMP_TEST_COMPILER_ID}" comp) Index: runtime/test/ompt/cancel/cancel_taskgroup.c =================================================================== --- runtime/test/ompt/cancel/cancel_taskgroup.c +++ runtime/test/ompt/cancel/cancel_taskgroup.c @@ -1,7 +1,8 @@ // RUN: %libomp-compile && env OMP_CANCELLATION=true %libomp-run | %sort-threads | FileCheck %s // REQUIRES: ompt -// Current GOMP interface implementation does not support cancellation -// XFAIL: gcc +// UNSUPPORTED: clang-3, clang-4.0.0 +// Current GOMP interface implementation does not support cancellation; icc 16 has a bug +// XFAIL: gcc, icc-16 #include "callback.h" #include Index: runtime/test/ompt/cancel/cancel_worksharing.c =================================================================== --- runtime/test/ompt/cancel/cancel_worksharing.c +++ runtime/test/ompt/cancel/cancel_worksharing.c @@ -1,8 +1,7 @@ // RUN: %libomp-compile && env OMP_CANCELLATION=true %libomp-run | %sort-threads | FileCheck %s // REQUIRES: ompt -// Current GOMP interface implementation does not support cancellation -// XFAIL: gcc - +// Current GOMP interface implementation does not support cancellation; icc 16 does not distinguish between sections and loops +// XFAIL: gcc, icc-16 #include "callback.h" #include Index: runtime/test/ompt/misc/control_tool.c =================================================================== --- runtime/test/ompt/misc/control_tool.c +++ runtime/test/ompt/misc/control_tool.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/parallel/max_active_levels_serialized.c =================================================================== --- runtime/test/ompt/parallel/max_active_levels_serialized.c +++ runtime/test/ompt/parallel/max_active_levels_serialized.c @@ -1,6 +1,7 @@ // RUN: %libomp-compile-and-run | FileCheck %s // RUN: %libomp-compile-and-run | %sort-threads | FileCheck --check-prefix=THREADS %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/parallel/nested.c =================================================================== --- runtime/test/ompt/parallel/nested.c +++ runtime/test/ompt/parallel/nested.c @@ -1,6 +1,7 @@ // RUN: %libomp-compile-and-run | FileCheck %s // RUN: %libomp-compile-and-run | %sort-threads | FileCheck --check-prefix=THREADS %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include #include Index: runtime/test/ompt/parallel/nested_lwt.c =================================================================== --- runtime/test/ompt/parallel/nested_lwt.c +++ runtime/test/ompt/parallel/nested_lwt.c @@ -1,6 +1,7 @@ // RUN: %libomp-compile-and-run | FileCheck %s // RUN: %libomp-compile-and-run | %sort-threads | FileCheck --check-prefix=THREADS %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include #include Index: runtime/test/ompt/parallel/nested_serialized.c =================================================================== --- runtime/test/ompt/parallel/nested_serialized.c +++ runtime/test/ompt/parallel/nested_serialized.c @@ -1,6 +1,7 @@ // RUN: %libomp-compile-and-run | FileCheck %s // RUN: %libomp-compile-and-run | %sort-threads | FileCheck --check-prefix=THREADS %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/parallel/parallel_if0.c =================================================================== --- runtime/test/ompt/parallel/parallel_if0.c +++ runtime/test/ompt/parallel/parallel_if0.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" int main() Index: runtime/test/ompt/parallel/serialized.c =================================================================== --- runtime/test/ompt/parallel/serialized.c +++ runtime/test/ompt/parallel/serialized.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" int main() Index: runtime/test/ompt/synchronization/barrier/explicit.c =================================================================== --- runtime/test/ompt/synchronization/barrier/explicit.c +++ runtime/test/ompt/synchronization/barrier/explicit.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/synchronization/barrier/for_loop.c =================================================================== --- runtime/test/ompt/synchronization/barrier/for_loop.c +++ runtime/test/ompt/synchronization/barrier/for_loop.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/synchronization/barrier/for_simd.c =================================================================== --- runtime/test/ompt/synchronization/barrier/for_simd.c +++ runtime/test/ompt/synchronization/barrier/for_simd.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | FileCheck %s // REQUIRES: ompt +// XFAIL: gcc-4 #include "callback.h" #include Index: runtime/test/ompt/synchronization/barrier/single.c =================================================================== --- runtime/test/ompt/synchronization/barrier/single.c +++ runtime/test/ompt/synchronization/barrier/single.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/synchronization/critical.c =================================================================== --- runtime/test/ompt/synchronization/critical.c +++ runtime/test/ompt/synchronization/critical.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/synchronization/ordered.c =================================================================== --- runtime/test/ompt/synchronization/ordered.c +++ runtime/test/ompt/synchronization/ordered.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/synchronization/taskgroup.c =================================================================== --- runtime/test/ompt/synchronization/taskgroup.c +++ runtime/test/ompt/synchronization/taskgroup.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/synchronization/taskwait.c =================================================================== --- runtime/test/ompt/synchronization/taskwait.c +++ runtime/test/ompt/synchronization/taskwait.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/synchronization/test_nest_lock_parallel.c =================================================================== --- runtime/test/ompt/synchronization/test_nest_lock_parallel.c +++ runtime/test/ompt/synchronization/test_nest_lock_parallel.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/tasks/dependences.c =================================================================== --- runtime/test/ompt/tasks/dependences.c +++ runtime/test/ompt/tasks/dependences.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/tasks/explicit_task.c =================================================================== --- runtime/test/ompt/tasks/explicit_task.c +++ runtime/test/ompt/tasks/explicit_task.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include Index: runtime/test/ompt/tasks/serialized.c =================================================================== --- runtime/test/ompt/tasks/serialized.c +++ runtime/test/ompt/tasks/serialized.c @@ -1,5 +1,6 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #include "callback.h" #include #include Index: runtime/test/ompt/worksharing/for/dynamic_split.c =================================================================== --- runtime/test/ompt/worksharing/for/dynamic_split.c +++ runtime/test/ompt/worksharing/for/dynamic_split.c @@ -1,6 +1,7 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %S/base_split.h // RUN: %libomp-compile-and-run | %sort-threads | FileCheck --check-prefix=CHECK-LOOP %S/base_split.h // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #define SCHEDULE dynamic #include "base_split.h" Index: runtime/test/ompt/worksharing/for/guided_split.c =================================================================== --- runtime/test/ompt/worksharing/for/guided_split.c +++ runtime/test/ompt/worksharing/for/guided_split.c @@ -1,6 +1,7 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %S/base_split.h // RUN: %libomp-compile-and-run | %sort-threads | FileCheck --check-prefix=CHECK-LOOP %S/base_split.h // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #define SCHEDULE guided #include "base_split.h" Index: runtime/test/ompt/worksharing/for/runtime_split.c =================================================================== --- runtime/test/ompt/worksharing/for/runtime_split.c +++ runtime/test/ompt/worksharing/for/runtime_split.c @@ -1,6 +1,7 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %S/base_split.h // RUN: %libomp-compile-and-run | %sort-threads | FileCheck --check-prefix=CHECK-LOOP %S/base_split.h // REQUIRES: ompt +// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7 #define SCHEDULE runtime #include "base_split.h" Index: runtime/test/ompt/worksharing/sections.c =================================================================== --- runtime/test/ompt/worksharing/sections.c +++ runtime/test/ompt/worksharing/sections.c @@ -1,7 +1,8 @@ // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s // REQUIRES: ompt -// GCC generates code that does not distinguish between sections and loops -// XFAIL: gcc +// Some compilers generate code that does not distinguish between sections and loops +// XFAIL: gcc, clang-3, clang-4, clang-5, icc-16, icc-17 +// UNSUPPORTED: icc-18 #include "callback.h" #include