diff options
author | Nick Clifton <nickc@redhat.com> | 2000-11-25 00:21:40 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2000-11-25 00:21:40 +0000 |
commit | 077b8428ab2abe6e4c66216151c518c03467323c (patch) | |
tree | 4d9e07f38a2e3b8ad7561574fdf3241d484b910d /gas/testsuite | |
parent | 49425d281cfc2c9d4b61bc7db78f398950e9dca9 (diff) | |
download | gdb-077b8428ab2abe6e4c66216151c518c03467323c.zip gdb-077b8428ab2abe6e4c66216151c518c03467323c.tar.gz gdb-077b8428ab2abe6e4c66216151c518c03467323c.tar.bz2 |
Add ARM v5t, v5te and XScale support
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/arm.exp | 4 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/xscale.d | 38 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/xscale.s | 40 |
4 files changed, 89 insertions, 1 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 729b1f3..e5527d5 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2000-11-24 Nick Clifton <nickc@redhat.com> + + * arm.exp: Run tests for xscale as well as arm. + Run xscale tests. + + * xscale.s: New file: XScale instruction tests. + * xscale.d: New file: Expected XScale instruction results. + 2000-11-20 H.J. Lu <hjl@gnu.org> * gas/i386/intel.d: Add 3 "nop"s for the a.out assembler. diff --git a/gas/testsuite/gas/arm/arm.exp b/gas/testsuite/gas/arm/arm.exp index d658eeb..1383306 100644 --- a/gas/testsuite/gas/arm/arm.exp +++ b/gas/testsuite/gas/arm/arm.exp @@ -1,7 +1,7 @@ # # Some ARM tests # -if [istarget *arm*-*-*] then { +if {[istarget *arm*-*-*] || [istarget "xscale-*-*"]} then { run_dump_test "inst" gas_test "arm3.s" "" $stdoptlist "Arm 3 instructions" @@ -21,6 +21,8 @@ if [istarget *arm*-*-*] then { gas_test "immed.s" "" $stdoptlist "immediate expressions" gas_test "float.s" "" $stdoptlist "Core floating point instructions" + + run_dump_test "xscale" } # Not all arm targets are bi-endian, so only run this test on ones diff --git a/gas/testsuite/gas/arm/xscale.d b/gas/testsuite/gas/arm/xscale.d new file mode 100644 index 0000000..38eb1ee --- /dev/null +++ b/gas/testsuite/gas/arm/xscale.d @@ -0,0 +1,38 @@ +#objdump: -dr --prefix-addresses --show-raw-insn +#name: XScale instructions +#as: -mxscale -EL + +# Test the XScale instructions: + +.*: +file format .*arm.* + +Disassembly of section .text: +00000000 <foo> ee201010 mia acc0, r0, r1 +00000004 <[^>]*> be20d01e mialt acc0, lr, sp +00000008 <[^>]*> ee284012 miaph acc0, r2, r4 +0000000c <[^>]*> 1e286015 miaphne acc0, r5, r6 +00000010 <[^>]*> ee2c8017 miaBB acc0, r7, r8 +00000014 <[^>]*> ee2da019 miaBT acc0, r9, sl +00000018 <[^>]*> ee2eb01c miaTB acc0, ip, fp +0000001c <[^>]*> ee2f0010 miaTT acc0, r0, r0 +00000020 <[^>]*> ec411000 mar acc0, r1, r1 +00000024 <[^>]*> cc4c2000 margt acc0, r2, ip +00000028 <[^>]*> ec543000 mra r3, r4, acc0 +0000002c <[^>]*> ec585000 mra r5, r8, acc0 +00000030 <[^>]*> f5d0f000 pld \[r0\] +00000034 <[^>]*> f5d1f789 pld \[r1, #1929\] +00000038 <[^>]*> f7d2f003 pld \[r2, r3\] +0000003c <[^>]*> f754f285 pld \[r4, -r5, lsl #5\] +00000040 <[^>]*> f456f456 pld \[r6\], -#1110 +00000044 <[^>]*> f6d7f008 pld \[r7\], r8 +00000048 <[^>]*> f659f06a pld \[r9\], -sl, rrx +0000004c <[^>]*> e1c100d0 ldrd r0, \[r1\] +00000050 <[^>]*> 01c327d8 ldreqd r2, \[r3, #120\] +00000054 <[^>]*> b10540d6 ldrltd r4, \[r5, -r6\] +00000058 <[^>]*> e16a88f9 strd r8, \[sl, -#137\]! +0000005c <[^>]*> e1ac00fd strd r0, \[ip, sp\]! +00000060 <[^>]*> 30ce21f0 strccd r2, \[lr\], #16 +00000064 <[^>]*> 708640f8 strvcd r4, \[r6\], r8 +00000068 <[^>]*> e5910000 ldr r0, \[r1\] +0000006c <[^>]*> e5832000 str r2, \[r3\] +00000070 <[^>]*> e321f011 msr CPSR_c, #17 ; 0x11 diff --git a/gas/testsuite/gas/arm/xscale.s b/gas/testsuite/gas/arm/xscale.s new file mode 100644 index 0000000..0ca3999 --- /dev/null +++ b/gas/testsuite/gas/arm/xscale.s @@ -0,0 +1,40 @@ + .text + .global foo +foo: + mia acc0, r0, r1 + mialt acc0, r14, r13 + + miaph acc0, r2, r4 + miaphne acc0, r5, r6 + + miaBB acc0, r7, r8 + miaBT acc0, r9, r10 + miaTB acc0, r12, r11 + miaTT acc0, r0, r0 + + mar acc0, r1, r1 + margt acc0, r2, r12 + + mra r3, r4, acc0 + mra r5, r8, acc0 + + pld [r0] + pld [r1, #0x789] + pld [r2, r3] + pld [r4, -r5, lsl #5] + pld [r6], #-0x456 + pld [r7], +r8 + pld [r9], -r10, RRX + + ldrd r0, [r1] + ldreqd r2, [r3, #0x78] + ldrltd r4, [r5, -r6] + strd r8, [r10,#-0x89]! + strald r0, [r12, +r13]! + strlod r2, [r14], #+0x010 + strvcd r4, [r6], r8 + + ldr r0, [r1] + str r2, [r3] + + msr cpsr_ctl, #0x11 |