* gas/arm/armv1.s, arm/armv1.d, arm/fpa-mem.s, arm/fpa-mem.d
authorRichard Earnshaw <richard.earnshaw@arm.com>
Mon, 14 Jan 2002 17:39:02 +0000 (17:39 +0000)
committerRichard Earnshaw <richard.earnshaw@arm.com>
Mon, 14 Jan 2002 17:39:02 +0000 (17:39 +0000)
arm/fpa-monadic.s, arm/fpa-monadic.d, arm/fpa-dyadic.s,
arm/fpa-dyadic.d: New tests.
* gas/arm/le-fpconst.d (objdump): pass --section=.text
* gas/arm/arm.exp: Add new tests.  Run le-fpconst test on elf targets.

gas/testsuite/ChangeLog
gas/testsuite/gas/arm/arm.exp
gas/testsuite/gas/arm/armv1.d [new file with mode: 0644]
gas/testsuite/gas/arm/armv1.s [new file with mode: 0644]
gas/testsuite/gas/arm/fpa-dyadic.d [new file with mode: 0644]
gas/testsuite/gas/arm/fpa-dyadic.s [new file with mode: 0644]
gas/testsuite/gas/arm/fpa-mem.d [new file with mode: 0644]
gas/testsuite/gas/arm/fpa-mem.s [new file with mode: 0644]
gas/testsuite/gas/arm/fpa-monadic.d [new file with mode: 0644]
gas/testsuite/gas/arm/fpa-monadic.s [new file with mode: 0644]
gas/testsuite/gas/arm/le-fpconst.d

index 9a2b609..964af72 100644 (file)
@@ -1,5 +1,13 @@
 2002-01-14   Richard Earnshaw  <rearnsha@arm.com>
 
+       * gas/arm/armv1.s, arm/armv1.d, arm/fpa-mem.s, arm/fpa-mem.d
+       arm/fpa-monadic.s, arm/fpa-monadic.d, arm/fpa-dyadic.s,
+       arm/fpa-dyadic.d: New tests.
+       * gas/arm/le-fpconst.d (objdump): pass --section=.text
+       * gas/arm/arm.exp: Add new tests.  Run le-fpconst test on elf targets.
+
+2002-01-14   Richard Earnshaw  <rearnsha@arm.com>
+
        * gas/arm/armv1-bad.s gas/arm/armv1-bad.l: New files.
        * gas/arm/arm.exp (run_error_test): New proc.
        (armv1-bad): New error test.
