diff options
Diffstat (limited to 'gas')
-rw-r--r-- | gas/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/i386.exp | 3 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-io-intel.d | 28 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-io-suffix.d | 28 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-io.d | 27 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-io.s | 16 |
6 files changed, 109 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 725f910..3382153 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,5 +1,12 @@ 2006-11-30 Jan Beulich <jbeulich@novell.com> + * gas/i386/x86-64-io.[sd]: New. + * gas/i386/x86-64-io-intel.d: New. + * gas/i386/x86-64-io-suffix.d: New. + * gas/i386/i386.exp: Run new tests. + +2006-11-30 Jan Beulich <jbeulich@novell.com> + * gas/i386/intel.s: Use Intel syntax in Intel syntax test. * gas/i386/x86-64-cbw.[sd]: New. * gas/i386/x86-64-cbw-intel.d: New. diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 699ad65..cdf3e14 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -157,6 +157,9 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t run_dump_test "x86-64-rep-suffix" run_dump_test "x86-64-cbw" run_dump_test "x86-64-cbw-intel" + run_dump_test "x86-64-io" + run_dump_test "x86-64-io-intel" + run_dump_test "x86-64-io-suffix" run_dump_test "x86-64-gidt" run_dump_test "x86-64-nops" if ![istarget "*-*-mingw64*"] then { diff --git a/gas/testsuite/gas/i386/x86-64-io-intel.d b/gas/testsuite/gas/i386/x86-64-io-intel.d new file mode 100644 index 0000000..a8787a0 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-io-intel.d @@ -0,0 +1,28 @@ +#source: x86-64-io.s +#objdump: -dwMintel +#name: x86-64 rex64 in/out (Intel disassembly) + +.*: +file format .* + +Disassembly of section .text: + +0+000 <_in>: + 0: 48 ed rex64 in eax,dx + 2: 66 data16 + 3: 48 ed rex64 in eax,dx + +0+005 <_out>: + 5: 48 ef rex64 out dx,eax + 7: 66 data16 + 8: 48 ef rex64 out dx,eax + +0+00a <_ins>: + a: 48 6d rex64 ins DWORD PTR es:\[rdi\],dx + c: 66 data16 + d: 48 6d rex64 ins DWORD PTR es:\[rdi\],dx + +0+00f <_outs>: + f: 48 6f rex64 outs dx,DWORD PTR ds:\[rsi\] + 11: 66 data16 + 12: 48 6f rex64 outs dx,DWORD PTR ds:\[rsi\] +#pass diff --git a/gas/testsuite/gas/i386/x86-64-io-suffix.d b/gas/testsuite/gas/i386/x86-64-io-suffix.d new file mode 100644 index 0000000..f83b162 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-io-suffix.d @@ -0,0 +1,28 @@ +#source: x86-64-io.s +#objdump: -dwMsuffix +#name: x86-64 rex64 in/out w/ suffix + +.*: +file format .* + +Disassembly of section .text: + +0+000 <_in>: + 0: 48 ed rex64 inl \(%dx\),%eax + 2: 66 data16 + 3: 48 ed rex64 inl \(%dx\),%eax + +0+005 <_out>: + 5: 48 ef rex64 outl %eax,\(%dx\) + 7: 66 data16 + 8: 48 ef rex64 outl %eax,\(%dx\) + +0+00a <_ins>: + a: 48 6d rex64 insl \(%dx\),%es:\(%rdi\) + c: 66 data16 + d: 48 6d rex64 insl \(%dx\),%es:\(%rdi\) + +0+00f <_outs>: + f: 48 6f rex64 outsl %ds:\(%rsi\),\(%dx\) + 11: 66 data16 + 12: 48 6f rex64 outsl %ds:\(%rsi\),\(%dx\) +#pass diff --git a/gas/testsuite/gas/i386/x86-64-io.d b/gas/testsuite/gas/i386/x86-64-io.d new file mode 100644 index 0000000..7158b75 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-io.d @@ -0,0 +1,27 @@ +#objdump: -dw +#name: x86-64 rex64 in/out + +.*: +file format .* + +Disassembly of section .text: + +0+000 <_in>: + 0: 48 ed rex64 in \(%dx\),%eax + 2: 66 data16 + 3: 48 ed rex64 in \(%dx\),%eax + +0+005 <_out>: + 5: 48 ef rex64 out %eax,\(%dx\) + 7: 66 data16 + 8: 48 ef rex64 out %eax,\(%dx\) + +0+00a <_ins>: + a: 48 6d rex64 insl \(%dx\),%es:\(%rdi\) + c: 66 data16 + d: 48 6d rex64 insl \(%dx\),%es:\(%rdi\) + +0+00f <_outs>: + f: 48 6f rex64 outsl %ds:\(%rsi\),\(%dx\) + 11: 66 data16 + 12: 48 6f rex64 outsl %ds:\(%rsi\),\(%dx\) +#pass
\ No newline at end of file diff --git a/gas/testsuite/gas/i386/x86-64-io.s b/gas/testsuite/gas/i386/x86-64-io.s new file mode 100644 index 0000000..58200c8 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-io.s @@ -0,0 +1,16 @@ + .intel_syntax noprefix + .text +_in: + rex64 in eax,dx + rex64 in ax,dx +_out: + rex64 out dx,eax + rex64 out dx,ax +_ins: + rex64 insd + rex64 insw +_outs: + rex64 outsd + rex64 outsw + + .p2align 4,0 |