Commit Graph

53 Commits

Author SHA1 Message Date
Julian Seward
e6177495b9 Try to fix build system breakage w.r.t. ssse3_misaligned. It isn't
created from a .def file so should not be included in INSN_TESTS.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7389
2008-02-10 17:46:46 +00:00
Julian Seward
f84adcc43f Only build the SSSE3 tests on machines whose assemblers know about
these instructions.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7387
2008-02-09 12:07:40 +00:00
Julian Seward
8d76c51997 Add SSSE3 tests.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7385
2008-02-09 01:55:52 +00:00
Julian Seward
9460e84deb Get rid of compiler warnings.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7217
2007-11-25 15:40:17 +00:00
Julian Seward
af406f51e9 Merge (from branches/THRCHECK) misc build-system changes. Nothing
significant.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7128
2007-11-09 23:30:51 +00:00
Julian Seward
6127ab922f Test for decoding of some instructions with redundant REX.W bits in
their prefix.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7104
2007-11-06 22:00:35 +00:00
Julian Seward
902c2a81c1 Add regtest for amd64 implementation of maskmovq and maskmovdq.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6794
2007-09-01 18:58:54 +00:00
Julian Seward
7a6b2f9713 Older assemblers on amd64-linux don't do lahf/sahf; work around that.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6727
2007-05-03 21:25:37 +00:00
Julian Seward
09c2f81371 Test sahf/lahf on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6695
2007-04-07 12:15:44 +00:00
Julian Seward
953e3c3059 Don't build SSE3 tests if the configure test determined that the assembler
does not know about SSE3 instructions.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6657
2007-03-22 12:13:13 +00:00
Julian Seward
d62833bdf9 Add a test for rc{l,r}{bwlq} on amd64. (from Emmanuel Thomé)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6540
2007-01-19 20:09:21 +00:00
Julian Seward
bd211db8f5 Include missing files in tarball.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6397
2006-12-13 14:35:03 +00:00
Julian Seward
5b26b045dd Change a bunch of pointer <-> int casts to pointer <-> long casts so
as to stop gcc complaining so much on 64-bit platforms.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6306
2006-10-17 11:09:03 +00:00
Julian Seward
10cb048d3f Regtest for #133678 (amd64 pextrw with 64-bit dst register)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6047
2006-09-11 14:39:05 +00:00
Julian Seward
12affe3595 Add regtest for #132918 (amd64 fprem).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6046
2006-09-11 11:05:26 +00:00
Julian Seward
4fe694b232 64-bit regtest for #132813 (Assertion at priv/guest-x86/toIR.c:652 fails)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6035
2006-08-28 18:53:25 +00:00
Tom Hughes
12b349c8fa Hand assemble cmpxchg16b as old assemblers don't understand it.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6009
2006-08-23 08:27:03 +00:00
Julian Seward
b5db7e3510 Regtest for #127521 (amd64 cmpxchg8b/16b).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6007
2006-08-17 01:39:04 +00:00
Julian Seward
7a85ea67f6 Regtest for bug fixed by r6001.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6002
2006-08-16 01:50:55 +00:00
Julian Seward
6be6614e3a Regression tests for SSE3 support.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5997
2006-08-05 12:22:52 +00:00
Julian Seward
324c94bf8c Re-enable regression tests for AMD64 SSE2 'psadbw'.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5987
2006-07-24 08:52:19 +00:00
Julian Seward
ad99fe2c00 Disable tests none/tests/amd64/faultstatus, none/tests/x86/faultstatus
and none/tests/x86/int.  They always fail, the tested functionality
isn't going to get fixed in a hurry, and it's just generally annoying.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5933
2006-05-26 00:50:41 +00:00
Julian Seward
931b079b96 Regression test for clc/stc/cmc on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5893
2006-05-12 20:28:26 +00:00
Julian Seward
fca59b907a Re-enable amd64 test for pmaddwd.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5839
2006-04-08 16:52:42 +00:00
Julian Seward
4e65de3448 Add an amd64 test program for 'fxtract' - just a copy of the x86 one.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5716
2006-03-07 01:17:12 +00:00
Julian Seward
6fa95850db Test for fcmovnu.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5714
2006-03-06 19:36:30 +00:00
Julian Seward
dd3b4bf6f2 amd64-linux adjustments as a followup to r5493.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5494
2006-01-04 02:55:03 +00:00
Tom Hughes
8eab4a6d08 Use the amd64 tests on amd64 not the x86 ones...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5097
2005-11-12 15:51:31 +00:00
Tom Hughes
8abba99aa0 Run instruction tests under memcheck as well as none.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5094
2005-11-12 15:46:17 +00:00
Tom Hughes
b3ae519581 Add tests for 64 bit instructions.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5024
2005-11-06 12:29:50 +00:00
Tom Hughes
049569da6c Sync sse2 tests from x86 to amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5017
2005-11-05 12:10:31 +00:00
Julian Seward
17ca4985d8 Add test cases for amd64 vector FP unordered compares.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5016
2005-11-05 02:34:06 +00:00
Tom Hughes
100bb1fdf9 Enable tests for shld/shrd instructions which are now supported on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5011
2005-11-05 00:10:36 +00:00
Julian Seward
1dd43d7427 Test shrd/shld.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5009
2005-11-04 20:18:27 +00:00
Tom Hughes
4ac3c2c42c Add an insn_basic test for amd64. This is based on the x86 one so
doesn't test any 64 bit operations yet.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5005
2005-11-04 17:07:24 +00:00
Tom Hughes
00f6c10491 Allow rax/rbx/rcx/rdx (and their narrower counterparts) to be used
again but only after the high registers are exhausted or (and this is
the important point) if they are explicitly requested.

