Add test cases for amd64 vector FP unordered compares.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5016 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/none/tests/amd64/insn_sse.def b/none/tests/amd64/insn_sse.def
index c4e10cc..a9e92a0 100644
--- a/none/tests/amd64/insn_sse.def
+++ b/none/tests/amd64/insn_sse.def
@@ -18,6 +18,10 @@
 cmpltps m128.ps[234.5678,234.5678,234.5678,234.5678] xmm.ps[234.5677,234.5679,234.5677,234.5679] => 1.ud[0xffffffff,0x00000000,0xffffffff,0x00000000]
 cmpltss xmm.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5676,0.0,0.0,0.0] => 1.ud[0xffffffff,0,0,0]
 cmpltss m128.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5679,0.0,0.0,0.0] => 1.ud[0x00000000,0,0,0]
+cmpunordps xmm.ps[234.5678,234.5678,234.5678,234.5678] xmm.ps[234.5677,234.5679,234.5677,234.5679] => 1.ud[0x00000000,0x00000000,0x00000000,0x00000000]
+cmpunordps m128.ps[234.5678,234.5678,234.5678,234.5678] xmm.ps[234.5677,234.5679,234.5677,234.5679] => 1.ud[0x00000000,0x00000000,0x00000000,0x00000000]
+cmpunordss xmm.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5676,0.0,0.0,0.0] => 1.ud[0x00000000,0,0,0]
+cmpunordss m128.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5679,0.0,0.0,0.0] => 1.ud[0x00000000,0,0,0]
 cmpneqps xmm.ps[234.5678,234.5678,234.5678,234.5678] xmm.ps[234.5679,234.5678,234.5679,234.5678] => 1.ud[0xffffffff,0x00000000,0xffffffff,0x00000000]
 cmpneqps m128.ps[234.5678,234.5678,234.5678,234.5678] xmm.ps[234.5679,234.5678,234.5679,234.5678] => 1.ud[0xffffffff,0x00000000,0xffffffff,0x00000000]
 cmpneqss xmm.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5679,0.0,0.0,0.0] => 1.ud[0xffffffff,0,0,0]
@@ -30,6 +34,10 @@
 cmpnltps m128.ps[234.5678,234.5678,234.5678,234.5678] xmm.ps[234.5679,234.5677,234.5679,234.5677] => 1.ud[0xffffffff,0x00000000,0xffffffff,0x00000000]
 cmpnltss xmm.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5679,0.0,0.0,0.0] => 1.ud[0xffffffff,0,0,0]
 cmpnltss m128.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5676,0.0,0.0,0.0] => 1.ud[0x00000000,0,0,0]
+cmpordps xmm.ps[234.5678,234.5678,234.5678,234.5678] xmm.ps[234.5679,234.5677,234.5679,234.5677] => 1.ud[0xffffffff,0xffffffff,0xffffffff,0xffffffff]
+cmpordps m128.ps[234.5678,234.5678,234.5678,234.5678] xmm.ps[234.5679,234.5677,234.5679,234.5677] => 1.ud[0xffffffff,0xffffffff,0xffffffff,0xffffffff]
+cmpordss xmm.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5679,0.0,0.0,0.0] => 1.ud[0xffffffff,0,0,0]
+cmpordss m128.ps[1234.5678,0.0,0.0,0.0] xmm.ps[1234.5676,0.0,0.0,0.0] => 1.ud[0xffffffff,0,0,0]
 comiss xmm.ps[234.5678,0.0] xmm.ps[234.5679,0.0] => eflags[0x8d5,0x000]
 comiss m32.ps[234.5678] xmm.ps[234.5679,0.0] => eflags[0x8d5,0x000]
 comiss xmm.ps[234.5678,0.0] xmm.ps[234.5677,0.0] => eflags[0x8d5,0x001]
diff --git a/none/tests/amd64/insn_sse.stdout.exp b/none/tests/amd64/insn_sse.stdout.exp
index ae892af..53c4bc0 100644
--- a/none/tests/amd64/insn_sse.stdout.exp
+++ b/none/tests/amd64/insn_sse.stdout.exp
@@ -18,6 +18,10 @@
 cmpltps_2 ... ok
 cmpltss_1 ... ok
 cmpltss_2 ... ok
+cmpunordps_1 ... ok
+cmpunordps_2 ... ok
+cmpunordss_1 ... ok
+cmpunordss_2 ... ok
 cmpneqps_1 ... ok
 cmpneqps_2 ... ok
 cmpneqss_1 ... ok
@@ -30,6 +34,10 @@
 cmpnltps_2 ... ok
 cmpnltss_1 ... ok
 cmpnltss_2 ... ok
+cmpordps_1 ... ok
+cmpordps_2 ... ok
+cmpordss_1 ... ok
+cmpordss_2 ... ok
 comiss_1 ... ok
 comiss_2 ... ok
 comiss_3 ... ok
diff --git a/none/tests/amd64/insn_sse2.def b/none/tests/amd64/insn_sse2.def
index eda1259..9f22359 100644
--- a/none/tests/amd64/insn_sse2.def
+++ b/none/tests/amd64/insn_sse2.def
@@ -12,24 +12,32 @@
 cmpltpd m128.pd[1234.5678,1234.5678] xmm.pd[1234.5677,1234.5679] => 1.uq[0xffffffffffffffff,0x0000000000000000]
 cmplepd xmm.pd[1234.5678,1234.5678] xmm.pd[1234.5678,1234.5679] => 1.uq[0xffffffffffffffff,0x0000000000000000]
 cmplepd m128.pd[1234.5678,1234.5678] xmm.pd[1234.5678,1234.5679] => 1.uq[0xffffffffffffffff,0x0000000000000000]
