aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2006-02-11 17:00:59 +0000
committerH.J. Lu <hjl.tools@gmail.com>2006-02-11 17:00:59 +0000
commit6dd5059a0631912657dd4704abc88cab1a04927f (patch)
treec52455400dfe63d444dbf264175428407694a608 /gas
parentdd87191792c318efbb50049ba17e9441e132fe78 (diff)
downloadfsf-binutils-gdb-6dd5059a0631912657dd4704abc88cab1a04927f.zip
fsf-binutils-gdb-6dd5059a0631912657dd4704abc88cab1a04927f.tar.gz
fsf-binutils-gdb-6dd5059a0631912657dd4704abc88cab1a04927f.tar.bz2
gas/testsuite/
2006-02-11 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/i386.exp: Add "x86-64-crx" and "x86-64-crx-suffix". * gas/i386/x86-64-crx-suffix.d: New file. * gas/i386/x86-64-crx.d: Likewise. * gas/i386/x86-64-crx.s: Likewise. opcodes/ 2006-02-11 H.J. Lu <hongjiu.lu@intel.com> * i386-dis.c ('Z'): Add a new macro. (dis386_twobyte): Use "movZ" for control register moves.
Diffstat (limited to 'gas')
-rw-r--r--gas/testsuite/ChangeLog8
-rw-r--r--gas/testsuite/gas/i386/i386.exp2
-rw-r--r--gas/testsuite/gas/i386/x86-64-crx-suffix.d21
-rw-r--r--gas/testsuite/gas/i386/x86-64-crx.d21
-rw-r--r--gas/testsuite/gas/i386/x86-64-crx.s18
5 files changed, 70 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index a51a1f4..193a018 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2006-02-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gas/i386/i386.exp: Add "x86-64-crx" and "x86-64-crx-suffix".
+
+ * gas/i386/x86-64-crx-suffix.d: New file.
+ * gas/i386/x86-64-crx.d: Likewise.
+ * gas/i386/x86-64-crx.s: Likewise.
+
2006-02-07 Nathan Sidwell <nathan@codesourcery.com>
* testsuite/gas/m68k/all.exp: Add arch-cpu-1 test.
diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp
index 6638d4b..91a5e9b 100644
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -132,6 +132,8 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
run_dump_test "x86-64-vmx"
run_dump_test "immed64"
run_dump_test "x86-64-prescott"
+ run_dump_test "x86-64-crx"
+ run_dump_test "x86-64-crx-suffix"
if { ![istarget "*-*-aix*"]
&& ![istarget "*-*-beos*"]
diff --git a/gas/testsuite/gas/i386/x86-64-crx-suffix.d b/gas/testsuite/gas/i386/x86-64-crx-suffix.d
new file mode 100644
index 0000000..1dc3584
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-crx-suffix.d
@@ -0,0 +1,21 @@
+#objdump: -dwMsuffix
+#name: x86-64 control register related opcodes (with suffixes)
+#source: x86-64-crx.s
+
+.*: +file format elf64-x86-64
+
+Disassembly of section .text:
+
+0+ <_start>:
+[ ]*[0-9a-f]+: 44 0f 20 c0[ ]+movq[ ]+?%cr8,%rax
+[ ]*[0-9a-f]+: 44 0f 20 c7[ ]+movq[ ]+?%cr8,%rdi
+[ ]*[0-9a-f]+: 44 0f 22 c0[ ]+movq[ ]+?%rax,%cr8
+[ ]*[0-9a-f]+: 44 0f 22 c7[ ]+movq[ ]+?%rdi,%cr8
+[ ]*[0-9a-f]+: 44 0f 20 c0[ ]+movq[ ]+?%cr8,%rax
+[ ]*[0-9a-f]+: 44 0f 20 c7[ ]+movq[ ]+?%cr8,%rdi
+[ ]*[0-9a-f]+: 44 0f 22 c0[ ]+movq[ ]+?%rax,%cr8
+[ ]*[0-9a-f]+: 44 0f 22 c7[ ]+movq[ ]+?%rdi,%cr8
+[ ]*[0-9a-f]+: 44 0f 20 c0[ ]+movq[ ]+?%cr8,%rax
+[ ]*[0-9a-f]+: 44 0f 20 c7[ ]+movq[ ]+?%cr8,%rdi
+[ ]*[0-9a-f]+: 44 0f 22 c0[ ]+movq[ ]+?%rax,%cr8
+[ ]*[0-9a-f]+: 44 0f 22 c7[ ]+movq[ ]+?%rdi,%cr8
diff --git a/gas/testsuite/gas/i386/x86-64-crx.d b/gas/testsuite/gas/i386/x86-64-crx.d
new file mode 100644
index 0000000..8c1333f
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-crx.d
@@ -0,0 +1,21 @@
+#objdump: -dw
+#name: x86-64 control register related opcodes
+#source: x86-64-crx.s
+
+.*: +file format elf64-x86-64
+
+Disassembly of section .text:
+
+0+ <_start>:
+[ ]*[0-9a-f]+: 44 0f 20 c0[ ]+movq?[ ]+?%cr8,%rax
+[ ]*[0-9a-f]+: 44 0f 20 c7[ ]+movq?[ ]+?%cr8,%rdi
+[ ]*[0-9a-f]+: 44 0f 22 c0[ ]+movq?[ ]+?%rax,%cr8
+[ ]*[0-9a-f]+: 44 0f 22 c7[ ]+movq?[ ]+?%rdi,%cr8
+[ ]*[0-9a-f]+: 44 0f 20 c0[ ]+movq?[ ]+?%cr8,%rax
+[ ]*[0-9a-f]+: 44 0f 20 c7[ ]+movq?[ ]+?%cr8,%rdi
+[ ]*[0-9a-f]+: 44 0f 22 c0[ ]+movq?[ ]+?%rax,%cr8
+[ ]*[0-9a-f]+: 44 0f 22 c7[ ]+movq?[ ]+?%rdi,%cr8
+[ ]*[0-9a-f]+: 44 0f 20 c0[ ]+movq?[ ]+?%cr8,%rax
+[ ]*[0-9a-f]+: 44 0f 20 c7[ ]+movq?[ ]+?%cr8,%rdi
+[ ]*[0-9a-f]+: 44 0f 22 c0[ ]+movq?[ ]+?%rax,%cr8
+[ ]*[0-9a-f]+: 44 0f 22 c7[ ]+movq?[ ]+?%rdi,%cr8
diff --git a/gas/testsuite/gas/i386/x86-64-crx.s b/gas/testsuite/gas/i386/x86-64-crx.s
new file mode 100644
index 0000000..bc288c3
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-crx.s
@@ -0,0 +1,18 @@
+.text
+_start:
+ movq %cr8, %rax
+ movq %cr8, %rdi
+ movq %rax, %cr8
+ movq %rdi, %cr8
+
+.att_syntax noprefix
+ movq cr8, rax
+ movq cr8, rdi
+ movq rax, cr8
+ movq rdi, cr8
+
+.intel_syntax noprefix
+ mov rax, cr8
+ mov rdi, cr8
+ mov cr8, rax
+ mov cr8, rdi