mirror of
https://github.com/intel/llvm.git
synced 2026-01-16 05:32:28 +08:00
[OPENMP] Add dependency to clang/clang-headers etc. for in-tree build of libomp.
Add additional dependency to clang/clang-headers/FileCheck to avoid possible troubles with in-tree build/test of libomp + allow parallel testing of libomp. Also includes bugfixes for tests + improvements to avoid possible race conditions. Differential Revision: http://reviews.llvm.org/D14055 llvm-svn: 251797
This commit is contained in:
@@ -34,7 +34,7 @@ if(${LIBOMP_STANDALONE_BUILD})
|
||||
# The -j 1 lets the actual tests run with the entire machine.
|
||||
# We have one test thread that spawns the tests serially. This allows
|
||||
# Each test to use the entire machine.
|
||||
set(LIBOMP_LIT_ARGS_DEFAULT "-sv --show-unsupported --show-xfail -j 1")
|
||||
set(LIBOMP_LIT_ARGS_DEFAULT "-sv --show-unsupported --show-xfail")
|
||||
if(MSVC OR XCODE)
|
||||
set(LIBOMP_LIT_ARGS_DEFAULT "${LIBOMP_LIT_ARGS_DEFAULT} --no-progress-bar")
|
||||
endif()
|
||||
@@ -56,11 +56,10 @@ else()
|
||||
endif()
|
||||
set(LIBOMP_TEST_OPENMP_FLAG -fopenmp=libomp)
|
||||
# Use add_lit_testsuite() from LLVM CMake.
|
||||
add_lit_testsuite(check-libomp
|
||||
add_lit_testsuite(check-libomp
|
||||
"Running libomp tests"
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
ARGS "-j 1"
|
||||
DEPENDS omp
|
||||
DEPENDS clang clang-headers FileCheck omp
|
||||
)
|
||||
endif()
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ int test_omp_get_wtime()
|
||||
double start;
|
||||
double end;
|
||||
double measured_time;
|
||||
double wait_time = 0.25;
|
||||
double wait_time = 1.0;
|
||||
start = 0;
|
||||
end = 0;
|
||||
start = omp_get_wtime();
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
#define REPETITIONS 10 /* Number of times to run each test */
|
||||
|
||||
/* following times are in seconds */
|
||||
#define SLEEPTIME 0.1
|
||||
#define SLEEPTIME 1
|
||||
|
||||
/* Definitions for tasks */
|
||||
/**********************************************************/
|
||||
|
||||
@@ -17,7 +17,6 @@ int test_omp_for_auto()
|
||||
|
||||
sum = 0;
|
||||
sum0 = 12345;
|
||||
sum1 = 0;
|
||||
|
||||
// array which keeps track of which threads participated in the for loop
|
||||
// e.g., given 4 threads, [ 0 | 1 | 1 | 0 ] implies
|
||||
@@ -30,6 +29,7 @@ int test_omp_for_auto()
|
||||
#pragma omp parallel
|
||||
{
|
||||
int i;
|
||||
sum1 = 0;
|
||||
#pragma omp for firstprivate(sum0) schedule(auto)
|
||||
for (i = 1; i <= LOOPCOUNT; i++) {
|
||||
active_threads[omp_get_thread_num()] = 1;
|
||||
|
||||
Reference in New Issue
Block a user