Author: hans Date: Thu Feb 15 03:00:24 2018 New Revision: 325230 URL: http://llvm.org/viewvc/llvm-project?rev=325230&view=rev Log: Merging r325218: ------------------------------------------------------------------------ r325218 | hahnfeld | 2018-02-15 09:10:22 +0100 (Thu, 15 Feb 2018) | 10 lines
[CMake] Add -fno-experimental-isel for testing GlobalISel doesn't yet implement blockaddress and falls back to SelectionDAG. This results in additional branch instruction to the next basic block which breaks the OMPT tests. Disable GlobalISel for now when compiling the tests because fixing them is not easily possible. See http://llvm.org/PR36313 for full discussion history. Differential Revision: https://reviews.llvm.org/D43195 ------------------------------------------------------------------------ Modified: openmp/branches/release_60/ (props changed) openmp/branches/release_60/cmake/DetectTestCompiler/CMakeLists.txt openmp/branches/release_60/cmake/OpenMPTesting.cmake Propchange: openmp/branches/release_60/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Feb 15 03:00:24 2018 @@ -1 +1 @@ -/openmp/trunk:321964,322068,322160,322830,322869 +/openmp/trunk:321964,322068,322160,322830,322869,325218 Modified: openmp/branches/release_60/cmake/DetectTestCompiler/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/openmp/branches/release_60/cmake/DetectTestCompiler/CMakeLists.txt?rev=325230&r1=325229&r2=325230&view=diff ============================================================================== --- openmp/branches/release_60/cmake/DetectTestCompiler/CMakeLists.txt (original) +++ openmp/branches/release_60/cmake/DetectTestCompiler/CMakeLists.txt Thu Feb 15 03:00:24 2018 @@ -1,11 +1,14 @@ cmake_minimum_required(VERSION 2.8) project(DetectTestCompiler C CXX) +include(CheckCCompilerFlag) +include(CheckCXXCompilerFlag) + function(write_compiler_information lang) set(information "${CMAKE_${lang}_COMPILER}") set(information "${information}\\;${CMAKE_${lang}_COMPILER_ID}") set(information "${information}\\;${CMAKE_${lang}_COMPILER_VERSION}") - set(information "${information}\\;${OpenMP_${lang}_FLAGS}") + set(information "${information}\\;${${lang}_FLAGS}") file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${lang}CompilerInformation.txt ${information}) endfunction(write_compiler_information) @@ -15,5 +18,22 @@ if (NOT OpenMP_Found) set(OpenMP_CXX_FLAGS "-fopenmp") endif() +set(C_FLAGS ${flags} ${OpenMP_C_FLAGS}) +set(CXX_FLAGS ${flags} ${OpenMP_CXX_FLAGS}) + +# TODO: Implement blockaddress in GlobalISel and remove this flag! +if (CMAKE_C_COMPILER_ID STREQUAL "Clang") + check_c_compiler_flag("-fno-experimental-isel" C_HAS_EXPERIMENTAL_ISEL_FLAG) + check_cxx_compiler_flag("-fno-experimental-isel" CXX_HAS_EXPERIMENTAL_ISEL_FLAG) + macro(add_experimental_isel_flag lang) + if (${lang}_HAS_EXPERIMENTAL_ISEL_FLAG) + set(${lang}_FLAGS "-fno-experimental-isel ${${lang}_FLAGS}") + endif() + endmacro(add_experimental_isel_flag) + + add_experimental_isel_flag(C) + add_experimental_isel_flag(CXX) +endif() + write_compiler_information(C) write_compiler_information(CXX) Modified: openmp/branches/release_60/cmake/OpenMPTesting.cmake URL: http://llvm.org/viewvc/llvm-project/openmp/branches/release_60/cmake/OpenMPTesting.cmake?rev=325230&r1=325229&r2=325230&view=diff ============================================================================== --- openmp/branches/release_60/cmake/OpenMPTesting.cmake (original) +++ openmp/branches/release_60/cmake/OpenMPTesting.cmake Thu Feb 15 03:00:24 2018 @@ -117,7 +117,8 @@ else() # Cannot use CLANG_VERSION because we are not guaranteed that this is already set. set(OPENMP_TEST_COMPILER_VERSION "${LLVM_VERSION}") set(OPENMP_TEST_COMPILER_VERSION_MAJOR "${LLVM_MAJOR_VERSION}") - set(OPENMP_TEST_COMPILER_OPENMP_FLAGS "-fopenmp") + # TODO: Implement blockaddress in GlobalISel and remove this flag! + set(OPENMP_TEST_COMPILER_OPENMP_FLAGS "-fopenmp -fno-experimental-isel") endif() # Function to set compiler features for use in lit. _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits