[Openmp-commits] [openmp] 24f836e - [OpenMP][libomptarget] Separate lit tests for different offloading targets (2/2)

Joachim Protze via Openmp-commits openmp-commits at lists.llvm.org
Tue Apr 27 06:54:42 PDT 2021


Author: Joachim Protze
Date: 2021-04-27T15:54:32+02:00
New Revision: 24f836e8fd6f5c562318775d8154d4c561bae427

URL: https://github.com/llvm/llvm-project/commit/24f836e8fd6f5c562318775d8154d4c561bae427
DIFF: https://github.com/llvm/llvm-project/commit/24f836e8fd6f5c562318775d8154d4c561bae427.diff

LOG: [OpenMP][libomptarget] Separate lit tests for different offloading targets (2/2)

This patch fuses the RUN lines for most libomptarget tests. The previous patch
D101315 created separate test targets for each supported offloading triple.

This patch updates the RUN lines in libomptarget tests to use a generic run
line independent of the offloading target selected for the lit instance.

In cases, where no RUN line was defined for a specific offloading target,
the corresponding target is declared as XFAIL. If it turns out that a test
actually supports the target, the XFAIL line can be removed.

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

Added: 
    

Modified: 
    openmp/libomptarget/test/api/is_initial_device.c
    openmp/libomptarget/test/api/omp_get_num_devices.c
    openmp/libomptarget/test/api/omp_get_num_devices_with_empty_target.c
    openmp/libomptarget/test/env/base_ptr_ref_count.c
    openmp/libomptarget/test/env/omp_target_debug.c
    openmp/libomptarget/test/lit.cfg
    openmp/libomptarget/test/mapping/alloc_fail.c
    openmp/libomptarget/test/mapping/data_absent_at_exit.c
    openmp/libomptarget/test/mapping/data_member_ref.cpp
    openmp/libomptarget/test/mapping/declare_mapper_api.cpp
    openmp/libomptarget/test/mapping/declare_mapper_nested_default_mappers.cpp
    openmp/libomptarget/test/mapping/declare_mapper_nested_mappers.cpp
    openmp/libomptarget/test/mapping/declare_mapper_target.cpp
    openmp/libomptarget/test/mapping/declare_mapper_target_data.cpp
    openmp/libomptarget/test/mapping/declare_mapper_target_data_enter_exit.cpp
    openmp/libomptarget/test/mapping/declare_mapper_target_update.cpp
    openmp/libomptarget/test/mapping/delete_inf_refcount.c
    openmp/libomptarget/test/mapping/lambda_mapping.cpp
    openmp/libomptarget/test/mapping/pr38704.c
    openmp/libomptarget/test/mapping/present/target.c
    openmp/libomptarget/test/mapping/present/target_array_extension.c
    openmp/libomptarget/test/mapping/present/target_data.c
    openmp/libomptarget/test/mapping/present/target_data_array_extension.c
    openmp/libomptarget/test/mapping/present/target_data_at_exit.c
    openmp/libomptarget/test/mapping/present/target_enter_data.c
    openmp/libomptarget/test/mapping/present/target_exit_data_delete.c
    openmp/libomptarget/test/mapping/present/target_exit_data_release.c
    openmp/libomptarget/test/mapping/present/target_update.c
    openmp/libomptarget/test/mapping/present/target_update_array_extension.c
    openmp/libomptarget/test/mapping/present/unified_shared_memory.c
    openmp/libomptarget/test/mapping/present/zero_length_array_section.c
    openmp/libomptarget/test/mapping/present/zero_length_array_section_exit.c
    openmp/libomptarget/test/mapping/private_mapping.c
    openmp/libomptarget/test/mapping/ptr_and_obj_motion.c
    openmp/libomptarget/test/mapping/target_data_array_extension_at_exit.c
    openmp/libomptarget/test/mapping/target_implicit_partial_map.c
    openmp/libomptarget/test/mapping/target_update_array_extension.c
    openmp/libomptarget/test/offloading/assert.cpp
    openmp/libomptarget/test/offloading/bug47654.cpp
    openmp/libomptarget/test/offloading/bug49021.cpp
    openmp/libomptarget/test/offloading/bug49334.cpp
    openmp/libomptarget/test/offloading/d2d_memcpy.c
    openmp/libomptarget/test/offloading/dynamic_module.c
    openmp/libomptarget/test/offloading/dynamic_module_load.c
    openmp/libomptarget/test/offloading/host_as_target.c
    openmp/libomptarget/test/offloading/info.c
    openmp/libomptarget/test/offloading/lone_target_exit_data.c
    openmp/libomptarget/test/offloading/looptripcnt.c
    openmp/libomptarget/test/offloading/mandatory_but_no_devices.c
    openmp/libomptarget/test/offloading/memory_manager.cpp
    openmp/libomptarget/test/offloading/non_contiguous_update.cpp
    openmp/libomptarget/test/offloading/offloading_success.c
    openmp/libomptarget/test/offloading/offloading_success.cpp
    openmp/libomptarget/test/offloading/parallel_offloading_map.cpp
    openmp/libomptarget/test/offloading/requires.c
    openmp/libomptarget/test/offloading/target_depend_nowait.cpp
    openmp/libomptarget/test/unified_shared_memory/api.c
    openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c
    openmp/libomptarget/test/unified_shared_memory/close_manual.c
    openmp/libomptarget/test/unified_shared_memory/close_modifier.c
    openmp/libomptarget/test/unified_shared_memory/shared_update.c

Removed: 
    


