diff --git a/CMakeLists.txt b/CMakeLists.txt index 3d60b1bcd..ba9abf376 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,10 +26,9 @@ option(ENABLE_OFFLINE_TELEMETRY "Enables FEX offline telemetry" TRUE) option(ENABLE_COMPILE_TIME_TRACE "Enables time trace compile option" FALSE) option(ENABLE_LIBCXX "Enables LLVM libc++" FALSE) option(ENABLE_CCACHE "Enables ccache for compile caching" TRUE) -option(ENABLE_VIXL_SIMULATOR "Forces the FEX JIT to use the VIXL simulator" FALSE) +option(ENABLE_VIXL_SIMULATOR "Enable use of VIXL simulator for emulation (only useful for CI testing)" FALSE) option(ENABLE_VIXL_DISASSEMBLER "Enables debug disassembler output with VIXL" FALSE) option(USE_LEGACY_BINFMTMISC "Uses legacy method of setting up binfmt_misc" FALSE) -option(COMPILE_VIXL_DISASSEMBLER "Compiles the vixl disassembler in to vixl" FALSE) option(ENABLE_FEXCORE_PROFILER "Enables use of the FEXCore timeline profiling capabilities" FALSE) set (FEXCORE_PROFILER_BACKEND "gpuvis" CACHE STRING "Set which backend you want to use for the FEXCore profiler") option(ENABLE_GLIBC_ALLOCATOR_HOOK_FAULT "Enables glibc memory allocation hooking with fault for CI testing") @@ -266,12 +265,7 @@ set (CMAKE_LINKER_FLAGS_RELEASE "${CMAKE_LINKER_FLAGS_RELEASE} -fomit-frame-poin include_directories(External/robin-map/include/) -if (BUILD_TESTS) - # Enable vixl disassembler if tests are enabled. - set(COMPILE_VIXL_DISASSEMBLER TRUE) -endif() - -if (COMPILE_VIXL_DISASSEMBLER OR ENABLE_VIXL_DISASSEMBLER OR ENABLE_VIXL_SIMULATOR) +if (BUILD_TESTS OR ENABLE_VIXL_DISASSEMBLER OR ENABLE_VIXL_SIMULATOR) add_subdirectory(External/vixl/) include_directories(SYSTEM External/vixl/src/) endif() diff --git a/External/vixl b/External/vixl index a90f5d502..3180ab603 160000 --- a/External/vixl +++ b/External/vixl @@ -1 +1 @@ -Subproject commit a90f5d5020c305d03d3182dcc90a31321cc7a661 +Subproject commit 3180ab603b5962ff5410d014ff40fb472373d743 diff --git a/FEXCore/unittests/Emitter/CMakeLists.txt b/FEXCore/unittests/Emitter/CMakeLists.txt index 164cc62fb..dc00f8443 100644 --- a/FEXCore/unittests/Emitter/CMakeLists.txt +++ b/FEXCore/unittests/Emitter/CMakeLists.txt @@ -1,21 +1,17 @@ -if (COMPILE_VIXL_DISASSEMBLER) - file(GLOB_RECURSE TESTS CONFIGURE_DEPENDS *.cpp) +file(GLOB_RECURSE TESTS CONFIGURE_DEPENDS *.cpp) - set (LIBS fmt::fmt vixl Catch2::Catch2WithMain FEXCore_Base JemallocLibs) - foreach(TEST ${TESTS}) - get_filename_component(TEST_NAME ${TEST} NAME_WLE) - add_executable(Emitter_${TEST_NAME} ${TEST}) - target_link_libraries(Emitter_${TEST_NAME} PRIVATE ${LIBS}) - target_include_directories(Emitter_${TEST_NAME} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/../../Source/") - set_target_properties(Emitter_${TEST_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/EmitterTests") - catch_discover_tests(Emitter_${TEST_NAME} TEST_SUFFIX ".${TEST_NAME}.Emitter") - endforeach() +set (LIBS fmt::fmt vixl Catch2::Catch2WithMain FEXCore_Base JemallocLibs) +foreach(TEST ${TESTS}) + get_filename_component(TEST_NAME ${TEST} NAME_WLE) + add_executable(Emitter_${TEST_NAME} ${TEST}) + target_link_libraries(Emitter_${TEST_NAME} PRIVATE ${LIBS}) + target_include_directories(Emitter_${TEST_NAME} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/../../Source/") + set_target_properties(Emitter_${TEST_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/EmitterTests") + catch_discover_tests(Emitter_${TEST_NAME} TEST_SUFFIX ".${TEST_NAME}.Emitter") +endforeach() - add_custom_target( - emitter_tests - WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/" - USES_TERMINAL - COMMAND "ctest" "--output-on-failure" "--timeout" "302" ${TEST_JOB_FLAG} "-R" "\.*.Emitter$$") -else() - message(AUTHOR_WARNING "Tests are enabled but vixl disassembler is not. Emitter tests won't be built.") -endif() +add_custom_target( + emitter_tests + WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/" + USES_TERMINAL + COMMAND "ctest" "--output-on-failure" "--timeout" "302" ${TEST_JOB_FLAG} "-R" "\.*.Emitter$$")