https://bugs.kde.org/show_bug.cgi?id=339596

--- Comment #18 from Mark Wielaard <m...@redhat.com> ---
Created attachment 100955
  --> https://bugs.kde.org/attachment.cgi?id=100955&action=edit
Testcases for fma4 instructions

Here are some testcases for the FMA4 instructions. I haven't looked yet at the
XOP instructions.
Maybe it is an idea to do FMA4 and XOP as separate patches?

The testcase is based on the idea from the avx-1.c testcase. It creates a a
block of values loads some of the values into xmm/ymm registers and creates a
memory reference to another. Then it prints the contents of the block before
and after the various instructions. The expected output comes from running the
program on an actual processor having fma4 instructions. This is then compared
with the same program running under valgrind.

With the current patch there are some differences.

First the 256bit ymm operations aren't supported, so they have been disabled in
the testcase for now. But I am not sure we really should enable the fma4 cpuid
bit in valgrind before we really support them.

Secondly some 128bit xmm operations should clear the upper 128 bits
of the corresponding YMM register to zeros and don't do so at the moment.

Lastly the "full 0xFF" testcases do show some differences (but the zeros, ones
and random cases all look fine).

I'll also attach the stdout.diff next.

If you think doing full bit-indentical tests are not fair/achievable for these
instructions then let me know and we can see if we can create some testcases
that explicitly work on float/double results.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to