[Openmp-commits] [PATCH] D101315: [OpenMP][libomptarget][test] Separate lit tests for different offloading targets

Joachim Protze via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Mon Apr 26 14:30:05 PDT 2021


protze.joachim updated this revision to Diff 340654.
protze.joachim added a comment.

I moved the RUN line changes into D101326 <https://reviews.llvm.org/D101326>, which updates all tests.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D101315/new/

https://reviews.llvm.org/D101315

Files:
  openmp/libomptarget/test/CMakeLists.txt
  openmp/libomptarget/test/lit.cfg
  openmp/libomptarget/test/lit.site.cfg.in


Index: openmp/libomptarget/test/lit.site.cfg.in
===================================================================
--- openmp/libomptarget/test/lit.site.cfg.in
+++ openmp/libomptarget/test/lit.site.cfg.in
@@ -5,13 +5,13 @@
 config.test_compiler_features = @OPENMP_TEST_COMPILER_FEATURES@
 config.test_openmp_flags = "@OPENMP_TEST_OPENMP_FLAGS@"
 config.test_extra_flags = "@OPENMP_TEST_FLAGS@"
-config.libomptarget_obj_root = "@CMAKE_CURRENT_BINARY_DIR@"
+config.libomptarget_obj_root = "@CMAKE_CURRENT_BINARY_DIR@/@CURRENT_TARGET@"
 config.library_dir = "@LIBOMPTARGET_LIBRARY_DIR@"
 config.omp_header_directory = "@LIBOMPTARGET_OPENMP_HEADER_FOLDER@"
 config.omp_host_rtl_directory = "@LIBOMPTARGET_OPENMP_HOST_RTL_FOLDER@"
 config.operating_system = "@CMAKE_SYSTEM_NAME@"
 config.libomptarget_all_targets = "@LIBOMPTARGET_ALL_TARGETS@".split()
-config.libomptarget_system_targets = "@LIBOMPTARGET_SYSTEM_TARGETS@".split()
+config.libomptarget_current_target = "@CURRENT_TARGET@"
 config.libomptarget_filecheck = "@OPENMP_FILECHECK_EXECUTABLE@"
 config.libomptarget_not = "@OPENMP_NOT_EXECUTABLE@"
 config.libomptarget_debug = @LIBOMPTARGET_DEBUG@
Index: openmp/libomptarget/test/lit.cfg
===================================================================
--- openmp/libomptarget/test/lit.cfg
+++ openmp/libomptarget/test/lit.cfg
@@ -24,7 +24,7 @@
         config.environment[name] = value
 
 # name: The name of this test suite.
-config.name = 'libomptarget'
+config.name = 'libomptarget :: ' + config.libomptarget_current_target
 
 # suffixes: A list of file extensions to treat as test files.
 config.suffixes = ['.c', '.cpp', '.cc']
@@ -57,6 +57,8 @@
 if config.libomptarget_debug:
   config.available_features.add('libomptarget-debug')
 
+config.available_features.add(config.libomptarget_current_target)
+
 # Setup environment to find dynamic library at runtime
 if config.operating_system == 'Windows':
     append_dynamic_library_path('PATH', config.library_dir, ";")
@@ -84,7 +86,31 @@
 for libomptarget_target in config.libomptarget_all_targets:
     # Is this target in the current system? If so create a compile, run and test
     # command. Otherwise create command that return false.
-    if libomptarget_target in config.libomptarget_system_targets:
+    if libomptarget_target == config.libomptarget_current_target:
+        config.substitutions.append(("%libomptarget-compilexx-run-and-check-generic", 
+            "%libomptarget-compilexx-run-and-check-" + libomptarget_target))
+        config.substitutions.append(("%libomptarget-compile-run-and-check-generic",
+            "%libomptarget-compile-run-and-check-" + libomptarget_target))
+        config.substitutions.append(("%libomptarget-compilexx-and-run-generic",
+            "%libomptarget-compilexx-and-run-" + libomptarget_target))
+        config.substitutions.append(("%libomptarget-compile-and-run-generic",
+            "%libomptarget-compile-and-run-" + libomptarget_target))
+        config.substitutions.append(("%libomptarget-compilexx-generic",
+            "%libomptarget-compilexx-" + libomptarget_target))
+        config.substitutions.append(("%libomptarget-compile-generic",
+            "%libomptarget-compile-" + libomptarget_target))
+        config.substitutions.append(("%libomptarget-run-generic",
+            "%libomptarget-run-" + libomptarget_target))
+        config.substitutions.append(("%libomptarget-run-fail-generic",
+            "%libomptarget-run-fail-" + libomptarget_target))
+        config.substitutions.append(("%clangxx-generic",
+            "%clangxx-" + libomptarget_target))
+        config.substitutions.append(("%clang-generic",
+            "%clang-" + libomptarget_target))
+        config.substitutions.append(("%fcheck-generic",
+            config.libomptarget_filecheck + " %s"))
+
+
         config.substitutions.append(("%libomptarget-compilexx-run-and-check-" + \
             libomptarget_target, \
             "%libomptarget-compilexx-and-run-" + libomptarget_target + \
Index: openmp/libomptarget/test/CMakeLists.txt
===================================================================
--- openmp/libomptarget/test/CMakeLists.txt
+++ openmp/libomptarget/test/CMakeLists.txt
@@ -12,8 +12,15 @@
   set(LIBOMPTARGET_DEBUG False)
 endif()
 
-add_openmp_testsuite(check-libomptarget "Running libomptarget tests" ${CMAKE_CURRENT_BINARY_DIR} DEPENDS omptarget omp ${LIBOMPTARGET_TESTED_PLUGINS})
+string(REGEX MATCHALL "([^\ ]+\ |[^\ ]+$)" SYSTEM_TARGETS "${LIBOMPTARGET_SYSTEM_TARGETS}")
+foreach(CURRENT_TARGET IN LISTS SYSTEM_TARGETS)
+  string(STRIP "${CURRENT_TARGET}" CURRENT_TARGET)
+  add_openmp_testsuite(check-libomptarget-${CURRENT_TARGET} "Running libomptarget tests" ${CMAKE_CURRENT_BINARY_DIR}/${CURRENT_TARGET} DEPENDS omptarget omp ${LIBOMPTARGET_TESTED_PLUGINS})
+  list(APPEND LIBOMPTARGET_LIT_TESTSUITES ${CMAKE_CURRENT_BINARY_DIR}/${CURRENT_TARGET})
 
-# Configure the lit.site.cfg.in file
-set(AUTO_GEN_COMMENT "## Autogenerated by libomptarget configuration.\n# Do not edit!")
-configure_file(lit.site.cfg.in lit.site.cfg @ONLY)
+  # Configure the lit.site.cfg.in file
+  set(AUTO_GEN_COMMENT "## Autogenerated by libomptarget configuration.\n# Do not edit!")
+  configure_file(lit.site.cfg.in ${CURRENT_TARGET}/lit.site.cfg @ONLY)
+endforeach()
+
+add_openmp_testsuite(check-libomptarget "Running libomptarget tests" ${LIBOMPTARGET_LIT_TESTSUITES} EXCLUDE_FROM_CHECK_ALL DEPENDS omptarget omp ${LIBOMPTARGET_TESTED_PLUGINS})
\ No newline at end of file


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101315.340654.patch
Type: text/x-patch
Size: 5509 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20210426/d0e54997/attachment.bin>


More information about the Openmp-commits mailing list