Also, don't use r8 as it confuses things as we can't tell an explicit
request from a generic request for a byte register.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5003
2005-11-04 16:46:19 +00:00
Tom Hughes
9832634fc3 Fix the amd64 version of gen_insn_test.pl to strip any b/w/d suffix
from register names when generating the clobber list as gcc won't
recognise things like r8d but will recognise r8.

This allows us to use the high number integer registers for the tests
which is something Julian asked for ages ago.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5002
2005-11-04 15:36:05 +00:00
Julian Seward
d335331fd3 Also test jecxz.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5001
2005-11-04 14:38:48 +00:00
Tom Hughes
3d2decfed8 Split faultstatus into the platform independent tests and those
which are x86 specific. The first three x86 specific ones should
work on amd64 as well so I have added those as amd64 tests.

Note that the x86/amd64 tests will still fail as VEX doesn't
always trigger the right sort of signal for faulting instructions
at the moment.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4992
2005-11-02 16:15:55 +00:00
Tom Hughes
dbfe36c3c3 Don't give the heap execute permission - the linux kernel doesn't
normally give execute permission to memory allocated from the heap
with sbrk.

This also required fixing the smc1 test for amd64 to use mmap to
allocate memory so that it can have execute permission.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4983
2005-11-02 13:02:40 +00:00
Julian Seward
05c7773957 Test for jrcxz.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4869
2005-10-05 17:12:23 +00:00
Julian Seward
1fa1105403 Add tests for amd64 LOOP{,E,NE} insn.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4482
2005-08-23 23:52:54 +00:00
Julian Seward
57252ed688 Rename --smc-support= to --smc-check=.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4237
2005-07-24 07:00:45 +00:00
Julian Seward
14a5be1fc4 Self-modifying-code check for amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4125
2005-07-07 13:20:31 +00:00
Julian Seward
98aa9b7354 Add test cases for MOVQ on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3705
2005-05-14 11:18:31 +00:00
Julian Seward
64b9ead5fa AMD x87 instruction tests.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3687
2005-05-12 19:17:36 +00:00
Julian Seward
8b8d9c2095 Use hi-half xmm registers (REX.R, REX.B == 1) (%xmm8-%xmm15) in an
attempt to flush out any register-number bugs that might be lurking.

It would be nice to be able to do the same with the integer registers,
but gcc-3.3.4 is too stupid to understand asms with clobbered
registers "r8d", etc (plain "r8" etc is OK) and I am too ignorant of
perl to know how to mash r8b/r8w/r8d back into plain "r8" etc for the
clobbered registers list.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3659
2005-05-11 11:57:41 +00:00
Julian Seward
9cdd95c8e3 Regression tests for amd64 instructions.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3658
2005-05-11 11:21:29 +00:00
Julian Seward
3a455359a7 * gcc-3.3.4 seems to generate non-working code for eq_double: workaround
* fix wrong stack offset for comparisons involving %rflags
* (unused): sets of register names for reg numbers >= 8


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3657
2005-05-11 10:42:49 +00:00
Julian Seward
81ce2f37dc SSE2 tests for amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3656
2005-05-11 02:12:31 +00:00