Hi, Here's the same as previously but with tests. I have noticed that the two relevant functions were in a separate file before, and I have decided to revert the patch in order to separate them again (for tests).
The tests use similar approach as sys/netatalk tests, i.e. #include the .c file containing utility functions in order to compile and test them in userspace. The first test issues series of FSAVE/FXSAVE calls for different test vectors. The result of each is converted to the other format, and compared to the result of corresponding instruction. The two next tests use fixed test data to populate appropriate structs, and compare the result of conversion with known expected values. --- Michał Górny (4): Revert "Merge convert_xmm_s87.c into fpu.c" Fix s87_tw reconstruction to correctly indicate register states Remove unnecessary <sys/systm.h> include Add tests for process_xmm_to_s87() and process_s87_to_xmm() distrib/sets/lists/tests/mi | 5 + etc/mtree/NetBSD.dist.tests | 2 + sys/arch/amd64/conf/files.amd64 | 1 + sys/arch/i386/conf/files.i386 | 1 + sys/arch/x86/include/fpu.h | 3 + sys/arch/x86/x86/convert_xmm_s87.c | 171 ++++++++++++++++++++ sys/arch/x86/x86/fpu.c | 120 -------------- tests/lib/libc/sys/t_ptrace_x86_wait.h | 2 - tests/sys/Makefile | 3 + tests/sys/x86/Makefile | 11 ++ tests/sys/x86/t_convert_xmm_s87.c | 211 +++++++++++++++++++++++++ 11 files changed, 408 insertions(+), 122 deletions(-) create mode 100644 sys/arch/x86/x86/convert_xmm_s87.c create mode 100644 tests/sys/x86/Makefile create mode 100644 tests/sys/x86/t_convert_xmm_s87.c -- 2.28.0