################################################################################
diff  --git a/openmp/libomptarget/test/api/is_initial_device.c b/openmp/libomptarget/test/api/is_initial_device.c
index 78980d6316c6..f1a85fec6403 100644
--- a/openmp/libomptarget/test/api/is_initial_device.c
+++ b/openmp/libomptarget/test/api/is_initial_device.c
@@ -1,6 +1,9 @@
 // RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
 // RUN: %libomptarget-compile-x86_64-pc-linux-gnu -DUNUSED -Wall -Werror
 
+// only run for x86_64 host offloading:
+// REQUIRES: x86_64-pc-linux-gnu
+
 #include <omp.h>
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/api/omp_get_num_devices.c b/openmp/libomptarget/test/api/omp_get_num_devices.c
index d0e84db6b108..c2d455fec2af 100644
--- a/openmp/libomptarget/test/api/omp_get_num_devices.c
+++ b/openmp/libomptarget/test/api/omp_get_num_devices.c
@@ -1,7 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <stdio.h>
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/api/omp_get_num_devices_with_empty_target.c b/openmp/libomptarget/test/api/omp_get_num_devices_with_empty_target.c
index 85dcb73f1149..74ebb3e472ea 100644
--- a/openmp/libomptarget/test/api/omp_get_num_devices_with_empty_target.c
+++ b/openmp/libomptarget/test/api/omp_get_num_devices_with_empty_target.c
@@ -1,7 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <omp.h>
 #include <stdio.h>

diff  --git a/openmp/libomptarget/test/env/base_ptr_ref_count.c b/openmp/libomptarget/test/env/base_ptr_ref_count.c
index 4036954182fa..975e134a7e3d 100644
--- a/openmp/libomptarget/test/env/base_ptr_ref_count.c
+++ b/openmp/libomptarget/test/env/base_ptr_ref_count.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 | %fcheck-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 | %fcheck-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 | %fcheck-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-x86_64-pc-linux-gnu 2>&1 | %fcheck-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-nvptx64-nvidia-cuda 2>&1 | %fcheck-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-generic && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-generic 2>&1 | %fcheck-generic
 // REQUIRES: libomptarget-debug
 
 #include <stdlib.h>
@@ -48,4 +44,3 @@ int main(void) {
   return 0;
 }
 
-

