From a1cfb73ee02dc8dfa54dd3d7c633f28a7faf1a1d Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Sat, 11 Feb 2006 18:08:35 +0000 Subject: [PATCH] gas/testsuite/ 2006-02-11 H.J. Lu * gas/i386/i386.exp: Add "x86-64-drx" and "x86-64-drx-suffix". * gas/i386/x86-64-crx-suffix.d: Minor update. * gas/i386/x86-64-drx-suffix.d: New file. * gas/i386/x86-64-drx.d: Likewise. * gas/i386/x86-64-drx.s: Likewise. opcodes/ 2006-02-11 H.J. Lu * i386-dis.c (dis386_twobyte): Use "movZ" for debug register moves. --- gas/testsuite/ChangeLog | 10 ++++++++++ gas/testsuite/gas/i386/i386.exp | 2 ++ gas/testsuite/gas/i386/x86-64-crx-suffix.d | 1 - gas/testsuite/gas/i386/x86-64-drx-suffix.d | 21 +++++++++++++++++++++ gas/testsuite/gas/i386/x86-64-drx.d | 20 ++++++++++++++++++++ gas/testsuite/gas/i386/x86-64-drx.s | 18 ++++++++++++++++++ opcodes/ChangeLog | 5 +++++ opcodes/i386-dis.c | 4 ++-- 8 files changed, 78 insertions(+), 3 deletions(-) create mode 100644 gas/testsuite/gas/i386/x86-64-drx-suffix.d create mode 100644 gas/testsuite/gas/i386/x86-64-drx.d create mode 100644 gas/testsuite/gas/i386/x86-64-drx.s diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 193a0184fbf..570fe147175 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,13 @@ +2006-02-11 H.J. Lu + + * gas/i386/i386.exp: Add "x86-64-drx" and "x86-64-drx-suffix". + + * gas/i386/x86-64-crx-suffix.d: Minor update. + + * gas/i386/x86-64-drx-suffix.d: New file. + * gas/i386/x86-64-drx.d: Likewise. + * gas/i386/x86-64-drx.s: Likewise. + 2006-02-11 H.J. Lu * gas/i386/i386.exp: Add "x86-64-crx" and "x86-64-crx-suffix". diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 91a5e9b0791..7bf459580be 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -134,6 +134,8 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t run_dump_test "x86-64-prescott" run_dump_test "x86-64-crx" run_dump_test "x86-64-crx-suffix" + run_dump_test "x86-64-drx" + run_dump_test "x86-64-drx-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 index 1dc3584219e..bb462fe49d6 100644 --- a/gas/testsuite/gas/i386/x86-64-crx-suffix.d +++ b/gas/testsuite/gas/i386/x86-64-crx-suffix.d @@ -1,6 +1,5 @@ #objdump: -dwMsuffix #name: x86-64 control register related opcodes (with suffixes) -#source: x86-64-crx.s .*: +file format elf64-x86-64 diff --git a/gas/testsuite/gas/i386/x86-64-drx-suffix.d b/gas/testsuite/gas/i386/x86-64-drx-suffix.d new file mode 100644 index 00000000000..1f76b8b163b --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-drx-suffix.d @@ -0,0 +1,21 @@ +#objdump: -dwMsuffix +#name: x86-64 debug register related opcodes (with suffixes) +#source: x86-64-drx.s + +.*: +file format elf64-x86-64 + +Disassembly of section .text: + +0+ <_start>: +[ ]*[0-9a-f]+: 44 0f 21 c0[ ]+movq[ ]+?%db8,%rax +[ ]*[0-9a-f]+: 44 0f 21 c7[ ]+movq[ ]+?%db8,%rdi +[ ]*[0-9a-f]+: 44 0f 23 c0[ ]+movq[ ]+?%rax,%db8 +[ ]*[0-9a-f]+: 44 0f 23 c7[ ]+movq[ ]+?%rdi,%db8 +[ ]*[0-9a-f]+: 44 0f 21 c0[ ]+movq[ ]+?%db8,%rax +[ ]*[0-9a-f]+: 44 0f 21 c7[ ]+movq[ ]+?%db8,%rdi +[ ]*[0-9a-f]+: 44 0f 23 c0[ ]+movq[ ]+?%rax,%db8 +[ ]*[0-9a-f]+: 44 0f 23 c7[ ]+movq[ ]+?%rdi,%db8 +[ ]*[0-9a-f]+: 44 0f 21 c0[ ]+movq[ ]+?%db8,%rax +[ ]*[0-9a-f]+: 44 0f 21 c7[ ]+movq[ ]+?%db8,%rdi +[ ]*[0-9a-f]+: 44 0f 23 c0[ ]+movq[ ]+?%rax,%db8 +[ ]*[0-9a-f]+: 44 0f 23 c7[ ]+movq[ ]+?%rdi,%db8 diff --git a/gas/testsuite/gas/i386/x86-64-drx.d b/gas/testsuite/gas/i386/x86-64-drx.d new file mode 100644 index 00000000000..879ce50a5ef --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-drx.d @@ -0,0 +1,20 @@ +#objdump: -dw +#name: x86-64 debug register related opcodes + +.*: +file format elf64-x86-64 + +Disassembly of section .text: + +0+ <_start>: +[ ]*[0-9a-f]+: 44 0f 21 c0[ ]+movq?[ ]+?%db8,%rax +[ ]*[0-9a-f]+: 44 0f 21 c7[ ]+movq?[ ]+?%db8,%rdi +[ ]*[0-9a-f]+: 44 0f 23 c0[ ]+movq?[ ]+?%rax,%db8 +[ ]*[0-9a-f]+: 44 0f 23 c7[ ]+movq?[ ]+?%rdi,%db8 +[ ]*[0-9a-f]+: 44 0f 21 c0[ ]+movq?[ ]+?%db8,%rax +[ ]*[0-9a-f]+: 44 0f 21 c7[ ]+movq?[ ]+?%db8,%rdi +[ ]*[0-9a-f]+: 44 0f 23 c0[ ]+movq?[ ]+?%rax,%db8 +[ ]*[0-9a-f]+: 44 0f 23 c7[ ]+movq?[ ]+?%rdi,%db8 +[ ]*[0-9a-f]+: 44 0f 21 c0[ ]+movq?[ ]+?%db8,%rax +[ ]*[0-9a-f]+: 44 0f 21 c7[ ]+movq?[ ]+?%db8,%rdi +[ ]*[0-9a-f]+: 44 0f 23 c0[ ]+movq?[ ]+?%rax,%db8 +[ ]*[0-9a-f]+: 44 0f 23 c7[ ]+movq?[ ]+?%rdi,%db8 diff --git a/gas/testsuite/gas/i386/x86-64-drx.s b/gas/testsuite/gas/i386/x86-64-drx.s new file mode 100644 index 00000000000..16801d18931 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-drx.s @@ -0,0 +1,18 @@ +.text +_start: + movq %dr8, %rax + movq %dr8, %rdi + movq %rax, %dr8 + movq %rdi, %dr8 + +.att_syntax noprefix + movq dr8, rax + movq dr8, rdi + movq rax, dr8 + movq rdi, dr8 + +.intel_syntax noprefix + mov rax, dr8 + mov rdi, dr8 + mov dr8, rax + mov dr8, rdi diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 629ab5e9bf7..f36656c9840 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,8 @@ +2006-02-11 H.J. Lu + + * i386-dis.c (dis386_twobyte): Use "movZ" for debug register + moves. + 2006-02-11 H.J. Lu * i386-dis.c ('Z'): Add a new macro. diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index 65cb43ce651..4fb487d5a49 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -832,9 +832,9 @@ static const struct dis386 dis386_twobyte[] = { { "(bad)", XX, XX, XX }, /* 20 */ { "movZ", Rm, Cm, XX }, - { "movL", Rm, Dm, XX }, + { "movZ", Rm, Dm, XX }, { "movZ", Cm, Rm, XX }, - { "movL", Dm, Rm, XX }, + { "movZ", Dm, Rm, XX }, { "movL", Rd, Td, XX }, { "(bad)", XX, XX, XX }, { "movL", Td, Rd, XX }, -- 2.30.2