gas/testsuite/
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 13 Jan 2009 00:00:35 +0000 (00:00 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Tue, 13 Jan 2009 00:00:35 +0000 (00:00 +0000)
2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>

* gas/i386/sse-noavx.s: Add tests for lfence, mfence and movnti.
* gas/i386/x86-64-sse-noavx.s: Likewise.

* gas/i386/sse-noavx.d: Updated.
* gas/i386/x86-64-sse-noavx.d: Likewise.

opcodes/

2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>

* i386-opc.tbl: Add NoAVX to movnti, lfence and mfence.
* i386-tbl.h: Regenerated.

gas/testsuite/ChangeLog
gas/testsuite/gas/i386/sse-noavx.d
gas/testsuite/gas/i386/sse-noavx.s
gas/testsuite/gas/i386/x86-64-sse-noavx.d
gas/testsuite/gas/i386/x86-64-sse-noavx.s
opcodes/ChangeLog
opcodes/i386-opc.tbl
opcodes/i386-tbl.h

index d3913b01cc552ed85cdec719cb5dd8a8258479e0..b468eca589717d911930865d3158527ef3f6a2e0 100644 (file)
@@ -1,3 +1,11 @@
+2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * gas/i386/sse-noavx.s: Add tests for lfence, mfence and movnti.
+       * gas/i386/x86-64-sse-noavx.s: Likewise.
+
+       * gas/i386/sse-noavx.d: Updated.
+       * gas/i386/x86-64-sse-noavx.d: Likewise.
+
 2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>
 
        * gas/i386/opts.s: Add tests for add, adc, and, cmp, or, sbb,
index 518e9d5598b7dd0940cb6f27e44847b3ae1f6e90..dbf6224a5381c01fa419eb2c31f5ec146ff3453f 100644 (file)
@@ -16,9 +16,12 @@ Disassembly of section .text:
 [      ]*[a-f0-9]+:    0f 2c dc                cvttps2pi %xmm4,%mm3
 [      ]*[a-f0-9]+:    df 08                   fisttp \(%eax\)
 [      ]*[a-f0-9]+:    dd 08                   fisttpll \(%eax\)
+[      ]*[a-f0-9]+:    0f ae e8                lfence 
 [      ]*[a-f0-9]+:    0f f7 c7                maskmovq %mm7,%mm0
+[      ]*[a-f0-9]+:    0f ae f0                mfence 
 [      ]*[a-f0-9]+:    0f 01 c8                monitor %eax,%ecx,%edx
 [      ]*[a-f0-9]+:    f2 0f d6 c8             movdq2q %xmm0,%mm1
+[      ]*[a-f0-9]+:    0f c3 00                movnti %eax,\(%eax\)
 [      ]*[a-f0-9]+:    0f e7 10                movntq %mm2,\(%eax\)
 [      ]*[a-f0-9]+:    f3 0f d6 c8             movq2dq %mm0,%xmm1
 [      ]*[a-f0-9]+:    0f 01 c9                mwait  %eax,%ecx
index e0a5b541188d1e333404fe023af3f207b9ba94ee..900c9e5122d18f3b476e99ee8e58541e53e741ff 100644 (file)
@@ -11,9 +11,12 @@ _start:
  cvttps2pi     %xmm4,%mm3
  fisttp (%eax)
  fisttpll (%eax)
+ lfence
  maskmovq      %mm7,%mm0
+ mfence
  monitor
  movdq2q       %xmm0, %mm1
+ movnti %eax, (%eax)
  movntq                %mm2,(%eax)
  movq2dq       %mm0, %xmm1
  mwait
index 32846a68cb55343599514e921ec4699c3e5c7d0c..5fa1fea70084c4e98c5cb02cb56678850d32fb6a 100644 (file)
@@ -17,9 +17,12 @@ Disassembly of section .text:
 [      ]*[a-f0-9]+:    0f 2c dc                cvttps2pi %xmm4,%mm3
 [      ]*[a-f0-9]+:    df 08                   fisttp \(%rax\)
 [      ]*[a-f0-9]+:    dd 08                   fisttpll \(%rax\)
+[      ]*[a-f0-9]+:    0f ae e8                lfence 
 [      ]*[a-f0-9]+:    0f f7 c7                maskmovq %mm7,%mm0
+[      ]*[a-f0-9]+:    0f ae f0                mfence 
 [      ]*[a-f0-9]+:    0f 01 c8                monitor %rax,%rcx,%rdx
 [      ]*[a-f0-9]+:    f2 0f d6 c8             movdq2q %xmm0,%mm1
+[      ]*[a-f0-9]+:    0f c3 00                movnti %eax,\(%rax\)
 [      ]*[a-f0-9]+:    0f e7 10                movntq %mm2,\(%rax\)
 [      ]*[a-f0-9]+:    f3 0f d6 c8             movq2dq %mm0,%xmm1
 [      ]*[a-f0-9]+:    0f 01 c9                mwait  %rax,%rcx
index 08a8c22e3c03f4d42b5b23e6ce53f323c8973d3b..69e7e96792796a0a7429c4d49e896de12986a8b5 100644 (file)
@@ -12,9 +12,12 @@ _start:
  cvttps2pi     %xmm4,%mm3
  fisttp (%rax)
  fisttpll (%rax)
+ lfence
  maskmovq      %mm7,%mm0
+ mfence
  monitor
  movdq2q       %xmm0, %mm1
+ movnti %eax, (%rax)
  movntq                %mm2,(%rax)
  movq2dq       %mm0, %xmm1
  mwait
index f8ddf482017eadb1e48478b8d04759104c62068b..f4631ef95a13eef3c7a5e9140e59ad2c0120ec4f 100644 (file)
@@ -1,3 +1,8 @@
+2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-opc.tbl: Add NoAVX to movnti, lfence and mfence.
+       * i386-tbl.h: Regenerated.
+
 2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>
 
        * i386-dis.c (dis386): Use EbS on addB, orB, adcB, sbbB, andB,
index e644a391415f58eeeb82c70c97119c8debc784c1..2666de0443e2d19cdf9c1a72a9208c939b8941ec 100644 (file)
@@ -909,10 +909,10 @@ fucompi, 1, 0xdfe8, None, 2, Cpu686, ShortForm|No_bSuf|No_wSuf|No_lSuf|No_sSuf|N
 
 // Pentium4 extensions.
 
-movnti, 2, 0xfc3, None, 2, CpuSSE2, Modrm|No_bSuf|No_wSuf|No_sSuf|No_ldSuf, { Reg32|Reg64, Dword|Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S }
+movnti, 2, 0xfc3, None, 2, CpuSSE2, Modrm|No_bSuf|No_wSuf|No_sSuf|No_ldSuf|NoAVX, { Reg32|Reg64, Dword|Qword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S }
 clflush, 1, 0xfae, 0x7, 2, CpuClflush, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Byte|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S }