diff  --git a/openmp/libomptarget/test/env/omp_target_debug.c b/openmp/libomptarget/test/env/omp_target_debug.c
index 34a71793d927..8793d38df718 100644
--- a/openmp/libomptarget/test/env/omp_target_debug.c
+++ b/openmp/libomptarget/test/env/omp_target_debug.c
@@ -1,13 +1,5 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 | %fcheck-aarch64-unknown-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu && env LIBOMPTARGET_DEBUG=0 %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 | %fcheck-aarch64-unknown-linux-gnu -allow-empty -check-prefix=NDEBUG
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 | %fcheck-powerpc64-ibm-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=0 %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 | %fcheck-powerpc64-ibm-linux-gnu -allow-empty -check-prefix=NDEBUG
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 | %fcheck-powerpc64le-ibm-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=0 %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 | %fcheck-powerpc64le-ibm-linux-gnu -allow-empty -check-prefix=NDEBUG
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-x86_64-pc-linux-gnu 2>&1 | %fcheck-x86_64-pc-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu && env LIBOMPTARGET_DEBUG=0 %libomptarget-run-x86_64-pc-linux-gnu 2>&1 | %fcheck-x86_64-pc-linux-gnu -allow-empty -check-prefix=NDEBUG
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-nvptx64-nvidia-cuda 2>&1 | %fcheck-nvptx64-nvidia-cuda -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda && env LIBOMPTARGET_DEBUG=0 %libomptarget-run-nvptx64-nvidia-cuda 2>&1 | %fcheck-nvptx64-nvidia-cuda -allow-empty -check-prefix=NDEBUG
+// RUN: %libomptarget-compile-generic && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-generic 2>&1 | %fcheck-generic -allow-empty -check-prefix=DEBUG
+// RUN: %libomptarget-compile-generic && env LIBOMPTARGET_DEBUG=0 %libomptarget-run-generic 2>&1 | %fcheck-generic -allow-empty -check-prefix=NDEBUG
 // REQUIRES: libomptarget-debug
 
 int main(void) {

diff  --git a/openmp/libomptarget/test/lit.cfg b/openmp/libomptarget/test/lit.cfg
index af9df8db7359..0a43103cccd9 100644
--- a/openmp/libomptarget/test/lit.cfg
+++ b/openmp/libomptarget/test/lit.cfg
@@ -129,18 +129,16 @@ for libomptarget_target in config.libomptarget_all_targets:
             "%libomptarget-run-" + libomptarget_target))
         config.substitutions.append(("%libomptarget-compilexx-" + \
             libomptarget_target, \
-            "%clangxx-" + libomptarget_target + " %s -o %t-" + \
-            libomptarget_target))
+            "%clangxx-" + libomptarget_target + " %s -o %t"))
         config.substitutions.append(("%libomptarget-compile-" + \
             libomptarget_target, \
-            "%clang-" + libomptarget_target + " %s -o %t-" + \
-            libomptarget_target))
+            "%clang-" + libomptarget_target + " %s -o %t"))
         config.substitutions.append(("%libomptarget-run-" + \
             libomptarget_target, \
-            "%t-" + libomptarget_target))
+            "%t"))
         config.substitutions.append(("%libomptarget-run-fail-" + \
             libomptarget_target, \
-            "%not --crash %t-" + libomptarget_target))
+            "%not --crash %t"))
         config.substitutions.append(("%clangxx-" + libomptarget_target, \
             "%clangxx %openmp_flags %flags -fopenmp-targets=" + libomptarget_target))
         config.substitutions.append(("%clang-" + libomptarget_target, \

diff  --git a/openmp/libomptarget/test/mapping/alloc_fail.c b/openmp/libomptarget/test/mapping/alloc_fail.c
index 256679606edc..9e554bc9e528 100644
--- a/openmp/libomptarget/test/mapping/alloc_fail.c
+++ b/openmp/libomptarget/test/mapping/alloc_fail.c
@@ -1,22 +1,6 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
-
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda
-// RUN: %libomptarget-run-fail-nvptx64-nvidia-cuda 2>&1 \
-// RUN: | %fcheck-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-generic
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // CHECK: Libomptarget message: explicit extension not allowed: host address specified is 0x{{.*}} (8 bytes), but device allocation maps to host at 0x{{.*}} (8 bytes)
 // CHECK: Libomptarget error: Call to getOrAllocTgtPtr returned null pointer (device failure or illegal mapping).

diff  --git a/openmp/libomptarget/test/mapping/data_absent_at_exit.c b/openmp/libomptarget/test/mapping/data_absent_at_exit.c
index a72bcfd59b8f..a4e31cf20458 100644
--- a/openmp/libomptarget/test/mapping/data_absent_at_exit.c
+++ b/openmp/libomptarget/test/mapping/data_absent_at_exit.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/data_member_ref.cpp b/openmp/libomptarget/test/mapping/data_member_ref.cpp
index 44e4d1e71708..f8f13d0c4774 100644
--- a/openmp/libomptarget/test/mapping/data_member_ref.cpp
+++ b/openmp/libomptarget/test/mapping/data_member_ref.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/declare_mapper_api.cpp b/openmp/libomptarget/test/mapping/declare_mapper_api.cpp
index eda0c86ee105..90c3c032be9e 100644
--- a/openmp/libomptarget/test/mapping/declare_mapper_api.cpp
+++ b/openmp/libomptarget/test/mapping/declare_mapper_api.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <cstdio>
 #include <cstdlib>

diff  --git a/openmp/libomptarget/test/mapping/declare_mapper_nested_default_mappers.cpp b/openmp/libomptarget/test/mapping/declare_mapper_nested_default_mappers.cpp
index ae2902a3d08d..373af90523d2 100644
--- a/openmp/libomptarget/test/mapping/declare_mapper_nested_default_mappers.cpp
+++ b/openmp/libomptarget/test/mapping/declare_mapper_nested_default_mappers.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <cstdio>
 #include <cstdlib>

diff  --git a/openmp/libomptarget/test/mapping/declare_mapper_nested_mappers.cpp b/openmp/libomptarget/test/mapping/declare_mapper_nested_mappers.cpp
index 87697affe06f..161124aa51cf 100644
--- a/openmp/libomptarget/test/mapping/declare_mapper_nested_mappers.cpp
+++ b/openmp/libomptarget/test/mapping/declare_mapper_nested_mappers.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <cstdio>
 #include <cstdlib>

diff  --git a/openmp/libomptarget/test/mapping/declare_mapper_target.cpp b/openmp/libomptarget/test/mapping/declare_mapper_target.cpp
index 096431f6edc0..cb999aae2424 100644
--- a/openmp/libomptarget/test/mapping/declare_mapper_target.cpp
+++ b/openmp/libomptarget/test/mapping/declare_mapper_target.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <cstdio>
 #include <cstdlib>

diff  --git a/openmp/libomptarget/test/mapping/declare_mapper_target_data.cpp b/openmp/libomptarget/test/mapping/declare_mapper_target_data.cpp
index e2636f157d65..c5b90ed3253c 100644
--- a/openmp/libomptarget/test/mapping/declare_mapper_target_data.cpp
+++ b/openmp/libomptarget/test/mapping/declare_mapper_target_data.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <cstdio>
 #include <cstdlib>
@@ -24,10 +20,10 @@ int main() {
   }
   #pragma omp target data map(mapper(id),tofrom: c)
   {
-  #pragma omp target teams distribute parallel for
-  for (int i = 0; i < NUM; i++) {
-    ++c.a[i];
-  }
+    #pragma omp target teams distribute parallel for
+    for (int i = 0; i < NUM; i++) {
+      ++c.a[i];
+    }
   }
   int sum = 0;
   for (int i = 0; i < NUM; i++) {

diff  --git a/openmp/libomptarget/test/mapping/declare_mapper_target_data_enter_exit.cpp b/openmp/libomptarget/test/mapping/declare_mapper_target_data_enter_exit.cpp
index 44fcc20e8ee1..b714bca84dcb 100644
--- a/openmp/libomptarget/test/mapping/declare_mapper_target_data_enter_exit.cpp
+++ b/openmp/libomptarget/test/mapping/declare_mapper_target_data_enter_exit.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <cstdio>
 #include <cstdlib>

diff  --git a/openmp/libomptarget/test/mapping/declare_mapper_target_update.cpp b/openmp/libomptarget/test/mapping/declare_mapper_target_update.cpp
index c894c92dc09a..6aa23d20632f 100644
--- a/openmp/libomptarget/test/mapping/declare_mapper_target_update.cpp
+++ b/openmp/libomptarget/test/mapping/declare_mapper_target_update.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <cstdio>
 #include <cstdlib>

diff  --git a/openmp/libomptarget/test/mapping/delete_inf_refcount.c b/openmp/libomptarget/test/mapping/delete_inf_refcount.c
index e6b6e9432696..ca5980ff5170 100644
--- a/openmp/libomptarget/test/mapping/delete_inf_refcount.c
+++ b/openmp/libomptarget/test/mapping/delete_inf_refcount.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <stdio.h>
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/mapping/lambda_mapping.cpp b/openmp/libomptarget/test/mapping/lambda_mapping.cpp
index 23671ebb7d68..15788372c599 100644
--- a/openmp/libomptarget/test/mapping/lambda_mapping.cpp
+++ b/openmp/libomptarget/test/mapping/lambda_mapping.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <iostream>
 

diff  --git a/openmp/libomptarget/test/mapping/pr38704.c b/openmp/libomptarget/test/mapping/pr38704.c
index c4e80ca44f6b..28cab8a65515 100644
--- a/openmp/libomptarget/test/mapping/pr38704.c
+++ b/openmp/libomptarget/test/mapping/pr38704.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 // Clang 6.0 doesn't use the new map interface, undefined behavior when
 // the compiler emits "old" interface code for structures.

diff  --git a/openmp/libomptarget/test/mapping/present/target.c b/openmp/libomptarget/test/mapping/present/target.c
index b37eca2bc2bf..e9f55541fb51 100644
--- a/openmp/libomptarget/test/mapping/present/target.c
+++ b/openmp/libomptarget/test/mapping/present/target.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_array_extension.c b/openmp/libomptarget/test/mapping/present/target_array_extension.c
index e02319c98693..8accb8b3840a 100644
--- a/openmp/libomptarget/test/mapping/present/target_array_extension.c
+++ b/openmp/libomptarget/test/mapping/present/target_array_extension.c
@@ -2,49 +2,20 @@
 // Check extends before
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check extends after
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 // END.
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_data.c b/openmp/libomptarget/test/mapping/present/target_data.c
index fd3107d87fef..d58f7c8dc04a 100644
--- a/openmp/libomptarget/test/mapping/present/target_data.c
+++ b/openmp/libomptarget/test/mapping/present/target_data.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_data_array_extension.c b/openmp/libomptarget/test/mapping/present/target_data_array_extension.c
index b5e43c2e1ddc..4e8814fc8f4c 100644
--- a/openmp/libomptarget/test/mapping/present/target_data_array_extension.c
+++ b/openmp/libomptarget/test/mapping/present/target_data_array_extension.c
@@ -2,49 +2,20 @@
 // Check extends before
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check extends after
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 // END.
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_data_at_exit.c b/openmp/libomptarget/test/mapping/present/target_data_at_exit.c
index 9a258ba57a50..36ce90871454 100644
--- a/openmp/libomptarget/test/mapping/present/target_data_at_exit.c
+++ b/openmp/libomptarget/test/mapping/present/target_data_at_exit.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_enter_data.c b/openmp/libomptarget/test/mapping/present/target_enter_data.c
index dfe54ffbb5f2..3a1d81e6d01e 100644
--- a/openmp/libomptarget/test/mapping/present/target_enter_data.c
+++ b/openmp/libomptarget/test/mapping/present/target_enter_data.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_exit_data_delete.c b/openmp/libomptarget/test/mapping/present/target_exit_data_delete.c
index 761ee510b25e..7585ce8d7978 100644
--- a/openmp/libomptarget/test/mapping/present/target_exit_data_delete.c
+++ b/openmp/libomptarget/test/mapping/present/target_exit_data_delete.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_exit_data_release.c b/openmp/libomptarget/test/mapping/present/target_exit_data_release.c
index 1f177320780e..6b32fbe74418 100644
--- a/openmp/libomptarget/test/mapping/present/target_exit_data_release.c
+++ b/openmp/libomptarget/test/mapping/present/target_exit_data_release.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_update.c b/openmp/libomptarget/test/mapping/present/target_update.c
index 3a3575a27d01..3ec126f02050 100644
--- a/openmp/libomptarget/test/mapping/present/target_update.c
+++ b/openmp/libomptarget/test/mapping/present/target_update.c
@@ -2,49 +2,20 @@
 // Check 'to'
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DCLAUSE=to
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check 'from'
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DCLAUSE=from
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/target_update_array_extension.c b/openmp/libomptarget/test/mapping/present/target_update_array_extension.c
index 3e90c40c15b6..9ab1c78d49bf 100644
--- a/openmp/libomptarget/test/mapping/present/target_update_array_extension.c
+++ b/openmp/libomptarget/test/mapping/present/target_update_array_extension.c
@@ -2,97 +2,38 @@
 // Check 'to' and extends before
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DCLAUSE=to -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check 'from' and extends before
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DCLAUSE=from -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check 'to' and extends after
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DCLAUSE=to -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=to -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check 'from' and extends after
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DCLAUSE=from -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DCLAUSE=from -DEXTENDS=AFTER
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 // END.
 

diff  --git a/openmp/libomptarget/test/mapping/present/unified_shared_memory.c b/openmp/libomptarget/test/mapping/present/unified_shared_memory.c
index 22d87460179c..e0e7b64d38b9 100644
--- a/openmp/libomptarget/test/mapping/present/unified_shared_memory.c
+++ b/openmp/libomptarget/test/mapping/present/unified_shared_memory.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/zero_length_array_section.c b/openmp/libomptarget/test/mapping/present/zero_length_array_section.c
index 3da0ab49b61e..85fe7da43594 100644
--- a/openmp/libomptarget/test/mapping/present/zero_length_array_section.c
+++ b/openmp/libomptarget/test/mapping/present/zero_length_array_section.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/present/zero_length_array_section_exit.c b/openmp/libomptarget/test/mapping/present/zero_length_array_section_exit.c
index bedc6a2729c5..bc441bf98f34 100644
--- a/openmp/libomptarget/test/mapping/present/zero_length_array_section_exit.c
+++ b/openmp/libomptarget/test/mapping/present/zero_length_array_section_exit.c
@@ -1,18 +1,7 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic -fopenmp-version=51
+// RUN: %libomptarget-run-fail-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -fopenmp-version=51
-// RUN: %libomptarget-run-fail-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/private_mapping.c b/openmp/libomptarget/test/mapping/private_mapping.c
index 4578f942f20c..4bd1c37ae36a 100644
--- a/openmp/libomptarget/test/mapping/private_mapping.c
+++ b/openmp/libomptarget/test/mapping/private_mapping.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <assert.h>
 #include <stdio.h>

diff  --git a/openmp/libomptarget/test/mapping/ptr_and_obj_motion.c b/openmp/libomptarget/test/mapping/ptr_and_obj_motion.c
index b08734542662..a975ed63bc20 100644
--- a/openmp/libomptarget/test/mapping/ptr_and_obj_motion.c
+++ b/openmp/libomptarget/test/mapping/ptr_and_obj_motion.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/mapping/target_data_array_extension_at_exit.c b/openmp/libomptarget/test/mapping/target_data_array_extension_at_exit.c
index d95a6b59018f..11d53ba2a5e7 100644
--- a/openmp/libomptarget/test/mapping/target_data_array_extension_at_exit.c
+++ b/openmp/libomptarget/test/mapping/target_data_array_extension_at_exit.c
@@ -2,49 +2,20 @@
 // Check extends before
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check extends after
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -fopenmp-version=51 -DEXTENDS=AFTER
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 // END.
 

diff  --git a/openmp/libomptarget/test/mapping/target_implicit_partial_map.c b/openmp/libomptarget/test/mapping/target_implicit_partial_map.c
index aa713ff0f8a0..1e9dbb1b0f7b 100644
--- a/openmp/libomptarget/test/mapping/target_implicit_partial_map.c
+++ b/openmp/libomptarget/test/mapping/target_implicit_partial_map.c
@@ -1,19 +1,8 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-compile-generic
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
 
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
-//
 // END.
 
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/mapping/target_update_array_extension.c b/openmp/libomptarget/test/mapping/target_update_array_extension.c
index f5748ce90e95..9222275f27ed 100644
--- a/openmp/libomptarget/test/mapping/target_update_array_extension.c
+++ b/openmp/libomptarget/test/mapping/target_update_array_extension.c
@@ -2,97 +2,38 @@
 // Check 'to' and extends before
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -DCLAUSE=to -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -DCLAUSE=to -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -DCLAUSE=to -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -DCLAUSE=to -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check 'from' and extends before
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
-// RUN:   -DCLAUSE=from -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -DCLAUSE=from -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -DCLAUSE=from -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -DCLAUSE=from -DEXTENDS=BEFORE
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check 'to' and extends after
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -DCLAUSE=to -DEXTENDS=AFTER
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -DCLAUSE=to -DEXTENDS=AFTER
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -DCLAUSE=to -DEXTENDS=AFTER
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -DCLAUSE=to -DEXTENDS=AFTER
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
 // --------------------------------------------------
 // Check 'from' and extends after
 // --------------------------------------------------
 
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu \
+// RUN: %libomptarget-compile-generic \
 // RUN:   -DCLAUSE=from -DEXTENDS=AFTER
-// RUN: %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 \
-// RUN: | %fcheck-aarch64-unknown-linux-gnu
+// RUN: %libomptarget-run-generic 2>&1 \
+// RUN: | %fcheck-generic
 
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu \
-// RUN:   -DCLAUSE=from -DEXTENDS=AFTER
-// RUN: %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu \
-// RUN:   -DCLAUSE=from -DEXTENDS=AFTER
-// RUN: %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 \
-// RUN: | %fcheck-powerpc64le-ibm-linux-gnu
-
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu \
-// RUN:   -DCLAUSE=from -DEXTENDS=AFTER
-// RUN: %libomptarget-run-x86_64-pc-linux-gnu 2>&1 \
-// RUN: | %fcheck-x86_64-pc-linux-gnu
 
 // END.
 

diff  --git a/openmp/libomptarget/test/offloading/assert.cpp b/openmp/libomptarget/test/offloading/assert.cpp
index 00112dd92cc6..95c28cc9793a 100644
--- a/openmp/libomptarget/test/offloading/assert.cpp
+++ b/openmp/libomptarget/test/offloading/assert.cpp
@@ -1,4 +1,5 @@
 // RUN: %libomptarget-compilexx-nvptx64-nvidia-cuda && %libomptarget-run-fail-nvptx64-nvidia-cuda
+// REQUIRES: nvptx64-nvidia-cuda
 
 int main(int argc, char *argv[]) {
 #pragma omp target

diff  --git a/openmp/libomptarget/test/offloading/bug47654.cpp b/openmp/libomptarget/test/offloading/bug47654.cpp
index 14c8a9dde16b..abe1dfc29dc2 100644
--- a/openmp/libomptarget/test/offloading/bug47654.cpp
+++ b/openmp/libomptarget/test/offloading/bug47654.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <cassert>
 #include <iostream>

diff  --git a/openmp/libomptarget/test/offloading/bug49021.cpp b/openmp/libomptarget/test/offloading/bug49021.cpp
index bcdbf68b10e0..6cd617f7a06b 100644
--- a/openmp/libomptarget/test/offloading/bug49021.cpp
+++ b/openmp/libomptarget/test/offloading/bug49021.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-aarch64-unknown-linux-gnu -O3 && %libomptarget-run-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-powerpc64-ibm-linux-gnu -O3 && %libomptarget-run-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-powerpc64le-ibm-linux-gnu -O3 && %libomptarget-run-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-x86_64-pc-linux-gnu -O3 && %libomptarget-run-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-nvptx64-nvidia-cuda -O3 && %libomptarget-run-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-generic -O3 && %libomptarget-run-generic
 
 #include <iostream>
 

diff  --git a/openmp/libomptarget/test/offloading/bug49334.cpp b/openmp/libomptarget/test/offloading/bug49334.cpp
index b26cd7b2b338..bb75ebee5421 100644
--- a/openmp/libomptarget/test/offloading/bug49334.cpp
+++ b/openmp/libomptarget/test/offloading/bug49334.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <cassert>
 #include <iostream>

diff  --git a/openmp/libomptarget/test/offloading/d2d_memcpy.c b/openmp/libomptarget/test/offloading/d2d_memcpy.c
index 968f7112cd8b..8e5a40c98dfe 100644
--- a/openmp/libomptarget/test/offloading/d2d_memcpy.c
+++ b/openmp/libomptarget/test/offloading/d2d_memcpy.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu && env OMP_MAX_ACTIVE_LEVELS=2 %libomptarget-run-aarch64-unknown-linux-gnu | %fcheck-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu && env OMP_MAX_ACTIVE_LEVELS=2 %libomptarget-run-powerpc64-ibm-linux-gnu | %fcheck-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu && env OMP_MAX_ACTIVE_LEVELS=2 %libomptarget-run-powerpc64le-ibm-linux-gnu | %fcheck-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu && env OMP_MAX_ACTIVE_LEVELS=2 %libomptarget-run-x86_64-pc-linux-gnu | %fcheck-x86_64-pc-linux-gnu -allow-empty
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda && env OMP_MAX_ACTIVE_LEVELS=2 %libomptarget-run-nvptx64-nvidia-cuda | %fcheck-nvptx64-nvidia-cuda -allow-empty
+// RUN: %libomptarget-compile-generic && env OMP_MAX_ACTIVE_LEVELS=2 %libomptarget-run-generic | %fcheck-generic -allow-empty
 
 #include <assert.h>
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/offloading/dynamic_module.c b/openmp/libomptarget/test/offloading/dynamic_module.c
index ba3c025ba30d..05efcb526fc5 100644
--- a/openmp/libomptarget/test/offloading/dynamic_module.c
+++ b/openmp/libomptarget/test/offloading/dynamic_module.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -DSHARED -fPIC -shared -o %t.so && %libomptarget-compile-aarch64-unknown-linux-gnu %t.so && %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 | %fcheck-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -DSHARED -fPIC -shared -o %t.so && %libomptarget-compile-powerpc64-ibm-linux-gnu %t.so && %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 | %fcheck-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -DSHARED -fPIC -shared -o %t.so && %libomptarget-compile-powerpc64le-ibm-linux-gnu %t.so && %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 | %fcheck-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -DSHARED -fPIC -shared -o %t.so && %libomptarget-compile-x86_64-pc-linux-gnu %t.so && %libomptarget-run-x86_64-pc-linux-gnu 2>&1 | %fcheck-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda -DSHARED -fPIC -shared -o %t.so && %libomptarget-compile-nvptx64-nvidia-cuda %t.so && %libomptarget-run-nvptx64-nvidia-cuda 2>&1 | %fcheck-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-generic -DSHARED -fPIC -shared -o %t.so && %libomptarget-compile-generic %t.so && %libomptarget-run-generic 2>&1 | %fcheck-generic
 
 #ifdef SHARED
 void foo() {}

diff  --git a/openmp/libomptarget/test/offloading/dynamic_module_load.c b/openmp/libomptarget/test/offloading/dynamic_module_load.c
index f70d76523dc8..243598dbfd8a 100644
--- a/openmp/libomptarget/test/offloading/dynamic_module_load.c
+++ b/openmp/libomptarget/test/offloading/dynamic_module_load.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu -DSHARED -fPIC -shared -o %t.so && %clang %flags %s -o %t-aarch64-unknown-linux-gnu -ldl && %libomptarget-run-aarch64-unknown-linux-gnu %t.so 2>&1 | %fcheck-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu -DSHARED -fPIC -shared -o %t.so && %clang %flags %s -o %t-powerpc64-ibm-linux-gnu -ldl && %libomptarget-run-powerpc64-ibm-linux-gnu %t.so 2>&1 | %fcheck-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu -DSHARED -fPIC -shared -o %t.so && %clang %flags %s -o %t-powerpc64le-ibm-linux-gnu -ldl && %libomptarget-run-powerpc64le-ibm-linux-gnu %t.so 2>&1 | %fcheck-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu -DSHARED -fPIC -shared -o %t.so && %clang %flags %s -o %t-x86_64-pc-linux-gnu -ldl && %libomptarget-run-x86_64-pc-linux-gnu %t.so 2>&1 | %fcheck-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda -DSHARED -fPIC -shared -o %t.so && %clang %flags %s -o %t-nvptx64-nvidia-cuda -ldl && %libomptarget-run-nvptx64-nvidia-cuda %t.so 2>&1 | %fcheck-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-generic -DSHARED -fPIC -shared -o %t.so && %clang %flags %s -o %t -ldl && %libomptarget-run-generic %t.so 2>&1 | %fcheck-generic
 
 #ifdef SHARED
 #include <stdio.h>

diff  --git a/openmp/libomptarget/test/offloading/host_as_target.c b/openmp/libomptarget/test/offloading/host_as_target.c
index e64993b12a79..cf1b816803c4 100644
--- a/openmp/libomptarget/test/offloading/host_as_target.c
+++ b/openmp/libomptarget/test/offloading/host_as_target.c
@@ -5,11 +5,7 @@
 //   default device data are affected by the specified transfers.
 // - Works whether it's specified directly or as the default device.
 
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <stdio.h>
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/offloading/info.c b/openmp/libomptarget/test/offloading/info.c
index 42b1b2d764f4..bddb87161ddb 100644
--- a/openmp/libomptarget/test/offloading/info.c
+++ b/openmp/libomptarget/test/offloading/info.c
@@ -1,4 +1,5 @@
 // RUN: %libomptarget-compile-nvptx64-nvidia-cuda -gline-tables-only && env LIBOMPTARGET_INFO=31 %libomptarget-run-nvptx64-nvidia-cuda 2>&1 | %fcheck-nvptx64-nvidia-cuda -allow-empty -check-prefix=INFO
+// REQUIRES: nvptx64-nvidia-cuda
 
 #include <stdio.h>
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/offloading/lone_target_exit_data.c b/openmp/libomptarget/test/offloading/lone_target_exit_data.c
index 0bbbb9ef5f20..995b43d7cef5 100644
--- a/openmp/libomptarget/test/offloading/lone_target_exit_data.c
+++ b/openmp/libomptarget/test/offloading/lone_target_exit_data.c
@@ -1,11 +1,7 @@
 // Check that a target exit data directive behaves correctly when the runtime
 // has not yet been initialized.
 
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/offloading/looptripcnt.c b/openmp/libomptarget/test/offloading/looptripcnt.c
index d4c3d6013328..be51e12daac0 100644
--- a/openmp/libomptarget/test/offloading/looptripcnt.c
+++ b/openmp/libomptarget/test/offloading/looptripcnt.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 | %fcheck-aarch64-unknown-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 | %fcheck-powerpc64-ibm-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 | %fcheck-powerpc64le-ibm-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-x86_64-pc-linux-gnu 2>&1 | %fcheck-x86_64-pc-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-nvptx64-nvidia-cuda 2>&1 | %fcheck-nvptx64-nvidia-cuda -allow-empty -check-prefix=DEBUG
+// RUN: %libomptarget-compile-generic && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-generic 2>&1 | %fcheck-generic -allow-empty -check-prefix=DEBUG
 // REQUIRES: libomptarget-debug
 
 /*

diff  --git a/openmp/libomptarget/test/offloading/mandatory_but_no_devices.c b/openmp/libomptarget/test/offloading/mandatory_but_no_devices.c
index 911d98b93b50..882c93579b68 100644
--- a/openmp/libomptarget/test/offloading/mandatory_but_no_devices.c
+++ b/openmp/libomptarget/test/offloading/mandatory_but_no_devices.c
@@ -42,6 +42,8 @@
 // RUN:   %libomptarget-run-fail-nvptx64-nvidia-cuda 2>&1 | \
 // RUN:   %fcheck-nvptx64-nvidia-cuda
 
+// REQUIRES: nvptx64-nvidia-cuda
+
 #include <omp.h>
 #include <stdio.h>
 

diff  --git a/openmp/libomptarget/test/offloading/memory_manager.cpp b/openmp/libomptarget/test/offloading/memory_manager.cpp
index 1e9d5e4da59c..ab7872cb7fb6 100644
--- a/openmp/libomptarget/test/offloading/memory_manager.cpp
+++ b/openmp/libomptarget/test/offloading/memory_manager.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <omp.h>
 

diff  --git a/openmp/libomptarget/test/offloading/non_contiguous_update.cpp b/openmp/libomptarget/test/offloading/non_contiguous_update.cpp
index e2f1c4569fe7..91d64493d605 100644
--- a/openmp/libomptarget/test/offloading/non_contiguous_update.cpp
+++ b/openmp/libomptarget/test/offloading/non_contiguous_update.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 | %fcheck-aarch64-unknown-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 | %fcheck-powerpc64-ibm-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 | %fcheck-powerpc64le-ibm-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-x86_64-pc-linux-gnu 2>&1 | %fcheck-x86_64-pc-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-nvptx64-nvidia-cuda 2>&1 | %fcheck-nvptx64-nvidia-cuda -allow-empty -check-prefix=DEBUG
+// RUN: %libomptarget-compile-generic && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-generic 2>&1 | %fcheck-generic -allow-empty -check-prefix=DEBUG
 // REQUIRES: libomptarget-debug
 
 #include <cstdio>
@@ -63,7 +59,6 @@ int main() {
   // DEBUG: offset 744
   // DEBUG: offset 864
 
-
   // case 2
   // double darr[3][4][5];
   // #pragma omp target update to(darr[0:2:2][2:2][:2:2])

diff  --git a/openmp/libomptarget/test/offloading/offloading_success.c b/openmp/libomptarget/test/offloading/offloading_success.c
index 000a38cb5478..919972a160b0 100644
--- a/openmp/libomptarget/test/offloading/offloading_success.c
+++ b/openmp/libomptarget/test/offloading/offloading_success.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <stdio.h>
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/offloading/offloading_success.cpp b/openmp/libomptarget/test/offloading/offloading_success.cpp
index 910cb1790e9d..bc049a6a2c45 100644
--- a/openmp/libomptarget/test/offloading/offloading_success.cpp
+++ b/openmp/libomptarget/test/offloading/offloading_success.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <stdio.h>
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/offloading/parallel_offloading_map.cpp b/openmp/libomptarget/test/offloading/parallel_offloading_map.cpp
index ea89c8bc7576..e7e9ba8268dd 100644
--- a/openmp/libomptarget/test/offloading/parallel_offloading_map.cpp
+++ b/openmp/libomptarget/test/offloading/parallel_offloading_map.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <cassert>
 #include <iostream>

diff  --git a/openmp/libomptarget/test/offloading/requires.c b/openmp/libomptarget/test/offloading/requires.c
index 60346b1039ac..25c5053699b2 100644
--- a/openmp/libomptarget/test/offloading/requires.c
+++ b/openmp/libomptarget/test/offloading/requires.c
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compile-aarch64-unknown-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-aarch64-unknown-linux-gnu 2>&1 | %fcheck-aarch64-unknown-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-powerpc64-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64-ibm-linux-gnu 2>&1 | %fcheck-powerpc64-ibm-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-powerpc64le-ibm-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-powerpc64le-ibm-linux-gnu 2>&1 | %fcheck-powerpc64le-ibm-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-x86_64-pc-linux-gnu && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-x86_64-pc-linux-gnu 2>&1 | %fcheck-x86_64-pc-linux-gnu -allow-empty -check-prefix=DEBUG
-// RUN: %libomptarget-compile-nvptx64-nvidia-cuda && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-nvptx64-nvidia-cuda 2>&1 | %fcheck-nvptx64-nvidia-cuda -allow-empty -check-prefix=DEBUG
+// RUN: %libomptarget-compile-generic && env LIBOMPTARGET_DEBUG=1 %libomptarget-run-generic 2>&1 | %fcheck-generic -allow-empty -check-prefix=DEBUG
 // REQUIRES: libomptarget-debug
 
 /*

diff  --git a/openmp/libomptarget/test/offloading/target_depend_nowait.cpp b/openmp/libomptarget/test/offloading/target_depend_nowait.cpp
index 32a85d972539..54b212c98921 100644
--- a/openmp/libomptarget/test/offloading/target_depend_nowait.cpp
+++ b/openmp/libomptarget/test/offloading/target_depend_nowait.cpp
@@ -1,8 +1,4 @@
-// RUN: %libomptarget-compilexx-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-x86_64-pc-linux-gnu
-// RUN: %libomptarget-compilexx-run-and-check-nvptx64-nvidia-cuda
+// RUN: %libomptarget-compilexx-run-and-check-generic
 
 #include <omp.h>
 #include <stdio.h>

diff  --git a/openmp/libomptarget/test/unified_shared_memory/api.c b/openmp/libomptarget/test/unified_shared_memory/api.c
index a1c94c88d686..7a8af621ba47 100644
--- a/openmp/libomptarget/test/unified_shared_memory/api.c
+++ b/openmp/libomptarget/test/unified_shared_memory/api.c
@@ -1,7 +1,5 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
+// RUN: %libomptarget-compile-run-and-check-generic
+// XFAIL: nvptx64-nvidia-cuda
 
 #include <stdio.h>
 #include <omp.h>

diff  --git a/openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c b/openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c
index 4cedbae36004..ae2b16a9e39f 100644
--- a/openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c
+++ b/openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c
@@ -1,9 +1,7 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
+// RUN: %libomptarget-compile-run-and-check-generic
 
 // UNSUPPORTED: clang-6, clang-7, clang-8, clang-9
+// XFAIL: nvptx64-nvidia-cuda
 
 #include <omp.h>
 #include <stdio.h>

diff  --git a/openmp/libomptarget/test/unified_shared_memory/close_manual.c b/openmp/libomptarget/test/unified_shared_memory/close_manual.c
index 0417b8bf254e..9c21224b5ecd 100644
--- a/openmp/libomptarget/test/unified_shared_memory/close_manual.c
+++ b/openmp/libomptarget/test/unified_shared_memory/close_manual.c
@@ -1,7 +1,4 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
+// RUN: %libomptarget-compile-run-and-check-generic
 
 #include <omp.h>
 #include <stdio.h>

diff  --git a/openmp/libomptarget/test/unified_shared_memory/close_modifier.c b/openmp/libomptarget/test/unified_shared_memory/close_modifier.c
index b319c6b69ac2..1dadcf3d3f1f 100644
--- a/openmp/libomptarget/test/unified_shared_memory/close_modifier.c
+++ b/openmp/libomptarget/test/unified_shared_memory/close_modifier.c
@@ -1,7 +1,5 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
+// RUN: %libomptarget-compile-run-and-check-generic
+// XFAIL: nvptx64-nvidia-cuda
 
 // UNSUPPORTED: clang-6, clang-7, clang-8, clang-9
 

diff  --git a/openmp/libomptarget/test/unified_shared_memory/shared_update.c b/openmp/libomptarget/test/unified_shared_memory/shared_update.c
index 8036bc2f0405..f166150dd15b 100644
--- a/openmp/libomptarget/test/unified_shared_memory/shared_update.c
+++ b/openmp/libomptarget/test/unified_shared_memory/shared_update.c
@@ -1,7 +1,5 @@
-// RUN: %libomptarget-compile-run-and-check-aarch64-unknown-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-powerpc64le-ibm-linux-gnu
-// RUN: %libomptarget-compile-run-and-check-x86_64-pc-linux-gnu
+// RUN: %libomptarget-compile-run-and-check-generic
+// XFAIL: nvptx64-nvidia-cuda
 
 #include <stdio.h>
 #include <omp.h>


        


More information about the Openmp-commits mailing list