FEX/unittests
Ryan Houdek 4d00a52761
Merge pull request #3732 from Sonicadvance1/avx_6
unittests: Split up vtestps unittest to accumulate flags in independent registers.
2024-06-21 00:52:02 -07:00
..
32Bit_ASM OpcodeDispatcher: Implement support for SMSW 2024-04-18 07:41:39 -07:00
APITests Whole-tree reformat 2024-04-12 16:26:02 +02:00
ASM Merge pull request #3732 from Sonicadvance1/avx_6 2024-06-21 00:52:02 -07:00
FEXLinuxTests FileManagement: Fix fstatat with self and NOFOLLOW 2024-05-29 18:41:24 -07:00
gcc-target-tests-32 unittests: Instruct CTest to print output from tests on failure 2023-09-26 17:16:28 +02:00
gcc-target-tests-64 unittests: Instruct CTest to print output from tests on failure 2023-09-26 17:16:28 +02:00
gvisor-tests unittests: Instruct CTest to print output from tests on failure 2023-09-26 17:16:28 +02:00
InstructionCountCI Merge pull request #3714 from pmatos/FSTstiTagSet 2024-06-21 00:27:24 -07:00
POSIX unittests: Instruct CTest to print output from tests on failure 2023-09-26 17:16:28 +02:00
ThunkFunctionalTests unittests: Instruct CTest to print output from tests on failure 2023-09-26 17:16:28 +02:00
ThunkLibs Library Forwarding: Support Vulkan forwarding with guest-libX11 2024-05-02 18:06:54 +02:00
Utilities Reformat until fixed-point 2024-04-15 09:40:00 +02:00
CMakeLists.txt Removes IRLoader, unittests, and public interface 2023-12-25 07:00:29 -08:00
Example.asm Add MemoryData to IR and ASM Tests 2020-08-21 01:29:37 +12:00
Readme.md Docs: Add tags to the source code 2021-03-30 12:21:18 +03:00

FEX Unit tests

FEX has its own test suite for x86-64 emulation, and we also use gcc's target tests, posixtest, and gvisor's tests. We use a combination of CMake/CTest and python runner scripts.

We also regularly run and pass qemu's and valgrind's tests for validation, but those aren't in CI right now.

x86/64 testing

  • A lot of handwritten assembly unit tests in 32Bit_ASM and ASM folders, run via our TestHarnessHelper
  • A few handwritten IR tests in IR, run via our IRLoader
  • gcc-target-tests-32 and gcc-target-tests-64, run via FEXLoader. The tests binaries are in External/fex-gcc-target-tests-bins

Syscall testing