index cacf0b0..04ce07e 100644 (file)
@@ -19,6 +19,8 @@ if {[istarget *arm*-*-*] || [istarget "xscale-*-*"]} then {
 
     run_dump_test "ldconst"
 
+    run_dump_test "armv1"
+
     run_errors_test "armv1-bad" "-marm1" "ARM v1 errors"
 
     gas_test "arm3.s" "-marm3" $stdoptlist "Arm 3 instructions"
@@ -39,6 +41,12 @@ if {[istarget *arm*-*-*] || [istarget "xscale-*-*"]} then {
 
     gas_test "float.s" "" $stdoptlist "Core floating point instructions"
 
+    run_dump_test "fpa-monadic"
+
+    run_dump_test "fpa-dyadic"
+
+    run_dump_test "fpa-mem"
+
     run_dump_test "xscale"
 
     run_dump_test "adrl"
diff --git a/gas/testsuite/gas/arm/armv1.d b/gas/testsuite/gas/arm/armv1.d
new file mode 100644 (file)
index 0000000..d4e5fd1
--- /dev/null
@@ -0,0 +1,70 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: ARM v1 instructions
+#as: -marm1
+
+# Test the ARM v1 instructions
+
+.*: +file format .*arm.*
+
+Disassembly of section .text:
+0+00 <[^>]*> e0000000 ?        and     r0, r0, r0
+0+04 <[^>]*> e0100000 ?        ands    r0, r0, r0
+0+08 <[^>]*> e0200000 ?        eor     r0, r0, r0
+0+0c <[^>]*> e0300000 ?        eors    r0, r0, r0
+0+10 <[^>]*> e0400000 ?        sub     r0, r0, r0
+0+14 <[^>]*> e0500000 ?        subs    r0, r0, r0
+0+18 <[^>]*> e0600000 ?        rsb     r0, r0, r0
+0+1c <[^>]*> e0700000 ?        rsbs    r0, r0, r0
+0+20 <[^>]*> e0800000 ?        add     r0, r0, r0
+0+24 <[^>]*> e0900000 ?        adds    r0, r0, r0
+0+28 <[^>]*> e0a00000 ?        adc     r0, r0, r0
+0+2c <[^>]*> e0b00000 ?        adcs    r0, r0, r0
+0+30 <[^>]*> e0c00000 ?        sbc     r0, r0, r0
+0+34 <[^>]*> e0d00000 ?        sbcs    r0, r0, r0
+0+38 <[^>]*> e0e00000 ?        rsc     r0, r0, r0
+0+3c <[^>]*> e0f00000 ?        rscs    r0, r0, r0
+0+40 <[^>]*> e1800000 ?        orr     r0, r0, r0
+0+44 <[^>]*> e1900000 ?        orrs    r0, r0, r0
+0+48 <[^>]*> e1c00000 ?        bic     r0, r0, r0
+0+4c <[^>]*> e1d00000 ?        bics    r0, r0, r0
+0+50 <[^>]*> e1100000 ?        tst     r0, r0
+0+54 <[^>]*> e1100000 ?        tst     r0, r0
+0+58 <[^>]*> e110f000 ?        tstp    r0, r0
+0+5c <[^>]*> e1300000 ?        teq     r0, r0
+0+60 <[^>]*> e1300000 ?        teq     r0, r0
+0+64 <[^>]*> e130f000 ?        teqp    r0, r0
+0+68 <[^>]*> e1500000 ?        cmp     r0, r0
+0+6c <[^>]*> e1500000 ?        cmp     r0, r0
+0+70 <[^>]*> e150f000 ?        cmpp    r0, r0
+0+74 <[^>]*> e1700000 ?        cmn     r0, r0
+0+78 <[^>]*> e1700000 ?        cmn     r0, r0
+0+7c <[^>]*> e170f000 ?        cmnp    r0, r0
+0+80 <[^>]*> e1a00000 ?        nop[    ]+\(mov r0,r0\)
+0+84 <[^>]*> e1b00000 ?        movs    r0, r0
+0+88 <[^>]*> e1e00000 ?        mvn     r0, r0
+0+8c <[^>]*> e1f00000 ?        mvns    r0, r0
+0+90 <[^>]*> ef000000 ?        swi     0x00000000
+0+94 <[^>]*> e5900000 ?        ldr     r0, \[r0\]
+0+98 <[^>]*> e5d00000 ?        ldrb    r0, \[r0\]
+0+9c <[^>]*> e4b10000 ?        ldrt    r0, \[r1\]
+0+a0 <[^>]*> e4f10000 ?        ldrbt   r0, \[r1\]
+0+a4 <[^>]*> e5800000 ?        str     r0, \[r0\]
+0+a8 <[^>]*> e5c00000 ?        strb    r0, \[r0\]
+0+ac <[^>]*> e4a10000 ?        strt    r0, \[r1\]
+0+b0 <[^>]*> e4e10000 ?        strbt   r0, \[r1\]
+0+b4 <[^>]*> e8800001 ?        stmia   r0, {r0}
+0+b8 <[^>]*> e9800001 ?        stmib   r0, {r0}
+0+bc <[^>]*> e8000001 ?        stmda   r0, {r0}
+0+c0 <[^>]*> e9000001 ?        stmdb   r0, {r0}
+0+c4 <[^>]*> e9000001 ?        stmdb   r0, {r0}
+0+c8 <[^>]*> e9800001 ?        stmib   r0, {r0}
+0+cc <[^>]*> e8800001 ?        stmia   r0, {r0}
+0+d0 <[^>]*> e8000001 ?        stmda   r0, {r0}
+0+d4 <[^>]*> e8900001 ?        ldmia   r0, {r0}
+0+d8 <[^>]*> e9900001 ?        ldmib   r0, {r0}
+0+dc <[^>]*> e8100001 ?        ldmda   r0, {r0}
+0+e0 <[^>]*> e9100001 ?        ldmdb   r0, {r0}
+0+e4 <[^>]*> e8900001 ?        ldmia   r0, {r0}
+0+e8 <[^>]*> e8100001 ?        ldmda   r0, {r0}
+0+ec <[^>]*> e9100001 ?        ldmdb   r0, {r0}
+0+f0 <[^>]*> e9900001 ?        ldmib   r0, {r0}
diff --git a/gas/testsuite/gas/arm/armv1.s b/gas/testsuite/gas/arm/armv1.s
new file mode 100644 (file)
index 0000000..b4b7b5a
--- /dev/null
@@ -0,0 +1,70 @@
+       .global entry
+       .text
+entry:
+       and     r0, r0, r0
+       ands    r0, r0, r0
+       eor     r0, r0, r0
+       eors    r0, r0, r0
+       sub     r0, r0, r0
+       subs    r0, r0, r0
+       rsb     r0, r0, r0
+       rsbs    r0, r0, r0
+       add     r0, r0, r0
+       adds    r0, r0, r0
+       adc     r0, r0, r0
+       adcs    r0, r0, r0
+       sbc     r0, r0, r0
+       sbcs    r0, r0, r0
+       rsc     r0, r0, r0
+       rscs    r0, r0, r0
+       orr     r0, r0, r0
+       orrs    r0, r0, r0
+       bic     r0, r0, r0
+       bics    r0, r0, r0
+
+       tst     r0, r0
+       tsts    r0, r0
+       tstp    r0, r0
+       teq     r0, r0
+       teqs    r0, r0
+       teqp    r0, r0
+       cmp     r0, r0
+       cmps    r0, r0
+       cmpp    r0, r0
+       cmn     r0, r0
+       cmns    r0, r0
+       cmnp    r0, r0
+
+       mov     r0, r0
+       movs    r0, r0
+       mvn     r0, r0
+       mvns    r0, r0
+
+       swi     #0
+
+       ldr     r0, [r0, #-0]
+       ldrb    r0, [r0, #-0]
+       ldrt    r0, [r1]
+       ldrbt   r0, [r1]
+       str     r0, [r0, #-0]
+       strb    r0, [r0, #-0]
+       strt    r0, [r1]
+       strbt   r0, [r1]
+
+       stmia   r0, {r0}
+       stmib   r0, {r0}
+       stmda   r0, {r0}
+       stmdb   r0, {r0}
+       stmfd   r0, {r0}
+       stmfa   r0, {r0}
+       stmea   r0, {r0}
+       stmed   r0, {r0}
+
+       ldmia   r0, {r0}
+       ldmib   r0, {r0}
+       ldmda   r0, {r0}
+       ldmdb   r0, {r0}
+       ldmfd   r0, {r0}
+       ldmfa   r0, {r0}
+       ldmea   r0, {r0}
+       ldmed   r0, {r0}
diff --git a/gas/testsuite/gas/arm/fpa-dyadic.d b/gas/testsuite/gas/arm/fpa-dyadic.d
new file mode 100644 (file)
index 0000000..1eebe91
--- /dev/null
@@ -0,0 +1,166 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: FPA Dyadic instructions
+#as: -mfpe-old
+
+# Test FPA Dyadic instructions
+# This test should work for both big and little-endian assembly.
+
+.*: *file format .*arm.*
+
+Disassembly of section .text:
+0+000 <[^>]*> ee000100 ?       adfs    f0, f0, f0
+0+004 <[^>]*> ee000120 ?       adfsp   f0, f0, f0
+0+008 <[^>]*> ee000140 ?       adfsm   f0, f0, f0
+0+00c <[^>]*> ee000160 ?       adfsz   f0, f0, f0
+0+010 <[^>]*> ee000180 ?       adfd    f0, f0, f0
+0+014 <[^>]*> ee0001a0 ?       adfdp   f0, f0, f0
+0+018 <[^>]*> ee0001c0 ?       adfdm   f0, f0, f0
+0+01c <[^>]*> ee0001e0 ?       adfdz   f0, f0, f0
+0+020 <[^>]*> ee080100 ?       adfe    f0, f0, f0
+0+024 <[^>]*> ee080120 ?       adfep   f0, f0, f0
+0+028 <[^>]*> ee080140 ?       adfem   f0, f0, f0
+0+02c <[^>]*> ee080160 ?       adfez   f0, f0, f0
+0+030 <[^>]*> ee200100 ?       sufs    f0, f0, f0
+0+034 <[^>]*> ee200120 ?       sufsp   f0, f0, f0
+0+038 <[^>]*> ee200140 ?       sufsm   f0, f0, f0
+0+03c <[^>]*> ee200160 ?       sufsz   f0, f0, f0
+0+040 <[^>]*> ee200180 ?       sufd    f0, f0, f0
+0+044 <[^>]*> ee2001a0 ?       sufdp   f0, f0, f0
+0+048 <[^>]*> ee2001c0 ?       sufdm   f0, f0, f0
+0+04c <[^>]*> ee2001e0 ?       sufdz   f0, f0, f0
+0+050 <[^>]*> ee280100 ?       sufe    f0, f0, f0
+0+054 <[^>]*> ee280120 ?       sufep   f0, f0, f0
+0+058 <[^>]*> ee280140 ?       sufem   f0, f0, f0
+0+05c <[^>]*> ee280160 ?       sufez   f0, f0, f0
+0+060 <[^>]*> ee300100 ?       rsfs    f0, f0, f0
+0+064 <[^>]*> ee300120 ?       rsfsp   f0, f0, f0
+0+068 <[^>]*> ee300140 ?       rsfsm   f0, f0, f0
+0+06c <[^>]*> ee300160 ?       rsfsz   f0, f0, f0
+0+070 <[^>]*> ee300180 ?       rsfd    f0, f0, f0
+0+074 <[^>]*> ee3001a0 ?       rsfdp   f0, f0, f0
+0+078 <[^>]*> ee3001c0 ?       rsfdm   f0, f0, f0
+0+07c <[^>]*> ee3001e0 ?       rsfdz   f0, f0, f0
+0+080 <[^>]*> ee380100 ?       rsfe    f0, f0, f0
+0+084 <[^>]*> ee380120 ?       rsfep   f0, f0, f0
+0+088 <[^>]*> ee380140 ?       rsfem   f0, f0, f0
+0+08c <[^>]*> ee380160 ?       rsfez   f0, f0, f0
+0+090 <[^>]*> ee100100 ?       mufs    f0, f0, f0
+0+094 <[^>]*> ee100120 ?       mufsp   f0, f0, f0
+0+098 <[^>]*> ee100140 ?       mufsm   f0, f0, f0
+0+09c <[^>]*> ee100160 ?       mufsz   f0, f0, f0
+0+0a0 <[^>]*> ee100180 ?       mufd    f0, f0, f0
+0+0a4 <[^>]*> ee1001a0 ?       mufdp   f0, f0, f0
+0+0a8 <[^>]*> ee1001c0 ?       mufdm   f0, f0, f0
+0+0ac <[^>]*> ee1001e0 ?       mufdz   f0, f0, f0
+0+0b0 <[^>]*> ee180100 ?       mufe    f0, f0, f0
+0+0b4 <[^>]*> ee180120 ?       mufep   f0, f0, f0
+0+0b8 <[^>]*> ee180140 ?       mufem   f0, f0, f0
+0+0bc <[^>]*> ee180160 ?       mufez   f0, f0, f0
+0+0c0 <[^>]*> ee400100 ?       dvfs    f0, f0, f0
+0+0c4 <[^>]*> ee400120 ?       dvfsp   f0, f0, f0
+0+0c8 <[^>]*> ee400140 ?       dvfsm   f0, f0, f0
+0+0cc <[^>]*> ee400160 ?       dvfsz   f0, f0, f0
+0+0d0 <[^>]*> ee400180 ?       dvfd    f0, f0, f0
+0+0d4 <[^>]*> ee4001a0 ?       dvfdp   f0, f0, f0
+0+0d8 <[^>]*> ee4001c0 ?       dvfdm   f0, f0, f0
+0+0dc <[^>]*> ee4001e0 ?       dvfdz   f0, f0, f0
+0+0e0 <[^>]*> ee480100 ?       dvfe    f0, f0, f0
+0+0e4 <[^>]*> ee480120 ?       dvfep   f0, f0, f0
+0+0e8 <[^>]*> ee480140 ?       dvfem   f0, f0, f0
+0+0ec <[^>]*> ee480160 ?       dvfez   f0, f0, f0
+0+0f0 <[^>]*> ee500100 ?       rdfs    f0, f0, f0
+0+0f4 <[^>]*> ee500120 ?       rdfsp   f0, f0, f0
+0+0f8 <[^>]*> ee500140 ?       rdfsm   f0, f0, f0
+0+0fc <[^>]*> ee500160 ?       rdfsz   f0, f0, f0
+0+100 <[^>]*> ee500180 ?       rdfd    f0, f0, f0
+0+104 <[^>]*> ee5001a0 ?       rdfdp   f0, f0, f0
+0+108 <[^>]*> ee5001c0 ?       rdfdm   f0, f0, f0
+0+10c <[^>]*> ee5001e0 ?       rdfdz   f0, f0, f0
+0+110 <[^>]*> ee580100 ?       rdfe    f0, f0, f0
+0+114 <[^>]*> ee580120 ?       rdfep   f0, f0, f0
+0+118 <[^>]*> ee580140 ?       rdfem   f0, f0, f0
+0+11c <[^>]*> ee580160 ?       rdfez   f0, f0, f0
+0+120 <[^>]*> ee600100 ?       pows    f0, f0, f0
+0+124 <[^>]*> ee600120 ?       powsp   f0, f0, f0
+0+128 <[^>]*> ee600140 ?       powsm   f0, f0, f0
+0+12c <[^>]*> ee600160 ?       powsz   f0, f0, f0
+0+130 <[^>]*> ee600180 ?       powd    f0, f0, f0
+0+134 <[^>]*> ee6001a0 ?       powdp   f0, f0, f0
+0+138 <[^>]*> ee6001c0 ?       powdm   f0, f0, f0
+0+13c <[^>]*> ee6001e0 ?       powdz   f0, f0, f0
+0+140 <[^>]*> ee680100 ?       powe    f0, f0, f0
+0+144 <[^>]*> ee680120 ?       powep   f0, f0, f0
+0+148 <[^>]*> ee680140 ?       powem   f0, f0, f0
+0+14c <[^>]*> ee680160 ?       powez   f0, f0, f0
+0+150 <[^>]*> ee700100 ?       rpws    f0, f0, f0
+0+154 <[^>]*> ee700120 ?       rpwsp   f0, f0, f0
+0+158 <[^>]*> ee700140 ?       rpwsm   f0, f0, f0
+0+15c <[^>]*> ee700160 ?       rpwsz   f0, f0, f0
+0+160 <[^>]*> ee700180 ?       rpwd    f0, f0, f0
+0+164 <[^>]*> ee7001a0 ?       rpwdp   f0, f0, f0
+0+168 <[^>]*> ee7001c0 ?       rpwdm   f0, f0, f0
+0+16c <[^>]*> ee7001e0 ?       rpwdz   f0, f0, f0
+0+170 <[^>]*> ee780100 ?       rpwe    f0, f0, f0
+0+174 <[^>]*> ee780120 ?       rpwep   f0, f0, f0
+0+178 <[^>]*> ee780140 ?       rpwem   f0, f0, f0
+0+17c <[^>]*> ee780160 ?       rpwez   f0, f0, f0
+0+180 <[^>]*> ee800100 ?       rmfs    f0, f0, f0
+0+184 <[^>]*> ee800120 ?       rmfsp   f0, f0, f0
+0+188 <[^>]*> ee800140 ?       rmfsm   f0, f0, f0
+0+18c <[^>]*> ee800160 ?       rmfsz   f0, f0, f0
+0+190 <[^>]*> ee800180 ?       rmfd    f0, f0, f0
+0+194 <[^>]*> ee8001a0 ?       rmfdp   f0, f0, f0
+0+198 <[^>]*> ee8001c0 ?       rmfdm   f0, f0, f0
+0+19c <[^>]*> ee8001e0 ?       rmfdz   f0, f0, f0
+0+1a0 <[^>]*> ee880100 ?       rmfe    f0, f0, f0
+0+1a4 <[^>]*> ee880120 ?       rmfep   f0, f0, f0
+0+1a8 <[^>]*> ee880140 ?       rmfem   f0, f0, f0
+0+1ac <[^>]*> ee880160 ?       rmfez   f0, f0, f0
+0+1b0 <[^>]*> ee900100 ?       fmls    f0, f0, f0
+0+1b4 <[^>]*> ee900120 ?       fmlsp   f0, f0, f0
+0+1b8 <[^>]*> ee900140 ?       fmlsm   f0, f0, f0
+0+1bc <[^>]*> ee900160 ?       fmlsz   f0, f0, f0
+0+1c0 <[^>]*> ee900180 ?       fmld    f0, f0, f0
+0+1c4 <[^>]*> ee9001a0 ?       fmldp   f0, f0, f0
+0+1c8 <[^>]*> ee9001c0 ?       fmldm   f0, f0, f0
+0+1cc <[^>]*> ee9001e0 ?       fmldz   f0, f0, f0
+0+1d0 <[^>]*> ee980100 ?       fmle    f0, f0, f0
+0+1d4 <[^>]*> ee980120 ?       fmlep   f0, f0, f0
+0+1d8 <[^>]*> ee980140 ?       fmlem   f0, f0, f0
+0+1dc <[^>]*> ee980160 ?       fmlez   f0, f0, f0
+0+1e0 <[^>]*> eea00100 ?       fdvs    f0, f0, f0
+0+1e4 <[^>]*> eea00120 ?       fdvsp   f0, f0, f0
+0+1e8 <[^>]*> eea00140 ?       fdvsm   f0, f0, f0
+0+1ec <[^>]*> eea00160 ?       fdvsz   f0, f0, f0
+0+1f0 <[^>]*> eea00180 ?       fdvd    f0, f0, f0
+0+1f4 <[^>]*> eea001a0 ?       fdvdp   f0, f0, f0
+0+1f8 <[^>]*> eea001c0 ?       fdvdm   f0, f0, f0
+0+1fc <[^>]*> eea001e0 ?       fdvdz   f0, f0, f0
+0+200 <[^>]*> eea80100 ?       fdve    f0, f0, f0
+0+204 <[^>]*> eea80120 ?       fdvep   f0, f0, f0
+0+208 <[^>]*> eea80140 ?       fdvem   f0, f0, f0
+0+20c <[^>]*> eea80160 ?       fdvez   f0, f0, f0
+0+210 <[^>]*> eeb00100 ?       frds    f0, f0, f0
+0+214 <[^>]*> eeb00120 ?       frdsp   f0, f0, f0
+0+218 <[^>]*> eeb00140 ?       frdsm   f0, f0, f0
+0+21c <[^>]*> eeb00160 ?       frdsz   f0, f0, f0
+0+220 <[^>]*> eeb00180 ?       frdd    f0, f0, f0
+0+224 <[^>]*> eeb001a0 ?       frddp   f0, f0, f0
+0+228 <[^>]*> eeb001c0 ?       frddm   f0, f0, f0
+0+22c <[^>]*> eeb001e0 ?       frddz   f0, f0, f0
+0+230 <[^>]*> eeb80100 ?       frde    f0, f0, f0
+0+234 <[^>]*> eeb80120 ?       frdep   f0, f0, f0
+0+238 <[^>]*> eeb80140 ?       frdem   f0, f0, f0
+0+23c <[^>]*> eeb80160 ?       frdez   f0, f0, f0
+0+240 <[^>]*> eec00100 ?       pols    f0, f0, f0
+0+244 <[^>]*> eec00120 ?       polsp   f0, f0, f0
+0+248 <[^>]*> eec00140 ?       polsm   f0, f0, f0
+0+24c <[^>]*> eec00160 ?       polsz   f0, f0, f0
+0+250 <[^>]*> eec00180 ?       pold    f0, f0, f0
+0+254 <[^>]*> eec001a0 ?       poldp   f0, f0, f0
+0+258 <[^>]*> eec001c0 ?       poldm   f0, f0, f0
+0+25c <[^>]*> eec001e0 ?       poldz   f0, f0, f0
+0+260 <[^>]*> eec80100 ?       pole    f0, f0, f0
+0+264 <[^>]*> eec80120 ?       polep   f0, f0, f0
+0+268 <[^>]*> eec80140 ?       polem   f0, f0, f0
+0+26c <[^>]*> eec80160 ?       polez   f0, f0, f0
diff --git a/gas/testsuite/gas/arm/fpa-dyadic.s b/gas/testsuite/gas/arm/fpa-dyadic.s
new file mode 100644 (file)
index 0000000..aebcd2b
--- /dev/null
@@ -0,0 +1,172 @@
+       .text
+       .globl F
+F:
+       adfs    f0, f0, f0
+       adfsp   f0, f0, f0
+       adfsm   f0, f0, f0
+       adfsz   f0, f0, f0
+       adfd    f0, f0, f0
+       adfdp   f0, f0, f0
+       adfdm   f0, f0, f0
+       adfdz   f0, f0, f0
+       adfe    f0, f0, f0
+       adfep   f0, f0, f0
+       adfem   f0, f0, f0
+       adfez   f0, f0, f0
+
+       sufs    f0, f0, f0
+       sufsp   f0, f0, f0
+       sufsm   f0, f0, f0
+       sufsz   f0, f0, f0
+       sufd    f0, f0, f0
+       sufdp   f0, f0, f0
+       sufdm   f0, f0, f0
+       sufdz   f0, f0, f0
+       sufe    f0, f0, f0
+       sufep   f0, f0, f0
+       sufem   f0, f0, f0
+       sufez   f0, f0, f0
+
+       rsfs    f0, f0, f0
+       rsfsp   f0, f0, f0
+       rsfsm   f0, f0, f0
+       rsfsz   f0, f0, f0
+       rsfd    f0, f0, f0
+       rsfdp   f0, f0, f0
+       rsfdm   f0, f0, f0
+       rsfdz   f0, f0, f0
+       rsfe    f0, f0, f0
+       rsfep   f0, f0, f0
+       rsfem   f0, f0, f0
+       rsfez   f0, f0, f0
+
+       mufs    f0, f0, f0
+       mufsp   f0, f0, f0
+       mufsm   f0, f0, f0
+       mufsz   f0, f0, f0
+       mufd    f0, f0, f0
+       mufdp   f0, f0, f0
+       mufdm   f0, f0, f0
+       mufdz   f0, f0, f0
+       mufe    f0, f0, f0
+       mufep   f0, f0, f0
+       mufem   f0, f0, f0
+       mufez   f0, f0, f0
+
+       dvfs    f0, f0, f0
+       dvfsp   f0, f0, f0
+       dvfsm   f0, f0, f0
+       dvfsz   f0, f0, f0
+       dvfd    f0, f0, f0
+       dvfdp   f0, f0, f0
+       dvfdm   f0, f0, f0
+       dvfdz   f0, f0, f0
+       dvfe    f0, f0, f0
+       dvfep   f0, f0, f0
+       dvfem   f0, f0, f0
+       dvfez   f0, f0, f0
+
+       rdfs    f0, f0, f0
+       rdfsp   f0, f0, f0
+       rdfsm   f0, f0, f0
+       rdfsz   f0, f0, f0
+       rdfd    f0, f0, f0
+       rdfdp   f0, f0, f0
+       rdfdm   f0, f0, f0
+       rdfdz   f0, f0, f0
+       rdfe    f0, f0, f0
+       rdfep   f0, f0, f0
+       rdfem   f0, f0, f0
+       rdfez   f0, f0, f0
+
+       pows    f0, f0, f0
+       powsp   f0, f0, f0
+       powsm   f0, f0, f0
+       powsz   f0, f0, f0
+       powd    f0, f0, f0
+       powdp   f0, f0, f0
+       powdm   f0, f0, f0
+       powdz   f0, f0, f0
+       powe    f0, f0, f0
+       powep   f0, f0, f0
+       powem   f0, f0, f0
+       powez   f0, f0, f0
+
+       rpws    f0, f0, f0
+       rpwsp   f0, f0, f0
+       rpwsm   f0, f0, f0
+       rpwsz   f0, f0, f0
+       rpwd    f0, f0, f0
+       rpwdp   f0, f0, f0
+       rpwdm   f0, f0, f0
+       rpwdz   f0, f0, f0
+       rpwe    f0, f0, f0
+       rpwep   f0, f0, f0
+       rpwem   f0, f0, f0
+       rpwez   f0, f0, f0
+
+       rmfs    f0, f0, f0
+       rmfsp   f0, f0, f0
+       rmfsm   f0, f0, f0
+       rmfsz   f0, f0, f0
+       rmfd    f0, f0, f0
+       rmfdp   f0, f0, f0
+       rmfdm   f0, f0, f0
+       rmfdz   f0, f0, f0
+       rmfe    f0, f0, f0
+       rmfep   f0, f0, f0
+       rmfem   f0, f0, f0
+       rmfez   f0, f0, f0
+
+       fmls    f0, f0, f0
+       fmlsp   f0, f0, f0
+       fmlsm   f0, f0, f0
+       fmlsz   f0, f0, f0
+       fmld    f0, f0, f0
+       fmldp   f0, f0, f0
+       fmldm   f0, f0, f0
+       fmldz   f0, f0, f0
+       fmle    f0, f0, f0
+       fmlep   f0, f0, f0
+       fmlem   f0, f0, f0
+       fmlez   f0, f0, f0
+
+       fdvs    f0, f0, f0
+       fdvsp   f0, f0, f0
+       fdvsm   f0, f0, f0
+       fdvsz   f0, f0, f0
+       fdvd    f0, f0, f0
+       fdvdp   f0, f0, f0
+       fdvdm   f0, f0, f0
+       fdvdz   f0, f0, f0
+       fdve    f0, f0, f0
+       fdvep   f0, f0, f0
+       fdvem   f0, f0, f0
+       fdvez   f0, f0, f0
+
+       frds    f0, f0, f0
+       frdsp   f0, f0, f0
+       frdsm   f0, f0, f0
+       frdsz   f0, f0, f0
+       frdd    f0, f0, f0
+       frddp   f0, f0, f0
+       frddm   f0, f0, f0
+       frddz   f0, f0, f0
+       frde    f0, f0, f0
+       frdep   f0, f0, f0
+       frdem   f0, f0, f0
+       frdez   f0, f0, f0
+
+       pols    f0, f0, f0
+       polsp   f0, f0, f0
+       polsm   f0, f0, f0
+       polsz   f0, f0, f0
+       pold    f0, f0, f0
+       poldp   f0, f0, f0
+       poldm   f0, f0, f0
+       poldz   f0, f0, f0
+       pole    f0, f0, f0
+       polep   f0, f0, f0
+       polem   f0, f0, f0
+       polez   f0, f0, f0
+
diff --git a/gas/testsuite/gas/arm/fpa-mem.d b/gas/testsuite/gas/arm/fpa-mem.d
new file mode 100644 (file)
index 0000000..68f4541
--- /dev/null
@@ -0,0 +1,32 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: FPA memory insructions
+#as: -mfpa10
+
+# Test FPA memory instructions
+# This test should work for both big and little-endian assembly.
+
+.*: *file format .*arm.*
+
+Disassembly of section .text:
+0+00 <[^>]*> ed900100 ?        ldfs    f0, \[r0\]
+0+04 <[^>]*> ec300101 ?        ldfs    f0, \[r0\], -#4
+0+08 <[^>]*> ed908100 ?        ldfd    f0, \[r0\]
+0+0c <[^>]*> ec308101 ?        ldfd    f0, \[r0\], -#4
+0+10 <[^>]*> edd00100 ?        ldfe    f0, \[r0\]
+0+14 <[^>]*> ec700101 ?        ldfe    f0, \[r0\], -#4
+0+18 <[^>]*> edd08100 ?        ldfp    f0, \[r0\]
+0+1c <[^>]*> ec708101 ?        ldfp    f0, \[r0\], -#4
+0+20 <[^>]*> ed800100 ?        stfs    f0, \[r0\]
+0+24 <[^>]*> ec200101 ?        stfs    f0, \[r0\], -#4
+0+28 <[^>]*> ed808100 ?        stfd    f0, \[r0\]
+0+2c <[^>]*> ec208101 ?        stfd    f0, \[r0\], -#4
+0+30 <[^>]*> edc00100 ?        stfe    f0, \[r0\]
+0+34 <[^>]*> ec600101 ?        stfe    f0, \[r0\], -#4
+0+38 <[^>]*> edc08100 ?        stfp    f0, \[r0\]
+0+3c <[^>]*> ec608101 ?        stfp    f0, \[r0\], -#4
+0+40 <[^>]*> ed900200 ?        lfm     f0, 4, \[r0\]
+0+44 <[^>]*> ed900200 ?        lfm     f0, 4, \[r0\]
+0+48 <[^>]*> ed10020c ?        lfm     f0, 4, \[r0, -#48\]
+0+4c <[^>]*> ed800200 ?        sfm     f0, 4, \[r0\]
+0+50 <[^>]*> ed00020c ?        sfm     f0, 4, \[r0, -#48\]
+0+54 <[^>]*> ed800200 ?        sfm     f0, 4, \[r0\]
diff --git a/gas/testsuite/gas/arm/fpa-mem.s b/gas/testsuite/gas/arm/fpa-mem.s
new file mode 100644 (file)
index 0000000..eb66fdb
--- /dev/null
@@ -0,0 +1,26 @@
+       .text
+       .globl F
+F:
+       ldfs    f0, [r0]
+       ldfs    f0, [r0], #-4
+       ldfd    f0, [r0]
+       ldfd    f0, [r0], #-4
+       ldfe    f0, [r0]
+       ldfe    f0, [r0], #-4
+       ldfp    f0, [r0]
+       ldfp    f0, [r0], #-4
+
+       stfs    f0, [r0]
+       stfs    f0, [r0], #-4
+       stfd    f0, [r0]
+       stfd    f0, [r0], #-4
+       stfe    f0, [r0]
+       stfe    f0, [r0], #-4
+       stfp    f0, [r0]
+       stfp    f0, [r0], #-4
+       lfm     f0, 4, [r0]
+       lfmfd   f0, 4, [r0]
+       lfmea   f0, 4, [r0]
+       sfm     f0, 4, [r0]
+       sfmfd   f0, 4, [r0]
+       sfmea   f0, 4, [r0]
diff --git a/gas/testsuite/gas/arm/fpa-monadic.d b/gas/testsuite/gas/arm/fpa-monadic.d
new file mode 100644 (file)
index 0000000..9bb1d24
--- /dev/null
@@ -0,0 +1,202 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: FPA Monadic instructions
+#as: -mfpe-old
+
+# Test FPA Monadic instructions
+# This test should work for both big and little-endian assembly.
+
+.*: *file format .*arm.*
+
+Disassembly of section .text:
+0+000 <[^>]*> ee008100 ?       mvfs    f0, f0
+0+004 <[^>]*> ee008120 ?       mvfsp   f0, f0
+0+008 <[^>]*> ee008140 ?       mvfsm   f0, f0
+0+00c <[^>]*> ee008160 ?       mvfsz   f0, f0
+0+010 <[^>]*> ee008180 ?       mvfd    f0, f0
+0+014 <[^>]*> ee0081a0 ?       mvfdp   f0, f0
+0+018 <[^>]*> ee0081c0 ?       mvfdm   f0, f0
+0+01c <[^>]*> ee0081e0 ?       mvfdz   f0, f0
+0+020 <[^>]*> ee088100 ?       mvfe    f0, f0
+0+024 <[^>]*> ee088120 ?       mvfep   f0, f0
+0+028 <[^>]*> ee088140 ?       mvfem   f0, f0
+0+02c <[^>]*> ee088160 ?       mvfez   f0, f0
+0+030 <[^>]*> ee108100 ?       mnfs    f0, f0
+0+034 <[^>]*> ee108120 ?       mnfsp   f0, f0
+0+038 <[^>]*> ee108140 ?       mnfsm   f0, f0
+0+03c <[^>]*> ee108160 ?       mnfsz   f0, f0
+0+040 <[^>]*> ee108180 ?       mnfd    f0, f0
+0+044 <[^>]*> ee1081a0 ?       mnfdp   f0, f0
+0+048 <[^>]*> ee1081c0 ?       mnfdm   f0, f0
+0+04c <[^>]*> ee1081e0 ?       mnfdz   f0, f0
+0+050 <[^>]*> ee188100 ?       mnfe    f0, f0
+0+054 <[^>]*> ee188120 ?       mnfep   f0, f0
+0+058 <[^>]*> ee188140 ?       mnfem   f0, f0
+0+05c <[^>]*> ee188160 ?       mnfez   f0, f0
+0+060 <[^>]*> ee208100 ?       abss    f0, f0
+0+064 <[^>]*> ee208120 ?       abssp   f0, f0
+0+068 <[^>]*> ee208140 ?       abssm   f0, f0
+0+06c <[^>]*> ee208160 ?       abssz   f0, f0
+0+070 <[^>]*> ee208180 ?       absd    f0, f0
+0+074 <[^>]*> ee2081a0 ?       absdp   f0, f0
+0+078 <[^>]*> ee2081c0 ?       absdm   f0, f0
+0+07c <[^>]*> ee2081e0 ?       absdz   f0, f0
+0+080 <[^>]*> ee288100 ?       abse    f0, f0
+0+084 <[^>]*> ee288120 ?       absep   f0, f0
+0+088 <[^>]*> ee288140 ?       absem   f0, f0
+0+08c <[^>]*> ee288160 ?       absez   f0, f0
+0+090 <[^>]*> ee308100 ?       rnds    f0, f0
+0+094 <[^>]*> ee308120 ?       rndsp   f0, f0
+0+098 <[^>]*> ee308140 ?       rndsm   f0, f0
+0+09c <[^>]*> ee308160 ?       rndsz   f0, f0
+0+0a0 <[^>]*> ee308180 ?       rndd    f0, f0
+0+0a4 <[^>]*> ee3081a0 ?       rnddp   f0, f0
+0+0a8 <[^>]*> ee3081c0 ?       rnddm   f0, f0
+0+0ac <[^>]*> ee3081e0 ?       rnddz   f0, f0
+0+0b0 <[^>]*> ee388100 ?       rnde    f0, f0
+0+0b4 <[^>]*> ee388120 ?       rndep   f0, f0
+0+0b8 <[^>]*> ee388140 ?       rndem   f0, f0
+0+0bc <[^>]*> ee388160 ?       rndez   f0, f0
+0+0c0 <[^>]*> ee408100 ?       sqts    f0, f0
+0+0c4 <[^>]*> ee408120 ?       sqtsp   f0, f0
+0+0c8 <[^>]*> ee408140 ?       sqtsm   f0, f0
+0+0cc <[^>]*> ee408160 ?       sqtsz   f0, f0
+0+0d0 <[^>]*> ee408180 ?       sqtd    f0, f0
+0+0d4 <[^>]*> ee4081a0 ?       sqtdp   f0, f0
+0+0d8 <[^>]*> ee4081c0 ?       sqtdm   f0, f0
+0+0dc <[^>]*> ee4081e0 ?       sqtdz   f0, f0
+0+0e0 <[^>]*> ee488100 ?       sqte    f0, f0
+0+0e4 <[^>]*> ee488120 ?       sqtep   f0, f0
+0+0e8 <[^>]*> ee488140 ?       sqtem   f0, f0
+0+0ec <[^>]*> ee488160 ?       sqtez   f0, f0
+0+0f0 <[^>]*> ee508100 ?       logs    f0, f0
+0+0f4 <[^>]*> ee508120 ?       logsp   f0, f0
+0+0f8 <[^>]*> ee508140 ?       logsm   f0, f0
+0+0fc <[^>]*> ee508160 ?       logsz   f0, f0
+0+100 <[^>]*> ee508180 ?       logd    f0, f0
+0+104 <[^>]*> ee5081a0 ?       logdp   f0, f0
+0+108 <[^>]*> ee5081c0 ?       logdm   f0, f0
+0+10c <[^>]*> ee5081e0 ?       logdz   f0, f0
+0+110 <[^>]*> ee588100 ?       loge    f0, f0
+0+114 <[^>]*> ee588120 ?       logep   f0, f0
+0+118 <[^>]*> ee588140 ?       logem   f0, f0
+0+11c <[^>]*> ee588160 ?       logez   f0, f0
+0+120 <[^>]*> ee608100 ?       lgns    f0, f0
+0+124 <[^>]*> ee608120 ?       lgnsp   f0, f0
+0+128 <[^>]*> ee608140 ?       lgnsm   f0, f0
+0+12c <[^>]*> ee608160 ?       lgnsz   f0, f0
+0+130 <[^>]*> ee608180 ?       lgnd    f0, f0
+0+134 <[^>]*> ee6081a0 ?       lgndp   f0, f0
+0+138 <[^>]*> ee6081c0 ?       lgndm   f0, f0
+0+13c <[^>]*> ee6081e0 ?       lgndz   f0, f0
+0+140 <[^>]*> ee688100 ?       lgne    f0, f0
+0+144 <[^>]*> ee688120 ?       lgnep   f0, f0
+0+148 <[^>]*> ee688140 ?       lgnem   f0, f0
+0+14c <[^>]*> ee688160 ?       lgnez   f0, f0
+0+150 <[^>]*> ee708100 ?       exps    f0, f0
+0+154 <[^>]*> ee708120 ?       expsp   f0, f0
+0+158 <[^>]*> ee708140 ?       expsm   f0, f0
+0+15c <[^>]*> ee708160 ?       expsz   f0, f0
+0+160 <[^>]*> ee708180 ?       expd    f0, f0
+0+164 <[^>]*> ee7081a0 ?       expdp   f0, f0
+0+168 <[^>]*> ee7081c0 ?       expdm   f0, f0
+0+16c <[^>]*> ee7081e0 ?       expdz   f0, f0
+0+170 <[^>]*> ee788100 ?       expe    f0, f0
+0+174 <[^>]*> ee788120 ?       expep   f0, f0
+0+178 <[^>]*> ee788140 ?       expem   f0, f0
+0+17c <[^>]*> ee7081e0 ?       expdz   f0, f0
+0+180 <[^>]*> ee808100 ?       sins    f0, f0
+0+184 <[^>]*> ee808120 ?       sinsp   f0, f0
+0+188 <[^>]*> ee808140 ?       sinsm   f0, f0
+0+18c <[^>]*> ee808160 ?       sinsz   f0, f0
+0+190 <[^>]*> ee808180 ?       sind    f0, f0
+0+194 <[^>]*> ee8081a0 ?       sindp   f0, f0
+0+198 <[^>]*> ee8081c0 ?       sindm   f0, f0
+0+19c <[^>]*> ee8081e0 ?       sindz   f0, f0
+0+1a0 <[^>]*> ee888100 ?       sine    f0, f0
+0+1a4 <[^>]*> ee888120 ?       sinep   f0, f0
+0+1a8 <[^>]*> ee888140 ?       sinem   f0, f0
+0+1ac <[^>]*> ee888160 ?       sinez   f0, f0
+0+1b0 <[^>]*> ee908100 ?       coss    f0, f0
+0+1b4 <[^>]*> ee908120 ?       cossp   f0, f0
+0+1b8 <[^>]*> ee908140 ?       cossm   f0, f0
+0+1bc <[^>]*> ee908160 ?       cossz   f0, f0
+0+1c0 <[^>]*> ee908180 ?       cosd    f0, f0
+0+1c4 <[^>]*> ee9081a0 ?       cosdp   f0, f0
+0+1c8 <[^>]*> ee9081c0 ?       cosdm   f0, f0
+0+1cc <[^>]*> ee9081e0 ?       cosdz   f0, f0
+0+1d0 <[^>]*> ee988100 ?       cose    f0, f0
+0+1d4 <[^>]*> ee988120 ?       cosep   f0, f0
+0+1d8 <[^>]*> ee988140 ?       cosem   f0, f0
+0+1dc <[^>]*> ee988160 ?       cosez   f0, f0
+0+1e0 <[^>]*> eea08100 ?       tans    f0, f0
+0+1e4 <[^>]*> eea08120 ?       tansp   f0, f0
+0+1e8 <[^>]*> eea08140 ?       tansm   f0, f0
+0+1ec <[^>]*> eea08160 ?       tansz   f0, f0
+0+1f0 <[^>]*> eea08180 ?       tand    f0, f0
+0+1f4 <[^>]*> eea081a0 ?       tandp   f0, f0
+0+1f8 <[^>]*> eea081c0 ?       tandm   f0, f0
+0+1fc <[^>]*> eea081e0 ?       tandz   f0, f0
+0+200 <[^>]*> eea88100 ?       tane    f0, f0
+0+204 <[^>]*> eea88120 ?       tanep   f0, f0
+0+208 <[^>]*> eea88140 ?       tanem   f0, f0
+0+20c <[^>]*> eea88160 ?       tanez   f0, f0
+0+210 <[^>]*> eeb08100 ?       asns    f0, f0
+0+214 <[^>]*> eeb08120 ?       asnsp   f0, f0
+0+218 <[^>]*> eeb08140 ?       asnsm   f0, f0
+0+21c <[^>]*> eeb08160 ?       asnsz   f0, f0
+0+220 <[^>]*> eeb08180 ?       asnd    f0, f0
+0+224 <[^>]*> eeb081a0 ?       asndp   f0, f0
+0+228 <[^>]*> eeb081c0 ?       asndm   f0, f0
+0+22c <[^>]*> eeb081e0 ?       asndz   f0, f0
+0+230 <[^>]*> eeb88100 ?       asne    f0, f0
+0+234 <[^>]*> eeb88120 ?       asnep   f0, f0
+0+238 <[^>]*> eeb88140 ?       asnem   f0, f0
+0+23c <[^>]*> eeb88160 ?       asnez   f0, f0
+0+240 <[^>]*> eec08100 ?       acss    f0, f0
+0+244 <[^>]*> eec08120 ?       acssp   f0, f0
+0+248 <[^>]*> eec08140 ?       acssm   f0, f0
+0+24c <[^>]*> eec08160 ?       acssz   f0, f0
+0+250 <[^>]*> eec08180 ?       acsd    f0, f0
+0+254 <[^>]*> eec081a0 ?       acsdp   f0, f0
+0+258 <[^>]*> eec081c0 ?       acsdm   f0, f0
+0+25c <[^>]*> eec081e0 ?       acsdz   f0, f0
+0+260 <[^>]*> eec88100 ?       acse    f0, f0
+0+264 <[^>]*> eec88120 ?       acsep   f0, f0
+0+268 <[^>]*> eec88140 ?       acsem   f0, f0
+0+26c <[^>]*> eec88160 ?       acsez   f0, f0
+0+270 <[^>]*> eed08100 ?       atns    f0, f0
+0+274 <[^>]*> eed08120 ?       atnsp   f0, f0
+0+278 <[^>]*> eed08140 ?       atnsm   f0, f0
+0+27c <[^>]*> eed08160 ?       atnsz   f0, f0
+0+280 <[^>]*> eed08180 ?       atnd    f0, f0
+0+284 <[^>]*> eed081a0 ?       atndp   f0, f0
+0+288 <[^>]*> eed081c0 ?       atndm   f0, f0
+0+28c <[^>]*> eed081e0 ?       atndz   f0, f0
+0+290 <[^>]*> eed88100 ?       atne    f0, f0
+0+294 <[^>]*> eed88120 ?       atnep   f0, f0
+0+298 <[^>]*> eed88140 ?       atnem   f0, f0
+0+29c <[^>]*> eed88160 ?       atnez   f0, f0
+0+2a0 <[^>]*> eee08100 ?       urds    f0, f0
+0+2a4 <[^>]*> eee08120 ?       urdsp   f0, f0
+0+2a8 <[^>]*> eee08140 ?       urdsm   f0, f0
+0+2ac <[^>]*> eee08160 ?       urdsz   f0, f0
+0+2b0 <[^>]*> eee08180 ?       urdd    f0, f0
+0+2b4 <[^>]*> eee081a0 ?       urddp   f0, f0
+0+2b8 <[^>]*> eee081c0 ?       urddm   f0, f0
+0+2bc <[^>]*> eee081e0 ?       urddz   f0, f0
+0+2c0 <[^>]*> eee88100 ?       urde    f0, f0
+0+2c4 <[^>]*> eee88120 ?       urdep   f0, f0
+0+2c8 <[^>]*> eee88140 ?       urdem   f0, f0
+0+2cc <[^>]*> eee88160 ?       urdez   f0, f0
+0+2d0 <[^>]*> eef08100 ?       nrms    f0, f0
+0+2d4 <[^>]*> eef08120 ?       nrmsp   f0, f0
+0+2d8 <[^>]*> eef08140 ?       nrmsm   f0, f0
+0+2dc <[^>]*> eef08160 ?       nrmsz   f0, f0
+0+2e0 <[^>]*> eef08180 ?       nrmd    f0, f0
+0+2e4 <[^>]*> eef081a0 ?       nrmdp   f0, f0
+0+2e8 <[^>]*> eef081c0 ?       nrmdm   f0, f0
+0+2ec <[^>]*> eef081e0 ?       nrmdz   f0, f0
+0+2f0 <[^>]*> eef88100 ?       nrme    f0, f0
+0+2f4 <[^>]*> eef88120 ?       nrmep   f0, f0
+0+2f8 <[^>]*> eef88140 ?       nrmem   f0, f0
+0+2fc <[^>]*> eef88160 ?       nrmez   f0, f0
diff --git a/gas/testsuite/gas/arm/fpa-monadic.s b/gas/testsuite/gas/arm/fpa-monadic.s
new file mode 100644 (file)
index 0000000..2af03f4
--- /dev/null
@@ -0,0 +1,210 @@
+       .text
+       .globl F
+F:
+       mvfs    f0, f0
+       mvfsp   f0, f0
+       mvfsm   f0, f0
+       mvfsz   f0, f0
+       mvfd    f0, f0
+       mvfdp   f0, f0
+       mvfdm   f0, f0
+       mvfdz   f0, f0
+       mvfe    f0, f0
+       mvfep   f0, f0
+       mvfem   f0, f0
+       mvfez   f0, f0
+
+       mnfs    f0, f0
+       mnfsp   f0, f0
+       mnfsm   f0, f0
+       mnfsz   f0, f0
+       mnfd    f0, f0
+       mnfdp   f0, f0
+       mnfdm   f0, f0
+       mnfdz   f0, f0
+       mnfe    f0, f0
+       mnfep   f0, f0
+       mnfem   f0, f0
+       mnfez   f0, f0
+
+       abss    f0, f0
+       abssp   f0, f0
+       abssm   f0, f0
+       abssz   f0, f0
+       absd    f0, f0
+       absdp   f0, f0
+       absdm   f0, f0
+       absdz   f0, f0
+       abse    f0, f0
+       absep   f0, f0
+       absem   f0, f0
+       absez   f0, f0
+
+       rnds    f0, f0
+       rndsp   f0, f0
+       rndsm   f0, f0
+       rndsz   f0, f0
+       rndd    f0, f0
+       rnddp   f0, f0
+       rnddm   f0, f0
+       rnddz   f0, f0
+       rnde    f0, f0
+       rndep   f0, f0
+       rndem   f0, f0
+       rndez   f0, f0
+
+       sqts    f0, f0
+       sqtsp   f0, f0
+       sqtsm   f0, f0
+       sqtsz   f0, f0
+       sqtd    f0, f0
+       sqtdp   f0, f0
+       sqtdm   f0, f0
+       sqtdz   f0, f0
+       sqte    f0, f0
+       sqtep   f0, f0
+       sqtem   f0, f0
+       sqtez   f0, f0
+
+       logs    f0, f0
+       logsp   f0, f0
+       logsm   f0, f0
+       logsz   f0, f0
+       logd    f0, f0
+       logdp   f0, f0
+       logdm   f0, f0
+       logdz   f0, f0
+       loge    f0, f0
+       logep   f0, f0
+       logem   f0, f0
+       logez   f0, f0
+
+       lgns    f0, f0
+       lgnsp   f0, f0
+       lgnsm   f0, f0
+       lgnsz   f0, f0
+       lgnd    f0, f0
+       lgndp   f0, f0
+       lgndm   f0, f0
+       lgndz   f0, f0
+       lgne    f0, f0
+       lgnep   f0, f0
+       lgnem   f0, f0
+       lgnez   f0, f0
+
+       exps    f0, f0
+       expsp   f0, f0
+       expsm   f0, f0
+       expsz   f0, f0
+       expd    f0, f0
+       expdp   f0, f0
+       expdm   f0, f0
+       expdz   f0, f0
+       expe    f0, f0
+       expep   f0, f0
+       expem   f0, f0
+       expdz   f0, f0
+
+       sins    f0, f0
+       sinsp   f0, f0
+       sinsm   f0, f0
+       sinsz   f0, f0
+       sind    f0, f0
+       sindp   f0, f0
+       sindm   f0, f0
+       sindz   f0, f0
+       sine    f0, f0
+       sinep   f0, f0
+       sinem   f0, f0
+       sinez   f0, f0
+
+       coss    f0, f0
+       cossp   f0, f0
+       cossm   f0, f0
+       cossz   f0, f0
+       cosd    f0, f0
+       cosdp   f0, f0
+       cosdm   f0, f0
+       cosdz   f0, f0
+       cose    f0, f0
+       cosep   f0, f0
+       cosem   f0, f0
+       cosez   f0, f0
+
+       tans    f0, f0
+       tansp   f0, f0
+       tansm   f0, f0
+       tansz   f0, f0
+       tand    f0, f0
+       tandp   f0, f0
+       tandm   f0, f0
+       tandz   f0, f0
+       tane    f0, f0
+       tanep   f0, f0
+       tanem   f0, f0
+       tanez   f0, f0
+
+       asns    f0, f0
+       asnsp   f0, f0
+       asnsm   f0, f0
+       asnsz   f0, f0
+       asnd    f0, f0
+       asndp   f0, f0
+       asndm   f0, f0
+       asndz   f0, f0
+       asne    f0, f0
+       asnep   f0, f0
+       asnem   f0, f0
+       asnez   f0, f0
+
+       acss    f0, f0
+       acssp   f0, f0
+       acssm   f0, f0
+       acssz   f0, f0
+       acsd    f0, f0
+       acsdp   f0, f0
+       acsdm   f0, f0
+       acsdz   f0, f0
+       acse    f0, f0
+       acsep   f0, f0
+       acsem   f0, f0
+       acsez   f0, f0
+
+       atns    f0, f0
+       atnsp   f0, f0
+       atnsm   f0, f0
+       atnsz   f0, f0
+       atnd    f0, f0
+       atndp   f0, f0
+       atndm   f0, f0
+       atndz   f0, f0
+       atne    f0, f0
+       atnep   f0, f0
+       atnem   f0, f0
+       atnez   f0, f0
+
+       urds    f0, f0
+       urdsp   f0, f0
+       urdsm   f0, f0
+       urdsz   f0, f0
+       urdd    f0, f0
+       urddp   f0, f0
+       urddm   f0, f0
+       urddz   f0, f0
+       urde    f0, f0
+       urdep   f0, f0
+       urdem   f0, f0
+       urdez   f0, f0
+
+       nrms    f0, f0
+       nrmsp   f0, f0
+       nrmsm   f0, f0
+       nrmsz   f0, f0
+       nrmd    f0, f0
+       nrmdp   f0, f0
+       nrmdm   f0, f0
+       nrmdz   f0, f0
+       nrme    f0, f0
+       nrmep   f0, f0
+       nrmem   f0, f0
+       nrmez   f0, f0
index 354e0e0..37a7338 100644 (file)
@@ -1,4 +1,4 @@
-#objdump: -s
+#objdump: -s --section=.text
 #as: -EL
 #name: arm little-endian fpconst