mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 10:00:16 +02:00
Run gcc target tests with block size 1
info files for the test runner like Disabled_Tests, Known_Failures, etc, receive not just the filename but the test name (which is the test name and potentially its running config). Increase the timeout of gcc tests to 30secs.
This commit is contained in:
1 parent
89e5041e70
commit
ec0683b729
5 files changed
+132
-42
No files matched your search
@@ -4,27 +4,33 @@
|
||||
file(GLOB_RECURSE TESTS CONFIGURE_DEPENDS ${CMAKE_SOURCE_DIR}/External/fex-gcc-target-tests-bins/32/*)
|
||||
|
||||
foreach(TEST ${TESTS})
|
||||
|
||||
# Extract test file name
|
||||
string(REPLACE "/fex-gcc-target-tests-bins/32/" ";" TEST_NAME_LIST ${TEST})
|
||||
list(GET TEST_NAME_LIST 1 TEST_NAME)
|
||||
string(REPLACE "/" "-" TEST_NAME ${TEST_NAME})
|
||||
|
||||
add_test(NAME "${TEST_NAME}.jit.gcc-target-32"
|
||||
COMMAND "python3" "${CMAKE_SOURCE_DIR}/Scripts/guest_test_runner.py"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Known_Failures"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Expected_Output"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Disabled_Tests"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Flake_Tests"
|
||||
"${TEST_NAME}"
|
||||
"guest"
|
||||
"${CMAKE_BINARY_DIR}/Bin/FEXLoader"
|
||||
"-o" "stderr" "--no-silentlog" "-n" "500" "--"
|
||||
"${TEST}")
|
||||
set_property(TEST "${TEST_NAME}.jit.gcc-target-32" APPEND PROPERTY SKIP_RETURN_CODE 125)
|
||||
list(GET TEST_NAME_LIST 1 TEST_FILE_NAME)
|
||||
|
||||
# Loop over block sizes
|
||||
foreach(BLOCK_SIZE 500 1)
|
||||
# Create TEST_NAME from TEST_FILE_NAME
|
||||
string(REPLACE "/" "-" TEST_NAME ${TEST_FILE_NAME})
|
||||
string(APPEND TEST_NAME ".n${BLOCK_SIZE}.gcc-target-32")
|
||||
|
||||
add_test(NAME "${TEST_NAME}"
|
||||
COMMAND "python3" "${CMAKE_SOURCE_DIR}/Scripts/guest_test_runner.py"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Known_Failures"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Expected_Output"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Disabled_Tests"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Flake_Tests"
|
||||
"${TEST_NAME}"
|
||||
"guest"
|
||||
"${CMAKE_BINARY_DIR}/Bin/FEXLoader"
|
||||
"-o" "stderr" "--no-silentlog" "-n" "${BLOCK_SIZE}" "--"
|
||||
"${TEST}")
|
||||
set_property(TEST "${TEST_NAME}" APPEND PROPERTY SKIP_RETURN_CODE 125)
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
||||
add_custom_target(
|
||||
gcc_target_tests_32
|
||||
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
|
||||
USES_TERMINAL
|
||||
COMMAND "ctest" "--output-on-failure" "--timeout" "20" ${TEST_JOB_FLAG} "-R" "\.*.gcc-target-32$$")
|
||||
COMMAND "ctest" "--output-on-failure" "--timeout" "40" ${TEST_JOB_FLAG} "-R" "\.*.gcc-target-32$$")
|
||||
@@ -1,12 +1,49 @@
|
||||
# Uses AVX
|
||||
pr57275.c.gcc-target-test-64
|
||||
pr57275.c.gcc-target-test-32.n1.gcc-target-32
|
||||
pr57275.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
# Consistently crashes on Solidrun only in CI
|
||||
20080723-1.c.gcc-target-test-32
|
||||
20080723-1.c.gcc-target-test-32.n1.gcc-target-32
|
||||
20080723-1.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
# These tests fail because of things unrelated to the sse4.1 instructions
|
||||
sse4_1-ceil-sfix-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-ceil-sfix-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-ceilf-sfix-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-ceilf-sfix-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-floor-sfix-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-floor-sfix-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-floorf-sfix-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-floorf-sfix-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-rint-sfix-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-rint-sfix-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-rintf-sfix-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-rintf-sfix-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-round-sfix-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-round-sfix-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-roundf-sfix-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-roundf-sfix-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-rint-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-rint-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
sse4_1-roundf-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-roundf-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
|
||||
# These tests fail on Nvidia Xavier ONLY
|
||||
sse4_1-rintf-vec.c.gcc-target-test-32
|
||||
sse4_1-round-vec.c.gcc-target-test-32
|
||||
sse4_1-rintf-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-rintf-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
sse4_1-round-vec.c.gcc-target-test-32.n1.gcc-target-32
|
||||
sse4_1-round-vec.c.gcc-target-test-32.n500.gcc-target-32
|
||||
|
||||
# This has a race with SIGPROF
|
||||
mcount_pic.c.gcc-target-test-32
|
||||
mcount_pic.c.gcc-target-test-32.n1.gcc-target-32
|
||||
mcount_pic.c.gcc-target-test-32.n500.gcc-target-32
|
||||
@@ -1,2 +1,34 @@
|
||||
pr72867.c.gcc-target-test-32
|
||||
sse2-mmx-pextrw.c.gcc-target-test-32
|
||||
pr72867.c.gcc-target-test-32.n500.gcc-target-32
|
||||
pr72867.c.gcc-target-test-32.n1.gcc-target-32
|
||||
|
||||
sse2-mmx-pextrw.c.gcc-target-test-32.n500.gcc-target-32
|
||||
sse2-mmx-pextrw.c.gcc-target-test-32.n1.gcc-target-32
|
||||
|
||||
# Consistently crashes on Solidrun only in CI
|
||||
20080723-1.c.gcc-target-test-32
|
||||
|
||||
# These tests fail because of things unrelated to the sse4.1 instructions
|
||||
sse4_1-ceil-sfix-vec.c.gcc-target-test-32
|
||||
sse4_1-ceilf-sfix-vec.c.gcc-target-test-32
|
||||
sse4_1-floor-sfix-vec.c.gcc-target-test-32
|
||||
sse4_1-floorf-sfix-vec.c.gcc-target-test-32
|
||||
sse4_1-rint-sfix-vec.c.gcc-target-test-32
|
||||
sse4_1-rintf-sfix-vec.c.gcc-target-test-32
|
||||
sse4_1-round-sfix-vec.c.gcc-target-test-32
|
||||
sse4_1-roundf-sfix-vec.c.gcc-target-test-32
|
||||
sse4_1-rint-vec.c.gcc-target-test-32
|
||||
sse4_1-roundf-vec.c.gcc-target-test-32
|
||||
|
||||
# These tests fail on Nvidia Xavier ONLY
|
||||
sse4_1-rintf-vec.c.gcc-target-test-32
|
||||
sse4_1-round-vec.c.gcc-target-test-32
|
||||
|
||||
# This has a race with SIGPROF
|
||||
mcount_pic.c.gcc-target-test-32
|
||||
|
||||
# See https://github.com/FEX-Emu/FEX/issues/4436
|
||||
# Test has invalid asm. Fails on host as well.
|
||||
# It passes for -n 500 due to x87 stack optimization pass
|
||||
# not actually doing a fld/fst pair and instead doing the
|
||||
# memory store directly.
|
||||
pr88240.c.gcc-target-test-32.n1.gcc-target-32
|
||||
@@ -4,27 +4,33 @@
|
||||
file(GLOB_RECURSE TESTS CONFIGURE_DEPENDS ${CMAKE_SOURCE_DIR}/External/fex-gcc-target-tests-bins/64/*)
|
||||
|
||||
foreach(TEST ${TESTS})
|
||||
|
||||
# Extract test file name
|
||||
string(REPLACE "/fex-gcc-target-tests-bins/64/" ";" TEST_NAME_LIST ${TEST})
|
||||
list(GET TEST_NAME_LIST 1 TEST_NAME)
|
||||
string(REPLACE "/" "-" TEST_NAME ${TEST_NAME})
|
||||
list(GET TEST_NAME_LIST 1 TEST_FILE_NAME)
|
||||
|
||||
add_test(NAME "${TEST_NAME}.jit.gcc-target-64"
|
||||
COMMAND "python3" "${CMAKE_SOURCE_DIR}/Scripts/guest_test_runner.py"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Known_Failures"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Expected_Output"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Disabled_Tests"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Flake_Tests"
|
||||
"${TEST_NAME}"
|
||||
"guest"
|
||||
"${CMAKE_BINARY_DIR}/Bin/FEXLoader"
|
||||
"-o" "stderr" "--no-silentlog" "-n" "500" "--"
|
||||
"${TEST}")
|
||||
set_property(TEST "${TEST_NAME}.jit.gcc-target-64" APPEND PROPERTY SKIP_RETURN_CODE 125)
|
||||
# Loop over block sizes
|
||||
foreach(BLOCK_SIZE 500 1)
|
||||
# Create TEST_NAME from TEST_FILE_NAME
|
||||
string(REPLACE "/" "-" TEST_NAME ${TEST_FILE_NAME})
|
||||
string(APPEND TEST_NAME ".n${BLOCK_SIZE}.gcc-target-64")
|
||||
|
||||
add_test(NAME "${TEST_NAME}"
|
||||
COMMAND "python3" "${CMAKE_SOURCE_DIR}/Scripts/guest_test_runner.py"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Known_Failures"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Expected_Output"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Disabled_Tests"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Flake_Tests"
|
||||
"${TEST_NAME}"
|
||||
"guest"
|
||||
"${CMAKE_BINARY_DIR}/Bin/FEXLoader"
|
||||
"-o" "stderr" "--no-silentlog" "-n" "${BLOCK_SIZE}" "--"
|
||||
"${TEST}")
|
||||
set_property(TEST "${TEST_NAME}" APPEND PROPERTY SKIP_RETURN_CODE 125)
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
||||
add_custom_target(
|
||||
gcc_target_tests_64
|
||||
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
|
||||
USES_TERMINAL
|
||||
COMMAND "ctest" "--output-on-failure" "--timeout" "20" ${TEST_JOB_FLAG} "-R" "\.*.gcc-target-64$$")
|
||||
COMMAND "ctest" "--output-on-failure" "--timeout" "40" ${TEST_JOB_FLAG} "-R" "\.*.gcc-target-64$$")
|
||||
@@ -3,7 +3,8 @@
|
||||
# Passes the argument to bar in eax
|
||||
# 'bar' accepts the argument in edi
|
||||
# inline asm is incorrect, needs to use =d and d on the value
|
||||
asm-5.c.gcc-target-test-64
|
||||
asm-5.c.gcc-target-test-64.n500.gcc-target-64
|
||||
asm-5.c.gcc-target-test-64.n1.gcc-target-64
|
||||
|
||||
# Fails even on host device
|
||||
# 'test_pextrw' does a zero extend to the gpr
|
||||
@@ -11,4 +12,12 @@ asm-5.c.gcc-target-test-64
|
||||
# While the 'compute_correct_result' value does a sign extension
|
||||
# Which turns the value in to 0xfffff2f5
|
||||
# This causes its comparison to fail
|
||||
sse2-mmx-pextrw.c.gcc-target-test-64
|
||||
sse2-mmx-pextrw.c.gcc-target-test-64.n500.gcc-target-64
|
||||
sse2-mmx-pextrw.c.gcc-target-test-64.n1.gcc-target-64
|
||||
|
||||
# See https://github.com/FEX-Emu/FEX/issues/4436
|
||||
# Test has invalid asm. Fails on host as well.
|
||||
# It passes for -n 500 due to x87 stack optimization pass
|
||||
# not actually doing a fld/fst pair and instead doing the
|
||||
# memory store directly.
|
||||
pr88240.c.gcc-target-test-64.n1.gcc-target-64
|
||||
Reference in new issue
Block a user