-lfence, 0, 0xfae, 0xe8, 2, CpuSSE2, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { 0 }
-mfence, 0, 0xfae, 0xf0, 2, CpuSSE2, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt, { 0 }
+lfence, 0, 0xfae, 0xe8, 2, CpuSSE2, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|NoAVX, { 0 }
+mfence, 0, 0xfae, 0xf0, 2, CpuSSE2, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|NoAVX, { 0 }
 // Processors that do not support PAUSE treat this opcode as a NOP instruction.
 pause, 0, 0xf390, None, 2, Cpu186, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 }
 
index 55991b2c75f312d2b3a35e9666469bd403c2ba15..d6e6851f349dfe8711c48fe32a8594e02eadb38b 100644 (file)
@@ -6910,7 +6910,7 @@ const template i386_optab[] =
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
     { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 
       1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
+      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 },
     { { { 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
          0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
          0, 0, 0, 0, 0, 0 } },
@@ -6931,7 +6931,7 @@ const template i386_optab[] =
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
     { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 
       1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 
-      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
+      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 },
     { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
          0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
          0, 0, 0, 0, 0, 0 } } } },
@@ -6940,7 +6940,7 @@ const template i386_optab[] =
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
     { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 
       1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 
-      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
+      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 },
     { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
          0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
          0, 0, 0, 0, 0, 0 } } } },