aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2009-01-09 20:32:32 +0000
committerH.J. Lu <hjl.tools@gmail.com>2009-01-09 20:32:32 +0000
commit1b7f3fb0dd0c5dd226e0a54c84cbf4c002738835 (patch)
tree8425d786229d4c537d6853fed32ffc6d764b2178 /gas
parent1cb0a7674666a4beff8f5f76f4392051ea649a82 (diff)
downloadgdb-1b7f3fb0dd0c5dd226e0a54c84cbf4c002738835.zip
gdb-1b7f3fb0dd0c5dd226e0a54c84cbf4c002738835.tar.gz
gdb-1b7f3fb0dd0c5dd226e0a54c84cbf4c002738835.tar.bz2
gas/
2009-01-09 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (cpu_arch): Add .rdtscp. (md_show_usage): Display rdtscp. * doc/c-i386.texi: Document rdtscp. gas/testsuite/ 2009-01-09 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/arch-10.s: Add rdtscp. * gas/i386/x86-64-arch-2.s: Likewise. * gas/i386/arch-10.d: Updated. * gas/i386/arch-10-1.l: Likewise. * gas/i386/arch-10-2.l: Likewise. * gas/i386/arch-10-3.l: Likewise. * gas/i386/arch-10-4.l: Likewise. * gas/i386/x86-64-arch-2.d: Likewise. opcodes/ 2009-01-09 H.J. Lu <hongjiu.lu@intel.com> * i386-gen.c (cpu_flag_init): Add CpuRdtscp to CPU_K8_FLAGS and CPU_AMDFAM10_FLAGS. Add CPU_RDTSCP_FLAGS. (cpu_flags): Add CpuRdtscp. (set_bitfield): Remove CpuSledgehammer check. * i386-opc.h (CpuRdtscp): New. (CpuLM): Updated. (i386_cpu_flags): Add cpurdtscp. * i386-opc.tbl: Replace CpuSledgehammer with CpuRdtscp. * i386-init.h: Regenerated. * i386-tbl.h: Likewise.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/config/tc-i386.c5
-rw-r--r--gas/doc/c-i386.texi3
-rw-r--r--gas/testsuite/ChangeLog12
-rw-r--r--gas/testsuite/gas/i386/arch-10-1.l31
-rw-r--r--gas/testsuite/gas/i386/arch-10-2.l31
-rw-r--r--gas/testsuite/gas/i386/arch-10-3.l34
-rw-r--r--gas/testsuite/gas/i386/arch-10-4.l34
-rw-r--r--gas/testsuite/gas/i386/arch-10.d3
-rw-r--r--gas/testsuite/gas/i386/arch-10.s2
-rw-r--r--gas/testsuite/gas/i386/x86-64-arch-2.d3
-rw-r--r--gas/testsuite/gas/i386/x86-64-arch-2.s2
12 files changed, 107 insertions, 60 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 1d602c0..3bbc31c 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2009-01-09 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/tc-i386.c (cpu_arch): Add .rdtscp.
+ (md_show_usage): Display rdtscp.
+
+ * doc/c-i386.texi: Document rdtscp.
+
2009-01-09 Peter Bergner <bergner@vnet.ibm.com>
* config/tc-ppc.c (ppc_setup_opcodes): Remove PPC_OPCODE_NOPOWER4 test.
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index fcfdd82..7222969 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -650,6 +650,8 @@ static const arch_entry cpu_arch[] =
CPU_MOVBE_FLAGS },
{ ".ept", PROCESSOR_UNKNOWN,
CPU_EPT_FLAGS },
+ { ".rdtscp", PROCESSOR_UNKNOWN,
+ CPU_RDTSCP_FLAGS },
{ ".3dnow", PROCESSOR_UNKNOWN,
CPU_3DNOW_FLAGS },
{ ".3dnowa", PROCESSOR_UNKNOWN,
@@ -8235,7 +8237,8 @@ md_show_usage (stream)
EXTENSION is combination of:\n\
mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, sse4,\n\
avx, vmx, smx, xsave, movbe, ept, aes, pclmul, fma,\n\
- 3dnow, 3dnowa, sse4a, sse5, svme, abm, padlock\n"));
+ rdtscp, 3dnow, 3dnowa, sse4a, sse5, svme, abm,\n\
+ padlock\n"));
fprintf (stream, _("\
-mtune=CPU optimize for CPU, CPU is one of:\n\
i8086, i186, i286, i386, i486, pentium, pentiumpro,\n\
diff --git a/gas/doc/c-i386.texi b/gas/doc/c-i386.texi
index 29f764d..d07c2d1 100644
--- a/gas/doc/c-i386.texi
+++ b/gas/doc/c-i386.texi
@@ -130,6 +130,7 @@ accept various extension mnemonics. For example,
@code{fma},
@code{movbe},
@code{ept},
+@code{rdtscp},
@code{3dnow},
@code{3dnowa},
@code{sse4a},
@@ -879,7 +880,7 @@ supported on the CPU specified. The choices for @var{cpu_type} are:
@item @samp{.ssse3} @tab @samp{.sse4.1} @tab @samp{.sse4.2} @tab @samp{.sse4}
@item @samp{.avx} @tab @samp{.vmx} @tab @samp{.smx} @tab @samp{.xsave}
@item @samp{.aes} @tab @samp{.pclmul} @tab @samp{.fma} @tab @samp{.movbe}
-@item @samp{.ept}
+@item @samp{.ept} @tab @samp{.rdtscp}
@item @samp{.3dnow} @tab @samp{.3dnowa} @tab @samp{.sse4a} @tab @samp{.sse5}
@item @samp{.svme} @tab @samp{.abm}
@item @samp{.padlock}
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 99312eb..9e41c37 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,15 @@
+2009-01-09 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gas/i386/arch-10.s: Add rdtscp.
+ * gas/i386/x86-64-arch-2.s: Likewise.
+
+ * gas/i386/arch-10.d: Updated.
+ * gas/i386/arch-10-1.l: Likewise.
+ * gas/i386/arch-10-2.l: Likewise.
+ * gas/i386/arch-10-3.l: Likewise.
+ * gas/i386/arch-10-4.l: Likewise.
+ * gas/i386/x86-64-arch-2.d: Likewise.
+
2009-01-06 Chao-ying Fu <fu@mips.com>
* gas/mips/jalr.s, gas/mips/jalr.l: Add more tests for jalr
diff --git a/gas/testsuite/gas/i386/arch-10-1.l b/gas/testsuite/gas/i386/arch-10-1.l
index ed14901..7dae75f 100644
--- a/gas/testsuite/gas/i386/arch-10-1.l
+++ b/gas/testsuite/gas/i386/arch-10-1.l
@@ -24,6 +24,7 @@
.*:48: Error: .*
.*:50: Error: .*
.*:52: Error: .*
+.*:54: Error: .*
GAS LISTING .*
@@ -66,17 +67,19 @@ GAS LISTING .*
[ ]*36[ ]+movbe \(%ecx\),%ebx
[ ]*37[ ]+\# EPT
[ ]*38[ ]+invept \(%ecx\),%ebx
-[ ]*39[ ]+\# 3DNow
-[ ]*40[ ]+pmulhrw %mm4,%mm3
-[ ]*41[ ]+\# 3DNow Extensions
-[ ]*42[ ]+pswapd %mm4,%mm3
-[ ]*43[ ]+\# SSE4a
-[ ]*44[ ]+insertq %xmm2,%xmm1
-[ ]*45[ ]+\# SVME
-[ ]*46[ ]+vmload
-[ ]*47[ ]+\# ABM
-[ ]*48[ ]+lzcnt %ecx,%ebx
-[ ]*49[ ]+\# SSE5
-[ ]*50[ ]+frczss %xmm2, %xmm1
-[ ]*51[ ]+\# PadLock
-[ ]*52[ ]+xstorerng
+[ ]*39[ ]+\# RDTSCP
+[ ]*40[ ]+rdtscp
+[ ]*41[ ]+\# 3DNow
+[ ]*42[ ]+pmulhrw %mm4,%mm3
+[ ]*43[ ]+\# 3DNow Extensions
+[ ]*44[ ]+pswapd %mm4,%mm3
+[ ]*45[ ]+\# SSE4a
+[ ]*46[ ]+insertq %xmm2,%xmm1
+[ ]*47[ ]+\# SVME
+[ ]*48[ ]+vmload
+[ ]*49[ ]+\# ABM
+[ ]*50[ ]+lzcnt %ecx,%ebx
+[ ]*51[ ]+\# SSE5
+[ ]*52[ ]+frczss %xmm2, %xmm1
+[ ]*53[ ]+\# PadLock
+[ ]*54[ ]+xstorerng
diff --git a/gas/testsuite/gas/i386/arch-10-2.l b/gas/testsuite/gas/i386/arch-10-2.l
index ebc0e39..0a0c0f7 100644
--- a/gas/testsuite/gas/i386/arch-10-2.l
+++ b/gas/testsuite/gas/i386/arch-10-2.l
@@ -23,6 +23,7 @@
.*:48: Error: .*
.*:50: Error: .*
.*:52: Error: .*
+.*:54: Error: .*
GAS LISTING .*
@@ -65,17 +66,19 @@ GAS LISTING .*
[ ]*36[ ]+movbe \(%ecx\),%ebx
[ ]*37[ ]+\# EPT
[ ]*38[ ]+invept \(%ecx\),%ebx
-[ ]*39[ ]+\# 3DNow
-[ ]*40[ ]+pmulhrw %mm4,%mm3
-[ ]*41[ ]+\# 3DNow Extensions
-[ ]*42[ ]+pswapd %mm4,%mm3
-[ ]*43[ ]+\# SSE4a
-[ ]*44[ ]+insertq %xmm2,%xmm1
-[ ]*45[ ]+\# SVME
-[ ]*46[ ]+vmload
-[ ]*47[ ]+\# ABM
-[ ]*48[ ]+lzcnt %ecx,%ebx
-[ ]*49[ ]+\# SSE5
-[ ]*50[ ]+frczss %xmm2, %xmm1
-[ ]*51[ ]+\# PadLock
-[ ]*52[ ]+xstorerng
+[ ]*39[ ]+\# RDTSCP
+[ ]*40[ ]+rdtscp
+[ ]*41[ ]+\# 3DNow
+[ ]*42[ ]+pmulhrw %mm4,%mm3
+[ ]*43[ ]+\# 3DNow Extensions
+[ ]*44[ ]+pswapd %mm4,%mm3
+[ ]*45[ ]+\# SSE4a
+[ ]*46[ ]+insertq %xmm2,%xmm1
+[ ]*47[ ]+\# SVME
+[ ]*48[ ]+vmload
+[ ]*49[ ]+\# ABM
+[ ]*50[ ]+lzcnt %ecx,%ebx
+[ ]*51[ ]+\# SSE5
+[ ]*52[ ]+frczss %xmm2, %xmm1
+[ ]*53[ ]+\# PadLock
+[ ]*54[ ]+xstorerng
diff --git a/gas/testsuite/gas/i386/arch-10-3.l b/gas/testsuite/gas/i386/arch-10-3.l
index 59d3127..7284804 100644
--- a/gas/testsuite/gas/i386/arch-10-3.l
+++ b/gas/testsuite/gas/i386/arch-10-3.l
@@ -16,6 +16,7 @@
.*:48: Error: .*
.*:50: Error: .*
.*:52: Error: .*
+.*:54: Error: .*
GAS LISTING .*
@@ -61,17 +62,22 @@ GAS LISTING .*
[ ]*36[ ]+movbe \(%ecx\),%ebx
[ ]*37[ ]+\# EPT
[ ]*38[ ]+invept \(%ecx\),%ebx
-[ ]*39[ ]+\# 3DNow
-[ ]*40[ ]+pmulhrw %mm4,%mm3
-[ ]*41[ ]+\# 3DNow Extensions
-[ ]*42[ ]+pswapd %mm4,%mm3
-[ ]*43[ ]+\# SSE4a
-[ ]*44[ ]+insertq %xmm2,%xmm1
-[ ]*45[ ]+\# SVME
-[ ]*46[ ]+vmload
-[ ]*47[ ]+\# ABM
-[ ]*48[ ]+lzcnt %ecx,%ebx
-[ ]*49[ ]+\# SSE5
-[ ]*50[ ]+frczss %xmm2, %xmm1
-[ ]*51[ ]+\# PadLock
-[ ]*52[ ]+xstorerng
+[ ]*39[ ]+\# RDTSCP
+[ ]*40[ ]+rdtscp
+[ ]*41[ ]+\# 3DNow
+[ ]*42[ ]+pmulhrw %mm4,%mm3
+[ ]*43[ ]+\# 3DNow Extensions
+[ ]*44[ ]+pswapd %mm4,%mm3
+[ ]*45[ ]+\# SSE4a
+[ ]*46[ ]+insertq %xmm2,%xmm1
+[ ]*47[ ]+\# SVME
+[ ]*48[ ]+vmload
+[ ]*49[ ]+\# ABM
+[ ]*50[ ]+lzcnt %ecx,%ebx
+[ ]*51[ ]+\# SSE5
+[ ]*52[ ]+frczss %xmm2, %xmm1
+[ ]*53[ ]+\# PadLock
+ GAS LISTING .*
+
+
+[ ]*54[ ]+xstorerng
diff --git a/gas/testsuite/gas/i386/arch-10-4.l b/gas/testsuite/gas/i386/arch-10-4.l
index 444297a..c541d05 100644
--- a/gas/testsuite/gas/i386/arch-10-4.l
+++ b/gas/testsuite/gas/i386/arch-10-4.l
@@ -14,6 +14,7 @@
.*:48: Error: .*
.*:50: Error: .*
.*:52: Error: .*
+.*:54: Error: .*
GAS LISTING .*
@@ -59,17 +60,22 @@ GAS LISTING .*
[ ]*36[ ]+movbe \(%ecx\),%ebx
[ ]*37[ ]+\# EPT
[ ]*38[ ]+invept \(%ecx\),%ebx
-[ ]*39[ ]+\# 3DNow
-[ ]*40[ ]+pmulhrw %mm4,%mm3
-[ ]*41[ ]+\# 3DNow Extensions
-[ ]*42[ ]+pswapd %mm4,%mm3
-[ ]*43[ ]+\# SSE4a
-[ ]*44[ ]+insertq %xmm2,%xmm1
-[ ]*45[ ]+\# SVME
-[ ]*46[ ]+vmload
-[ ]*47[ ]+\# ABM
-[ ]*48[ ]+lzcnt %ecx,%ebx
-[ ]*49[ ]+\# SSE5
-[ ]*50[ ]+frczss %xmm2, %xmm1
-[ ]*51[ ]+\# PadLock
-[ ]*52[ ]+xstorerng
+[ ]*39[ ]+\# RDTSCP
+[ ]*40[ ]+rdtscp
+[ ]*41[ ]+\# 3DNow
+[ ]*42[ ]+pmulhrw %mm4,%mm3
+[ ]*43[ ]+\# 3DNow Extensions
+[ ]*44[ ]+pswapd %mm4,%mm3
+[ ]*45[ ]+\# SSE4a
+[ ]*46[ ]+insertq %xmm2,%xmm1
+[ ]*47[ ]+\# SVME
+[ ]*48[ ]+vmload
+[ ]*49[ ]+\# ABM
+[ ]*50[ ]+lzcnt %ecx,%ebx
+[ ]*51[ ]+\# SSE5
+[ ]*52[ ]+frczss %xmm2, %xmm1
+[ ]*53[ ]+\# PadLock
+ GAS LISTING .*
+
+
+[ ]*54[ ]+xstorerng
diff --git a/gas/testsuite/gas/i386/arch-10.d b/gas/testsuite/gas/i386/arch-10.d
index 9c3db2e..274ea08 100644
--- a/gas/testsuite/gas/i386/arch-10.d
+++ b/gas/testsuite/gas/i386/arch-10.d
@@ -1,4 +1,4 @@
-#as: -march=i686+avx+vmx+smx+xsave+aes+pclmul+fma+movbe+ept+sse5+3dnowa+svme+padlock
+#as: -march=i686+avx+vmx+smx+xsave+aes+pclmul+fma+movbe+ept+rdtscp+sse5+3dnowa+svme+padlock
#objdump: -dw
#name: i386 arch 10
@@ -25,6 +25,7 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: c4 e2 c9 98 d4 vfmadd132pd %xmm4,%xmm6,%xmm2
[ ]*[a-f0-9]+: 0f 38 f0 19 movbe \(%ecx\),%ebx
[ ]*[a-f0-9]+: 66 0f 38 80 19 invept \(%ecx\),%ebx
+[ ]*[a-f0-9]+: 0f 01 f9 rdtscp
[ ]*[a-f0-9]+: 0f 0f dc b7 pmulhrw %mm4,%mm3
[ ]*[a-f0-9]+: 0f 0f dc bb pswapd %mm4,%mm3
[ ]*[a-f0-9]+: f2 0f 79 ca insertq %xmm2,%xmm1
diff --git a/gas/testsuite/gas/i386/arch-10.s b/gas/testsuite/gas/i386/arch-10.s
index eec8143..1aeae59 100644
--- a/gas/testsuite/gas/i386/arch-10.s
+++ b/gas/testsuite/gas/i386/arch-10.s
@@ -36,6 +36,8 @@ vfmadd132pd %xmm4,%xmm6,%xmm2
movbe (%ecx),%ebx
# EPT
invept (%ecx),%ebx
+# RDTSCP
+rdtscp
# 3DNow
pmulhrw %mm4,%mm3
# 3DNow Extensions
diff --git a/gas/testsuite/gas/i386/x86-64-arch-2.d b/gas/testsuite/gas/i386/x86-64-arch-2.d
index 2413f87..cb02711 100644
--- a/gas/testsuite/gas/i386/x86-64-arch-2.d
+++ b/gas/testsuite/gas/i386/x86-64-arch-2.d
@@ -1,4 +1,4 @@
-#as: -march=generic64+avx+vmx+smx+xsave+aes+pclmul+fma+movbe+ept+sse5+3dnowa+svme+padlock
+#as: -march=generic64+avx+vmx+smx+xsave+aes+pclmul+fma+movbe+ept+rdtscp+sse5+3dnowa+svme+padlock
#objdump: -dw
#name: x86-64 arch 2
@@ -25,6 +25,7 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: c4 e2 c9 98 d4 vfmadd132pd %xmm4,%xmm6,%xmm2
[ ]*[a-f0-9]+: 0f 38 f0 19 movbe \(%rcx\),%ebx
[ ]*[a-f0-9]+: 66 0f 38 80 19 invept \(%rcx\),%rbx
+[ ]*[a-f0-9]+: 0f 01 f9 rdtscp
[ ]*[a-f0-9]+: 0f 0f dc b7 pmulhrw %mm4,%mm3
[ ]*[a-f0-9]+: 0f 0f dc bb pswapd %mm4,%mm3
[ ]*[a-f0-9]+: f2 0f 79 ca insertq %xmm2,%xmm1
diff --git a/gas/testsuite/gas/i386/x86-64-arch-2.s b/gas/testsuite/gas/i386/x86-64-arch-2.s
index be1093a..89e6114 100644
--- a/gas/testsuite/gas/i386/x86-64-arch-2.s
+++ b/gas/testsuite/gas/i386/x86-64-arch-2.s
@@ -36,6 +36,8 @@ vfmadd132pd %xmm4,%xmm6,%xmm2
movbe (%rcx),%ebx
# EPT
invept (%rcx),%rbx
+# RDTSCP
+rdtscp
# 3DNow
pmulhrw %mm4,%mm3
# 3DNow Extensions