[Openmp-commits] [openmp] r318847 - [CMake] Re-enable libomptarget and restrict tests to Clang 6.0.0

Jonas Hahnfeld via Openmp-commits openmp-commits at lists.llvm.org
Wed Jan 3 09:24:25 PST 2018


Hmm, not good. I'll download the branch and see if I can see the error.

Do you have libelf and libffi installed? Is the target plugin built? 
Maybe the tests are not correctly disabled if we don't find the 
libraries...

Jonas

Am 2018-01-03 17:51, schrieb Hans Wennborg:
> After just having created the 6.0.0 branch and trying to run the
> tests, they still seem to fail:
> 
> ********************
> FAIL: libomptarget :: offloading/offloading_success.c (46527 of 48035)
> ******************** TEST 'libomptarget ::
> offloading/offloading_success.c' FAILED ********************
> Script:
> --
> echo ignored-command
> echo ignored-command
> echo ignored-command
> /work/llvm-6.0/build.release2/./bin/clang -fopenmp  -I
> /work/llvm-6.0/llvm/projects/openmp/libomptarget/test -I /work
> /llvm-6.0/build.release2/projects/openmp/libomptarget/../runtime/src
> -L /work/llvm-6.0/build.release2/lib  -fopenmp-t
> argets=x86_64-pc-linux-gnu
> /usr/local/google/work/llvm-6.0/llvm/projects/openmp/libomptarget/test/offloading/offloadi
> ng_success.c -o
> /usr/local/google/work/llvm-6.0/build.release2/projects/openmp/libomptarget/test/offloading/Output/of
> floading_success.c.tmp-x86_64-pc-linux-gnu &&
> /usr/local/google/work/llvm-6.0/build.release2/projects/openmp/libompta
> rget/test/offloading/Output/offloading_success.c.tmp-x86_64-pc-linux-gnu
> | /work/llvm-6.0/build.release2/./bin/FileCh
> eck
> /usr/local/google/work/llvm-6.0/llvm/projects/openmp/libomptarget/test/offloading/offloading_success.c
> --
> Exit Code: 1
> 
> Command Output (stdout):
> --
> $ "echo" "ignored-command"
> # command output:
> ignored-command
> 
> $ "echo" "ignored-command"
> # command output:
> ignored-command
> 
> $ "echo" "ignored-command"
> # command output:
> ignored-command
> 
> $ "/work/llvm-6.0/build.release2/./bin/clang" "-fopenmp" "-I"
> "/work/llvm-6.0/llvm/projects/openmp/libomptarget/test"
>  "-I"
> "/work/llvm-6.0/build.release2/projects/openmp/libomptarget/../runtime/src"
> "-L" "/work/llvm-6.0/build.release2
> /lib" "-fopenmp-targets=x86_64-pc-linux-gnu"
> "/usr/local/google/work/llvm-6.0/llvm/projects/openmp/libomptarget/test/
> offloading/offloading_success.c" "-o"
> "/usr/local/google/work/llvm-6.0/build.release2/projects/openmp/libomptarget/te
> st/offloading/Output/offloading_success.c.tmp-x86_64-pc-linux-gnu"
> $
> "/usr/local/google/work/llvm-6.0/build.release2/projects/openmp/libomptarget/test/offloading/Output/offloading_succ
> ess.c.tmp-x86_64-pc-linux-gnu"
> note: command had no output on stdout or stderr
> error: command failed with exit status: 1
> $ "/work/llvm-6.0/build.release2/./bin/FileCheck"
> "/usr/local/google/work/llvm-6.0/llvm/projects/openmp/libomptarget/
> test/offloading/offloading_success.c"
> # command stderr:
> /usr/local/google/work/llvm-6.0/llvm/projects/openmp/libomptarget/test/offloading/offloading_success.c:19:12:
> error:
> expected string not found in input
>  // CHECK: Target region executed on the device
>            ^
> <stdin>:1:1: note: scanning from here
> Target region executed on the host
> ^
> 
> error: command failed with exit status: 1
> 
> --
> 
> On Wed, Nov 22, 2017 at 6:15 PM, Jonas Hahnfeld via Openmp-commits
> <openmp-commits at lists.llvm.org> wrote:
>> Author: hahnfeld
>> Date: Wed Nov 22 09:15:18 2017
>> New Revision: 318847
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=318847&view=rev
>> Log:
>> [CMake] Re-enable libomptarget and restrict tests to Clang 6.0.0
>> 
>> We have just fixed the codegen of omp_is_initial_device() to reliably 
>> work
>> when offloading to the same device, see commit r316001. This fixes the
>> failing tests that were the reason why we disabled the library for 
>> 5.0.
>> 
>> Differential Revision: https://reviews.llvm.org/D39052
>> 
>> Modified:
>>     openmp/trunk/CMakeLists.txt
>>     openmp/trunk/libomptarget/test/CMakeLists.txt
>> 
>> Modified: openmp/trunk/CMakeLists.txt
>> URL: 
>> http://llvm.org/viewvc/llvm-project/openmp/trunk/CMakeLists.txt?rev=318847&r1=318846&r2=318847&view=diff
>> ==============================================================================
>> --- openmp/trunk/CMakeLists.txt (original)
>> +++ openmp/trunk/CMakeLists.txt Wed Nov 22 09:15:18 2017
>> @@ -5,10 +5,7 @@ set(OPENMP_LLVM_TOOLS_DIR "" CACHE PATH
>>  add_subdirectory(runtime)
>> 
>> 
>> -# The tests currently don't pass if the generic ELF plugin is built.
>> -# TODO: Fix the tests and enable libomptarget by default on supported
>> -#       architectures and platforms.
>> -set(ENABLE_LIBOMPTARGET OFF)
>> +set(ENABLE_LIBOMPTARGET ON)
>>  # Currently libomptarget cannot be compiled on Windows or MacOS X.
>>  # Since the device plugins are only supported on Linux anyway,
>>  # there is no point in trying to compile libomptarget on other OSes.
>> 
>> Modified: openmp/trunk/libomptarget/test/CMakeLists.txt
>> URL: 
>> http://llvm.org/viewvc/llvm-project/openmp/trunk/libomptarget/test/CMakeLists.txt?rev=318847&r1=318846&r2=318847&view=diff
>> ==============================================================================
>> --- openmp/trunk/libomptarget/test/CMakeLists.txt (original)
>> +++ openmp/trunk/libomptarget/test/CMakeLists.txt Wed Nov 22 09:15:18 
>> 2017
>> @@ -27,6 +27,29 @@ if(${LIBOMPTARGET_STANDALONE_BUILD})
>>      "C compiler to use for testing OpenMP offloading library")
>>    set(LIBOMPTARGET_TEST_CXX_COMPILER ${CMAKE_CXX_COMPILER} CACHE 
>> STRING
>>      "C++ compiler to use for testing OpenMP offloading library")
>> +
>> +  if (NOT(${LIBOMPTARGET_TEST_C_COMPILER} MATCHES "clang" AND 
>> ${LIBOMPTARGET_TEST_CXX_COMPILER} MATCHES "clang"))
>> +    libomptarget_say("Can only test with Clang compiler!")
>> +    libomptarget_warning_say("The check-libomptarget target will not 
>> be available!")
>> +    return()
>> +  endif()
>> +
>> +  execute_process(
>> +    COMMAND ${LIBOMPTARGET_TEST_C_COMPILER} --version
>> +    OUTPUT_VARIABLE TEST_COMPILER_VERSION)
>> +  string(REGEX MATCH "version ([0-9.]+)" TEST_COMPILER_VERSION 
>> ${TEST_COMPILER_VERSION})
>> +  if (NOT(TEST_COMPILER_VERSION))
>> +    libomptarget_say("Unable to determine Clang compiler version!")
>> +    libomptarget_warning_say("The check-libomptarget target will not 
>> be available!")
>> +    return()
>> +  endif()
>> +  set(TEST_COMPILER_VERSION ${CMAKE_MATCH_1})
>> +  if (TEST_COMPILER_VERSION VERSION_LESS 6.0.0)
>> +    libomptarget_say("Clang compiler version does not implement all 
>> codegen, please update to 6.0.0!")
>> +    libomptarget_warning_say("The check-libomptarget target will not 
>> be available!")
>> +    return()
>> +  endif()
>> +
>>    set(LIBOMPTARGET_TEST_OPENMP_FLAG -fopenmp CACHE STRING
>>      "OpenMP compiler flag to use for testing OpenMP offloading 
>> library")
>>    find_program(LIBOMPTARGET_LLVM_LIT_EXECUTABLE
>> 
>> 
>> _______________________________________________
>> Openmp-commits mailing list
>> Openmp-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/openmp-commits


More information about the Openmp-commits mailing list