1set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) 2add_library(FortranEvaluateTesting 3 testing.cpp 4 fp-testing.cpp 5) 6if (LLVM_LINK_LLVM_DYLIB) 7 set(llvm_libs LLVM) 8else() 9 llvm_map_components_to_libnames(llvm_libs Support) 10endif() 11target_link_libraries(FortranEvaluateTesting 12 ${llvm_libs}) 13 14add_flang_nongtest_unittest(leading-zero-bit-count 15 FortranEvaluateTesting 16) 17 18add_flang_nongtest_unittest(bit-population-count 19 FortranEvaluateTesting 20) 21 22add_flang_nongtest_unittest(uint128 23 FortranEvaluateTesting 24) 25 26add_flang_nongtest_unittest(expression 27 FortranCommon 28 FortranEvaluateTesting 29 FortranEvaluate 30 FortranSemantics 31 FortranParser 32) 33 34add_flang_nongtest_unittest(integer 35 FortranEvaluateTesting 36 FortranEvaluate 37 FortranSemantics 38) 39 40add_flang_nongtest_unittest(intrinsics 41 FortranCommon 42 FortranEvaluateTesting 43 FortranEvaluate 44 FortranDecimal 45 FortranSemantics 46 FortranParser 47 FortranRuntime 48) 49 50add_flang_nongtest_unittest(logical 51 FortranEvaluateTesting 52 FortranEvaluate 53 FortranSemantics 54) 55 56# GCC -fno-exceptions breaks the fenv.h interfaces needed to capture 57# IEEE exception flags (different use of the word "exception") 58# in the actual hardware floating-point status register, so ensure that 59# C++ exceptions are enabled for this test. 60set(LLVM_REQUIRES_EH ON) 61set(LLVM_REQUIRES_RTTI ON) 62add_flang_nongtest_unittest(real 63 FortranEvaluateTesting 64 FortranEvaluate 65 FortranDecimal 66 FortranSemantics 67) 68llvm_update_compile_flags(real.test) 69 70add_flang_nongtest_unittest(reshape 71 FortranEvaluateTesting 72 FortranSemantics 73 FortranEvaluate 74 FortranRuntime 75) 76 77add_flang_nongtest_unittest(ISO-Fortran-binding 78 FortranEvaluateTesting 79 FortranEvaluate 80 FortranSemantics 81 FortranRuntime 82) 83 84add_flang_nongtest_unittest(folding 85 FortranCommon 86 FortranEvaluateTesting 87 FortranEvaluate 88 FortranSemantics 89) 90