aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2004-07-21 16:09:43 +0000
committerNick Clifton <nickc@redhat.com>2004-07-21 16:09:43 +0000
commit20f0a1fc7d3349b326456c16297278dccd2686c9 (patch)
tree02a9ff6b646204104f6a3e3701f22dd7124cac4f /gas/testsuite
parent93a64231435694f18eaf109859cca2e8225f94e3 (diff)
downloadfsf-binutils-gdb-20f0a1fc7d3349b326456c16297278dccd2686c9.zip
fsf-binutils-gdb-20f0a1fc7d3349b326456c16297278dccd2686c9.tar.gz
fsf-binutils-gdb-20f0a1fc7d3349b326456c16297278dccd2686c9.tar.bz2
Corrections for x86_64 assembly.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/ChangeLog8
-rw-r--r--gas/testsuite/gas/i386/i386.exp2
-rw-r--r--gas/testsuite/gas/i386/x86-64-addr32.d13
-rw-r--r--gas/testsuite/gas/i386/x86-64-addr32.s5
-rw-r--r--gas/testsuite/gas/i386/x86-64-rip.d13
-rw-r--r--gas/testsuite/gas/i386/x86-64-rip.s5
-rw-r--r--gas/testsuite/gas/i386/x86_64.d2
7 files changed, 47 insertions, 1 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 81027e4..e5689e6 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2004-07-21 Jan Beulich <jbeulich@novell.com>
+
+ * testsuite/gas/i386/x86-64-addr32.[ds]: New test for x86-64
+ 32-bit addressing in 64-bit mode.
+ * testsuite/gas/i386/x86-64-rip.[ds]: New test for x86-64
+ rip-relative addressing.
+ * testsuite/gas/i386/i386.exp: Run the two new tests.
+
2004-07-20 Maciej W. Rozycki <macro@linux-mips.org>
* gas/mips/elf-rel19.d: Pass -march=mips1 to gas as the test
diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp
index 1b8c401..bfd7cd5 100644
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -105,7 +105,9 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
set ASFLAGS "$ASFLAGS --64"
run_dump_test "x86_64"
+ run_dump_test "x86-64-addr32"
run_dump_test "x86-64-opcode"
+ run_dump_test "x86-64-rip"
run_list_test "x86-64-inval" "-al"
set ASFLAGS "$old_ASFLAGS"
diff --git a/gas/testsuite/gas/i386/x86-64-addr32.d b/gas/testsuite/gas/i386/x86-64-addr32.d
new file mode 100644
index 0000000..c892fb1
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-addr32.d
@@ -0,0 +1,13 @@
+#as: -J
+#objdump: -drw
+#name: x86-64 32-bit addressing
+
+.*: +file format elf64-x86-64
+
+Disassembly of section .text:
+
+0+000 <.text>:
+[ ]*0:[ ]+67 48 8d 80 00 00 00 00[ ]+addr32[ ]+lea[ ]+0x0\(%[re]ax\),%rax.*
+[ ]*8:[ ]+67 49 8d 80 00 00 00 00[ ]+addr32[ ]+lea[ ]+0x0\(%r8d?\),%rax.*
+[ ]*10:[ ]+67 48 8d 05 00 00 00 00[ ]+addr32[ ]+lea[ ]+0\(%[re]ip\),%rax.*
+[ ]*18:[ ]+67 48 8d 04 25 00 00 00 00[ ]+addr32[ ]+lea[ ]+0x0,%rax.*
diff --git a/gas/testsuite/gas/i386/x86-64-addr32.s b/gas/testsuite/gas/i386/x86-64-addr32.s
new file mode 100644
index 0000000..d18cbb9
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-addr32.s
@@ -0,0 +1,5 @@
+.text
+ lea symbol(%eax), %rax
+ lea symbol(%r8d), %rax
+ addr32 lea symbol(%rip), %rax
+ addr32 lea symbol, %rax
diff --git a/gas/testsuite/gas/i386/x86-64-rip.d b/gas/testsuite/gas/i386/x86-64-rip.d
new file mode 100644
index 0000000..1b1d6c8
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-rip.d
@@ -0,0 +1,13 @@
+#as: -J
+#objdump: -drw
+#name: x86-64 rip addressing
+
+.*: +file format elf64-x86-64
+
+Disassembly of section .text:
+
+0+000 <.text>:
+[ ]*0:[ ]+8d 05 00 00 00 00[ ]+lea[ ]+0\(%rip\),%eax[ ]*(#.*)?
+[ ]*6:[ ]+8d 05 11 11 11 11[ ]+lea[ ]+286331153\(%rip\),%eax[ ]*(#.*)?
+[ ]*c:[ ]+8d 05 01 00 00 00[ ]+lea[ ]+1\(%rip\),%eax[ ]*(#.*)?
+[ ]*12:[ ]+8d 05 00 00 00 00[ ]+lea[ ]+0\(%rip\),%eax[ ]*(#.*)?
diff --git a/gas/testsuite/gas/i386/x86-64-rip.s b/gas/testsuite/gas/i386/x86-64-rip.s
new file mode 100644
index 0000000..c6ac195
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-rip.s
@@ -0,0 +1,5 @@
+.text
+ leal symbol(%rip), %eax
+ leal 0x11111111(%rip), %eax
+ leal 1(%rip), %eax
+ leal (%rip), %eax
diff --git a/gas/testsuite/gas/i386/x86_64.d b/gas/testsuite/gas/i386/x86_64.d
index 1af2278..dd4526b 100644
--- a/gas/testsuite/gas/i386/x86_64.d
+++ b/gas/testsuite/gas/i386/x86_64.d
@@ -37,7 +37,7 @@ Disassembly of section .text:
[ ]+5a: 44 0f 20 c0[ ]+mov[ ]+%cr8,%rax
[ ]+5e: 44 0f 22 c0[ ]+mov[ ]+%rax,%cr8
[ ]+62: f3 48 a5[ ]+repz movsq %ds:\(%rsi\),%es:\(%rdi\)
-[ ]+65: f3 66 a5[ ]+repz movsw %ds:\(%esi\),%es:\(%edi\)
+[ ]+65: f3 66 a5[ ]+repz movsw %ds:\(%rsi\),%es:\(%rdi\)
[ ]+68: f3 48 a5[ ]+repz movsq %ds:\(%rsi\),%es:\(%rdi\)
[ ]+6b: b0 11[ ]+mov[ ]+\$0x11,%al
[ ]+6d: b4 11[ ]+mov[ ]+\$0x11,%ah