+cmpunordpd xmm.pd[1234.5678,1234.5678] xmm.pd[1234.5678,1234.5679] => 1.uq[0x0000000000000000,0x0000000000000000]
+cmpunordpd m128.pd[1234.5678,1234.5678] xmm.pd[1234.5678,1234.5679] => 1.uq[0x0000000000000000,0x0000000000000000]
 cmpneqpd xmm.pd[1234.5678,1234.5678] xmm.pd[1234.5679,1234.5678] => 1.uq[0xffffffffffffffff,0x0000000000000000]
 cmpneqpd m128.pd[1234.5678,1234.5678] xmm.pd[1234.5679,1234.5678] => 1.uq[0xffffffffffffffff,0x0000000000000000]
 cmpnltpd xmm.pd[1234.5678,1234.5678] xmm.pd[1234.5679,1234.5677] => 1.uq[0xffffffffffffffff,0x0000000000000000]
 cmpnltpd m128.pd[1234.5678,1234.5678] xmm.pd[1234.5679,1234.5677] => 1.uq[0xffffffffffffffff,0x0000000000000000]
 cmpnlepd xmm.pd[1234.5678,1234.5678] xmm.pd[1234.5679,1234.5678] => 1.uq[0xffffffffffffffff,0x0000000000000000]
 cmpnlepd m128.pd[1234.5678,1234.5678] xmm.pd[1234.5679,1234.5678] => 1.uq[0xffffffffffffffff,0x0000000000000000]
+cmpordpd xmm.pd[1234.5678,1234.5678] xmm.pd[1234.5679,1234.5678] => 1.uq[0xffffffffffffffff,0xffffffffffffffff]
+cmpordpd m128.pd[1234.5678,1234.5678] xmm.pd[1234.5679,1234.5678] => 1.uq[0xffffffffffffffff,0xffffffffffffffff]
 cmpeqsd xmm.pd[1234.5678,0.0] xmm.pd[1234.5678,0.0] => 1.uq[0xffffffffffffffff,0]
 cmpeqsd m128.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => 1.uq[0x0000000000000000,0]
 cmpltsd xmm.pd[1234.5678,0.0] xmm.pd[1234.5677,0.0] => 1.uq[0xffffffffffffffff,0]
 cmpltsd m128.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => 1.uq[0x0000000000000000,0]
 cmplesd xmm.pd[1234.5678,0.0] xmm.pd[1234.5678,0.0] => 1.uq[0xffffffffffffffff,0]
 cmplesd m128.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => 1.uq[0x0000000000000000,0]
+cmpunordsd xmm.pd[1234.5678,0.0] xmm.pd[1234.5678,0.0] => 1.uq[0x0000000000000000,0]
+cmpunordsd m128.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => 1.uq[0x0000000000000000,0]
 cmpneqsd xmm.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => 1.uq[0xffffffffffffffff,0]
 cmpneqsd m128.pd[1234.5678,0.0] xmm.pd[1234.5678,0.0] => 1.uq[0x0000000000000000,0]
 cmpnltsd xmm.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => 1.uq[0xffffffffffffffff,0]
 cmpnltsd m128.pd[1234.5678,0.0] xmm.pd[1234.5677,0.0] => 1.uq[0x0000000000000000,0]
 cmpnlesd xmm.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => 1.uq[0xffffffffffffffff,0]
 cmpnlesd m128.pd[1234.5678,0.0] xmm.pd[1234.5678,0.0] => 1.uq[0x0000000000000000,0]
+cmpordsd xmm.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => 1.uq[0xffffffffffffffff,0]
+cmpordsd m128.pd[1234.5678,0.0] xmm.pd[1234.5678,0.0] => 1.uq[0xffffffffffffffff,0]
 comisd xmm.pd[1234.5678,0.0] xmm.pd[1234.5679,0.0] => eflags[0x8d5,0x000]
 comisd xmm.pd[1234.5678,0.0] xmm.pd[1234.5677,0.0] => eflags[0x8d5,0x001]
 comisd xmm.pd[1234.5678,0.0] xmm.pd[1234.5678,0.0] => eflags[0x8d5,0x040]
diff --git a/none/tests/amd64/insn_sse2.stdout.exp b/none/tests/amd64/insn_sse2.stdout.exp
index 1e02468..a02bf74 100644
--- a/none/tests/amd64/insn_sse2.stdout.exp
+++ b/none/tests/amd64/insn_sse2.stdout.exp
@@ -12,24 +12,32 @@
 cmpltpd_2 ... ok
 cmplepd_1 ... ok
 cmplepd_2 ... ok
+cmpunordpd_1 ... ok
+cmpunordpd_2 ... ok
 cmpneqpd_1 ... ok
 cmpneqpd_2 ... ok
 cmpnltpd_1 ... ok
 cmpnltpd_2 ... ok
 cmpnlepd_1 ... ok
 cmpnlepd_2 ... ok
+cmpordpd_1 ... ok
+cmpordpd_2 ... ok
 cmpeqsd_1 ... ok
 cmpeqsd_2 ... ok
 cmpltsd_1 ... ok
 cmpltsd_2 ... ok
 cmplesd_1 ... ok
 cmplesd_2 ... ok
+cmpunordsd_1 ... ok
+cmpunordsd_2 ... ok
 cmpneqsd_1 ... ok
 cmpneqsd_2 ... ok
 cmpnltsd_1 ... ok
 cmpnltsd_2 ... ok
 cmpnlesd_1 ... ok
 cmpnlesd_2 ... ok
+cmpordsd_1 ... ok
+cmpordsd_2 ... ok
 comisd_1 ... ok
 comisd_2 ... ok
 comisd_3 ... ok